From 8c1ce0b0c04874f4bea481a64e39d71018378850 Mon Sep 17 00:00:00 2001 From: pintar Date: Fri, 14 Jul 2023 19:36:32 +0200 Subject: [PATCH 001/365] First tests and NGAP_common --- test_purposes/Ngap_Common.tplan2 | 217 +++++++++++++++++++++++++ test_purposes/References.txt | 1 + test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 24 +++ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 158 ++++++++++++++++++ 4 files changed, 400 insertions(+) create mode 100644 test_purposes/Ngap_Common.tplan2 create mode 100644 test_purposes/References.txt create mode 100644 test_purposes/ngap/TP_AMF_NGAP2.tplan2 create mode 100644 test_purposes/ngap/TP_GNB_NGAP.tplan2 diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 new file mode 100644 index 0000000..8a9a87d --- /dev/null +++ b/test_purposes/Ngap_Common.tplan2 @@ -0,0 +1,217 @@ +/* ETSI Software License +* As long as the here under conditions are respected, non-exclusive permission is hereby granted, +* free of charge, to use, reproduce and modify this software source code, under the following conditions: +* This source code is provided AS IS with no warranties, express or implied, including but not limited to, +* the warranties of merchant ability, fitness for a particular purpose and warranties for non-infringement +* of intellectual property rights. +* ETSI shall not be held liable in any event for any direct or indirect damages whatsoever (including, without +* limitation, damages for loss of profits, business interruption, loss of information, or any other pecuniary +* loss) arising out of or related to the use of or inability to use the source code. +* This permission is granted to facilitate the implementation of the related ETSI standard, provided that +* ETSI is given the right to use, reproduce and amend the modified source code under the same conditions +* as the present permission. +* This permission does not apply to any documentation associated with this source code for which ETSI keeps +* all rights reserved. +* The present ETSI Source Code license shall be included in all copies of whole or part of this source code +* and shall not imply any sub-license right. +* (c) ETSI 2019-2020 +*/ + + +Package Ngap_Common { + Domain { + pics: + - NONE + - PICS_A3/5_1 + - NOT_PICS_2 + ; + entities: + - UE + - GNB + - AMF + - IUT + ; + events: + - receives + - sends + - forwards + - isRequestedToPlaceACall + // Initial conditions + - isNotRegisteredTo + - hasAchievedFirstRegistration + - isRegisteredTo + - isNotAttachedTo + - isAttachedTo + - isNotConfiguredForTopologyHiding + - isConfiguredForTopologyHiding + - isExistingIn + - establishedSecurityRelation + - registeredIdentityTelURI + - registeredIdentitySipURI + - hasInitiatedDialogWith + - hasInitiatedPS2CSinEarlydialog + - hasInitiatedPS2CSinAlertingState + - hasEstablishedDialog + - hasEstablishedPS2CSDialog + - isConfiguredWithENUMentryForTelURI_E164NumberOf + - hasReceivedInitialRequestForDialog + - hasReceived200OkOnInitialRequestForDialogWith + - hasReceived180OnInitialRequest + - hasReceived200OkCancel + - hasReceivedTerminatedRequest + - registeredPublicIdsWithTelUriAndSipUri + - hasReceivedSubsequentOrTargetRefreshRequestInDialog + - previouslyEstablishedCallWith + - isRequestedToSend + - isRequestedToDeregisterUser + - isBusy + - isNoLongerAvailable + - isTriggeredToDetachUser + - isRequestedToDetachfromNetwork + - hasAchievedFirstREGISTER + - hasResponded486INVITE + - hasAchievedInitialINVITE + - hasAchievedINVITE + - hasAchievedUPDATEuponINVITE + - timerOperatorSpecificTimeout //NOTE: 8 seconds is an appropriate value for the operator policy. + - isAttachingToNetwork + - hasDoneSubscription + - indicate + ; + } // End of Domain section + + +// Const { +// PX_Stored_Domain_Uri, +// PX_TO_BE_DEFINED +// ; +// } // End of Const section + + Data { + + type NgapMessage; + + //Table 8.1-1 + NgapMessage AMF_CONFIGURATION_UPDATE; + NgapMessage AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE; + NgapMessage AMF_CONFIGURATION_UPDATE_FAILURE; + NgapMessage RAN_CONFIGURATION_UPDATE; + NgapMessage RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE; + NgapMessage RAN_CONFIGURATION_UPDATE_FAILURE; + NgapMessage HANDOVER_CANCEL; + NgapMessage HANDOVER_CANCEL_ACKNOWLEDGE; + NgapMessage HANDOVER_REQUIRED; + NgapMessage HANDOVER_COMMAND; + NgapMessage HANDOVER_PREPARATION_FAILURE; + NgapMessage HANDOVER_REQUEST ; + NgapMessage HANDOVER_REQUEST_ACKNOWLEDGE; + NgapMessage HANDOVER_FAILURE; + NgapMessage INITIAL_CONTEXT_SETUP_REQUEST; + NgapMessage INITIAL_CONTEXT_SETUP_RESPONSE; + NgapMessage INITIAL_CONTEXT_SETUP_FAILURE; + NgapMessage NG_RESET; + NgapMessage NG_RESET_ACKNOWLEDGE; + NgapMessage NG_SETUP_REQUEST; + NgapMessage NG_SETUP_RESPONSE; + NgapMessage NG_SETUP_FAILURE; + NgapMessage PATH_SWITCH_REQUEST; + NgapMessage PATH_SWITCH_REQUEST_ACKNOWLEDGE; + NgapMessage PATH_SWITCH_REQUEST_FAILURE; + NgapMessage PDU_SESSION_RESOURCE_MODIFY_REQUEST; + NgapMessage PDU_SESSION_RESOURCE_MODIFY_RESPONSE; + NgapMessage PDU_SESSION_RESOURCE_MODIFY_INDICATION; + NgapMessage PDU_SESSION_RESOURCE_MODIFY_CONFIRM; + NgapMessage PDU_SESSION_RESOURCE_RELEASE_COMMAND; + NgapMessage PDU_SESSION_RESOURCE_RELEASE_RESPONSE; + NgapMessage PDU_SESSION_RESOURCE_SETUP_REQUEST; + NgapMessage PDU_SESSION_RESOURCE_SETUP_RESPONSE; + NgapMessage UE_CONTEXT_MODIFICATION_REQUEST; + NgapMessage UE_CONTEXT_MODIFICATION_RESPONSE; + NgapMessage UE_CONTEXT_MODIFICATION_FAILURE; + NgapMessage UE_CONTEXT_RELEASE_COMMAND; + NgapMessage UE_CONTEXT_RELEASE_COMPLETE; + NgapMessage WRITE_REPLACE_WARNING_REQUEST; + NgapMessage WRITE_REPLACE_WARNING_RESPONSE; + NgapMessage PWS_CANCEL_REQUEST; + NgapMessage PWS_CANCEL_RESPONSE; + NgapMessage UE_RADIO_CAPABILITY_CHECK_REQUEST; + NgapMessage UE_RADIO_CAPABILITY_CHECK_RESPONSE; + NgapMessage UE_CONTEXT_SUSPEND_REQUEST; + NgapMessage UE_CONTEXT_SUSPEND_RESPONSE; + NgapMessage UE_CONTEXT_SUSPEND_FAILURE; + NgapMessage UE_CONTEXT_RESUME_REQUEST; + NgapMessage UE_CONTEXT_RESUME_RESPONSE; + NgapMessage UE_CONTEXT_RESUME_FAILURE; + NgapMessage UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST; + NgapMessage UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE; + + //Table 8.1-2 + NgapMessage DOWNLINK_RAN_CONFIGURATION_TRANSFER; + NgapMessage DOWNLINK_RAN_STATUS_TRANSFER; + NgapMessage DOWNLINK_NAS_TRANSPORT; + NgapMessage ERROR_INDICATION; + NgapMessage UPLINK_RAN_CONFIGURATION_TRANSFER; + NgapMessage UPLINK_RAN_STATUS_TRANSFER; + NgapMessage HANDOVER_NOTIFY; + NgapMessage INITIAL_UE_MESSAGE; + NgapMessage NAS_NON_DELIVERY_INDICATION; + NgapMessage PAGING; + NgapMessage PDU_SESSION_RESOURCE_NOTIFY; + NgapMessage REROUTE_NAS_REQUEST; + NgapMessage UE_CONTEXT_RELEASE_REQUEST; + NgapMessage UPLINK_NAS_TRANSPORT; + NgapMessage AMF_STATUS_INDICATION; + NgapMessage PWS_RESTART_INDICATION; + NgapMessage PWS_FAILURE_INDICATION; + NgapMessage DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT; + NgapMessage UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT; + NgapMessage DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT; + NgapMessage UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT; + NgapMessage TRACE_START; + NgapMessage TRACE_FAILURE_INDICATION; + NgapMessage DEACTIVATE_TRACE; + NgapMessage CELL_TRAFFIC_TRACE; + NgapMessage LOCATION_REPORTING_CONTROL; + NgapMessage LOCATION_REPORTING_FAILURE_INDICATION; + NgapMessage LOCATION_REPORT; + NgapMessage UE_TNLA_BINDING_RELEASE_REQUEST; + NgapMessage UE_RADIO_CAPABILITY_INFO_INDICATION; + NgapMessage RRC_INACTIVE_TRANSITION_REPORT; + NgapMessage OVERLOAD_START; + NgapMessage OVERLOAD_STOP; + NgapMessage SECONDARY_RAT_DATA_USAGE_REPORT; + NgapMessage UPLINK_RIM_INFORMATION_TRANSFER; + NgapMessage DOWNLINK_RIM_INFORMATION_TRANSFER; + NgapMessage RETRIEVE_UE_INFORMATION; + NgapMessage UE_INFORMATION_TRANSFER; + NgapMessage RAN_CP_RELOCATION_INDICATION; + NgapMessage CONNECTION_ESTABLISHMENT_INDICATION; + NgapMessage AMF_CP_RELOCATION_INDICATION; + NgapMessage HANDOVER_SUCCESS; + NgapMessage UPLINK_RAN_EARLY_STATUS_TRANSFER; + NgapMessage DOWNLINK_RAN_EARLY_STATUS_TRANSFER; + + } // End of Data section + + Configuration { + Interface Type defaultGT accepts NgapMessage; + Component Type NgapComponent with gate g of type defaultGT; + + + Test Configuration CFG_GNB_01 + containing + Tester component AMF of type NgapComponent + SUT component IUT of type NgapComponent + connection between AMF.g and IUT.g; + + Test Configuration CFG_AMF_01 + containing + Tester component GNB of type NgapComponent + SUT component IUT of type NgapComponent + connection between GNB.g and IUT.g; + + } + + +} // End of Package Sip_Common + diff --git a/test_purposes/References.txt b/test_purposes/References.txt new file mode 100644 index 0000000..f0ac772 --- /dev/null +++ b/test_purposes/References.txt @@ -0,0 +1 @@ +[1] ETSI TS 138 413: "5G;NG-RAN; NG Application Protocol (NGAP) (3GPP TS 38.413 version 16.12.0 Release 16)". diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 new file mode 100644 index 0000000..684af8f --- /dev/null +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -0,0 +1,24 @@ +/* +Copyright (c) ETSI 2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. +*/ + +/* interface at AMF */ +Package TP_AMF { + + + +//TO BE DONE + +} // End of Package TP_AMF + diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 new file mode 100644 index 0000000..7b7700b --- /dev/null +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -0,0 +1,158 @@ +/* +Copyright (c) ETSI 2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. +*/ + +/* interface at GNB */ +Package TP_GNB { + + + + Group "8.2 PDU Session Management Procedures" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_01 + + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE with successfully established PDU session." + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.1.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Request_List containing + PDU_SessionId, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer; + ; + from the AMF entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Response_List containing + PDU_SessionId, + PDU_Session_Resource_Setup_Response_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_01 + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_02 + + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE with failed PDU session." + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.1.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Request_List containing + PDU_SessionId, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer; + ; + from the AMF entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Failed_to_Setup_List containing + PDU_SessionId, + PDU_Session_Resource_Setup_Unsuccessful_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_02 + + } // end Group 8.2 PDU Session Management Procedures + + + + Group "8.6 Initial UE message" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_NAS_01 + + Test objective "Verify that the IUT can send an INITIAL_UE_MESSAGE to indicate the initiation of a NAS Transport procedure" + + Reference + "ETSI TS 138 413 [1], Clauses 8.6.1.2 and 9.2.5.1" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the IUT entity indicate the initiation "of a NAS Transport procedure" + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a NAS Transport procedure" + } + then { + the IUT entity sends an INITIAL_UE_MESSAGE containing + RAN_UE_NGAP_ID, + NAS_PDU, + User_Location, + RRC_Establishmnet_Cause; + to the AMF entity + } + } + + } // end TP_NGAP_AMF_PDU_01 + + } // end Group 8.6 Initial UE message + +} // End of Package TP_GNB + -- GitLab From 929324cf03dd4b16ff52d585006d858fdfb3df88 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Tue, 19 Sep 2023 10:59:43 +0200 Subject: [PATCH 002/365] add TPs for UE context managment procedures (8.3) --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 102 +++++++++++++++++++++++++- 1 file changed, 101 insertions(+), 1 deletion(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 7b7700b..496e0a3 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -112,7 +112,107 @@ Package TP_GNB { } // end Group 8.2 PDU Session Management Procedures - + Group "8.3 UE Context Management Procedures" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_01 //TODO: Is CMP the correct abbreviation for Context management Procedure? Correct naming convention? + + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + //TODO: Do we have an initial condition here? + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI, + PDU_Session_Resource_Setup_Request_List containing + PDU_SessionId, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer + Allowed_NSSAI, + UE_Security_Capabilities, + Security_Key + ; + from the AMF entity + } + then { + the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Response_List containing + PDU_SessionId, + PDU_Session_Resource_Setup_Response_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_01 + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_02 //TODO: Is CMP the correct abbreviation for Context management Procedure? Correct naming convention? + + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + //TODO: Do we have an initial condition here? + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI, + PDU_Session_Resource_Setup_Request_List containing + PDU_SessionId, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer + Allowed_NSSAI, + UE_Security_Capabilities, + Security_Key + ; + from the AMF entity + } + then { + the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Failed_to_Setup_List containing + PDU_SessionId, + PDU_Session_Resource_Setup_Unsuccessful_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_02 + + } // end Group 8.3 UE Context Management Procedures Group "8.6 Initial UE message" { -- GitLab From 1666639eadc4ac00a83703a5f4402f623dbd36cb Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 13 Oct 2023 08:06:57 +0200 Subject: [PATCH 003/365] Added titan-test-system-framework submodule --- .gitmodules | 4 ++++ titan-test-system-framework | 1 + 2 files changed, 5 insertions(+) create mode 100644 .gitmodules create mode 160000 titan-test-system-framework diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..090e70f --- /dev/null +++ b/.gitmodules @@ -0,0 +1,4 @@ +[submodule "titan-test-system-framework"] + path = titan-test-system-framework + url = https://labs.etsi.org/rep/cti-tools/titan-test-system-framework.git + branch = devel diff --git a/titan-test-system-framework b/titan-test-system-framework new file mode 160000 index 0000000..e27aaa8 --- /dev/null +++ b/titan-test-system-framework @@ -0,0 +1 @@ +Subproject commit e27aaa847f49a1e459f427abc3620ef7a40223ca -- GitLab From 3fb647be09de9b48f479dad8235b35b64701fc2e Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 13 Oct 2023 08:08:34 +0200 Subject: [PATCH 004/365] Added build files --- Makefile | 167 +++++++++++++++++++++++++++++++++++++++ NGAP_ETSI.code-workspace | 11 +++ config.mk | 15 ++++ libNr5gcAsn1.mk | 126 +++++++++++++++++++++++++++++ 4 files changed, 319 insertions(+) create mode 100644 Makefile create mode 100644 NGAP_ETSI.code-workspace create mode 100644 config.mk create mode 100644 libNr5gcAsn1.mk diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..fc5ec5e --- /dev/null +++ b/Makefile @@ -0,0 +1,167 @@ +-include config.mk + +ifeq (,$(ATS)) + $(error ATS shall be defined) +endif + +ifeq (,$(TOPDIR)) + TOPDIR := . +endif + +ifeq (,$(TTCN3_DIR)) + $(error TTCN3_DIR shall be defined in config.mk) +endif + +ifeq (,$(ASN1C)) + ifneq (,$(ASN1C_PATH)) + ASN1C := $(ASN1C_PATH)/asn1c/.libs/asn1c -S $(ASN1C_PATH)/skeletons + else + ASN1C := asn1c + endif +endif + +export ASN1C_PATH + +first: all + +define IncludeModule +undefine sources +undefine modules +undefine includes +include $(1)/module.mk +$$(foreach S, $$(sources), $$(eval all_sources += $$(if $$(filter /%, $$(S)), $$(TOPDIR)$$(S), $(1)/$$(S)))) +$$(foreach I, $$(includes), $$(eval all_includes += $$(if $$(filter /%, $$(I)), $$(TOPDIR)$$(I), $(1)/$$(I)))) +$$(foreach M, $$(modules), $$(eval $$(call IncludeModule, $$(if $$(filter /%, $$(M)), $$(TOPDIR)$$(M), $(1)/$$(M))))) +endef + +all_includes := $(TTCN3_DIR)/include $(TTCN3_DIR)/src /usr/include/jsoncpp /usr/include/libxml2 +defines += TITAN_RUNTIME_2 _NO_SOFTLINKS_ $(ATS) AS_USE_SSL _GNU_SOURCE +libs += $(TTCN3_DIR)/lib/libttcn3-rt2-parallel.a -lstdc++fs + +ifeq (Windows_NT,$(OS)) +# Silence linker warnings. +LDFLAGS += -Wl,--enable-auto-import,--enable-runtime-pseudo-reloc +defines += WIN32 +libs += $(patsubst %, -L%/lib, $(OPENSSL_DIR)) +all_includes += $(addsuffix /include, $(OPENSSL_DIR)) +libs += $(WPCAP_DLL_PATH) +else +defines += LINUX +libs += -lpcap -lrt -lpthread +endif + +libs += -lssl -lcrypto -lxml2 -ljsoncpp -L$(OSIP_LIB) -losipparser2 -lsctp + +$(eval $(call IncludeModule, $(TOPDIR)/ttcn/$(ATS))) + +outdir := $(TOPDIR)/build/$(ATS) +bindir := $(TOPDIR)/bin + +sources := $(all_sources) +includes := $(outdir) $(outdir)/.. $(outdir)/asn1 $(all_includes) $(NPCAP_INCLUDE) $(OSIP_INCLUDE) + +ifeq (Windows_NT,$(OS)) + EXE=.exe +endif + +ttcn_sources := $(filter %.ttcn , $(sources)) +ttcn3_sources := $(filter %.ttcn3, $(sources)) +asn_sources := $(filter %.asn, $(sources)) +asn1_sources := $(filter %.asn1, $(sources)) + +tt_sources := $(ttcn_sources) $(ttcn3_sources) $(asn_sources) $(asn1_sources) +cc_sources := $(filter %.cc, $(sources)) + +gen_ttcn_sources := $(addprefix $(outdir)/, $(notdir $(patsubst %.ttcn, %.cc, $(ttcn_sources)))) +gen_ttcn_headers := $(addprefix $(outdir)/, $(notdir $(patsubst %.ttcn, %.hh, $(ttcn_sources)))) +gen_ttcn3_sources := $(addprefix $(outdir)/, $(notdir $(patsubst %.ttcn3, %.cc, $(ttcn3_sources)))) +gen_ttcn3_headers := $(addprefix $(outdir)/, $(notdir $(patsubst %.ttcn3, %.hh, $(ttcn3_sources)))) +gen_asn_sources := $(addprefix $(outdir)/, $(notdir $(patsubst %.asn, %.cc, $(asn_sources)))) +gen_asn_headers := $(addprefix $(outdir)/, $(notdir $(patsubst %.asn, %.hh, $(asn_sources)))) +gen_asn1_sources := $(addprefix $(outdir)/, $(notdir $(patsubst %.asn1, %.cc, $(asn1_sources)))) +gen_asn1_headers := $(addprefix $(outdir)/, $(notdir $(patsubst %.asn1, %.hh, $(asn1_sources)))) + +gen_sources := $(gen_ttcn_sources) $(gen_ttcn3_sources) $(gen_asn_sources) $(gen_asn1_sources) +gen_headers := $(gen_ttcn_headers) $(gen_ttcn3_headers) $(gen_asn_headers) $(gen_asn1_headers) + +gen_objects := $(patsubst %.cc, %.o, $(gen_sources)) +cc_objects := $(patsubst %.cc, $(outdir)/%.o, $(cc_sources)) + +.PHONY: all FORCE echo + +all: $(bindir) $(outdir) $(bindir)/$(ATS)$(EXE) + +echo_sources: + @echo -e "$(addsuffix \n,$(all_sources))" + +echo: echo_sources + @echo -e "sources:\n $(addsuffix \n, $(sources))" + @echo -e "gen_sources:\n $(addsuffix \n, $(gen_sources))" + @echo -e "gen_objects:\n $(addsuffix \n, $(gen_objects))" + @echo -e "cc_objects:\n $(addsuffix \n, $(cc_objects))" + @echo -e "includes:\n $(addsuffix \n, $(includes))" + @echo -e "defines: $(addsuffix \n, $(defines))" + +clean: + rm -f $(outdir)/$(ATS)$(EXE) $(gen_objects) $(gen_sources) $(gen_headers) $(cc_objects) $(outdir)/.generate $(outdir)/../libAsn.so +# rm -f $(outdir)/asn1/*.so $(outdir)/asn1/*.o $(outdir)/asn1/*.c $(outdir)/asn1/*.h $(outdir)/asn1/Makefile.am.libasncodec + +regen: force_regen $(outdir)/.generate +force_regen: + rm -f $(outdir)/.generate + +t3q: all + @echo -e "Code checking in progress..." + @java -Xmx3g -Xss512m -jar $(T3Q_PATH)/t3q.jar --config $(T3Q_PATH)/$(T3Q_CONFIG) $(tt_sources) > $(outdir)/t3q.out 2>&1 ; cd - + @echo -e "Code checking in done..." + @echo -e "Output file is located here: $(outdir)/t3q.out" + +t3d: all + @echo -e "TTCN-3 doc generation in progress..." + @java -Xmx3g -Xss512m -jar $(T3D_PATH)/t3d.jar --config $(T3D_PATH)/$(T3D_CONFIG) $(tt_sources) > $(outdir)/t3d.out 2>&1 ; cd - + @echo -e "TTCN-3 doc generation done..." + @echo -e "Output file is located here: $(outdir)/t3d.out" + +$(outdir) $(outdir)/asn1 $(bindir): + mkdir -p $@ + +$(bindir)/$(ATS)$(EXE): $(outdir)/asn1/libAsn.a $(gen_objects) $(cc_objects) + g++ -g -O0 -std=c++17 -o $@ $(LDFLAGS) $(gen_objects) $(cc_objects) $(outdir)/asn1/libAsn.a $(libs) + +$(gen_objects) :%.o :%.cc + g++ -g -O0 -std=c++17 -c $(addprefix -D, $(defines)) $(addprefix -I, $(includes)) -o $@ $< + +$(cc_objects) : $(outdir)/%.o : %.cc + mkdir -p $(dir $@) + g++ -g -O0 -std=c++17 -c $(addprefix -D, $(defines)) $(addprefix -I, $(includes)) -o $@ $< + +#$(gen_sources): +# $(TTCN3_DIR)/bin/compiler -n -e -L -R -U none -o $(outdir) $(tt_sources) + +$(gen_sources): $(outdir)/.generate + +$(outdir)/.generate: Makefile $(tt_sources) + $(TTCN3_DIR)/bin/compiler $(TTCN3_COMPILER_OPTIONS) -o $(outdir) $(tt_sources) + touch $@ + +$(bindir)/libAsn.so: $(outdir)/asn1/libAsn.so + cp -f $< $@ + +$(outdir)/asn1/libAsn.a: $(asn_sources) $(asn1_sources) libasn1.mk Makefile + mkdir -p $(outdir)/asn1 + echo TOP_DIR := ../../.. >$(outdir)/asn1/Makefile + echo ASN_PDU := $(pdu) >>$(outdir)/asn1/Makefile + echo ASN_FILES := \\ >>$(outdir)/asn1/Makefile + for n in $(asn_sources) $(asn1_sources); do echo " $$n \\"; done >>$(outdir)/asn1/Makefile + echo >>$(outdir)/asn1/Makefile + cat libasn1.mk >>$(outdir)/asn1/Makefile + $(MAKE) -C $(outdir)/asn1 + touch $@ + +$(foreach S, $(ttcn_sources), $(eval $(outdir)/$(notdir $(patsubst %.ttcn, %.cc, $(S))): $(S))) +$(foreach S, $(ttcn3_sources), $(eval $(outdir)/$(notdir $(patsubst %.ttcn3, %.cc, $(S))): $(S))) +$(foreach S, $(asn_sources), $(eval $(outdir)/$(notdir $(patsubst %.asn, %.cc, $(S))): $(S))) +$(foreach S, $(asn1_sources), $(eval $(outdir)/$(notdir $(patsubst %.asn1, %.cc, $(S))): $(S))) + +$(asn_sources) $(asn1_sources): + diff --git a/NGAP_ETSI.code-workspace b/NGAP_ETSI.code-workspace new file mode 100644 index 0000000..405a098 --- /dev/null +++ b/NGAP_ETSI.code-workspace @@ -0,0 +1,11 @@ +{ + "folders": [ + { + "path": "." + }, + { + "path": "../../../tmp/osmo-ttcn3-hacks" + } + ], + "settings": {} +} \ No newline at end of file diff --git a/config.mk b/config.mk new file mode 100644 index 0000000..68db5bf --- /dev/null +++ b/config.mk @@ -0,0 +1,15 @@ +#TTCN3_COMPILER_OPTIONS := -d -e -f -g -j -H -l -L -R -U none -x -X +TTCN3_COMPILER_OPTIONS := -d -e -f -g -j -l -L -R -U none -x -X +#TTCN3_DIR := $(HOME)/frameworks/titan/titan.core/Install +TTCN3_DIR := $(HOME)/tmp/ttcn3-9.0.0 +#ASN1C_PATH := $(HOME)/frameworks/asn1c.denis +#ASN1C_PATH := /home/ubuntu/bin/asn1c.denis/ +#WPCAP_DLL_PATH := /cygdrive/c/windows/system32/npcap/wpcap.dll +#NPCAP_INCLUDE := /cygdrive/c/PROGRA~1/Npcap/sdk/include +#T3Q_PATH=./tools/t3q-v2.0.0b30 +#T3Q_CONFIG=t3q.cfg +#T3D_PATH=./tools/t3d-v2.0.0b30 +#T3D_CONFIG=t3d.cfg +#ITS_CONTAINER=../../../AtsDENM/lib/asn1/cdd/ITS_Container.asn +#OSIP_INCLUDE= /home/ubuntu/bin/osip/include/ +#OSIP_LIB= /home/ubuntu/bin/osip/src/osipparser2/.libs/ diff --git a/libNr5gcAsn1.mk b/libNr5gcAsn1.mk new file mode 100644 index 0000000..469d8c9 --- /dev/null +++ b/libNr5gcAsn1.mk @@ -0,0 +1,126 @@ +########################################################## +# This Makefile is to build the ASN1 library to be used +# for external codec in Titan +# This Makefile is expected that asn1c compiler is +# installed in the PATHs +########################################################## + +# The name of the library +ASN_LIBRARY = libItsAsn.a + +ifeq (,$(sort $(ASN_FILES))) + $(error ASN_FILES should be specified ) +endif + +#Override ASN1C instalation path +ifneq (, $(ASN1C_PATH)) + ASN1C:=$(ASN1C_PATH)/asn1c/asn1c -S $(ASN1C_PATH)/skeletons +else + ASN1C:=asn1c + ASN1C:=asn1_compiler +endif + +LIB_MAKEFILE=Makefile.am.libasncodec +include $(LIB_MAKEFILE) +OBJS = ${ASN_MODULE_SRCS:.c=.o} +CONVERTER=converter +ASN_CONVERTER_SOURCES := \ + converter-example.c\ + pdu_collection.c +CONVERTER_OBJS=${ASN_CONVERTER_SOURCES:.c=.o} +ifneq ($(strip $(ASN_PDU)),$(firstword $(ASN_PDU))) + HAS_PDU_COLLECTION := -DASN_PDU_COLLECTION +endif + +CFLAGS += $(ASN_MODULE_CFLAGS) -DPDU=$(firstword $(ASN_PDU)) $(HAS_PDU_COLLECTION) -fPIC -I. +CC = gcc -std=c99 + +ifeq ('asn1c', $(ASN1C)) + ASN1C_OPTIONS += -no-gen-example -fcompound-names -no-gen-XER -no-gen-JER -no-gen-APER -no-gen-print -no-gen-random-fill +else + ASN1C_OPTIONS += -b -O +endif + +ifeq (yes,$(DEBUG)) + CFLAGS += -g -O0 -DASN_EMIT_DEBUG=1 +endif +ASN_SRC_FILES := $(addprefix $(TOP_DIR)/, $(ASN_FILES)) + +all: $(ASN_LIBRARY) + +$(LIB_MAKEFILE): $(ASN_SRC_FILES) Makefile + $(ASN1C) $(ASN1C_OPTIONS) $(addprefix -pdu=,$(pdu)) $(ASN_SRC_FILES) +# -for n in $(PATCHES); do git apply "$(SCRIPT_DIR)/$$n"; done + +$(CONVERTER): $(ASN_LIBRARY) $(CONVERTER_OBJS) + $(CC) $(CFLAGS) -o $@ $(CONVERTER_OBJS) $(ASN_LIBRARY) $(LIBS) + +$(ASN_LIBRARY): ${ASN_MODULE_SRCS:.c=.o} + ar rcs $@ $^ +# $(CC) $(CFLAGS) -o $@ $^ -shared $(LDFLAGS) $(LIBS) + +.SUFFIXES: +.SUFFIXES: .c .o + +.c.o: + $(CC) $(CFLAGS) -o $@ -c $< + +clean: + rm -f $(CONVERTER) $(ASN_LIBRARY) + rm -f $(OBJS) $(CONVERTER_OBJS) + +regen: clear-asn1c $(LIB_MAKEFILE) +clear-asn1c: + rm -f $(LIB_MAKEFILE) + +########################################################## + +#$(TOP_DIR)/./build/asn1/ISO_TS_14816/AVIAEINumberingAndDataStructures.asn: +# mkdir -p "$(dir $@)" +# curl 'https://standards.iso.org/iso/14816/ISO14816%20ASN.1%20repository/ISO14816_AVIAEINumberingAndDataStructures.asn' | \ +# sed -e 's/IssuerIdentifier/AVIAEIIssuerIdentifier/g' > "$@" + +#$(TOP_DIR)/./build/asn1/ISO_TS_14906/EfcDsrcApplication.asn: +# mkdir -p "$(dir $@)" +# curl -o "$@" 'https://standards.iso.org/iso/14906/ed-3/en/ISO14906(2018)EfcDsrcApplicationv6.asn' + +#$(TOP_DIR)/./build/asn1/ISO_TS_14906/EfcDsrcGeneric.asn: +# mkdir -p "$(dir $@) +# curl -o "$@" 'https://standards.iso.org/iso/14906/ed-3/en/ISO14906(2018)EfcDsrcGenericv7.asn' + +#$(TOP_DIR)/./build/asn1/ISO_TS_17419/CITSapplMgmtIDs.asn: +# mkdir -p "$(dir $@)" +# curl -o "$@" 'https://standards.iso.org/iso/ts/17419/TS%2017419%20ASN.1%20repository/TS17419_2014_CITSapplMgmtIDs.asn' + +#$(TOP_DIR)/./build/asn1/ISO_TS_19091/ISO-TS-19091-addgrp-C-2018-patched.asn: +# mkdir -p "$(dir $@)" +# curl 'https://standards.iso.org/iso/ts/19091/ed-2/en/ISO-TS-19091-addgrp-C-2018.asn' | \ +# sed -e 's/\bHeadingConfidence\b/HeadingConfidenceDSRC/g' \ +# -e 's/\bSpeedConfidence\b/SpeedConfidenceDSRC/g' \ +# -e 's/\bHeading\b/HeadingDSRC/g' > "$@" + +#$(TOP_DIR)/./build/asn1/ISO_TS_17419/CITSdataDictionary1.asn: +# mkdir -p "$(dir $@)" +# curl -o "$@" 'https://standards.iso.org/iso/17419/ed-1/en/17419.1.asn' + +#$(TOP_DIR)/./build/asn1/ISO_TS_17419/CITSdataDictionary2.asn: +# mkdir -p "$(dir $@)" +# curl -o "$@" 'https://standards.iso.org/iso/17419/ed-1/en/17419.2.asn' + +#$(TOP_DIR)/./build/asn1/ISO_TS_19091/AddGrpC.asn: +#$(TOP_DIR)/./build/asn1/ISO_TS_19091/AddGrpC_noCircular.asn: +#$(TOP_DIR)/./build/asn1/ISO_TS_19091/DSRC.asn: +#$(TOP_DIR)/./build/asn1/ISO_TS_19091/DSRC_REGION_noCircular.asn +#$(TOP_DIR)/./build/asn1/ISO_TS_19091/REGION.asn + +#$(TOP_DIR)/./build/asn1/ISO_TS_19321/IVI.asn: +# mkdir -p "$(dir $@)" +# curl 'https://standards.iso.org/iso/ts/19321/ed-2/en/ISO19321IVIv2.asn' | \ +# sed -e 's/\bCITSdataDictionary1\b/CITSapplMgmtIDs/g' \ +# -e 's/,\s*\.\.\.\s*,\s*[0-9]\+/,.../g' \ +# > "$@" + +#$(TOP_DIR)/build/asn1/ISO_TS_24534-3/ElectronicRegistrationIdentificationVehicleDataModule.asn: +# mkdir -p "$(dir $@)" +# curl -o "$@" 'https://standards.iso.org/iso/24534/-3/ISO%2024534-3%20ASN.1%20repository/ISO24534-3_ElectronicRegistrationIdentificationVehicleDataModule_ForBallot.asn' + -- GitLab From e8cc8d1d50a868994b274befa9c6e303fe17c58a Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 13 Oct 2023 08:10:56 +0200 Subject: [PATCH 005/365] Added ttcn architecture --- ccsrc/Asn1c/asn1_recoder.cc | 56 + ccsrc/Asn1c/asn1_recoder.hh | 29 + ccsrc/Asn1c/module.mk | 3 + ccsrc/Asn1c/oer_codec.hh | 42 + ccsrc/Asn1c/per_codec.hh | 80 + ccsrc/EncDec/LibNGAP_Encdec.cc | 38 + ccsrc/EncDec/module.mk | 3 + ccsrc/Ports/LibNGAP/NGAPPort.cc | 134 + ccsrc/Ports/LibNGAP/NGAPPort.hh | 49 + ccsrc/Ports/LibNGAP/module.mk | 3 + ccsrc/Protocols/NGAP/codec.hh | 62 + ccsrc/Protocols/NGAP/module.mk | 2 + ccsrc/Protocols/NGAP/ngap_codec.cc | 166 + ccsrc/Protocols/NGAP/ngap_codec.hh | 45 + ccsrc/Protocols/NGAP/ngap_pdu_codec.cc | 72 + ccsrc/Protocols/NGAP/ngap_pdu_codec.hh | 20 + ccsrc/Protocols/NGAP/ngap_types.hh | 15 + ccsrc/Protocols/NGAP_layer/module.mk | 2 + ccsrc/Protocols/NGAP_layer/ngap_layer.cc | 174 + ccsrc/Protocols/NGAP_layer/ngap_layer.hh | 76 + .../NGAP_layer/ngap_layer_factory.hh | 41 + ttcn/AtsNGAP/NGAP_Pics.ttcn | 35 + ttcn/AtsNGAP/NGAP_Pixits.ttcn | 81 + ttcn/AtsNGAP/NGAP_Steps.ttcn | 163 + ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 140 + ttcn/AtsNGAP/NGAP_TestCases.ttcn | 51 + ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn | 135 + ttcn/AtsNGAP/NGAP_TestControl.ttcn | 27 + ttcn/AtsNGAP/NGAP_TestSystem.ttcn | 47 + ttcn/AtsNGAP/module.mk | 17 + .../lib/LibNGAP_EncdecDeclarations.ttcn | 13 + ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 273 + ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 267 + ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn | 63 + ttcn/LibNGAP/lib/asn1/Makefile.am.asn1convert | 14 + .../LibNGAP/lib/asn1/NGAP_CommonDataTypes.asn | 34 + ttcn/LibNGAP/lib/asn1/NGAP_Constants.asn | 591 ++ ttcn/LibNGAP/lib/asn1/NGAP_Containers.asn | 200 + ttcn/LibNGAP/lib/asn1/NGAP_IEs.asn | 6990 +++++++++++++++++ ttcn/LibNGAP/lib/asn1/NGAP_PDU_Contents.asn | 3388 ++++++++ .../lib/asn1/NGAP_PDU_Descriptions.asn | 888 +++ ttcn/LibNGAP/lib/asn1/converter-example.mk | 33 + ttcn/LibNGAP/lib/asn1/module.mk | 2 + .../LibNGAP/lib_system/LibNGAP_Interface.ttcn | 80 + ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn | 384 + ttcn/LibNGAP/module.mk | 6 + 46 files changed, 15034 insertions(+) create mode 100644 ccsrc/Asn1c/asn1_recoder.cc create mode 100644 ccsrc/Asn1c/asn1_recoder.hh create mode 100644 ccsrc/Asn1c/module.mk create mode 100644 ccsrc/Asn1c/oer_codec.hh create mode 100644 ccsrc/Asn1c/per_codec.hh create mode 100644 ccsrc/EncDec/LibNGAP_Encdec.cc create mode 100644 ccsrc/EncDec/module.mk create mode 100644 ccsrc/Ports/LibNGAP/NGAPPort.cc create mode 100644 ccsrc/Ports/LibNGAP/NGAPPort.hh create mode 100644 ccsrc/Ports/LibNGAP/module.mk create mode 100644 ccsrc/Protocols/NGAP/codec.hh create mode 100644 ccsrc/Protocols/NGAP/module.mk create mode 100644 ccsrc/Protocols/NGAP/ngap_codec.cc create mode 100644 ccsrc/Protocols/NGAP/ngap_codec.hh create mode 100644 ccsrc/Protocols/NGAP/ngap_pdu_codec.cc create mode 100644 ccsrc/Protocols/NGAP/ngap_pdu_codec.hh create mode 100644 ccsrc/Protocols/NGAP/ngap_types.hh create mode 100644 ccsrc/Protocols/NGAP_layer/module.mk create mode 100644 ccsrc/Protocols/NGAP_layer/ngap_layer.cc create mode 100644 ccsrc/Protocols/NGAP_layer/ngap_layer.hh create mode 100644 ccsrc/Protocols/NGAP_layer/ngap_layer_factory.hh create mode 100644 ttcn/AtsNGAP/NGAP_Pics.ttcn create mode 100644 ttcn/AtsNGAP/NGAP_Pixits.ttcn create mode 100644 ttcn/AtsNGAP/NGAP_Steps.ttcn create mode 100644 ttcn/AtsNGAP/NGAP_TCFunctions.ttcn create mode 100644 ttcn/AtsNGAP/NGAP_TestCases.ttcn create mode 100644 ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn create mode 100644 ttcn/AtsNGAP/NGAP_TestControl.ttcn create mode 100644 ttcn/AtsNGAP/NGAP_TestSystem.ttcn create mode 100644 ttcn/AtsNGAP/module.mk create mode 100644 ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn create mode 100644 ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn create mode 100644 ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn create mode 100644 ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn create mode 100644 ttcn/LibNGAP/lib/asn1/Makefile.am.asn1convert create mode 100644 ttcn/LibNGAP/lib/asn1/NGAP_CommonDataTypes.asn create mode 100644 ttcn/LibNGAP/lib/asn1/NGAP_Constants.asn create mode 100644 ttcn/LibNGAP/lib/asn1/NGAP_Containers.asn create mode 100644 ttcn/LibNGAP/lib/asn1/NGAP_IEs.asn create mode 100644 ttcn/LibNGAP/lib/asn1/NGAP_PDU_Contents.asn create mode 100644 ttcn/LibNGAP/lib/asn1/NGAP_PDU_Descriptions.asn create mode 100644 ttcn/LibNGAP/lib/asn1/converter-example.mk create mode 100644 ttcn/LibNGAP/lib/asn1/module.mk create mode 100644 ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn create mode 100644 ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn create mode 100644 ttcn/LibNGAP/module.mk diff --git a/ccsrc/Asn1c/asn1_recoder.cc b/ccsrc/Asn1c/asn1_recoder.cc new file mode 100644 index 0000000..df520ac --- /dev/null +++ b/ccsrc/Asn1c/asn1_recoder.cc @@ -0,0 +1,56 @@ +#include + +#include "asn1_recoder.hh" + +#include + +extern "C" { +static int asn1c_collect_encoded_data(const void *buffer, size_t size, void *application_specific_key) { + TTCN_Buffer *tb = (TTCN_Buffer *)application_specific_key; + tb->put_s(size, (unsigned char *)buffer); + return 0; +} +} + +int asn1_recoder::recode(const asn_TYPE_descriptor_s &td, int from, int to, TTCN_Buffer &buf) { + int rc = -1; + void * ptr = NULL; + asn_dec_rval_t rc_d; + rc_d = asn_decode(NULL, (asn_transfer_syntax)from, (asn_TYPE_descriptor_s *)&td, &ptr, buf.get_data(), buf.get_len()); + if (rc_d.code == RC_OK) { + // Encode as PER + asn_enc_rval_t rc_e; + buf.clear(); + rc_e = asn_encode(NULL, (asn_transfer_syntax)to, (asn_TYPE_descriptor_s *)&td, ptr, asn1c_collect_encoded_data, &buf); + rc = rc_e.encoded; + } + if (ptr) { + ASN_STRUCT_FREE(td, ptr); + } + return rc; +} + +int asn1_recoder::ber2per(const asn_TYPE_descriptor_s &td, TTCN_Buffer &buf) +{ + //return recode(td, (int)ATS_BER, (int)ATS_UNALIGNED_CANONICAL_PER, buf); + //return recode(td, (int)ATS_BER, (int)ATS_ALIGNED_CANONICAL_PER, buf); + return recode(td, (int)ATS_BER, (int)ATS_ALIGNED_BASIC_PER, buf); + //return recode(td, (int)ATS_BER, (int)ATS_UNALIGNED_BASIC_PER, buf); +} + +int asn1_recoder::per2ber(const asn_TYPE_descriptor_s &td, TTCN_Buffer &buf) +{ + //return recode(td, (int)ATS_UNALIGNED_BASIC_PER, (int)ATS_DER, buf); + //return recode(td, (int)ATS_ALIGNED_CANONICAL_PER, (int)ATS_BER, buf); + return recode(td, (int)ATS_ALIGNED_BASIC_PER, (int)ATS_BER, buf); +} + +int asn1_recoder::ber2oer(const asn_TYPE_descriptor_s & td, TTCN_Buffer & buf) +{ + return recode(td, (int)ATS_BER, (int)ATS_CANONICAL_OER, buf); +} + +int asn1_recoder::oer2ber(const asn_TYPE_descriptor_s & td, TTCN_Buffer & buf) +{ + return recode(td, (int)ATS_BASIC_OER, (int)ATS_BER, buf); +} diff --git a/ccsrc/Asn1c/asn1_recoder.hh b/ccsrc/Asn1c/asn1_recoder.hh new file mode 100644 index 0000000..7592e23 --- /dev/null +++ b/ccsrc/Asn1c/asn1_recoder.hh @@ -0,0 +1,29 @@ +/*! + * \file asn1_recode_per.hh + * \brief Header file ASN.1 PER codec based on asn1c external tool. + * \author ETSI STF525 + * \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. + * \version 0.1 + */ +#pragma once + +class OCTETSTRING; //! Forward declaration of TITAN class +class CHARSTRING; //! Forward declaration of TITAN class +class BITSTRING; //! Forward declaration of TITAN class +class TTCN_Buffer; //! Forward declaration of TITAN class +class TTCN_EncDec; //! Forward declaration of TITAN class +class TTCN_Typedescriptor_t; //! Forward declaration of TITAN class + +struct asn_TYPE_descriptor_s; //! Forward declaration of asn1c class + +class asn1_recoder { +protected: + int ber2per(const asn_TYPE_descriptor_s &td, TTCN_Buffer &buf); + int per2ber(const asn_TYPE_descriptor_s &td, TTCN_Buffer &buf); + int ber2oer(const asn_TYPE_descriptor_s &td, TTCN_Buffer &buf); + int oer2ber(const asn_TYPE_descriptor_s &td, TTCN_Buffer &buf); + int recode(const asn_TYPE_descriptor_s &td, int from, int to, TTCN_Buffer &buf); +}; // End of class asn1_recode_per diff --git a/ccsrc/Asn1c/module.mk b/ccsrc/Asn1c/module.mk new file mode 100644 index 0000000..226091a --- /dev/null +++ b/ccsrc/Asn1c/module.mk @@ -0,0 +1,3 @@ +sources := asn1_recoder.cc +includes := . + diff --git a/ccsrc/Asn1c/oer_codec.hh b/ccsrc/Asn1c/oer_codec.hh new file mode 100644 index 0000000..24c14d9 --- /dev/null +++ b/ccsrc/Asn1c/oer_codec.hh @@ -0,0 +1,42 @@ +#pragma once + +#include "params.hh" +#include "asn1_recoder.hh" + +class OCTETSTRING; +class CHARSTRING; +class BITSTRING; + +struct asn_TYPE_descriptor_s; + +template class oer_codec : public asn1_recoder +{ +public: + virtual int encode(const TPDU& msg, BITSTRING& bits) = 0; + virtual int decode(const BITSTRING& bits, TPDU& msg) = 0; + +protected: + inline int _decode (const TTCN_Typedescriptor_t& ttcn, const asn_TYPE_descriptor_s & td, const BITSTRING& p_data, TPDU& msg) { + TTCN_Buffer buf(bit2oct(p_data)); + TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING); + int rc = oer2xer (td, buf); + if (rc > 0) { + msg.decode(ttcn, buf, TTCN_EncDec::CT_BER, BER_ACCEPT_ALL); + rc = buf.get_len(); + } + return rc; + } + inline int _encode (const TTCN_Typedescriptor_t& ttcn, const asn_TYPE_descriptor_s & td, const TPDU& msg, BITSTRING& p_data) { + int rc = -1; + TTCN_Buffer buf; + TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING); + msg.encode(ttcn, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER); + if (buf.get_len() > 0) { + rc = xer2oer (td, buf); + if (rc > 0) { + p_data = oct2bit(OCTETSTRING(buf.get_len(), buf.get_data())); + } + } + return rc; + } +}; diff --git a/ccsrc/Asn1c/per_codec.hh b/ccsrc/Asn1c/per_codec.hh new file mode 100644 index 0000000..dfd960d --- /dev/null +++ b/ccsrc/Asn1c/per_codec.hh @@ -0,0 +1,80 @@ +/*! + * \file per_codec.hh + * \brief Header file for TITAN message to ASN.1 PER message codec. + * \author ETSI STF525 + * \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. + * \version 0.1 + */ +#pragma once + +#include "params.hh" +#include "asn1_recoder.hh" + +class BITSTRING; //! Forward declaration of TITAN class +class TTCN_Typedescriptor_t; //! Forward declaration of TITAN class + +struct asn_TYPE_descriptor_s; //! Declare asn1c class + +/*! + * \class per_codec + * \brief This class provides the interface for all ASN.1 PER codecs. + * \remark This class uses asn1c external tool + */ +template +class per_codec : public asn1_recoder +{ +public: //! \publicsection + /*! + * \fn int encode(const TPDU& p_message, BITSTRING& p_bitstring); + * \brief Encode TITAN message into ASN.1 PER message + * \param[in] p_message The PDU message to encode + * \param[out] p_bitstring The encoded PDU message in bit string format + * \pure + */ + virtual int encode(const TPDU& p_message, BITSTRING& p_bitstring) = 0; + /*! + * \fn int decode(const BITSTRING& p_bitstring, TPDU& p_message); + * \brief Decode ASN.1 PER message into TITAN message + * \param[in] p_bitstring The network message in bit string format to decode + * \param[out] p_message The PDU message + * \pure + */ + virtual int decode(const BITSTRING& p_bitstring, TPDU& p_message) = 0; + +protected: //! \protectedsection + inline int _decode (const TTCN_Typedescriptor_t& ttcn, const asn_TYPE_descriptor_s & td, const BITSTRING& p_data, TPDU& msg); + inline int _encode (const TTCN_Typedescriptor_t& ttcn, const asn_TYPE_descriptor_s & td, const TPDU& msg, BITSTRING& p_data); +}; // End of class per_codec + +#include + +template +int per_codec::_decode (const TTCN_Typedescriptor_t& ttcn, const asn_TYPE_descriptor_s & td, const BITSTRING& p_data, TPDU& msg) { + TTCN_Buffer buf(bit2oct(p_data)); + TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING); + int rc = per2ber (td, buf); + if (rc > 0) { + msg.decode(ttcn, buf, TTCN_EncDec::CT_BER, BER_ACCEPT_ALL); + rc = buf.get_len(); + } + return rc; +} + +template +int per_codec::_encode (const TTCN_Typedescriptor_t& ttcn, const asn_TYPE_descriptor_s & td, const TPDU& msg, BITSTRING& p_data) { + int rc = -1; + TTCN_Buffer buf; + TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_DEFAULT/*WARNING*/); + msg.encode(ttcn, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER); + if (buf.get_len() > 0) { + rc = ber2per (td, buf); + if (rc > 0) { + p_data = oct2bit(OCTETSTRING(buf.get_len(), buf.get_data())); + } + } + return rc; +} + diff --git a/ccsrc/EncDec/LibNGAP_Encdec.cc b/ccsrc/EncDec/LibNGAP_Encdec.cc new file mode 100644 index 0000000..7c5696f --- /dev/null +++ b/ccsrc/EncDec/LibNGAP_Encdec.cc @@ -0,0 +1,38 @@ +#include "loggers.hh" +#include "LibNGAP_EncdecDeclarations.hh" +//#include "ngap_codec.hh" + +namespace LibNGAP__EncdecDeclarations { + + /**************************************************** + * @desc External function to encode a .... type + * @param value to encode + * @return encoded value + ****************************************************/ + BITSTRING fx__enc__ProtocolIE(const LibNGAP__TypesAndValues::ProtocolIE &p) { + loggers::get_instance().log(">>> fx__enc__ProtocolIE::"); + loggers::get_instance().log_msg(">>> fx__enc__ProtocolIE:: ", p); + /*ngap_codec codec; + OCTETSTRING os; + if (codec.encode(p.IE(), os) == -1) { + loggers::get_instance().warning("fx__enc__ProtocolIE -1 result code was returned"); + return int2bit(0, 1); + } + + return oct2bit(os); +*/ + return int2bit(0, 8); + } + + /**************************************************** + * @desc External function to decode a .... type + * @param value to encode + * @return encoded value + ****************************************************/ + + INTEGER fx__dec__ProtocolIE(BITSTRING &b, LibNGAP__TypesAndValues::ProtocolIE &p) { + loggers::get_instance().log(">>> fx__dec__ProtocolIE::"); + return -1; + } + +} // namespace LibNGAP__EncdecDeclarations diff --git a/ccsrc/EncDec/module.mk b/ccsrc/EncDec/module.mk new file mode 100644 index 0000000..9151cd0 --- /dev/null +++ b/ccsrc/EncDec/module.mk @@ -0,0 +1,3 @@ +sources := LibNGAP_Encdec.cc +includes := . + diff --git a/ccsrc/Ports/LibNGAP/NGAPPort.cc b/ccsrc/Ports/LibNGAP/NGAPPort.cc new file mode 100644 index 0000000..2681bd1 --- /dev/null +++ b/ccsrc/Ports/LibNGAP/NGAPPort.cc @@ -0,0 +1,134 @@ +#include "loggers.hh" + +#include "LibNGAP_Interface.hh" +#include "NGAP_PDU_Descriptions.hh" +//#include "sctp_layer_factory.hh" +//#include "tcp_layer_factory.hh" +#include "ngap_layer_factory.hh" +#include "layer.hh" +#include "params.hh" + +namespace NGAP__PDU__Descriptions{ + class NGAP__PDU; +} +namespace LibNGAP__Interface { + + NGAPPort::NGAPPort(const char *par_port_name): NGAPPort_BASE(par_port_name), _cfg_params(), _layer_params(), _layer(nullptr), _time_key("NGAPPort::") { + // Nothing to do + } // End of constructor + + NGAPPort::~NGAPPort() { + loggers::get_instance().log(">>> NGAPPort::~NGAPPort"); + + if (_layer != nullptr) { + delete _layer; + } + } // End of destructor + + void NGAPPort::set_parameter(const char * parameter_name, const char * parameter_value) + { + loggers::get_instance().log("NGAPPort::set_parameter: %s=%s", parameter_name, parameter_value); + _cfg_params.insert(std::pair(std::string(parameter_name), std::string(parameter_value))); + } + + /*void HttpPort::Handle_Fd_Event(int fd, boolean is_readable, + boolean is_writable, boolean is_error) {}*/ + + void NGAPPort::Handle_Fd_Event_Error(int /*fd*/) + { + + } + + void NGAPPort::Handle_Fd_Event_Writable(int /*fd*/) + { + + } + + void NGAPPort::Handle_Fd_Event_Readable(int /*fd*/) + { + + } + + /*void HttpPort::Handle_Timeout(double time_since_last_call) {}*/ + + void NGAPPort::user_map(const char * system_port) + { + loggers::get_instance().log(">>> NGAPPort::user_map: %s", system_port); + // Build layer stack + params::iterator it = _cfg_params.find(std::string("params")); + if (it != _cfg_params.end()) { + loggers::get_instance().log("NGAPPort::user_map: %s", it->second.c_str()); + // Setup parameters + params::convert(_layer_params, it->second); // TODO This _layer_params seems to be useless + /*// Create layer + _layer = layer_stack_builder::get_instance()->create_layer_stack(it->second.c_str()); + + if (static_cast(_layer) == nullptr) { + loggers::get_instance().error("NGAPPort::user_map: Invalid stack configurationi - NOT SCTP: %s", it->second.c_str()); + } + else if (static_cast(_layer) == nullptr) { + loggers::get_instance().error("NGAPPort::user_map: Invalid stack configuration - NOT TCP: %s", it->second.c_str()); + } + //static_cast(_layer)->add_upper_port(this); + */ + // // Create layer + _layer = layer_stack_builder::get_instance()->create_layer_stack(it->second.c_str()); + if (static_cast(_layer) == NULL) { + loggers::get_instance().error("NGAPPort::user_map: Invalid stack configuration: %s", it->second.c_str()); + } + static_cast(_layer)->add_upper_port(this); + } else { + loggers::get_instance().error("NGAPPort::user_map: No layers defined in configuration file"); + } + } // End of user_map method + + void NGAPPort::user_unmap(const char * system_port) + { + loggers::get_instance().log(">>> NGAPPort:user_unmap: %s", system_port); + + // Reset layers + if (_layer != nullptr) { + delete _layer; + _layer = nullptr; + } + } // End of user_unmap method + + void NGAPPort::user_start() + { + loggers::get_instance().log(">>> NGAPPort::user_start"); + + } // End of user_start method + + void NGAPPort::user_stop() + { + loggers::get_instance().log(">>> NGAPPort::user_stop"); + + } // End of user_stop method + + void NGAPPort::outgoing_send(const NGAP__PDU__Descriptions::NGAP__PDU& send_par) + { + loggers::get_instance().log_msg(">>> NGAPPort::outgoing_send: payload=", send_par); + + float duration; + loggers::get_instance().set_start_time(_time_key); + params params; + //static_cast(_layer)->sendMsg(send_par, params); + static_cast(_layer)->sendMsg(send_par, params); + loggers::get_instance().set_stop_time(_time_key, duration); + } + + void NGAPPort::receiveMsg (const NGAP__PDU__Descriptions::NGAP__PDU& p_ind, const params& p_params) { + loggers::get_instance().log_msg(">>> NGAPPort::receive_msg: ", p_ind); + float duration; + loggers::get_instance().set_start_time(_time_key); + // Sanity check + if (!p_ind.is_bound()) { + return; + } + + incoming_message(p_ind); + loggers::get_instance().set_stop_time(_time_key, duration); + } + +} // End of namespace LibNGAP__Interface + diff --git a/ccsrc/Ports/LibNGAP/NGAPPort.hh b/ccsrc/Ports/LibNGAP/NGAPPort.hh new file mode 100644 index 0000000..f346146 --- /dev/null +++ b/ccsrc/Ports/LibNGAP/NGAPPort.hh @@ -0,0 +1,49 @@ +#pragma once + +#include "LibNGAP_Interface.hh" +#include "NGAP_PDU_Descriptions.hh" + +#include "layer.hh" +#include "params.hh" + +namespace NGAP__PDU__Descriptions{ + class NGAP__PDU; +} +namespace LibNGAP__Interface { + + //class HttpPort : public HttpPort_BASE { + class NGAPPort : public NGAPPort_BASE { + params _cfg_params; + params _layer_params; + layer* _layer; + std::string _time_key; + public: + NGAPPort(const char *par_port_name); + ~ NGAPPort(); + + //inline const char *get_name() const { return port_name; } + void set_parameter(const char *parameter_name, const char *parameter_value); + void receiveMsg (const NGAP__PDU__Descriptions::NGAP__PDU& p_ind, const params& p_params); + + private: + /* void Handle_Fd_Event(int fd, boolean is_readable, + boolean is_writable, boolean is_error); */ + void Handle_Fd_Event_Error(int fd); + void Handle_Fd_Event_Writable(int fd); + void Handle_Fd_Event_Readable(int fd); + /* void Handle_Timeout(double time_since_last_call); */ + + protected: + const char *port_name; + void user_map(const char *system_port); + void user_unmap(const char *system_port); + + void user_start(); + void user_stop(); + + protected: + void outgoing_send(const NGAP__PDU__Descriptions::NGAP__PDU& send_par); + }; // End of class NGAPPort + +} // End of namespace LibNGAP__Interface + diff --git a/ccsrc/Ports/LibNGAP/module.mk b/ccsrc/Ports/LibNGAP/module.mk new file mode 100644 index 0000000..20b21a7 --- /dev/null +++ b/ccsrc/Ports/LibNGAP/module.mk @@ -0,0 +1,3 @@ +sources := NGAPPort.cc +includes := . + diff --git a/ccsrc/Protocols/NGAP/codec.hh b/ccsrc/Protocols/NGAP/codec.hh new file mode 100644 index 0000000..ea1625d --- /dev/null +++ b/ccsrc/Protocols/NGAP/codec.hh @@ -0,0 +1,62 @@ +/*! + * \file codec.hh + * \brief Header file for ITS abstract codec definition. + * \author ETSI STF525 + * \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. + * \version 0.1 + */ +#pragma once + +///#include "params_its.hh" +#include "t_layer.hh" + +class OCTETSTRING; //! Declare TITAN class +class CHARSTRING; //! Declare TITAN class +class BITSTRING; //! Declare TITAN class + +/*! + * \class codec + * \brief This class provides the interface for all ITS codecs, include UT and AC codecs + * \abstract + */ +template class codec { +protected: + params *_params; //! Reference to params stack + // \todo Use smart pointer std::unique_ptr + +public: //! \publicsection + /*! + * \fn codec(); + * \brief Default constructor + * \todo Remove logs + */ + explicit codec() : _params(nullptr){}; + /*! + * \fn ~codec(); + * \brief Default destructor + * \virtual + * \todo Remove logs + */ + virtual ~codec(){}; + /*! + * \fn int encode(const TPDUEnc& msg, OCTETSTRING& data); + * \brief Encode typed message into an octet string + * \param[in] p_message The typed message to be encoded + * \param[out] p_data The encoding result + * \return 0 on success, -1 otherwise + * \pure + */ + virtual int encode(const TPDUEnc &p_message, OCTETSTRING &p_data) ;//= 0; + /*! + * \fn int decode(const OCTETSTRING& p_, TPDUDec& p_message, params_its* p_params = NULL); + * \brief Encode typed message into an octet string format + * \param[in] p_data The message in its octet string + * \param[out] p_message The decoded typed message + * \return 0 on success, -1 otherwise + * \pure + */ + virtual int decode(const OCTETSTRING &p_, TPDUDec &p_message, params *p_params = NULL) ;//= 0; +}; // End of class codec diff --git a/ccsrc/Protocols/NGAP/module.mk b/ccsrc/Protocols/NGAP/module.mk new file mode 100644 index 0000000..31c42b6 --- /dev/null +++ b/ccsrc/Protocols/NGAP/module.mk @@ -0,0 +1,2 @@ +sources := ngap_codec.cc ngap_pdu_codec.cc +includes := . diff --git a/ccsrc/Protocols/NGAP/ngap_codec.cc b/ccsrc/Protocols/NGAP/ngap_codec.cc new file mode 100644 index 0000000..f7a06e7 --- /dev/null +++ b/ccsrc/Protocols/NGAP/ngap_codec.cc @@ -0,0 +1,166 @@ +#include "ngap_codec.hh" +#include "LibNGAP_TypesAndValues.hh" +#include "asn1/asn_application.h" // from asn1c +#include "loggers.hh" +#include "NGAP_PDU_Descriptions.hh" + +template class OPTIONAL; +class TTCN_EncDec; + + +//int ngap_codec::encode(const NGAP__PDU__Descriptions::NGAP__PDU , OCTETSTRING &data) {return 0;} +int ngap_codec::encode(const NGAP__PDU__Descriptions::NGAP__PDU& ngap, OCTETSTRING &data) { + loggers::get_instance().log(">>> ngap_codec::encode"); + + BITSTRING b; + int rc = asn_codec.encode(ngap, b); + loggers::get_instance().log("ngap_codec::encode: ASN.1 codec returned %d", rc); + if (rc>0) { + //loggers::get_instance().log_msg("ngap_codec::encode: ", b); + //loggers::get_instance().log_msg("ngap_codec::encode: ", data); + data = bit2oct(b); + loggers::get_instance().log_msg("ngap_codec::encode: ", data); + }else{ + loggers::get_instance().log(">>> ngap_codec::encode: errcode %d", rc); + + } + return rc; + + + /*TTCN_EncDec::clear_error(); + TTCN_Buffer encoding_buffer; + encode_(ngap, *ngap.get_descriptor(), encoding_buffer); + data = OCTETSTRING(encoding_buffer.get_len(), encoding_buffer.get_data()); + return 0;*/ +} + +int ngap_codec::encode_(const Base_Type &type, const TTCN_Typedescriptor_t &field_descriptor, TTCN_Buffer &encoding_buffer) { + loggers::get_instance().log(">>> ngap_codec::encode_: processing %s/%s", type.get_descriptor()->name, field_descriptor.name); + loggers::get_instance().log_msg(">>> ngap_codec::encode_: ", type); + + /*if (dynamic_cast(&type) != NULL) { + const Record_Type &r = (const Record_Type &)type; + // loggers::get_instance().log("btp_codec::encode_: processing Record_Type %s", r.get_descriptor()->name); + for (int i = 0; i < r.get_count(); i++) { + // loggers::get_instance().log("btp_codec::encode_: processing %s/%s/%s - %d (1 ==> use dynamic_cast) - %d", r.fld_name(i), + // r.fld_descr(i)->name, r.get_at(i)->get_descriptor()->name, r.get_at(i)->is_optional(), r.get_at(i)->is_present()); + if (r.get_at(i)->is_present()) { + if (encode_(*r.get_at(i), *r.fld_descr(i), encoding_buffer) == -1) { + // loggers::get_instance().warning("btp_codec::encode_: -1 result code returned"); + return -1; + } + } + } // End of 'for' statement + } else if (std::string(field_descriptor.name).compare("@LibItsBtp_TypesAndValues.BtpPacket.payload") == 0) { + const OPTIONAL &v = dynamic_cast &>(type); + // loggers::get_instance().log("btp_codec::encode_: BtpRawPayload present: %d", v.is_present()); + if (v.is_present()) { + if (encode_(static_cast(*v.get_opt_value()), LibItsBtp__TypesAndValues::BtpRawPayload_descr_, + encoding_buffer) == -1) { + // loggers::get_instance().warning("btp_codec::encode_: -1 result code returned"); + return -1; + } + } + } else { + // loggers::get_instance().log("btp_codec::encode_ (else): processing type %s/%s", type.get_descriptor()->name, field_descriptor.name); + type.encode(field_descriptor, encoding_buffer, TTCN_EncDec::CT_RAW); + } +*/ + loggers::get_instance().log_to_hexa("<<>> ngap_codec::decode: ", data); + + int rc = asn_codec.decode(oct2bit(data), ngap); + loggers::get_instance().log("ngap_codec::decode: ASN.1 codec returned %d", rc); + if (rc>0) { + loggers::get_instance().log_msg("ngap_codec::decode: ", ngap); + }else{ + loggers::get_instance().log(">>> ngap_codec::decode: errcode %d", rc); + } + return rc; + + + /* TTCN_EncDec::clear_error(); + TTCN_Buffer decoding_buffer(data); + //_params = params; + + loggers::get_instance().log_to_hexa(">>> ngap_codec::decode: decoding_buffer=", decoding_buffer); + decode_(ngap, *ngap.get_descriptor(), decoding_buffer); + + loggers::get_instance().log_msg("<<< ngap_codec::decode: ", (const Base_Type&)ngap); + + return 0;*/ +} + +int ngap_codec::decode_(Base_Type &type, const TTCN_Typedescriptor_t &field_descriptor, TTCN_Buffer &decoding_buffer) { + loggers::get_instance().log(">>> ngap_codec::decode_: processing %s/%s (%d,%d,%p)", type.get_descriptor()->name, field_descriptor.name, + decoding_buffer.get_len(), decoding_buffer.get_pos(), decoding_buffer.get_read_data()); + + /*if (dynamic_cast(&type) != NULL) { + Record_Type &r = (Record_Type &)type; + // loggers::get_instance().log("btp_codec::decode_: processing Record_Type %s", r.get_descriptor()->name); + for (int i = 0; i < r.get_count(); i++) { + // loggers::get_instance().log("btp_codec::decode_: processing %s/%s/%s", r.fld_name(i), r.fld_descr(i)->name, r.get_at(i)->get_descriptor()->name); + if (decode_(*dynamic_cast(r.get_at(i)), *(r.fld_descr(i)), decoding_buffer) == -1) { + return -1; + } + } // End of 'for' statement + } else { + // loggers::get_instance().log("btp_codec::decode_ (else): processing type %s/%s - optional:%d", type.get_descriptor()->name, field_descriptor.name, + // type.is_optional()); + if (std::string(field_descriptor.name).compare("@LibItsBtp_TypesAndValues.BtpPacket.header") == 0) { + // loggers::get_instance().log("btp_codec::decode_: _type = %d", _type); + LibItsBtp__TypesAndValues::BtpHeader &b = static_cast(type); + if (_type == btp_codec::btpA) { + decode_(b.btpAHeader(), *b.btpAHeader().get_descriptor(), decoding_buffer); + if (_params != NULL) { + (*_params)[params_its::btp_type] = std::string("btpA"); + (*_params)[params_its::btp_destination_port] = std::to_string(static_cast(b.btpAHeader().destinationPort())); + } + } else if (_type == btp_codec::btpB) { + decode_(b.btpBHeader(), *b.btpBHeader().get_descriptor(), decoding_buffer); + if (_params != NULL) { + (*_params)[params_its::btp_type] = std::string("btpB"); + (*_params)[params_its::btp_destination_port] = std::to_string(static_cast(b.btpBHeader().destinationPort())); + (*_params)[params_its::btp_info] = std::to_string(static_cast(b.btpBHeader().destinationPortInfo())); + } + } else { + // loggers::get_instance().error("btp_codec::decode_: Invalid BTP type"); // Cannot be reached + } + // loggers::get_instance().log_msg("btp_codec::decode_: BtpHeader: ", type); + } else if (std::string(field_descriptor.name).compare("@LibItsBtp_TypesAndValues.BtpPacket.payload") == 0) { + if (decoding_buffer.get_len() == decoding_buffer.get_pos()) { // No payload, set it to omit + // loggers::get_instance().log("btp_codec::decode_: Set OPTIONAL to omit"); + dynamic_cast &>(type).set_to_omit(); + } else { + // Decode BtpRawPayload data structure + OCTETSTRING os(decoding_buffer.get_len() - decoding_buffer.get_pos(), decoding_buffer.get_data() + decoding_buffer.get_pos()); + // loggers::get_instance().log_msg("btp_codec::decode_: s=", os); + if (_params != NULL) { + (*_params)[params_its::btp_payload] = std::string(static_cast(oct2str(os))); + } + if (os.lengthof() != 0) { + dynamic_cast &>(type) = OPTIONAL(os); + // loggers::get_instance().log_msg("btp_codec::decode_: Set OPTIONAL to ", type); + } else { + // loggers::get_instance().log("btp_codec::decode_: Set OPTIONAL to omit"); + dynamic_cast &>(type).set_to_omit(); + } + } + } else { + type.decode(field_descriptor, decoding_buffer, TTCN_EncDec::CT_RAW); + } + } +*/ + loggers::get_instance().log_msg("<<< ngap_codec::decode_: ", type); + loggers::get_instance().log_to_hexa("<<< ngap_codec::decode_: decoding_buffer=", decoding_buffer); + + return 0; +} + diff --git a/ccsrc/Protocols/NGAP/ngap_codec.hh b/ccsrc/Protocols/NGAP/ngap_codec.hh new file mode 100644 index 0000000..9f3bb16 --- /dev/null +++ b/ccsrc/Protocols/NGAP/ngap_codec.hh @@ -0,0 +1,45 @@ +#pragma once + +#include "LibNGAP_TypesAndValues.hh" +#include "ngap_pdu_codec.hh" +//#include "codec.hh" +#include "NGAP_PDU_Descriptions.hh" + +class BITSTRING; //! Forward declaration of TITAN class +class OCTETSTRING; //! Forward declaration of TITAN class +//class params_; + +class Base_Type; +class TTCN_Typedescriptor_t; +class TTCN_Buffer; + + +//namespace NGAP__PDU__Descriptions { //! Forward declaration of asn1c NGAP class +// class NGAP__PDU; +//} + +//class ngap_codec : public codec { +class ngap_codec { + ngap_pdu_codec asn_codec; + + int encode_(const Base_Type &type, const TTCN_Typedescriptor_t &field_descriptor, TTCN_Buffer &encoding_buffer); + + int decode_(Base_Type &type, const TTCN_Typedescriptor_t &field_descriptor, TTCN_Buffer &decoding_buffer); + + +public: + //explicit ngap_codec() : codec(), asn_codec(){}; + /*explicit*/ ngap_codec() : asn_codec(){}; + virtual ~ngap_codec(){}; + + /*virtual*/ int encode(const NGAP__PDU__Descriptions::NGAP__PDU& ngap, OCTETSTRING &data); + /*virtual*/ int decode(const OCTETSTRING &data, NGAP__PDU__Descriptions::NGAP__PDU &, params *params = NULL); +}; + +//void NGAP__PDU::encode(const TTCN_Typedescriptor_t& p_td, TTCN_Buffer& p_buf, int p_coding, ...) const +//{ +// va_list pvar; +// va_start(pvar, p_coding); + // switch(p_coding) { +// case TTCN_EncDec::CT_BER: { + diff --git a/ccsrc/Protocols/NGAP/ngap_pdu_codec.cc b/ccsrc/Protocols/NGAP/ngap_pdu_codec.cc new file mode 100644 index 0000000..86c1a4f --- /dev/null +++ b/ccsrc/Protocols/NGAP/ngap_pdu_codec.cc @@ -0,0 +1,72 @@ +#include "ngap_pdu_codec.hh" +#include "LibNGAP_TypesAndValues.hh" +#include "asn1/asn_application.h" // from asn1c +#include "loggers.hh" +#include "NGAP_PDU_Descriptions.hh" +#include "TTCN3.hh" +#include +extern "C" { +extern asn_TYPE_descriptor_t asn_DEF_NGAP_PDU; +} +/*extern "C" { +static int asn1c_collect_encoded_data(const void *buffer, size_t size, void *application_specific_key) { + TTCN_Buffer *tb = (TTCN_Buffer *)application_specific_key; + tb->put_s(size, (unsigned char *)buffer); + return 0; +} +}*/ + +int ngap_pdu_codec::encode(const NGAP__PDU__Descriptions::NGAP__PDU &p_ngap, BITSTRING &p_data) { + loggers::get_instance().log("ngap_pdu_codec::encode: "); + /*loggers::get_instance().log_msg("ngap_pdu_codec::encodemsg: ",p_ngap); + TTCN_Buffer buf; + TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::WARNING); + p_ngap.encode(NGAP__PDU__Descriptions::NGAP__PDU_descr_, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER); + p_data = oct2bit(OCTETSTRING(buf.get_len(), buf.get_data())); + + loggers::get_instance().log_msg("ngap_pdu_codec::encodemsg: ",OCTETSTRING(buf.get_len(), buf.get_data())); + + void * ptr = NULL; + asn_dec_rval_t rc_d; + + rc_d = asn_decode(NULL, ATS_BER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, &ptr, buf.get_data(), buf.get_len()); + if (rc_d.code == RC_OK) { + // rc = rc_e.encoded; + + loggers::get_instance().log("ngap_pdu_codec::ASN1C decoded BER OK: "); + // Encode as PER + asn_enc_rval_t rc_e; + buf.clear(); + rc_e = asn_encode(NULL,ATS_ALIGNED_BASIC_PER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, ptr, asn1c_collect_encoded_data, &buf); + //rc_e = asn_encode(NULL,ATS_UNALIGNED_BASIC_PER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, ptr, asn1c_collect_encoded_data, &buf); + //rc_e = asn_encode(NULL,ATS_ALIGNED_CANONICAL_PER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, ptr, asn1c_collect_encoded_data, &buf); + //rc_e = asn_encode(NULL,ATS_UNALIGNED_CANONICAL_PER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, ptr, asn1c_collect_encoded_data, &buf); + + + if (rc_e.encoded > 0) { + loggers::get_instance().log("ngap_pdu_codec::ASN1C encoded PER OK: "); + loggers::get_instance().log_msg("ngap_pdu_codec::encodemsg PER: ",OCTETSTRING(buf.get_len(), buf.get_data())); + }else{ + + //loggers::get_instance().log("ngap_pdu_codec::ASN1C encoded PER NOK:%d %d",rc_e.encoded,errno); + switch (errno){ + case EINVAL: {loggers::get_instance().log("Incorrect parameters to the function, such as NULLs.");break;} + case ENOENT: {loggers::get_instance().log("Encoding transfer syntax is not defined (for this type)");break;} + case EBADF: {loggers::get_instance().log("The structure has invalid form or content constraint failed.");break;} + case EIO: {loggers::get_instance().log("The (callback) has returned negative value during encoding.");break;} + } + loggers::get_instance().log("ngap_pdu_codec::ASN1C encoded PER NOK:end switch errno %d",errno); + } + + } + if (ptr) { + ASN_STRUCT_FREE(asn_DEF_NGAP_PDU, ptr); + }*/ + + return _encode(NGAP__PDU__Descriptions::NGAP__PDU_descr_, asn_DEF_NGAP_PDU, p_ngap, p_data); +} + +int ngap_pdu_codec::decode(const BITSTRING &p_data, NGAP__PDU__Descriptions::NGAP__PDU &p_ngap) { + loggers::get_instance().log("ngap_pdu_codec::decode: "); + return _decode(NGAP__PDU__Descriptions::NGAP__PDU_descr_, asn_DEF_NGAP_PDU, p_data, p_ngap); +} diff --git a/ccsrc/Protocols/NGAP/ngap_pdu_codec.hh b/ccsrc/Protocols/NGAP/ngap_pdu_codec.hh new file mode 100644 index 0000000..c7d4304 --- /dev/null +++ b/ccsrc/Protocols/NGAP/ngap_pdu_codec.hh @@ -0,0 +1,20 @@ +#pragma once + +//#include "codec.hh" +#include "params.hh" +#include "per_codec.hh" +#include "NGAP_PDU_Descriptions.hh" + +class BITSTRING; //! Forward declaration of TITAN class +class OCTETSTRING; //! Forward declaration of TITAN class +struct asn_TYPE_descriptor_s; //! Forward declaration of asn1c class +//namespace NGAP__PDU__Descriptions { //! Forward declaration of asn1c NGAP class +// class NGAP__PDU; +//} + +class ngap_pdu_codec : public per_codec { +public: + explicit ngap_pdu_codec(){}; + virtual int encode(const NGAP__PDU__Descriptions::NGAP__PDU &ngap, BITSTRING &data); + virtual int decode(const BITSTRING &data, NGAP__PDU__Descriptions::NGAP__PDU &ngap); +}; diff --git a/ccsrc/Protocols/NGAP/ngap_types.hh b/ccsrc/Protocols/NGAP/ngap_types.hh new file mode 100644 index 0000000..23ab60d --- /dev/null +++ b/ccsrc/Protocols/NGAP/ngap_types.hh @@ -0,0 +1,15 @@ +/*! + * \file cam_types.hh + * \brief Header file for TITAN NGAP types. + * \author ETSI + * \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. + * \version 0.1 + */ +#pragma once + +using namespace std; // Required for isnan() +#include "LibNGAP_TypesAndValues.hh" +#include "NGAP_PDU_Descriptions.hh" diff --git a/ccsrc/Protocols/NGAP_layer/module.mk b/ccsrc/Protocols/NGAP_layer/module.mk new file mode 100644 index 0000000..654f8ac --- /dev/null +++ b/ccsrc/Protocols/NGAP_layer/module.mk @@ -0,0 +1,2 @@ +sources := ngap_layer.cc +includes := . ../NGAP/ diff --git a/ccsrc/Protocols/NGAP_layer/ngap_layer.cc b/ccsrc/Protocols/NGAP_layer/ngap_layer.cc new file mode 100644 index 0000000..1132ca8 --- /dev/null +++ b/ccsrc/Protocols/NGAP_layer/ngap_layer.cc @@ -0,0 +1,174 @@ +#include "ngap_types.hh" + +#include "NGAP_TestSystem.hh" + +#include "ngap_layer_factory.hh" +//#include "geonetworking_layer_factory.hh" + +#include "registration.hh" + +#include "loggers.hh" + +ngap_layer::ngap_layer(const std::string &p_type, const std::string ¶m) : t_layer(p_type), _params(), _codec() { + loggers::get_instance().log(">>> ngap_layer::ngap_layer: %s, %s", to_string().c_str(), param.c_str()); + // Setup parameters + params::convert(_params, param); +// _params.insert(std::make_pair("its_aid", "36")); // ETSI TS 102 965 V1.2.1 (2015-06) +// _params.insert(std::make_pair("payload_type", "2")); // CA message id - See ETSI TS 102 894 + + // Register this object for AdapterControlPort + loggers::get_instance().log("ngap_layer::ngap_layer: Register %s/%p", p_type.c_str(), this); + registration::get_instance().add_item(p_type, this); +} + +void ngap_layer::sendMsg(const NGAP__PDU__Descriptions::NGAP__PDU& p, params ¶ms) { + loggers::get_instance().log_msg(">>> ngap_layer::sendMsg: ", p); + + // Encode NGAP PDU + OCTETSTRING data = int2oct(0,1); + //OCTETSTRING data; + // loggers::get_instance().warning("ngap_layer::sendMsg: Try to encode..."); + + //if (_codec){ + if (_codec.encode(p, data) < 0) { + loggers::get_instance().warning("ngap_layer::sendMsg: Encoding failure"); + data=int2oct(0,1); + //return; + } + loggers::get_instance().log_msg(">>> ngap_layer::sendMsg . encoded: ", data); + //}else{ +// loggers::get_instance().warning("ngap_layer::sendMsg: codec not set"); + //} + send_data(data, _params); +} + +void ngap_layer::send_data(OCTETSTRING &data, params &p_params) { + loggers::get_instance().log_msg(">>> ngap_layer::send_data: ", data); + + send_to_all_layers(data, p_params); +} + +void ngap_layer::receive_data(OCTETSTRING &data, params &p_params) { + loggers::get_instance().log_msg(">>> ngap_layer::receive_data: ", data); + + // Sanity check + //if (*(static_cast(data) + 1) != 0x02) { // Check that received packet has CA message id - See ETSI TS 102 894 + // // Not a NGAP message, discard it + // loggers::get_instance().warning("ngap_layer::receive_data: Wrong message id: 0x%02x", *(static_cast(data) + 1)); + // return; + //} + + // Decode the payload + //params ¶ms = p_params;//static_cast(p_params); + + NGAP__PDU__Descriptions::NGAP__PDU p; + _codec.decode(data, p, &p_params); + /*if (!p.msgIn().is_bound()) { + // Discard it + return; + } // else, continue + + // Process lower layer data + // recvTime + params::const_iterator it = params.find(params::timestamp); + if (it != params.cend()) { + p.recvTime().set_long_long_val(std::stoll(it->second)); + } else { + p.recvTime().set_to_omit(); + } + // gnNextHeader + it = params.find(params_its::gn_next_header); + if (it != params.cend()) { + p.gnNextHeader() = std::stoi(it->second); + } else { + p.gnNextHeader().set_to_omit(); + } + // gnHeaderType + it = params.find(params_its::gn_header_type); + if (it != params.cend()) { + p.gnHeaderType() = std::stoi(it->second); + } else { + p.gnHeaderType().set_to_omit(); + } + // gnHeaderSubtype + it = params.find(params_its::gn_header_sub_type); + if (it != params.cend()) { + p.gnHeaderSubtype() = std::stoi(it->second); + } else { + p.gnHeaderSubtype().set_to_omit(); + } + // gnLifetime + it = params.find(params_its::gn_lifetime); + if (it != params.cend()) { + p.gnLifetime() = std::stoi(it->second); + } else { + p.gnLifetime().set_to_omit(); + } + // gnTrafficClass + it = params.find(params_its::gn_traffic_class); + if (it != params.cend()) { + p.gnTrafficClass() = std::stoi(it->second); + } else { + p.gnTrafficClass().set_to_omit(); + } + // btpDestinationPort + it = params.find(params_its::btp_destination_port); + if (it != params.cend()) { + p.btpDestinationPort() = std::stoi(it->second); + } else { + p.btpDestinationPort().set_to_omit(); + } + // btpInfo + it = params.find(params_its::btp_info); + if (it != params.cend()) { + p.btpInfo() = std::stoi(it->second); + } else { + p.btpInfo().set_to_omit(); + } + // ssp + it = params.find(params_its::ssp); + if (it != params.cend()) { + loggers::get_instance().log("ngap_layer::receive_data: ssp=%s", it->second.c_str()); + p.ssp() = oct2bit(str2oct(CHARSTRING(it->second.c_str()))); + } else { + p.ssp().set_to_omit(); + } + // its_aid + it = params.find(params_its::its_aid); + if (it != params.cend()) { + p.its__aid() = std::stoi(it->second); + } else { + p.its__aid().set_to_omit(); + } +*/ + // Pass it to the ports if any + to_all_upper_ports(p, p_params); + + loggers::get_instance().log_msg(">>> ngap_layer::receive_data:TO UPPER PORT ", p); +} + +/*int ngap_layer::enable_secured_mode(const std::string &p_certificate_id, const boolean p_enforce_security) { + loggers::get_instance().log(">>> ngap_layer::enable_secured_mode: '%s' - %x", p_certificate_id.c_str(), p_enforce_security); + + geonetworking_layer *p = registration::get_instance().get_item(std::string("GN")); + if (p == NULL) { + return -1; + } + + loggers::get_instance().log("ngap_layer::enable_secured_mode: Got GN layer %p", p); + return p->enable_secured_mode(p_certificate_id, p_enforce_security); +} + +int ngap_layer::disable_secured_mode() { + loggers::get_instance().log(">>> ngap_layer::disable_secured_mode"); + + geonetworking_layer *p = registration::get_instance().get_item(std::string("GN")); + if (p == NULL) { + return -1; + } + + loggers::get_instance().log("ngap_layer::disable_secured_mode: Got GN layer %p", p); + return p->disable_secured_mode(); +}*/ + +ngap_layer_factory ngap_layer_factory::_f; diff --git a/ccsrc/Protocols/NGAP_layer/ngap_layer.hh b/ccsrc/Protocols/NGAP_layer/ngap_layer.hh new file mode 100644 index 0000000..fbdc65a --- /dev/null +++ b/ccsrc/Protocols/NGAP_layer/ngap_layer.hh @@ -0,0 +1,76 @@ +/*! + * \file ngap_layer.hh + * \brief Header file for ITS NGAP protocol layer. + * \author ETSI STF525 + * \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. + * \version 0.1 + */ +#pragma once + +#include "ngap_codec.hh" +#include "t_layer.hh" + +namespace LibNGAP__Interface { + class NGAPPort; //! Forward declaration of TITAN class + //class CamReq; //! Forward declaration of TITAN class + //class CamInd; //! Forward declaration of TITAN class +} // namespace NGAP__TestSystem + +/*! + * \class ngap_layer + * \brief This class provides description of ITS NGAP protocol layer + */ +class ngap_layer : public t_layer { + params _params; //! Layer parameters + ngap_codec _codec; //! NGAP codec +public: //! \publicsection + /*! + * \brief Default constructor + * Create a new instance of the ngap_layer class + */ + explicit ngap_layer() : t_layer(), _params(), _codec(){}; + /*! + * \brief Specialised constructor + * Create a new instance of the ngap_layer class + * \param[in] p_type \todo + * \param[in] p_param \todo + */ + ngap_layer(const std::string &p_type, const std::string ¶m); + /*! + * \brief Default destructor + */ + virtual ~ngap_layer(){}; + + /*! + * \fn void sendMsg(const LibItsCam__TestSystem::CamReq& p_ngap_req, params& p_params); + * \brief Send CA message to the lower layers + * \param[in] p_ngap_req The CA message to be sent + * \param[in] p_params Some parameters to overwrite default value of the lower layers parameters + */ + void sendMsg(const NGAP__PDU__Descriptions::NGAP__PDU& p_ngap, params &p_params); + + /*! + * \virtual + * \fn void send_data(OCTETSTRING& data, params& params); + * \brief Send bytes formated data to the lower layers + * \param[in] p_data The data to be sent + * \param[in] p_params Some parameters to overwrite default value of the lower layers parameters + */ + virtual void send_data(OCTETSTRING &data, params ¶ms); + /*! + * \virtual + * \fn void receive_data(OCTETSTRING& data, params& params); + * \brief Receive bytes formated data from the lower layers + * \param[in] p_data The bytes formated data received + * \param[in] p_params Some lower layers parameters values when data was received + */ + virtual void receive_data(OCTETSTRING &data, params &info); + +// int enable_secured_mode(const std::string &p_certificate_id, const boolean p_enforce_security); + +// int disable_secured_mode(); + +}; // End of class ngap_layer diff --git a/ccsrc/Protocols/NGAP_layer/ngap_layer_factory.hh b/ccsrc/Protocols/NGAP_layer/ngap_layer_factory.hh new file mode 100644 index 0000000..f07f49f --- /dev/null +++ b/ccsrc/Protocols/NGAP_layer/ngap_layer_factory.hh @@ -0,0 +1,41 @@ +/*! + * \file ngap_layer_factory.hh + * \brief Header file for ITS NGAP protocol layer factory. + * \author ETSI STF525 + * \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. + * \version 0.1 + */ +#pragma once + +#include "layer_stack_builder.hh" + +#include "ngap_layer.hh" + +/*! + * \class ngap_layer_factory + * \brief This class provides a factory class to create a ngap_layer class instance + */ +class ngap_layer_factory : public layer_factory { + static ngap_layer_factory _f; //! Reference to the unique instance of this class +public: //! \publicsection + /*! + * \brief Default constructor + * Create a new instance of the ngap_layer_factory class + * \remark The NGAP layer identifier is NGAP + */ + ngap_layer_factory() { + // Register factory + layer_stack_builder::register_layer_factory("NGAP", this); + }; + /*! + * \fn layer* create_layer(const std::string & type, const std::string & param); + * \brief Create the layers stack based on the provided layers stack description + * \param[in] p_type The provided layers stack description + * \param[in] p_params Optional parameters + * \return 0 on success, -1 otherwise + */ + inline virtual layer *create_layer(const std::string &p_type, const std::string &p_param) { return new ngap_layer(p_type, p_param); }; +}; // End of class ngap_layer_factory diff --git a/ttcn/AtsNGAP/NGAP_Pics.ttcn b/ttcn/AtsNGAP/NGAP_Pics.ttcn new file mode 100644 index 0000000..4c4f4fb --- /dev/null +++ b/ttcn/AtsNGAP/NGAP_Pics.ttcn @@ -0,0 +1,35 @@ +/** + * @author ETSI / + * @version $URL$ + * $Id$ + * @desc This module provides the PICS used for the NGAP 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 + */ +module NGAP_Pics { + + group PICS_A2 { + /** + * @desc Does gNB act as the IUT? + * @see ETSI + */ + modulepar boolean PICS_NGAP_GNB_IUT := false; + + /** + * @desc Does AMF act as the IUT? + * @see ETSI + */ + modulepar boolean PICS_NGAP_AMF_IUT := false; + + } // End of group PICS_A2 + + group PICS_A3 { + } // End of group PICS_A3 + + group PICS_A4 { + } // End of group PICS_A4 + +} // End of module NGAP_Pics diff --git a/ttcn/AtsNGAP/NGAP_Pixits.ttcn b/ttcn/AtsNGAP/NGAP_Pixits.ttcn new file mode 100644 index 0000000..ceb0981 --- /dev/null +++ b/ttcn/AtsNGAP/NGAP_Pixits.ttcn @@ -0,0 +1,81 @@ +/** + * @author ETSI / + * @version $URL$ + * $Id$ + * @desc This module provides the PIXIT used for the NGAP 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 / 3GPP TS + */ +module NGAP_Pixits { + + // LibNGAP + import from NGAP_CommonDataTypes language "ASN.1:1997" all; + + group NGAP_Port_and_addresses { + + group NGAP_TS_Port_and_addresses { + + /** @desc + * IP address of the test system + */ + modulepar charstring PX_NGAP_ETS_IPADDR := "1.1.1.10"; + + /** @desc + * Port number of the test system + */ + modulepar integer PX_NGAP_ETS_PORT := 3868; + + /** @desc + * IP address of the test system + */ + modulepar charstring PX_NGAP_ETS_IPADDR2 := "1.1.1.13"; + + /** @desc + * Port number of the test system + */ + modulepar integer PX_NGAP_ETS_PORT2 := 3868; + + + } // End of group NGAP_TS_Port_and_addresses + + group NGAP_SUT_Port_and_addresses { + + /** @desc + * IP address of the system under test + */ + modulepar charstring PX_NGAP_SUT_IPADDR := "1.1.2.10"; + + /** @desc + * Port number of the system under test + */ + modulepar integer PX_NGAP_SUT_PORT := 3868; + + } // End of group NGAP_SUT_Port_and_addresses{ + + } // End of group NGAP_Port_and_addresses + + group NGAP_CommonData { + + /** + * @desc integer for variant selection, + * @see ETSI + */ + modulepar integer PX_VA := 1; + + /** + * @desc Variant for Criticality values + */ + modulepar Criticality PX_VA_CRITICALITY := reject; + + /** + * @desc integer for timer TS1RELOCOverall, + * @see ETSI TS 136 413, chapter 9.5 + */ + modulepar float PX_TS1RELOCOverall := 10.0; + + } // End of group NGAP_CommonData + +} // End of module NGAP_Pixits diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn new file mode 100644 index 0000000..d7f5e21 --- /dev/null +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -0,0 +1,163 @@ +/** + * @author ETSI / + * @version $URL$ + * $Id$ + * @desc This module provides ATS specific steps used by the test cases for NGAP test. + * @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 / 3GPP TS + */ +module NGAP_Steps { + + // LibNGAP + import from LibNGAP_Steps all; + import from LibNGAP_Interface all; + + // NGAP_Ats + import from NGAP_Pixits all; + + group GlobalSteps { + + /** + * @desc This is a test step that init global variables + * This procedure will be use when the Test System acts as AMF (SUT is gNB) + */ + function f_NGAP_amf_init() + runs on NGAPComponent { + + // Defaults + vc_default_ngap := activate (a_defaultNGAP()); + + // Base LibNGAP init function if there will be any base initialisation + f_NGAP_Init_Component(); + + vc_ETS_address := PX_NGAP_ETS_IPADDR; + vc_ETS_port := PX_NGAP_ETS_PORT; + vc_SUT_address := PX_NGAP_SUT_IPADDR; + vc_SUT_port := PX_NGAP_SUT_PORT; + + } // End of function f_NGAP_amf_init + + /** + * @desc This is a test step that init global variables + * This procedure will be use when the Test System acts as gNB (SUT is AMF) + */ + function f_NGAP_gnb_init() + runs on NGAPComponent { + + // Defaults + vc_default_ngap := activate (a_defaultNGAP()); + + // Base LibNGAP init function if there will be any base initialisation + f_NGAP_Init_Component(); + + vc_ETS_address := PX_NGAP_ETS_IPADDR; + vc_ETS_port := PX_NGAP_ETS_PORT; + vc_SUT_address := PX_NGAP_SUT_IPADDR; + vc_SUT_port := PX_NGAP_SUT_PORT; + + } // End of function f_NGAP_gnb_init + + /** + * @desc This is a test step that init global variables + */ + function f_NGAP_gnb_init2() + runs on NGAPComponent { + + // Defaults + vc_default_ngap := activate (a_defaultNGAP()); + + // Base LibNGAP init function if there will be any base initialisation + f_NGAP_Init_Component(); + + vc_ETS_address := PX_NGAP_ETS_IPADDR2; + vc_ETS_port := PX_NGAP_ETS_PORT2; + vc_SUT_address := PX_NGAP_SUT_IPADDR; + vc_SUT_port := PX_NGAP_SUT_PORT; + + } // End of function f_NGAP_gnb_init2 + + } // End of group GlobalSteps + + group Preambles{ + + /** + * @desc + */ + function f_preamble_NGAP_AMF() runs on NGAPComponent { + var default v_def_ngap_; + + f_NGAP_amf_init(); + //f_preambleNGAPClient(); + } // End of function f_preamble_NGAP_AMF + + /** + * @desc + */ + function f_preamble_NGAP_gNB() runs on NGAPComponent { + var default v_def_ngap_; + + f_NGAP_gnb_init(); + //f_preambleNGAPServer(); + } // End of function f_preamble_NGAP_gNB + + /** + * @desc + */ + function f_preamble_NGAP_gNB2() runs on NGAPComponent { + var default v_def_ngap_; + + f_NGAP_gnb_init2(); + //f_preambleNGAPServer(); + } // End of function f_preamble_NGAP_gNB2 + + } // End of group Preambles + + group Postambles { + + /** + * @desc + */ + function f_postamble_NGAP_AMF() runs on NGAPComponent { + f_postambleNGAP_AMF(); + + // Deactivate defaults + deactivate; + } // End of function f_postamble_NGAP_AMF + + /** + * @desc + */ + function f_postamble_NGAP_gNB() runs on NGAPComponent { + f_postambleNGAP_gNB(); + + //Deactivate defaults + deactivate; + } // End of function f_postamble_NGAP_gNB + + /** + * @desc + */ + function f_postamble_NGAP_gNB2() runs on NGAPComponent { + f_postambleNGAP_gNB(); + + // Deactivate defaults + deactivate; + } // End of function f_postamble_NGAP_gNB2 + + } // End of group Postambles + + group CheckFunctions { + + } // End of group CheckFunctions + + group SendMessage { + } // End of group SendMessage + + group DefaultTestStep{ + + }//end group DefaultTestStep + +} // End of module NGAP_Steps diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn new file mode 100644 index 0000000..7f36482 --- /dev/null +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -0,0 +1,140 @@ +/** + * @author ETSI / + * @version $URL$ + * $Id$ + * @desc This module provides RfRo test functions used by the test cases. + * @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 / 3GPP TS + */ +module NGAP_TCFunctions { + + // LibCommon + import from LibCommon_Sync all; + import from LibCommon_VerdictControl all; + import from LibCommon_Time {function f_sleepIgnoreDef;} + + // LibNGAP + import from NGAP_IEs language "ASN.1:2002" all; + import from NGAP_Constants language "ASN.1:2002" all; + + import from LibNGAP_Pixits all; + import from LibNGAP_Templates all; + import from LibNGAP_Interface all; + import from LibNGAP_Steps all; + + // NGAP_Ats + import from NGAP_Steps all; + import from NGAP_Pixits all; + + group gNB_Role { + + /** + * @desc E-RAB management group + * @see ETSI DTS/INT-00135-2 Clause 5.2.2.1.2 E-RAB management group + */ + group ERAB_management_group { + + /** + * @desc Testcase function for TC_NGAP_eNB_RAB_01 + */ + function f_TC_NGAP_gNB_SetupRequest_01() runs on NGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + /*f_send_E_RABSetupRequest(m_E_RABSetupReqIEs( + vc_MME_UE_ID, + vc_eNB_UE_ID, + {m_E_RABToBeSetupItemBearerSUReq ( + -, + m_e_RABlevelQoSParameters + (5) + )} + )); + + f_recv_E_RABSetupResponse(mw_E_RABSetupResIEs( + vc_MME_UE_ID, + vc_eNB_UE_ID, + { + mw_E_RABSetupItemBearerSURes + } + )); + */ + //if (not (isvalue(m_global_gNB_ID_IE(m_granID) ))) { log (m_global_gNB_ID_IE(m_granID))} + //else{log("template error")} + log(m_global_gNB_ID_IE(m_granID)); + var bitstring m_out:= encvalue(m_global_gNB_ID_IE(m_granID)); + log("Send ...", m_out); + log(m_initiatingMessage(id_NGSetup)); + f_send_NGAP_PDU(m_initiatingMessage(id_NGSetup)); + log("Receive ..."); + f_recv_NGAP_PDU(?); + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_eNB_RAB_01 + + + } // End of group Unknown_unforseen_errorneous_group + + } // End of group gNB_Role + + group AMF_Role { + + /** + * @desc E-RAB management group + * @see ETSI DTS/INT-00135-2 Clause 5.2.2.1.2 E-RAB management group + */ + group ERAB_management_group { + + /** + * @desc Testcase function for TC_NGAP_eNB_RAB_01 + */ + function f_TC_NGAP_MME_RAB_01() runs on NGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Test body + action("trigger an Initial E-RAB Setup procedure"); + + /*f_recv_E_RABSetupRequest(mw_E_RABSetupReqIEs( + vc_MME_UE_ID, + vc_eNB_UE_ID, + { mw_E_RABToBeSetupItemBearerSUReq(?,?,?,?,?) } + )); + */ + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + + // Postamble + /* f_send_E_RABSetupResponse(m_E_RABSetupResIEs( + vc_MME_UE_ID, + vc_eNB_UE_ID, + {m_E_RABSetupItemBearerSURes} + )); */ + f_postamble_NGAP_AMF(); + + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_MME_RAB_01 + + + } // End of group Unknown_unforseen_errorneous_group + + } // End of group AMF_Role + +} // End of module NGAP_TCFunctions + diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn new file mode 100644 index 0000000..3d5d205 --- /dev/null +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -0,0 +1,51 @@ +/** + * @author ETSI / STF519 + * @version $URL$ + * $Id$ + * @desc This module provides test cases for NGAP 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 + */ +module NGAP_TestCases { + + // LibCommon + import from LibCommon_Sync all ; + + // NGAP_Ats + import from LibNGAP_TypesAndValues all; + import from NGAP_TestConfiguration all; + import from NGAP_TestSystem all; + import from NGAP_TCFunctions all; + import from NGAP_Pics all; + + type component MTC{ + var integer dummy; + }; + + testcase TC_NGAP_gNB_SetupRequest_01() runs on NGAP system TestAdapter { + + // Local variables + var NGAP v_ngap_gnb; + + // Test control + if (not PICS_NGAP_AMF_IUT) { + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_aMF_IUT' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_gNB_SetupRequest_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down(); + + } // End of testcase TC_NGAP_gNB_SetupRequest_01 +} diff --git a/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn new file mode 100644 index 0000000..1dee327 --- /dev/null +++ b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn @@ -0,0 +1,135 @@ +/** + * @author ETSI / + * @version $URL:$ + * $Id:$ + * @desc This module provides test component configurations for NGAP 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 / 3GPP TS + */ +module NGAP_TestConfiguration { + + // LibCommon + import from LibCommon_Sync all; + import from LibCommon_VerdictControl all; + + // NGAP_Ats + import from NGAP_TestSystem all; + + group cfUp { + + /** + * @desc Creates test configuration of cf_NGAP_AMF - gNB is SUT + * @param p_NGAPComponent_mme + */ + function f_cf_NGAP_AMF_Up( + out NGAP p_NGAPComponent_amf + ) runs on NGAP system TestAdapter { + //Variables + var FncRetCode v_ret := e_success; + + //Create + p_NGAPComponent_amf := NGAP.create ; + + // Connect mtc sync port + connect(self:syncPort, self:syncPort); + // Connect client sync port + connect(p_NGAPComponent_amf:syncPort, self:syncPort) ; + //Map + map(p_NGAPComponent_amf:N2_gNBaMF_P, system:NGAP_AMF);// NGAP Init test Configuration + + activate(a_mtc_shutdown()); + + f_setVerdict(v_ret); + } // End of function f_cf_NGAP_AMF_Up + + /** + * @desc Creates test configuration of cf_NGAP_gNB - AMF is SUT + * @param p_NGAPComponent_gnb + */ + function f_cf_NGAP_gNB_Up( + out NGAP p_NGAPComponent_gnb + ) runs on NGAP system TestAdapter { + //Variables + var FncRetCode v_ret := e_success; + + //Create + p_NGAPComponent_gnb := NGAP.create ; + + // Connect mtc sync port + connect(self:syncPort, self:syncPort); + // Connect client sync port + connect(p_NGAPComponent_gnb:syncPort, self:syncPort) ; + //Map + map(p_NGAPComponent_gnb:N2_gNBaMF_P, system:NGAP_gNB_1);// NGAP Init test Configuration + + activate(a_mtc_shutdown()); + + f_setVerdict(v_ret); + } // End of function f_cf_NGAP_gNB_Up + + /** + * @desc Creates test configuration of cf_NGAP_2gNB - AMF is SUT + * @param p_NGAPComponent_enb1, p_NGAPComponent_gnb2 + */ + function f_cf_NGAP_2gNB_Up( + out NGAP p_NGAPComponent_gnb1, + out NGAP p_NGAPComponent_gnb2 + ) runs on NGAP system TestAdapter { + //Variables + var FncRetCode v_ret := e_success; + + //Create + p_NGAPComponent_gnb1 := NGAP.create; + p_NGAPComponent_gnb2 := NGAP.create; + + // Connect mtc sync port + connect(self:syncPort, self:syncPort); + // Connect client sync port + connect(p_NGAPComponent_gnb1:syncPort, self:syncPort); + connect(p_NGAPComponent_gnb2:syncPort, self:syncPort) ; + + //Map + map(p_NGAPComponent_gnb1:N2_gNBaMF_P, system:NGAP_gNB_1);// NGAP Init test Configuration + map(p_NGAPComponent_gnb2:N2_gNBaMF_P, system:NGAP_gNB_2);// NGAP Init test Configuration + + activate(a_mtc_shutdown()); + + f_setVerdict(v_ret); + } // End of function f_cf_NGAP_2gNB_Up + + } // End of group cfUp + + group cfDown { + + /** + * @desc Deletes configuration + * @param + */ + function f_cf_Down() runs on NGAP system TestAdapter { + // Deactivte all + deactivate; + // Unmap all + //unmap; + // Disconnect all + //disconnect; + + } // End of function f_cf_Down + + } // End of group cfDown + + group shutDownAltsteps { + + altstep a_mtc_shutdown() + runs on SelfSyncComp { + [] syncSendPort.receive(m_syncServerStop) { + tc_sync.stop ; + log("**** a_mtc_shutdown: MTC component received STOP signal **** "); + } + } // End of altstep a_mtc_shutdown + + } // End of group shutDownAltsteps + +} // End of module NGAP_TestConfiguration diff --git a/ttcn/AtsNGAP/NGAP_TestControl.ttcn b/ttcn/AtsNGAP/NGAP_TestControl.ttcn new file mode 100644 index 0000000..962410d --- /dev/null +++ b/ttcn/AtsNGAP/NGAP_TestControl.ttcn @@ -0,0 +1,27 @@ +/** + * @author ETSI / + * @version $URL:$ + * $Id:$ + * @desc This module provides execution part for NGAP test cases. + * @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 / 3GPP TS + */ +module NGAP_TestControl { + + // NGAP + import from NGAP_Pics all; + import from NGAP_TestCases all; + + control { + + if (PICS_NGAP_GNB_IUT) { + } + if (PICS_NGAP_AMF_IUT) { + } + + } // End of 'Control' statement + +} // End of module NGAP_TestControl diff --git a/ttcn/AtsNGAP/NGAP_TestSystem.ttcn b/ttcn/AtsNGAP/NGAP_TestSystem.ttcn new file mode 100644 index 0000000..06e15fe --- /dev/null +++ b/ttcn/AtsNGAP/NGAP_TestSystem.ttcn @@ -0,0 +1,47 @@ +/** + * @author ETSI / STF519 + * @version $URL:$ + * $Id:$ + * @desc This module provides the types and ports used by the test component for NGAP 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 / 3GPP TS + */ +module NGAP_TestSystem { + + // LibCommon + import from LibCommon_Sync all; + + // LibNGAP + import from LibNGAP_Interface all; + + group SystemConfiguration { + + group TestComponents { + + group TestSystemInterfaces { + + /** + * @desc The test system interface + */ + type component TestAdapter { + + port + NGAPPort NGAP_AMF, + NGAP_gNB_1, + NGAP_gNB_2 + } // End of type TestAdapter + + } // End of group TestSystemInterfaces + + type component NGAP extends ServerSyncComp, NGAPComponent { + + } // End of component NGAP + + } // End of group TestComponents + + } // End of group SystemConfiguration + +} // End of module NGAP_TestSystem diff --git a/ttcn/AtsNGAP/module.mk b/ttcn/AtsNGAP/module.mk new file mode 100644 index 0000000..4859145 --- /dev/null +++ b/ttcn/AtsNGAP/module.mk @@ -0,0 +1,17 @@ +sources:= NGAP_TestCases.ttcn NGAP_Pics.ttcn NGAP_Pixits.ttcn NGAP_Steps.ttcn NGAP_TestSystem.ttcn NGAP_TestConfiguration.ttcn NGAP_TestControl.ttcn NGAP_TCFunctions.ttcn +#sources:= S1AP_Pics.ttcn S1AP_Pixits.ttcn S1AP_Steps.ttcn S1AP_TCFunctions.ttcn S1AP_TestCases.ttcn S1AP_TestConfiguration.ttcn S1AP_TestControl.ttcn S1AP_TestSystem.ttcn + +modules:= ../NGAP_ \ + ../LibNGAP \ + ../LibCommon \ + ../../ccsrc/Ports/LibNGAP \ + ../../ccsrc/EncDec \ + ../../titan-test-system-framework/ccsrc/Framework \ + ../../titan-test-system-framework/ccsrc/loggers \ + ../../ccsrc/Protocols/NGAP_layer \ + ../../ccsrc/Protocols/NGAP \ + ../../ccsrc/Asn1c + #//../../ccsrc/Protocols/sctp \ + #//../../titan-test-system-framework/ccsrc/Protocols/Tcp \ + #//../modules/titan.TestPorts.Common_Components.Abstract_Socket + diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn new file mode 100644 index 0000000..a6f82bd --- /dev/null +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -0,0 +1,13 @@ +module LibNGAP_EncdecDeclarations { + + import from LibNGAP_TypesAndValues all; + + + external function fx_enc_ProtocolIE (ProtocolIE p) return bitstring + with {extension "prototype(convert) encode(LibNGAP_asn1)"} + + external function fx_dec_ProtocolIE (inout bitstring pdu, out ProtocolIE p) return integer + with {extension "prototype(sliding) decode(LibNGAP_asn1)"} + + +} // End of module LibNGAP_EncdecDeclarations diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn new file mode 100644 index 0000000..3eda83d --- /dev/null +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -0,0 +1,273 @@ +/** + * @author ETSI / + * @version $URL:$ + * $Id:$ + * @desc This module provides PixitS used by the test component for NGAP 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 / 3GPP TS + */ +module LibNGAP_Pixits { + + // LibCommon + import from LibCommon_DataStrings all; + + // LibNGAP + import from NGAP_IEs language "ASN.1:1997" all; + import from NGAP_CommonDataTypes language "ASN.1:1997" all; + + /** + * @desc Define the network transportation layer + */ + type enumerated TransportProtocol { + UDP_E, + TCP_E, + SCTP_E + } + + /** + * @desc Network transportation layer setting + */ + group NGAP_Pixit_Parameters { + + /** + * @desc boolean (This is an operator option, not a protocol option), True, if IPv6 addresses are used + */ + modulepar boolean PX_IPv6 := false; + + /** + * @desc enumerated (This is an operator option, not a protocol option) + */ + modulepar TransportProtocol PX_NGAP_TRANSPORT_PROTOCOL := SCTP_E; + + } // End of group NGAP_Pixit_Parameters + + /** + * @desc Network transportation layer timers + */ + group NGAP_Timers { + + /** @desc float for TWait default value for waiting an operator action + */ + modulepar float PX_NGAP_TWAIT:= 30.0; + + } // End of group NGAP_Timers + + /** + * @desc The PLMNidentity indicates the PLMN Identity (Public land mobile network). + * @see ETSI TS 136 413 Clause 9.2.3.8 PLMN Identity + */ + //modulepar PLMNidentity PX_PLMN_IDENTITY := '000000'O; + + /** + * @desc An unknown PLMNidentity indicates the PLMN Identity (Public land mobile network). + * @see ETSI TS 136 413 Clause 9.2.3.8 PLMN Identity + */ + //modulepar PLMNidentity PX_PLMN_IDENTITY_UNKNOWN := 'f00000'O; + + /** + * @desc eNB Identity. + * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID + */ + //modulepar ENB_ID PX_eNB_ID := { + // homeENB_ID := '0000000000000000000000000000'B + //}; + + /** + * @desc eNB Identity. + * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID + */ + // modulepar ENB_ID PX_eNB_ID_UNKNOWN := { + // homeENB_ID := '1100000000000000000000000000'B + // }; + + /** + * @desc Cell Identity. + */ + //modulepar CellIdentity PX_CELL_ID := '0000000000000000000000000000'B; + + /** + * @desc The TAC is used to uniquely identify a Tracking Area Code. + * @see ETSI TS 136 413 Clause 9.2.3.7 TAC + */ + //modulepar TAC PX_TACode := '0000'O; + + /** + * @desc The MME Group ID. + */ + //modulepar MME_Group_ID PX_MME_GROUP_ID := '0000'O; + + /** + * @desc The MME Code to uniquely identify an MME within an MME pool area. + * @see ETSI TS 136 413 Clause 9.2.3.12 MMEC + */ + //modulepar MME_Code PX_MME_CODE := '01'O; + + /** + * @desc The relative processing capacity of an MME with respect to the other MMEs in the pool in order to load-balance MMEs within a pool defined in TS 23.401. + * @see ETSI TS 136 413 Clause 9.2.3.17 Relative MME Capacity + */ + //modulepar RelativeMMECapacity PX_RELATIVE_MME_CAPACITY := 128; + + /** + * @desc The Message Identifier IE identifies a warning message. + * @see ETSI TS 136 413 Clause 9.2.1.44 Message Identifier + */ + //modulepar MessageIdentifier PX_MESSAGE_IDENTIFIER := oct2bit('0000'O); + + /** + * @desc The Serial Number IE identifies a particular message from the source and type indicated by the Message Identifie. + * @see ETSI TS 136 413 Clause 9.2.1.45 Serial Number + */ + //modulepar SerialNumber PX_SERIAL_NUMBER := oct2bit('0000'O); + + /** + * @desc The Repetition Period IE indicates the periodicity of the warning message to be broadcast. + * @see ETSI TS 136 413 Clause 9.2.1.48 Repetition Period + */ + //modulepar RepetitionPeriod PX_REPETITION_PERIOD := 1; + + /** + * @desc The Number of Broadcast Requested IE indicates the number of times a message is to be broadcast. + * @see ETSI TS 136 413 Clause 9.2.1.49 Number of Broadcasts Requested + */ + //modulepar NumberOfBroadcasts PX_NUMBER_OF_BROADCASTS_REQUESTED := 1; + + /** + * @desc The Emergency Area ID IE is used to indicate the area which has the emergency impact. + * @see ETSI TS 136 413 Clause 9.2.1.47 Emergency Area ID + */ + //modulepar EmergencyAreaID PX_EMERGENCY_AREA_ID := '000000'O; + + /** + * @desc Event Type. + * @see ETSI TS 136 413 Clause 9.2.1.34 Request Type + */ + //modulepar EventType PX_EVENT_TYPE := direct; + + /** + * @desc Report Area. + * @see ETSI TS 136 413 Clause 9.2.1.34 Request Type + */ + //modulepar ReportArea PX_REPORT_AREA := ecgi; + + /** + * @desc The E-UTRAN Trace ID. + * @see ETSI TS 136 413 Clause 9.2.1.4 Trace Activation + */ + //modulepar E_UTRAN_Trace_ID PX_EUTRAN_TRACE_ID := '0000000000000000'O; + + /** + * @desc The interfaces to trace. + * @see ETSI TS 136 413 Clause 9.2.1.4 Trace Activation + */ + //modulepar InterfacesToTrace PX_INTERFACES_TO_TRACE := '00000000'B; + + /** + * @desc The trace depth. + * @see ETSI TS 136 413 Clause 9.2.1.4 Trace Activation + */ + //modulepar TraceDepth PX_TRACE_DEPTH := medium; + + /** + * @desc Transport Layer Address. + * @see ETSI TS 136 413 Clause 9.2.2.1 Transport Layer Address + */ + //modulepar TransportLayerAddress PX_TRANSPORT_LAYER_ADDRESS := oct2bit('0a00000a'O); + + /** @desc CDMA2000 message + * @see ETSI TS 136 413 Clause 9.2.1.23 CDMA2000-PDU + */ + //modulepar octetstring PX_CDMA200_PDU := ''O; + + /** @desc CDMA2000 RAT type + * @see ETSI TS 136 413 Clause 9.2.1.24 CDMA2000 RAT Type + */ + //modulepar Cdma2000RATType PX_CDMA200_RAT_TYPE := hRPD; + + /** @desc CDMA2000 Reference Cell ID + * @see ETSI TS 136 413 Clause 9.2.1.25 CDMA2000 Sector ID + */ + //modulepar octetstring PX_CDMA200_SECTOR_ID := ''O; + + /** @desc The Paging DRX as defined in TS 36.304. + * @see ETSI TS 136 413 Clause 9.2.1.16 Paging DRX + */ + //modulepar PagingDRX PX_PAGING_DRX := v256; + + /** @desc The identifier of the Closed Subscriber Group, as defined in TS 23.003. + * @see ETSI TS 136 413 Clause 9.2.1.62 CSG Id + */ + //modulepar Bit27 PX_CSG_ID := '000000000000000000000000000'B; + + /** @desc The UE Identity Index value IE is used by the eNB to calculate the Paging Frame TS 36.304. + * @see ETSI TS 136 413 Clause 9.2.3.10 UE Identity Index value + */ + //modulepar UEIdentityIndexValue PX_UE_IDENTITY_INDEX_VALUE := '0000000000'B; + + /** @desc The International Mobile Subscriber Identity, which is commonly used to identify the UE in the CN. + * @see ETSI TS 136 413 Clause 9.2.3.11 IMSI + */ + //modulepar IMSI PX_IMSI := '000000'O; + + /** @desc Indicates whether Paging is originated from the CS or PS domain. + * @see ETSI TS 136 413 Clause 9.2.3.22 CN Domain + */ + //modulepar CNDomain PX_CNDOMAIN := ps; + + /** @desc Indicates a not supported algorithm. + * @see ETSI TS 136 413 Clause 9.2.1.40 UE Security Capabilities + */ + //modulepar EncryptionAlgorithms PX_UNSUPPORTED_ENCRYPTION_ALGORITHM := '1111111111111111'B; + + /** @desc Indicates a supported encription algorithm. + * @see ETSI TS 136 413 Clause 9.2.1.40 UE Security Capabilities + */ + ///modulepar EncryptionAlgorithms PX_ENCRYPTION_ALGORITHM := '0101010101010101'B; + + /** @desc Indicates a supported integrity protection algorithm. + * @see ETSI TS 136 413 Clause 9.2.1.40 UE Security Capabilities + */ + //modulepar IntegrityProtectionAlgorithms PX_INTEGRITY_PROTECTION_ALGORITHM := '0101010101010101'B; + + /** @desc Indicates the procedure value. + * @see ETSI TS 136 413 Clause 9.2.1.21 Criticality Diagnostics + */ + //modulepar ProcedureCode PX_PROCEURE_CODE := 0; + + /** @desc Indicates triggering message value + * @see ETSI TS 136 413 Clause 9.2.1.21 Criticality Diagnostics + */ + //modulepar TriggeringMessage PX_TRIGGERING_CODE := initiating_message; + + /** @desc Indicates a the criticality + * @see ETSI TS 136 413 Clause 9.2.1.21 Criticality Diagnostics + */ + //modulepar Criticality PX_CRITICALITY := ignore; + + /** @desc Indicates the transport layer address. + */ + //modulepar TransportLayerAddress PX_TPORT_LAYER_ADDR := '1'B; + + /** @desc Indicates an unacceptable transport layer address. + */ + //modulepar TransportLayerAddress PX_INVALID_TPORT_LAYER_ADDR := '0'B; + + /** @desc Indicates the Downlink GTP TEID. + */ + //modulepar GTP_TEID PX_DL_GTP_TEID := '00000000'O; + + /** @desc Indicates the source_ToTarget_TransparentContainer value. + * @see ETSI TS 136 413 Clause 9.2.1.56 Source to Target Transparent Container + */ + //modulepar Source_ToTarget_TransparentContainer PX_SOURCE_TO_TARGET_TANSPARENT_CONTAINER := '12121212'O; + + /** @desc Indicates the target_ToSource_TransparentContainer value. + * @see ETSI TS 136 413 Clause 9.2.1.57 Target to Source Transparent Container + */ + //modulepar Target_ToSource_TransparentContainer PX_TARGET_TO_SOURCE_TANSPARENT_CONTAINER := '12121212'O; + +} // End of module LibNGAP_Pixits + diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn new file mode 100644 index 0000000..68e95f8 --- /dev/null +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -0,0 +1,267 @@ +/** + * @author ETSI / + * @version $URL:$ + * $Id:$ + * @desc This module provides Lib NGAP Templates used by the test component for NGAP 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 + */ +module LibNGAP_Templates { + + // LibCommon + import from LibCommon_BasicTypesAndValues all; + import from LibCommon_DataStrings all; + + // LibNGAP + import from NGAP_Constants language "ASN.1:2002" all; + import from NGAP_CommonDataTypes language "ASN.1:2002" all; + import from NGAP_IEs language "ASN.1:2002" all; + import from NGAP_PDU_Contents language "ASN.1:2002" all; + import from NGAP_PDU_Descriptions language "ASN.1:2002" all; + import from NGAP_Containers language "ASN.1:2002" all; + + import from LibNGAP_TypesAndValues all; + import from LibNGAP_Pixits all; + + group g_NGAP { + + group g_NGAP_PDU { + + /** + * @desc Send template for NGAP PDU with InitiatingMessage payload + * @param p_procedureCode Procedure code + * @param p_value Message value according to the Procedure code + * @see ETSI TS + */ + template (value) NGAP_PDU m_initiatingMessage( + in ProcedureCode p_procedureCode//, + //in anytype p_value + ) := { + initiatingMessage := { + procedureCode := p_procedureCode, + criticality := reject, + value_ := omit//p_value + } + } // End of template m_initiatingMessage + + } // End of group g_NGAP_PDU + + /** + * @desc Send messages for Management procedures + */ + group Management_group { + + /** + * @desc Send template for InitiatingMessage message with N2_NGSETUP_REQUEST payload + * @param p_value The protocol information elements. + */ + template (value) InitiatingMessage m_n2_NGSetup_Request( + in template (value) GlobalRANNodeID p_globalRANNodeID + //in InitiatingMessage.value_ p_value + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupRequest := { + protocolIEs := { + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { globalRANNodeID := p_globalRANNodeID } + } + } + }} + } // End of template m_N2_NGSetup_Request + + template (value) GlobalRANNodeID m_globalRANNodeID_globalGNB_ID( + in template (value) GlobalGNB_ID p_globalGNB_ID + ) := { + globalGNB_ID := p_globalGNB_ID + } // End of template m_globalRANNodeID_globalGNB_ID + + /*template InitiatingMessage.value_ m_NGSR /*(/*in template (value) GlobalRANNodeID p_global_GNB_ID + ):=*/ //valueof(m_global_gNB_ID_IE(p_global_GNB_ID)) + + + ///* template /*NGAP_PDU_Contents.NGResetIEs*/ /*protocolIEs*/ NGAP_Containers.NGAP_PROTOCOL_IES /*ProtocolIE_Container*/ m_NgsetupReqIEs := { + //id := ?, criticality := ?, Value := ?, presence := ? + //} + + /*template NGSetupRequestIEs testies :=( + { + id := NGAP_Constants.id_GlobalRANNodeID, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.GlobalRANNodeID", + presence := NGAP_CommonDataTypes.mandatory + }, { + id := NGAP_Constants.id_RANNodeName, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.RANNodeName", + presence := NGAP_CommonDataTypes.optional_ + }, { + id := NGAP_Constants.id_SupportedTAList, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.SupportedTAList", + presence := NGAP_CommonDataTypes.mandatory + }, { + id := NGAP_Constants.id_DefaultPagingDRX, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.PagingDRX", + presence := NGAP_CommonDataTypes.mandatory + }, { + id := NGAP_Constants.id_UERetentionInformation, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.UERetentionInformation", + presence := NGAP_CommonDataTypes.optional_ + }, { + id := NGAP_Constants.id_NB_IoT_DefaultPagingDRX, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.NB_IoT_DefaultPagingDRX", + presence := NGAP_CommonDataTypes.optional_ + }, { + id := NGAP_Constants.id_Extended_RANNodeName, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.Extended_RANNodeName", + presence := NGAP_CommonDataTypes.optional_ + }, ?);*/ + +/*template NGAP_PDU_Contents.NGSetupRequest m_ngSetup2Amf := {protocolIEs := omit}*/ + + + template (value) InitiatingMessage m_n2_NGSetup_Request_withIE( + in template (value) GlobalRANNodeID p_global_GNB_ID, + in template (value) SupportedTAList p_supportedTAs, + in template (value) PagingDRX p_pagingDRXs + ) := { + procedureCode := id_NGSetup, + criticality := reject//, + //value_ := ? + //type_:={ + //m_global_gNB_ID_IE(p_global_GNB_ID)//, + //m_supportedTAList_IE(p_supportedTAs), + //m_pagingDRX_IE(p_pagingDRXs) + // } + } // End of template m_N2_NGSetup_Request + /** + * @desc Send template for N2_NGSETUP_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_n2_NGSetup_RequestIEs( + in template (value) GlobalRANNodeID p_global_GNB_ID, + in template (value) SupportedTAList p_supportedTAs, + in template (value) PagingDRX p_pagingDRXs + ) := { + m_global_gNB_ID_IE(p_global_GNB_ID), + m_supportedTAList_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 + } //End of group Management_group + + } // End of group g_NGAP + + group g_NGAP_IEs{ + + /** + * @desc Send template for Global eNB ID protocol IE + * @param p_global_ENB_ID The Global eNB ID value + */ + template (value) ProtocolIE m_global_gNB_ID_IE( + in template (value) GlobalRANNodeID p_value + ) := { + id := NGAP_Constants.id_GlobalRANNodeID, + criticality := reject, + IE:={ value_ :=omit, + globalRANNodeID := /*valueof*/p_value, + globalGNB_ID := omit, + rANNodeName := omit, + supportedTAList := omit, + defaultPagingDRX := omit, + uERetentionInformation := omit, + nB_IoT_DefaultPagingDRX := omit, + extended_RANNodeName := omit + } + //value_ := { GlobalGNB_ID := valueof(p_global_GNB_ID) } + } // End of template m_global_gNB_ID_IE + + template GlobalRANNodeID m_granID := { + + globalGNB_ID := { + pLMNIdentity := '010001'O, + gNB_ID :={ gNB_ID:='0000000000000000000000'B}, + iE_Extensions := omit + + } + } //End of template granID + + /** + * @desc Send template for SupportedTAs protocol IE + * @param p_value The SupportedTAs value. + */ + template (value) ProtocolIE m_supportedTAList_IE( + in template (value) SupportedTAList p_value + ) := { + id := NGAP_Constants.id_SupportedTAList, + criticality := reject, + IE:={supportedTAList := valueof(p_value)} + //value_ := {SupportedTAList := valueof(p_value)} + } // End of template m_supportedTAs_IE + + /** + * @desc Send template for PagingDRX protocol IE + * @param p_value The PagingDRX value. + */ + template (value) ProtocolIE m_pagingDRX_IE( + in template (value) PagingDRX p_value + ) := { + id := NGAP_Constants.id_PagingDRX, + criticality := ignore, + IE:={defaultPagingDRX := valueof(p_value)} + //value_ := {PagingDRX := valueof(p_value) } + } // End of template m_pagingDRX_IE + + + } // End of group + + /** + * @desc Type functions + */ + group functionsForTemplates { + + } // End of group functionsForTemplates + +} // End of module LibNGAP_Templates +with { +extension "anytype NGAP_PROTOCOL_IES" +extension "anytype NGSetupRequestIEs" +extension "anytype RecordOf_ProtocolIE" +} diff --git a/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn b/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn new file mode 100644 index 0000000..0ca43fa --- /dev/null +++ b/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn @@ -0,0 +1,63 @@ +/** + * @author ETSI / STF519 + * @version $URL$ + * $Id$ + * @desc Module containing types and values for S1AP Protocol + * @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 + */ +module LibNGAP_TypesAndValues { + + // LibNGAPAP + import from NGAP_IEs language "ASN.1:2002" all; + import from NGAP_PDU_Contents language "ASN.1:2002" all; + import from NGAP_PDU_Descriptions language "ASN.1:2002" all; + + + //type /*NGAP_PDU_Descriptions.*/InitiatingMessage InitiatingMessage { + // integer procedureCode , + // enumerated { + // reject, ignore, notify + // } criticality, + // RecordOf_ProtocolIE value_ + //} + + type set NGAPIEs{ + anytype value_ optional, + GlobalRANNodeID globalRANNodeID optional, + GlobalGNB_ID globalGNB_ID optional, + RANNodeName rANNodeName optional, + SupportedTAList supportedTAList optional, + PagingDRX defaultPagingDRX optional, + UERetentionInformation uERetentionInformation optional, + NB_IoT_DefaultPagingDRX nB_IoT_DefaultPagingDRX optional, + Extended_RANNodeName extended_RANNodeName optional + } + + /** + * @desc This data structure redefines ASN.1 ProtocolIE-Field data structure die to parameterization limitation of TTCN-3 tools + * @member id Protocol Information Element identifier + * @member criticality Criticality value attached to this IE + * @member value_ Value of this IE + * @see ETSI TS 136 413 Clause 9.1 Message Functional Definition and Content + */ + type record ProtocolIE { + integer id (0 .. 65535), + enumerated { + reject, ignore, notify + } criticality, + //anytype value_ + NGAPIEs IE + } + + /** + * @desc List of ProtocolIEs + */ + type set of ProtocolIE RecordOf_ProtocolIE; + +} with { + encode "LibNGAP_asn1" +} // End of module LibNGAP_TypesAndValues diff --git a/ttcn/LibNGAP/lib/asn1/Makefile.am.asn1convert b/ttcn/LibNGAP/lib/asn1/Makefile.am.asn1convert new file mode 100644 index 0000000..849c129 --- /dev/null +++ b/ttcn/LibNGAP/lib/asn1/Makefile.am.asn1convert @@ -0,0 +1,14 @@ +include Makefile.am.libasncodec + +bin_PROGRAMS += asn1convert +asn1convert_CFLAGS = $(ASN_MODULE_CFLAGS) +asn1convert_CPPFLAGS = -I$(top_srcdir)/-DASN_PDU_COLLECTION +asn1convert_LDADD = libasncodec.la +asn1convert_SOURCES = \ + converter-example.c\ + pdu_collection.c +regen: regenerate-from-asn1-source + +regenerate-from-asn1-source: + asn1c NGAP_CommonDataTypes.asn + diff --git a/ttcn/LibNGAP/lib/asn1/NGAP_CommonDataTypes.asn b/ttcn/LibNGAP/lib/asn1/NGAP_CommonDataTypes.asn new file mode 100644 index 0000000..e739dd0 --- /dev/null +++ b/ttcn/LibNGAP/lib/asn1/NGAP_CommonDataTypes.asn @@ -0,0 +1,34 @@ +-- 3GPP TS 38.413 V17.5.0 (2023-06) +-- 9.4.6 Common Definitions +-- ************************************************************** +-- +-- Common definitions +-- +-- ************************************************************** + +NGAP-CommonDataTypes { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-CommonDataTypes (3) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +Criticality ::= ENUMERATED { reject, ignore, notify } + +Presence ::= ENUMERATED { optional, conditional, mandatory } + +PrivateIE-ID ::= CHOICE { + local INTEGER (0..65535), + global OBJECT IDENTIFIER +} + +ProcedureCode ::= INTEGER (0..255) + +ProtocolExtensionID ::= INTEGER (0..65535) + +ProtocolIE-ID ::= INTEGER (0..65535) + +TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessful-outcome } + +END diff --git a/ttcn/LibNGAP/lib/asn1/NGAP_Constants.asn b/ttcn/LibNGAP/lib/asn1/NGAP_Constants.asn new file mode 100644 index 0000000..70f31a8 --- /dev/null +++ b/ttcn/LibNGAP/lib/asn1/NGAP_Constants.asn @@ -0,0 +1,591 @@ +-- 3GPP TS 38.413 V17.5.0 (2023-06) +-- 9.4.7 Constant Definitions +-- ************************************************************** +-- +-- Constant definitions +-- +-- ************************************************************** + +NGAP-Constants { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-Constants (4) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +-- ************************************************************** +-- +-- IE parameter types from other modules. +-- +-- ************************************************************** + +IMPORTS + + ProcedureCode, + ProtocolIE-ID +FROM NGAP-CommonDataTypes; + + +-- ************************************************************** +-- +-- Elementary Procedures +-- +-- ************************************************************** + +id-AMFConfigurationUpdate ProcedureCode ::= 0 +id-AMFStatusIndication ProcedureCode ::= 1 +id-CellTrafficTrace ProcedureCode ::= 2 +id-DeactivateTrace ProcedureCode ::= 3 +id-DownlinkNASTransport ProcedureCode ::= 4 +id-DownlinkNonUEAssociatedNRPPaTransport ProcedureCode ::= 5 +id-DownlinkRANConfigurationTransfer ProcedureCode ::= 6 +id-DownlinkRANStatusTransfer ProcedureCode ::= 7 +id-DownlinkUEAssociatedNRPPaTransport ProcedureCode ::= 8 +id-ErrorIndication ProcedureCode ::= 9 +id-HandoverCancel ProcedureCode ::= 10 +id-HandoverNotification ProcedureCode ::= 11 +id-HandoverPreparation ProcedureCode ::= 12 +id-HandoverResourceAllocation ProcedureCode ::= 13 +id-InitialContextSetup ProcedureCode ::= 14 +id-InitialUEMessage ProcedureCode ::= 15 +id-LocationReportingControl ProcedureCode ::= 16 +id-LocationReportingFailureIndication ProcedureCode ::= 17 +id-LocationReport ProcedureCode ::= 18 +id-NASNonDeliveryIndication ProcedureCode ::= 19 +id-NGReset ProcedureCode ::= 20 +id-NGSetup ProcedureCode ::= 21 +id-OverloadStart ProcedureCode ::= 22 +id-OverloadStop ProcedureCode ::= 23 +id-Paging ProcedureCode ::= 24 +id-PathSwitchRequest ProcedureCode ::= 25 +id-PDUSessionResourceModify ProcedureCode ::= 26 +id-PDUSessionResourceModifyIndication ProcedureCode ::= 27 +id-PDUSessionResourceRelease ProcedureCode ::= 28 +id-PDUSessionResourceSetup ProcedureCode ::= 29 +id-PDUSessionResourceNotify ProcedureCode ::= 30 +id-PrivateMessage ProcedureCode ::= 31 +id-PWSCancel ProcedureCode ::= 32 +id-PWSFailureIndication ProcedureCode ::= 33 +id-PWSRestartIndication ProcedureCode ::= 34 +id-RANConfigurationUpdate ProcedureCode ::= 35 +id-RerouteNASRequest ProcedureCode ::= 36 +id-RRCInactiveTransitionReport ProcedureCode ::= 37 +id-TraceFailureIndication ProcedureCode ::= 38 +id-TraceStart ProcedureCode ::= 39 +id-UEContextModification ProcedureCode ::= 40 +id-UEContextRelease ProcedureCode ::= 41 +id-UEContextReleaseRequest ProcedureCode ::= 42 +id-UERadioCapabilityCheck ProcedureCode ::= 43 +id-UERadioCapabilityInfoIndication ProcedureCode ::= 44 +id-UETNLABindingRelease ProcedureCode ::= 45 +id-UplinkNASTransport ProcedureCode ::= 46 +id-UplinkNonUEAssociatedNRPPaTransport ProcedureCode ::= 47 +id-UplinkRANConfigurationTransfer ProcedureCode ::= 48 +id-UplinkRANStatusTransfer ProcedureCode ::= 49 +id-UplinkUEAssociatedNRPPaTransport ProcedureCode ::= 50 +id-WriteReplaceWarning ProcedureCode ::= 51 +id-SecondaryRATDataUsageReport ProcedureCode ::= 52 +id-UplinkRIMInformationTransfer ProcedureCode ::= 53 +id-DownlinkRIMInformationTransfer ProcedureCode ::= 54 +id-RetrieveUEInformation ProcedureCode ::= 55 +id-UEInformationTransfer ProcedureCode ::= 56 +id-RANCPRelocationIndication ProcedureCode ::= 57 +id-UEContextResume ProcedureCode ::= 58 +id-UEContextSuspend ProcedureCode ::= 59 +id-UERadioCapabilityIDMapping ProcedureCode ::= 60 +id-HandoverSuccess ProcedureCode ::= 61 +id-UplinkRANEarlyStatusTransfer ProcedureCode ::= 62 +id-DownlinkRANEarlyStatusTransfer ProcedureCode ::= 63 +id-AMFCPRelocationIndication ProcedureCode ::= 64 +id-ConnectionEstablishmentIndication ProcedureCode ::= 65 +id-BroadcastSessionModification ProcedureCode ::= 66 +id-BroadcastSessionRelease ProcedureCode ::= 67 +id-BroadcastSessionSetup ProcedureCode ::= 68 +id-DistributionSetup ProcedureCode ::= 69 +id-DistributionRelease ProcedureCode ::= 70 +id-MulticastSessionActivation ProcedureCode ::= 71 +id-MulticastSessionDeactivation ProcedureCode ::= 72 +id-MulticastSessionUpdate ProcedureCode ::= 73 +id-MulticastGroupPaging ProcedureCode ::= 74 +id-BroadcastSessionReleaseRequired ProcedureCode ::= 75 + +-- ************************************************************** +-- +-- Extension constants +-- +-- ************************************************************** + +maxPrivateIEs INTEGER ::= 65535 +maxProtocolExtensions INTEGER ::= 65535 +maxProtocolIEs INTEGER ::= 65535 + +-- ************************************************************** +-- +-- Lists +-- +-- ************************************************************** + + maxnoofAllowedAreas INTEGER ::= 16 + maxnoofAllowedCAGsperPLMN INTEGER ::= 256 + maxnoofAllowedS-NSSAIs INTEGER ::= 8 + maxnoofBluetoothName INTEGER ::= 4 + maxnoofBPLMNs INTEGER ::= 12 + maxnoofCAGSperCell INTEGER ::= 64 + maxnoofCellIDforMDT INTEGER ::= 32 + maxnoofCellIDforWarning INTEGER ::= 65535 + maxnoofCellinAoI INTEGER ::= 256 + maxnoofCellinEAI INTEGER ::= 65535 + maxnoofCellinTAI INTEGER ::= 65535 + maxnoofCellsforMBS INTEGER ::= 8192 + maxnoofCellsingNB INTEGER ::= 16384 + maxnoofCellsinngeNB INTEGER ::= 256 + maxnoofCellsinNGRANNode INTEGER ::= 16384 + maxnoofCellsinUEHistoryInfo INTEGER ::= 16 + maxnoofCellsUEMovingTrajectory INTEGER ::= 16 + maxnoofDRBs INTEGER ::= 32 + maxnoofEmergencyAreaID INTEGER ::= 65535 + maxnoofEAIforRestart INTEGER ::= 256 + maxnoofEPLMNs INTEGER ::= 15 + maxnoofEPLMNsPlusOne INTEGER ::= 16 + maxnoofE-RABs INTEGER ::= 256 + maxnoofErrors INTEGER ::= 256 + maxnoofExtSliceItems INTEGER ::= 65535 + maxnoofForbTACs INTEGER ::= 4096 + maxnoofFreqforMDT INTEGER ::= 8 + maxnoofMBSAreaSessionIDs INTEGER ::= 256 + maxnoofMBSFSAs INTEGER ::= 64 + maxnoofMBSQoSFlows INTEGER ::= 64 + maxnoofMBSSessions INTEGER ::= 32 + maxnoofMBSSessionsofUE INTEGER ::= 256 + maxnoofMBSServiceAreaInformation INTEGER ::= 256 + maxnoofMDTPLMNs INTEGER ::= 16 + maxnoofMRBs INTEGER ::= 32 + maxnoofMultiConnectivity INTEGER ::= 4 + maxnoofMultiConnectivityMinusOne INTEGER ::= 3 + maxnoofNeighPCIforMDT INTEGER ::= 32 + maxnoofNGAPIESupportInfo INTEGER ::= 32 + maxnoofNGConnectionsToReset INTEGER ::= 65536 + maxnoofNRCellBands INTEGER ::= 32 + maxnoofNSAGs INTEGER ::= 256 + maxnoofPagingAreas INTEGER ::= 64 + maxnoofPC5QoSFlows INTEGER ::= 2048 + maxnoofPDUSessions INTEGER ::= 256 + maxnoofPLMNs INTEGER ::= 12 + maxnoofPSCellsPerPrimaryCellinUEHistoryInfo INTEGER ::= 8 + maxnoofQosFlows INTEGER ::= 64 + maxnoofQosParaSets INTEGER ::= 8 + maxnoofRANNodeinAoI INTEGER ::= 64 + maxnoofRecommendedCells INTEGER ::= 16 + maxnoofRecommendedRANNodes INTEGER ::= 16 + maxnoofAoI INTEGER ::= 64 + maxnoofReportedCells INTEGER ::= 256 + maxnoofSensorName INTEGER ::= 3 + maxnoofServedGUAMIs INTEGER ::= 256 + maxnoofSliceItems INTEGER ::= 1024 + maxnoofSuccessfulHOReports INTEGER ::= 64 + maxnoofTACs INTEGER ::= 256 + maxnoofTACsinNTN INTEGER ::= 12 + maxnoofTAforMDT INTEGER ::= 8 + maxnoofTAIforInactive INTEGER ::= 16 + maxnoofTAIforMBS INTEGER ::= 1024 + maxnoofTAIforPaging INTEGER ::= 16 + maxnoofTAIforRestart INTEGER ::= 2048 + maxnoofTAIforWarning INTEGER ::= 65535 + maxnoofTAIinAoI INTEGER ::= 16 + maxnoofTimePeriods INTEGER ::= 2 + maxnoofTNLAssociations INTEGER ::= 32 + maxnoofUEsforPaging INTEGER ::= 4096 + maxnoofWLANName INTEGER ::= 4 + maxnoofXnExtTLAs INTEGER ::= 16 + maxnoofXnGTP-TLAs INTEGER ::= 16 + maxnoofXnTLAs INTEGER ::= 2 + maxnoofCandidateCells INTEGER ::= 32 + maxnoofTargetS-NSSAIs INTEGER ::= 8 + maxNRARFCN INTEGER ::= 3279165 + maxnoofCellIDforQMC INTEGER ::= 32 + maxnoofPLMNforQMC INTEGER ::= 16 + maxnoofUEAppLayerMeas INTEGER ::= 16 + maxnoofSNSSAIforQMC INTEGER ::= 16 + maxnoofTAforQMC INTEGER ::= 8 + maxnoofThresholdsForExcessPacketDelay INTEGER ::= 255 + +-- ************************************************************** +-- +-- IEs +-- +-- ************************************************************** + + id-AllowedNSSAI ProtocolIE-ID ::= 0 + id-AMFName ProtocolIE-ID ::= 1 + id-AMFOverloadResponse ProtocolIE-ID ::= 2 + id-AMFSetID ProtocolIE-ID ::= 3 + id-AMF-TNLAssociationFailedToSetupList ProtocolIE-ID ::= 4 + id-AMF-TNLAssociationSetupList ProtocolIE-ID ::= 5 + id-AMF-TNLAssociationToAddList ProtocolIE-ID ::= 6 + id-AMF-TNLAssociationToRemoveList ProtocolIE-ID ::= 7 + id-AMF-TNLAssociationToUpdateList ProtocolIE-ID ::= 8 + id-AMFTrafficLoadReductionIndication ProtocolIE-ID ::= 9 + id-AMF-UE-NGAP-ID ProtocolIE-ID ::= 10 + id-AssistanceDataForPaging ProtocolIE-ID ::= 11 + id-BroadcastCancelledAreaList ProtocolIE-ID ::= 12 + id-BroadcastCompletedAreaList ProtocolIE-ID ::= 13 + id-CancelAllWarningMessages ProtocolIE-ID ::= 14 + id-Cause ProtocolIE-ID ::= 15 + id-CellIDListForRestart ProtocolIE-ID ::= 16 + id-ConcurrentWarningMessageInd ProtocolIE-ID ::= 17 + id-CoreNetworkAssistanceInformationForInactive ProtocolIE-ID ::= 18 + id-CriticalityDiagnostics ProtocolIE-ID ::= 19 + id-DataCodingScheme ProtocolIE-ID ::= 20 + id-DefaultPagingDRX ProtocolIE-ID ::= 21 + id-DirectForwardingPathAvailability ProtocolIE-ID ::= 22 + id-EmergencyAreaIDListForRestart ProtocolIE-ID ::= 23 + id-EmergencyFallbackIndicator ProtocolIE-ID ::= 24 + id-EUTRA-CGI ProtocolIE-ID ::= 25 + id-FiveG-S-TMSI ProtocolIE-ID ::= 26 + id-GlobalRANNodeID ProtocolIE-ID ::= 27 + id-GUAMI ProtocolIE-ID ::= 28 + id-HandoverType ProtocolIE-ID ::= 29 + id-IMSVoiceSupportIndicator ProtocolIE-ID ::= 30 + id-IndexToRFSP ProtocolIE-ID ::= 31 + id-InfoOnRecommendedCellsAndRANNodesForPaging ProtocolIE-ID ::= 32 + id-LocationReportingRequestType ProtocolIE-ID ::= 33 + id-MaskedIMEISV ProtocolIE-ID ::= 34 + id-MessageIdentifier ProtocolIE-ID ::= 35 + id-MobilityRestrictionList ProtocolIE-ID ::= 36 + id-NASC ProtocolIE-ID ::= 37 + id-NAS-PDU ProtocolIE-ID ::= 38 + id-NASSecurityParametersFromNGRAN ProtocolIE-ID ::= 39 + id-NewAMF-UE-NGAP-ID ProtocolIE-ID ::= 40 + id-NewSecurityContextInd ProtocolIE-ID ::= 41 + id-NGAP-Message ProtocolIE-ID ::= 42 + id-NGRAN-CGI ProtocolIE-ID ::= 43 + id-NGRANTraceID ProtocolIE-ID ::= 44 + id-NR-CGI ProtocolIE-ID ::= 45 + id-NRPPa-PDU ProtocolIE-ID ::= 46 + id-NumberOfBroadcastsRequested ProtocolIE-ID ::= 47 + id-OldAMF ProtocolIE-ID ::= 48 + id-OverloadStartNSSAIList ProtocolIE-ID ::= 49 + id-PagingDRX ProtocolIE-ID ::= 50 + id-PagingOrigin ProtocolIE-ID ::= 51 + id-PagingPriority ProtocolIE-ID ::= 52 + id-PDUSessionResourceAdmittedList ProtocolIE-ID ::= 53 + id-PDUSessionResourceFailedToModifyListModRes ProtocolIE-ID ::= 54 + id-PDUSessionResourceFailedToSetupListCxtRes ProtocolIE-ID ::= 55 + id-PDUSessionResourceFailedToSetupListHOAck ProtocolIE-ID ::= 56 + id-PDUSessionResourceFailedToSetupListPSReq ProtocolIE-ID ::= 57 + id-PDUSessionResourceFailedToSetupListSURes ProtocolIE-ID ::= 58 + id-PDUSessionResourceHandoverList ProtocolIE-ID ::= 59 + id-PDUSessionResourceListCxtRelCpl ProtocolIE-ID ::= 60 + id-PDUSessionResourceListHORqd ProtocolIE-ID ::= 61 + id-PDUSessionResourceModifyListModCfm ProtocolIE-ID ::= 62 + id-PDUSessionResourceModifyListModInd ProtocolIE-ID ::= 63 + id-PDUSessionResourceModifyListModReq ProtocolIE-ID ::= 64 + id-PDUSessionResourceModifyListModRes ProtocolIE-ID ::= 65 + id-PDUSessionResourceNotifyList ProtocolIE-ID ::= 66 + id-PDUSessionResourceReleasedListNot ProtocolIE-ID ::= 67 + id-PDUSessionResourceReleasedListPSAck ProtocolIE-ID ::= 68 + id-PDUSessionResourceReleasedListPSFail ProtocolIE-ID ::= 69 + id-PDUSessionResourceReleasedListRelRes ProtocolIE-ID ::= 70 + id-PDUSessionResourceSetupListCxtReq ProtocolIE-ID ::= 71 + id-PDUSessionResourceSetupListCxtRes ProtocolIE-ID ::= 72 + id-PDUSessionResourceSetupListHOReq ProtocolIE-ID ::= 73 + id-PDUSessionResourceSetupListSUReq ProtocolIE-ID ::= 74 + id-PDUSessionResourceSetupListSURes ProtocolIE-ID ::= 75 + id-PDUSessionResourceToBeSwitchedDLList ProtocolIE-ID ::= 76 + id-PDUSessionResourceSwitchedList ProtocolIE-ID ::= 77 + id-PDUSessionResourceToReleaseListHOCmd ProtocolIE-ID ::= 78 + id-PDUSessionResourceToReleaseListRelCmd ProtocolIE-ID ::= 79 + id-PLMNSupportList ProtocolIE-ID ::= 80 + id-PWSFailedCellIDList ProtocolIE-ID ::= 81 + id-RANNodeName ProtocolIE-ID ::= 82 + id-RANPagingPriority ProtocolIE-ID ::= 83 + id-RANStatusTransfer-TransparentContainer ProtocolIE-ID ::= 84 + id-RAN-UE-NGAP-ID ProtocolIE-ID ::= 85 + id-RelativeAMFCapacity ProtocolIE-ID ::= 86 + id-RepetitionPeriod ProtocolIE-ID ::= 87 + id-ResetType ProtocolIE-ID ::= 88 + id-RoutingID ProtocolIE-ID ::= 89 + id-RRCEstablishmentCause ProtocolIE-ID ::= 90 + id-RRCInactiveTransitionReportRequest ProtocolIE-ID ::= 91 + id-RRCState ProtocolIE-ID ::= 92 + id-SecurityContext ProtocolIE-ID ::= 93 + id-SecurityKey ProtocolIE-ID ::= 94 + id-SerialNumber ProtocolIE-ID ::= 95 + id-ServedGUAMIList ProtocolIE-ID ::= 96 + id-SliceSupportList ProtocolIE-ID ::= 97 + id-SONConfigurationTransferDL ProtocolIE-ID ::= 98 + id-SONConfigurationTransferUL ProtocolIE-ID ::= 99 + id-SourceAMF-UE-NGAP-ID ProtocolIE-ID ::= 100 + id-SourceToTarget-TransparentContainer ProtocolIE-ID ::= 101 + id-SupportedTAList ProtocolIE-ID ::= 102 + id-TAIListForPaging ProtocolIE-ID ::= 103 + id-TAIListForRestart ProtocolIE-ID ::= 104 + id-TargetID ProtocolIE-ID ::= 105 + id-TargetToSource-TransparentContainer ProtocolIE-ID ::= 106 + id-TimeToWait ProtocolIE-ID ::= 107 + id-TraceActivation ProtocolIE-ID ::= 108 + id-TraceCollectionEntityIPAddress ProtocolIE-ID ::= 109 + id-UEAggregateMaximumBitRate ProtocolIE-ID ::= 110 + id-UE-associatedLogicalNG-connectionList ProtocolIE-ID ::= 111 + id-UEContextRequest ProtocolIE-ID ::= 112 + --WS extension + id-Unknown-113 ProtocolIE-ID ::= 113 + id-UE-NGAP-IDs ProtocolIE-ID ::= 114 + id-UEPagingIdentity ProtocolIE-ID ::= 115 + id-UEPresenceInAreaOfInterestList ProtocolIE-ID ::= 116 + id-UERadioCapability ProtocolIE-ID ::= 117 + id-UERadioCapabilityForPaging ProtocolIE-ID ::= 118 + id-UESecurityCapabilities ProtocolIE-ID ::= 119 + id-UnavailableGUAMIList ProtocolIE-ID ::= 120 + id-UserLocationInformation ProtocolIE-ID ::= 121 + id-WarningAreaList ProtocolIE-ID ::= 122 + id-WarningMessageContents ProtocolIE-ID ::= 123 + id-WarningSecurityInfo ProtocolIE-ID ::= 124 + id-WarningType ProtocolIE-ID ::= 125 + id-AdditionalUL-NGU-UP-TNLInformation ProtocolIE-ID ::= 126 + id-DataForwardingNotPossible ProtocolIE-ID ::= 127 + id-DL-NGU-UP-TNLInformation ProtocolIE-ID ::= 128 + id-NetworkInstance ProtocolIE-ID ::= 129 + id-PDUSessionAggregateMaximumBitRate ProtocolIE-ID ::= 130 + id-PDUSessionResourceFailedToModifyListModCfm ProtocolIE-ID ::= 131 + id-PDUSessionResourceFailedToSetupListCxtFail ProtocolIE-ID ::= 132 + id-PDUSessionResourceListCxtRelReq ProtocolIE-ID ::= 133 + id-PDUSessionType ProtocolIE-ID ::= 134 + id-QosFlowAddOrModifyRequestList ProtocolIE-ID ::= 135 + id-QosFlowSetupRequestList ProtocolIE-ID ::= 136 + id-QosFlowToReleaseList ProtocolIE-ID ::= 137 + id-SecurityIndication ProtocolIE-ID ::= 138 + id-UL-NGU-UP-TNLInformation ProtocolIE-ID ::= 139 + id-UL-NGU-UP-TNLModifyList ProtocolIE-ID ::= 140 + id-WarningAreaCoordinates ProtocolIE-ID ::= 141 + id-PDUSessionResourceSecondaryRATUsageList ProtocolIE-ID ::= 142 + id-HandoverFlag ProtocolIE-ID ::= 143 + id-SecondaryRATUsageInformation ProtocolIE-ID ::= 144 + id-PDUSessionResourceReleaseResponseTransfer ProtocolIE-ID ::= 145 + id-RedirectionVoiceFallback ProtocolIE-ID ::= 146 + id-UERetentionInformation ProtocolIE-ID ::= 147 + id-S-NSSAI ProtocolIE-ID ::= 148 + id-PSCellInformation ProtocolIE-ID ::= 149 + id-LastEUTRAN-PLMNIdentity ProtocolIE-ID ::= 150 + id-MaximumIntegrityProtectedDataRate-DL ProtocolIE-ID ::= 151 + id-AdditionalDLForwardingUPTNLInformation ProtocolIE-ID ::= 152 + id-AdditionalDLUPTNLInformationForHOList ProtocolIE-ID ::= 153 + id-AdditionalNGU-UP-TNLInformation ProtocolIE-ID ::= 154 + id-AdditionalDLQosFlowPerTNLInformation ProtocolIE-ID ::= 155 + id-SecurityResult ProtocolIE-ID ::= 156 + id-ENDC-SONConfigurationTransferDL ProtocolIE-ID ::= 157 + id-ENDC-SONConfigurationTransferUL ProtocolIE-ID ::= 158 + id-OldAssociatedQosFlowList-ULendmarkerexpected ProtocolIE-ID ::= 159 + id-CNTypeRestrictionsForEquivalent ProtocolIE-ID ::= 160 + id-CNTypeRestrictionsForServing ProtocolIE-ID ::= 161 + id-NewGUAMI ProtocolIE-ID ::= 162 + id-ULForwarding ProtocolIE-ID ::= 163 + id-ULForwardingUP-TNLInformation ProtocolIE-ID ::= 164 + id-CNAssistedRANTuning ProtocolIE-ID ::= 165 + id-CommonNetworkInstance ProtocolIE-ID ::= 166 + id-NGRAN-TNLAssociationToRemoveList ProtocolIE-ID ::= 167 + id-TNLAssociationTransportLayerAddressNGRAN ProtocolIE-ID ::= 168 + id-EndpointIPAddressAndPort ProtocolIE-ID ::= 169 + id-LocationReportingAdditionalInfo ProtocolIE-ID ::= 170 + id-SourceToTarget-AMFInformationReroute ProtocolIE-ID ::= 171 + id-AdditionalULForwardingUPTNLInformation ProtocolIE-ID ::= 172 + id-SCTP-TLAs ProtocolIE-ID ::= 173 + id-SelectedPLMNIdentity ProtocolIE-ID ::= 174 + id-RIMInformationTransfer ProtocolIE-ID ::= 175 + id-GUAMIType ProtocolIE-ID ::= 176 + id-SRVCCOperationPossible ProtocolIE-ID ::= 177 + id-TargetRNC-ID ProtocolIE-ID ::= 178 + id-RAT-Information ProtocolIE-ID ::= 179 + id-ExtendedRATRestrictionInformation ProtocolIE-ID ::= 180 + id-QosMonitoringRequest ProtocolIE-ID ::= 181 + id-SgNB-UE-X2AP-ID ProtocolIE-ID ::= 182 + id-AdditionalRedundantDL-NGU-UP-TNLInformation ProtocolIE-ID ::= 183 + id-AdditionalRedundantDLQosFlowPerTNLInformation ProtocolIE-ID ::= 184 + id-AdditionalRedundantNGU-UP-TNLInformation ProtocolIE-ID ::= 185 + id-AdditionalRedundantUL-NGU-UP-TNLInformation ProtocolIE-ID ::= 186 + id-CNPacketDelayBudgetDL ProtocolIE-ID ::= 187 + id-CNPacketDelayBudgetUL ProtocolIE-ID ::= 188 + id-ExtendedPacketDelayBudget ProtocolIE-ID ::= 189 + id-RedundantCommonNetworkInstance ProtocolIE-ID ::= 190 + id-RedundantDL-NGU-TNLInformationReused ProtocolIE-ID ::= 191 + id-RedundantDL-NGU-UP-TNLInformation ProtocolIE-ID ::= 192 + id-RedundantDLQosFlowPerTNLInformation ProtocolIE-ID ::= 193 + id-RedundantQosFlowIndicator ProtocolIE-ID ::= 194 + id-RedundantUL-NGU-UP-TNLInformation ProtocolIE-ID ::= 195 + id-TSCTrafficCharacteristics ProtocolIE-ID ::= 196 + id-RedundantPDUSessionInformation ProtocolIE-ID ::= 197 + id-UsedRSNInformation ProtocolIE-ID ::= 198 + id-IAB-Authorized ProtocolIE-ID ::= 199 + id-IAB-Supported ProtocolIE-ID ::= 200 + id-IABNodeIndication ProtocolIE-ID ::= 201 + id-NB-IoT-PagingDRX ProtocolIE-ID ::= 202 + id-NB-IoT-Paging-eDRXInfo ProtocolIE-ID ::= 203 + id-NB-IoT-DefaultPagingDRX ProtocolIE-ID ::= 204 + id-Enhanced-CoverageRestriction ProtocolIE-ID ::= 205 + id-Extended-ConnectedTime ProtocolIE-ID ::= 206 + id-PagingAssisDataforCEcapabUE ProtocolIE-ID ::= 207 + id-WUS-Assistance-Information ProtocolIE-ID ::= 208 + id-UE-DifferentiationInfo ProtocolIE-ID ::= 209 + id-NB-IoT-UEPriority ProtocolIE-ID ::= 210 + id-UL-CP-SecurityInformation ProtocolIE-ID ::= 211 + id-DL-CP-SecurityInformation ProtocolIE-ID ::= 212 + id-TAI ProtocolIE-ID ::= 213 + id-UERadioCapabilityForPagingOfNB-IoT ProtocolIE-ID ::= 214 + id-LTEV2XServicesAuthorized ProtocolIE-ID ::= 215 + id-NRV2XServicesAuthorized ProtocolIE-ID ::= 216 + id-LTEUESidelinkAggregateMaximumBitrate ProtocolIE-ID ::= 217 + id-NRUESidelinkAggregateMaximumBitrate ProtocolIE-ID ::= 218 + id-PC5QoSParameters ProtocolIE-ID ::= 219 + id-AlternativeQoSParaSetList ProtocolIE-ID ::= 220 + id-CurrentQoSParaSetIndex ProtocolIE-ID ::= 221 + id-CEmodeBrestricted ProtocolIE-ID ::= 222 + id-EUTRA-PagingeDRXInformation ProtocolIE-ID ::= 223 + id-CEmodeBSupport-Indicator ProtocolIE-ID ::= 224 + id-LTEM-Indication ProtocolIE-ID ::= 225 + id-EndIndication ProtocolIE-ID ::= 226 + id-EDT-Session ProtocolIE-ID ::= 227 + id-UECapabilityInfoRequest ProtocolIE-ID ::= 228 + id-PDUSessionResourceFailedToResumeListRESReq ProtocolIE-ID ::= 229 + id-PDUSessionResourceFailedToResumeListRESRes ProtocolIE-ID ::= 230 + id-PDUSessionResourceSuspendListSUSReq ProtocolIE-ID ::= 231 + id-PDUSessionResourceResumeListRESReq ProtocolIE-ID ::= 232 + id-PDUSessionResourceResumeListRESRes ProtocolIE-ID ::= 233 + id-UE-UP-CIoT-Support ProtocolIE-ID ::= 234 + id-Suspend-Request-Indication ProtocolIE-ID ::= 235 + id-Suspend-Response-Indication ProtocolIE-ID ::= 236 + id-RRC-Resume-Cause ProtocolIE-ID ::= 237 + id-RGLevelWirelineAccessCharacteristics ProtocolIE-ID ::= 238 + id-W-AGFIdentityInformation ProtocolIE-ID ::= 239 + id-GlobalTNGF-ID ProtocolIE-ID ::= 240 + id-GlobalTWIF-ID ProtocolIE-ID ::= 241 + id-GlobalW-AGF-ID ProtocolIE-ID ::= 242 + id-UserLocationInformationW-AGF ProtocolIE-ID ::= 243 + id-UserLocationInformationTNGF ProtocolIE-ID ::= 244 + id-AuthenticatedIndication ProtocolIE-ID ::= 245 + id-TNGFIdentityInformation ProtocolIE-ID ::= 246 + id-TWIFIdentityInformation ProtocolIE-ID ::= 247 + id-UserLocationInformationTWIF ProtocolIE-ID ::= 248 + id-DataForwardingResponseERABList ProtocolIE-ID ::= 249 + id-IntersystemSONConfigurationTransferDL ProtocolIE-ID ::= 250 + id-IntersystemSONConfigurationTransferUL ProtocolIE-ID ::= 251 + id-SONInformationReport ProtocolIE-ID ::= 252 + id-UEHistoryInformationFromTheUE ProtocolIE-ID ::= 253 + id-ManagementBasedMDTPLMNList ProtocolIE-ID ::= 254 + id-MDTConfiguration ProtocolIE-ID ::= 255 + id-PrivacyIndicator ProtocolIE-ID ::= 256 + id-TraceCollectionEntityURI ProtocolIE-ID ::= 257 + id-NPN-Support ProtocolIE-ID ::= 258 + id-NPN-AccessInformation ProtocolIE-ID ::= 259 + id-NPN-PagingAssistanceInformation ProtocolIE-ID ::= 260 + id-NPN-MobilityInformation ProtocolIE-ID ::= 261 + id-TargettoSource-Failure-TransparentContainer ProtocolIE-ID ::= 262 + id-NID ProtocolIE-ID ::= 263 + id-UERadioCapabilityID ProtocolIE-ID ::= 264 + id-UERadioCapability-EUTRA-Format ProtocolIE-ID ::= 265 + id-DAPSRequestInfo ProtocolIE-ID ::= 266 + id-DAPSResponseInfoList ProtocolIE-ID ::= 267 + id-EarlyStatusTransfer-TransparentContainer ProtocolIE-ID ::= 268 + id-NotifySourceNGRANNode ProtocolIE-ID ::= 269 + id-ExtendedSliceSupportList ProtocolIE-ID ::= 270 + id-ExtendedTAISliceSupportList ProtocolIE-ID ::= 271 + id-ConfiguredTACIndication ProtocolIE-ID ::= 272 + id-Extended-RANNodeName ProtocolIE-ID ::= 273 + id-Extended-AMFName ProtocolIE-ID ::= 274 + id-GlobalCable-ID ProtocolIE-ID ::= 275 + id-QosMonitoringReportingFrequency ProtocolIE-ID ::= 276 + id-QosFlowParametersList ProtocolIE-ID ::= 277 + id-QosFlowFeedbackList ProtocolIE-ID ::= 278 + id-BurstArrivalTimeDownlink ProtocolIE-ID ::= 279 + id-ExtendedUEIdentityIndexValue ProtocolIE-ID ::= 280 + id-PduSessionExpectedUEActivityBehaviour ProtocolIE-ID ::= 281 + id-MicoAllPLMN ProtocolIE-ID ::= 282 + id-QosFlowFailedToSetupList ProtocolIE-ID ::= 283 + id-SourceTNLAddrInfo ProtocolIE-ID ::= 284 + id-ExtendedReportIntervalMDT ProtocolIE-ID ::= 285 + id-SourceNodeID ProtocolIE-ID ::= 286 + id-NRNTNTAIInformation ProtocolIE-ID ::= 287 + id-UEContextReferenceAtSource ProtocolIE-ID ::= 288 + id-LastVisitedPSCellList ProtocolIE-ID ::= 289 + id-IntersystemSONInformationRequest ProtocolIE-ID ::= 290 + id-IntersystemSONInformationReply ProtocolIE-ID ::= 291 + id-EnergySavingIndication ProtocolIE-ID ::= 292 + id-IntersystemResourceStatusUpdate ProtocolIE-ID ::= 293 + id-SuccessfulHandoverReportList ProtocolIE-ID ::= 294 + id-MBS-AreaSessionID ProtocolIE-ID ::= 295 + id-MBS-QoSFlowsToBeSetupList ProtocolIE-ID ::= 296 + id-MBS-QoSFlowsToBeSetupModList ProtocolIE-ID ::= 297 + id-MBS-ServiceArea ProtocolIE-ID ::= 298 + id-MBS-SessionID ProtocolIE-ID ::= 299 + id-MBS-DistributionReleaseRequestTransfer ProtocolIE-ID ::= 300 + id-MBS-DistributionSetupRequestTransfer ProtocolIE-ID ::= 301 + id-MBS-DistributionSetupResponseTransfer ProtocolIE-ID ::= 302 + id-MBS-DistributionSetupUnsuccessfulTransfer ProtocolIE-ID ::= 303 + id-MulticastSessionActivationRequestTransfer ProtocolIE-ID ::= 304 + id-MulticastSessionDeactivationRequestTransfer ProtocolIE-ID ::= 305 + id-MulticastSessionUpdateRequestTransfer ProtocolIE-ID ::= 306 + id-MulticastGroupPagingAreaList ProtocolIE-ID ::= 307 + --WS extension + id-Unknown-308 ProtocolIE-ID ::= 308 + id-MBS-SupportIndicator ProtocolIE-ID ::= 309 + id-MBSSessionFailedtoSetupList ProtocolIE-ID ::= 310 + id-MBSSessionFailedtoSetuporModifyList ProtocolIE-ID ::= 311 + id-MBSSessionSetupResponseList ProtocolIE-ID ::= 312 + id-MBSSessionSetuporModifyResponseList ProtocolIE-ID ::= 313 + id-MBSSessionSetupFailureTransfer ProtocolIE-ID ::= 314 + id-MBSSessionSetupRequestTransfer ProtocolIE-ID ::= 315 + id-MBSSessionSetupResponseTransfer ProtocolIE-ID ::= 316 + id-MBSSessionToReleaseList ProtocolIE-ID ::= 317 + id-MBSSessionSetupRequestList ProtocolIE-ID ::= 318 + id-MBSSessionSetuporModifyRequestList ProtocolIE-ID ::= 319 + --WS extension + id-Unknown-320 ProtocolIE-ID ::= 320 + id-Unknown-321 ProtocolIE-ID ::= 321 + id-Unknown-322 ProtocolIE-ID ::= 322 + id-MBS-ActiveSessionInformation-SourcetoTargetList ProtocolIE-ID ::= 323 + id-MBS-ActiveSessionInformation-TargettoSourceList ProtocolIE-ID ::= 324 + id-OnboardingSupport ProtocolIE-ID ::= 325 + id-TimeSyncAssistanceInfo ProtocolIE-ID ::= 326 + id-SurvivalTime ProtocolIE-ID ::= 327 + id-QMCConfigInfo ProtocolIE-ID ::= 328 + id-QMCDeactivation ProtocolIE-ID ::= 329 + --WS extension + id-Unknown-330 ProtocolIE-ID ::= 330 + id-PDUSessionPairID ProtocolIE-ID ::= 331 + id-NR-PagingeDRXInformation ProtocolIE-ID ::= 332 + id-RedCapIndication ProtocolIE-ID ::= 333 + id-TargetNSSAIInformation ProtocolIE-ID ::= 334 + id-UESliceMaximumBitRateList ProtocolIE-ID ::= 335 + id-M4ReportAmount ProtocolIE-ID ::= 336 + id-M5ReportAmount ProtocolIE-ID ::= 337 + id-M6ReportAmount ProtocolIE-ID ::= 338 + id-M7ReportAmount ProtocolIE-ID ::= 339 + id-IncludeBeamMeasurementsIndication ProtocolIE-ID ::= 340 + id-ExcessPacketDelayThresholdConfiguration ProtocolIE-ID ::= 341 + id-PagingCause ProtocolIE-ID ::= 342 + id-PagingCauseIndicationForVoiceService ProtocolIE-ID ::= 343 + id-PEIPSassistanceInformation ProtocolIE-ID ::= 344 + id-FiveG-ProSeAuthorized ProtocolIE-ID ::= 345 + id-FiveG-ProSeUEPC5AggregateMaximumBitRate ProtocolIE-ID ::= 346 + id-FiveG-ProSePC5QoSParameters ProtocolIE-ID ::= 347 + id-MBSSessionModificationFailureTransfer ProtocolIE-ID ::= 348 + id-MBSSessionModificationRequestTransfer ProtocolIE-ID ::= 349 + id-MBSSessionModificationResponseTransfer ProtocolIE-ID ::= 350 + id-MBS-QoSFlowToReleaseList ProtocolIE-ID ::= 351 + id-MBS-SessionTNLInfo5GC ProtocolIE-ID ::= 352 + id-TAINSAGSupportList ProtocolIE-ID ::= 353 + id-SourceNodeTNLAddrInfo ProtocolIE-ID ::= 354 + id-NGAPIESupportInformationRequestList ProtocolIE-ID ::= 355 + id-NGAPIESupportInformationResponseList ProtocolIE-ID ::= 356 + id-MBS-SessionFSAIDList ProtocolIE-ID ::= 357 + id-MBSSessionReleaseResponseTransfer ProtocolIE-ID ::= 358 + id-ManagementBasedMDTPLMNModificationList ProtocolIE-ID ::= 359 + id-EarlyMeasurement ProtocolIE-ID ::= 360 + id-BeamMeasurementsReportConfiguration ProtocolIE-ID ::= 361 + id-HFCNode-ID-new ProtocolIE-ID ::= 362 + id-GlobalCable-ID-new ProtocolIE-ID ::= 363 + id-TargetHomeENB-ID ProtocolIE-ID ::= 364 + id-HashedUEIdentityIndexValue ProtocolIE-ID ::= 365 + + +END diff --git a/ttcn/LibNGAP/lib/asn1/NGAP_Containers.asn b/ttcn/LibNGAP/lib/asn1/NGAP_Containers.asn new file mode 100644 index 0000000..fdf612b --- /dev/null +++ b/ttcn/LibNGAP/lib/asn1/NGAP_Containers.asn @@ -0,0 +1,200 @@ +-- 3GPP TS 38.413 V17.5.0 (2023-06) +-- 9.4.8 Container Definitions +-- ************************************************************** +-- +-- Container definitions +-- +-- ************************************************************** + +NGAP-Containers { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-Containers (5) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +-- ************************************************************** +-- +-- IE parameter types from other modules. +-- +-- ************************************************************** + +IMPORTS + + Criticality, + Presence, + PrivateIE-ID, + ProtocolExtensionID, + ProtocolIE-ID +FROM NGAP-CommonDataTypes + + maxPrivateIEs, + maxProtocolExtensions, + maxProtocolIEs +FROM NGAP-Constants; + +-- ************************************************************** +-- +-- Class Definition for Protocol IEs +-- +-- ************************************************************** + +NGAP-PROTOCOL-IES ::= CLASS { + &id ProtocolIE-ID UNIQUE, + &criticality Criticality, + &Value, + &presence Presence +} +WITH SYNTAX { + ID &id + CRITICALITY &criticality + TYPE &Value + PRESENCE &presence +} + +-- ************************************************************** +-- +-- Class Definition for Protocol IEs +-- +-- ************************************************************** + +NGAP-PROTOCOL-IES-PAIR ::= CLASS { + &id ProtocolIE-ID UNIQUE, + &firstCriticality Criticality, + &FirstValue, + &secondCriticality Criticality, + &SecondValue, + &presence Presence +} +WITH SYNTAX { + ID &id + FIRST CRITICALITY &firstCriticality + FIRST TYPE &FirstValue + SECOND CRITICALITY &secondCriticality + SECOND TYPE &SecondValue + PRESENCE &presence +} + +-- ************************************************************** +-- +-- Class Definition for Protocol Extensions +-- +-- ************************************************************** + +NGAP-PROTOCOL-EXTENSION ::= CLASS { + &id ProtocolExtensionID UNIQUE, + &criticality Criticality, + &Extension, + &presence Presence +} +WITH SYNTAX { + ID &id + CRITICALITY &criticality + EXTENSION &Extension + PRESENCE &presence +} + +-- ************************************************************** +-- +-- Class Definition for Private IEs +-- +-- ************************************************************** + +NGAP-PRIVATE-IES ::= CLASS { + &id PrivateIE-ID, + &criticality Criticality, + &Value, + &presence Presence +} +WITH SYNTAX { + ID &id + CRITICALITY &criticality + TYPE &Value + PRESENCE &presence +} + +-- ************************************************************** +-- +-- Container for Protocol IEs +-- +-- ************************************************************** + +ProtocolIE-Container {NGAP-PROTOCOL-IES : IEsSetParam} ::= + SEQUENCE (SIZE (0..maxProtocolIEs)) OF + ProtocolIE-Field {{IEsSetParam}} + +ProtocolIE-SingleContainer {NGAP-PROTOCOL-IES : IEsSetParam} ::= + ProtocolIE-Field {{IEsSetParam}} + +ProtocolIE-Field {NGAP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE { + id NGAP-PROTOCOL-IES.&id ({IEsSetParam}), + criticality NGAP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}), + value NGAP-PROTOCOL-IES.&Value ({IEsSetParam}{@id}) +} + +-- ************************************************************** +-- +-- Container for Protocol IE Pairs +-- +-- ************************************************************** + +ProtocolIE-ContainerPair {NGAP-PROTOCOL-IES-PAIR : IEsSetParam} ::= + SEQUENCE (SIZE (0..maxProtocolIEs)) OF + ProtocolIE-FieldPair {{IEsSetParam}} + +ProtocolIE-FieldPair {NGAP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE { + id NGAP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}), + firstCriticality NGAP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}), + firstValue NGAP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}), + secondCriticality NGAP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}), + secondValue NGAP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id}) +} + +-- ************************************************************** +-- +-- Container Lists for Protocol IE Containers +-- +-- ************************************************************** + +ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, NGAP-PROTOCOL-IES : IEsSetParam} ::= + SEQUENCE (SIZE (lowerBound..upperBound)) OF + ProtocolIE-SingleContainer {{IEsSetParam}} + +ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, NGAP-PROTOCOL-IES-PAIR : IEsSetParam} ::= + SEQUENCE (SIZE (lowerBound..upperBound)) OF + ProtocolIE-ContainerPair {{IEsSetParam}} + +-- ************************************************************** +-- +-- Container for Protocol Extensions +-- +-- ************************************************************** + +ProtocolExtensionContainer {NGAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= + SEQUENCE (SIZE (1..maxProtocolExtensions)) OF + ProtocolExtensionField {{ExtensionSetParam}} + +ProtocolExtensionField {NGAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE { + id NGAP-PROTOCOL-EXTENSION.&id ({ExtensionSetParam}), + criticality NGAP-PROTOCOL-EXTENSION.&criticality ({ExtensionSetParam}{@id}), + extensionValue NGAP-PROTOCOL-EXTENSION.&Extension ({ExtensionSetParam}{@id}) +} + +-- ************************************************************** +-- +-- Container for Private IEs +-- +-- ************************************************************** + +PrivateIE-Container {NGAP-PRIVATE-IES : IEsSetParam } ::= + SEQUENCE (SIZE (1..maxPrivateIEs)) OF + PrivateIE-Field {{IEsSetParam}} + +PrivateIE-Field {NGAP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE { + id NGAP-PRIVATE-IES.&id ({IEsSetParam}), + criticality NGAP-PRIVATE-IES.&criticality ({IEsSetParam}{@id}), + value NGAP-PRIVATE-IES.&Value ({IEsSetParam}{@id}) +} + +END diff --git a/ttcn/LibNGAP/lib/asn1/NGAP_IEs.asn b/ttcn/LibNGAP/lib/asn1/NGAP_IEs.asn new file mode 100644 index 0000000..d0af009 --- /dev/null +++ b/ttcn/LibNGAP/lib/asn1/NGAP_IEs.asn @@ -0,0 +1,6990 @@ +-- 3GPP TS 38.413 V17.5.0 (2023-06) +-- 9.4.5 Information Element Definitions +-- ************************************************************** +-- +-- Information Element Definitions +-- +-- ************************************************************** + +NGAP-IEs { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-IEs (2) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +IMPORTS + + id-AdditionalDLForwardingUPTNLInformation, + id-AdditionalULForwardingUPTNLInformation, + id-AdditionalDLQosFlowPerTNLInformation, + id-AdditionalDLUPTNLInformationForHOList, + id-AdditionalNGU-UP-TNLInformation, + id-AdditionalRedundantDL-NGU-UP-TNLInformation, + id-AdditionalRedundantDLQosFlowPerTNLInformation, + id-AdditionalRedundantNGU-UP-TNLInformation, + id-AdditionalRedundantUL-NGU-UP-TNLInformation, + id-AdditionalUL-NGU-UP-TNLInformation, + id-AlternativeQoSParaSetList, + id-BurstArrivalTimeDownlink, + id-Cause, + id-CNPacketDelayBudgetDL, + id-CNPacketDelayBudgetUL, + id-CNTypeRestrictionsForEquivalent, + id-CNTypeRestrictionsForServing, + id-CommonNetworkInstance, + id-ConfiguredTACIndication, + id-CurrentQoSParaSetIndex, + id-DAPSRequestInfo, + id-DAPSResponseInfoList, + id-DataForwardingNotPossible, + id-DataForwardingResponseERABList, + id-DirectForwardingPathAvailability, + id-DL-NGU-UP-TNLInformation, + id-EndpointIPAddressAndPort, + id-EnergySavingIndication, + id-ExtendedPacketDelayBudget, + id-ExtendedRATRestrictionInformation, + id-ExtendedReportIntervalMDT, + id-ExtendedSliceSupportList, + id-ExtendedTAISliceSupportList, + id-ExtendedUEIdentityIndexValue, + id-EUTRA-PagingeDRXInformation, + id-GlobalCable-ID, + id-GlobalRANNodeID, + id-GlobalTNGF-ID, + id-GlobalTWIF-ID, + id-GlobalW-AGF-ID, + id-GUAMIType, +id-HashedUEIdentityIndexValue, + id-IncludeBeamMeasurementsIndication, + id-IntersystemSONInformationRequest, + id-IntersystemSONInformationReply, + id-IntersystemResourceStatusUpdate, + id-LastEUTRAN-PLMNIdentity, + id-LastVisitedPSCellList, + id-LocationReportingAdditionalInfo, + id-M4ReportAmount, + id-M5ReportAmount, + id-M6ReportAmount, + id-ExcessPacketDelayThresholdConfiguration, + id-M7ReportAmount, + id-MaximumIntegrityProtectedDataRate-DL, + id-MBS-AreaSessionID, + id-MBS-QoSFlowsToBeSetupList, + id-MBS-QoSFlowsToBeSetupModList, + id-MBS-QoSFlowToReleaseList, + id-MBS-ServiceArea, + id-MBS-SessionFSAIDList, + id-MBS-SessionID, + id-MBS-ActiveSessionInformation-SourcetoTargetList, + id-MBS-ActiveSessionInformation-TargettoSourceList, + id-MBS-SessionTNLInfo5GC, + id-MBS-SupportIndicator, + id-MBSSessionFailedtoSetupList, + id-MBSSessionFailedtoSetuporModifyList, + id-MBSSessionSetupResponseList, + id-MBSSessionSetuporModifyResponseList, + id-MBSSessionToReleaseList, + id-MBSSessionSetupRequestList, + id-MBSSessionSetuporModifyRequestList, + id-MDTConfiguration, + id-MicoAllPLMN, + id-NetworkInstance, + id-NGAPIESupportInformationRequestList, + id-NGAPIESupportInformationResponseList, + id-NID, + id-NR-CGI, + id-NRNTNTAIInformation, + id-NPN-MobilityInformation, + id-NPN-PagingAssistanceInformation, + id-NPN-Support, + id-NR-PagingeDRXInformation, + id-OldAssociatedQosFlowList-ULendmarkerexpected, + id-OnboardingSupport, + id-PagingAssisDataforCEcapabUE, + id-PagingCauseIndicationForVoiceService, + id-PDUSessionAggregateMaximumBitRate, + id-PduSessionExpectedUEActivityBehaviour, + id-PDUSessionPairID, + id-PDUSessionResourceFailedToSetupListCxtFail, + id-PDUSessionResourceReleaseResponseTransfer, + id-PDUSessionType, + id-PEIPSassistanceInformation, + id-PSCellInformation, + id-QMCConfigInfo, + id-QosFlowAddOrModifyRequestList, + id-QosFlowFailedToSetupList, + id-QosFlowFeedbackList, + id-QosFlowParametersList, + id-QosFlowSetupRequestList, + id-QosFlowToReleaseList, + id-QosMonitoringRequest, + id-QosMonitoringReportingFrequency, + id-SuccessfulHandoverReportList, + id-UEContextReferenceAtSource, + id-RAT-Information, + id-RedundantCommonNetworkInstance, + id-RedundantDL-NGU-TNLInformationReused, + id-RedundantDL-NGU-UP-TNLInformation, + id-RedundantDLQosFlowPerTNLInformation, + id-RedundantPDUSessionInformation, + id-RedundantQosFlowIndicator, + id-RedundantUL-NGU-UP-TNLInformation, + id-SCTP-TLAs, + id-SecondaryRATUsageInformation, + id-SecurityIndication, + id-SecurityResult, + id-SgNB-UE-X2AP-ID, + id-S-NSSAI, + id-SONInformationReport, + id-SourceNodeID, + id-SourceNodeTNLAddrInfo, + id-SourceTNLAddrInfo, + id-SurvivalTime, + id-TNLAssociationTransportLayerAddressNGRAN, + id-TAINSAGSupportList, + id-TargetHomeENB-ID, + id-TargetRNC-ID, + id-TraceCollectionEntityURI, + id-TSCTrafficCharacteristics, + id-UEHistoryInformationFromTheUE, + id-UERadioCapabilityForPaging, + id-UERadioCapabilityForPagingOfNB-IoT, + id-UL-NGU-UP-TNLInformation, + id-UL-NGU-UP-TNLModifyList, + id-ULForwarding, + id-ULForwardingUP-TNLInformation, + id-UsedRSNInformation, + id-UserLocationInformationTNGF, + id-UserLocationInformationTWIF, + id-UserLocationInformationW-AGF, + id-EarlyMeasurement, + id-BeamMeasurementsReportConfiguration, + id-TAI, + id-HFCNode-ID-new, + id-GlobalCable-ID-new, + maxnoofAllowedAreas, + maxnoofAllowedCAGsperPLMN, + maxnoofAllowedS-NSSAIs, + maxnoofBluetoothName, + maxnoofBPLMNs, + maxnoofCAGSperCell, + maxnoofCandidateCells, + maxnoofCellIDforMDT, + maxnoofCellIDforQMC, + maxnoofCellIDforWarning, + maxnoofCellinAoI, + maxnoofCellinEAI, + maxnoofCellsforMBS, + maxnoofCellsingNB, + maxnoofCellsinngeNB, + maxnoofCellsinNGRANNode, + maxnoofCellinTAI, + maxnoofCellsinUEHistoryInfo, + maxnoofCellsUEMovingTrajectory, + maxnoofDRBs, + maxnoofEmergencyAreaID, + maxnoofEAIforRestart, + maxnoofEPLMNs, + maxnoofEPLMNsPlusOne, + maxnoofE-RABs, + maxnoofErrors, + maxnoofExtSliceItems, + maxnoofForbTACs, + maxnoofFreqforMDT, + maxnoofMBSFSAs, + maxnoofMBSQoSFlows, + maxnoofMBSServiceAreaInformation, + maxnoofMBSAreaSessionIDs, + maxnoofMBSSessions, + maxnoofMBSSessionsofUE, + maxnoofMDTPLMNs, + maxnoofMRBs, + maxnoofMultiConnectivity, + maxnoofMultiConnectivityMinusOne, + maxnoofNeighPCIforMDT, + maxnoofNGAPIESupportInfo, + maxnoofNGConnectionsToReset, + maxNRARFCN, + maxnoofNRCellBands, + maxnoofNSAGs, + maxnoofPagingAreas, + maxnoofPC5QoSFlows, + maxnoofPDUSessions, + maxnoofPLMNs, + maxnoofPLMNforQMC, + maxnoofQosFlows, + maxnoofQosParaSets, + maxnoofRANNodeinAoI, + maxnoofRecommendedCells, + maxnoofRecommendedRANNodes, + maxnoofAoI, + maxnoofPSCellsPerPrimaryCellinUEHistoryInfo, + maxnoofReportedCells, + maxnoofSensorName, + maxnoofServedGUAMIs, + maxnoofSliceItems, + maxnoofSNSSAIforQMC, + maxnoofSuccessfulHOReports, + maxnoofTACs, + maxnoofTACsinNTN, + maxnoofTAforMDT, + maxnoofTAforQMC, + maxnoofTAIforInactive, + maxnoofTAIforMBS, + maxnoofTAIforPaging, + maxnoofTAIforRestart, + maxnoofTAIforWarning, + maxnoofTAIinAoI, + maxnoofTargetS-NSSAIs, + maxnoofTimePeriods, + maxnoofTNLAssociations, + maxnoofUEAppLayerMeas, + maxnoofUEsforPaging, + maxnoofWLANName, + maxnoofXnExtTLAs, + maxnoofXnGTP-TLAs, + maxnoofXnTLAs, + maxnoofThresholdsForExcessPacketDelay + +FROM NGAP-Constants + + Criticality, + ProcedureCode, + ProtocolIE-ID, + TriggeringMessage +FROM NGAP-CommonDataTypes + + ProtocolExtensionContainer{}, + ProtocolIE-Container{}, + NGAP-PROTOCOL-EXTENSION, + ProtocolIE-SingleContainer{}, + NGAP-PROTOCOL-IES +FROM NGAP-Containers; + +-- A + +AdditionalDLUPTNLInformationForHOList ::= SEQUENCE (SIZE(1..maxnoofMultiConnectivityMinusOne)) OF AdditionalDLUPTNLInformationForHOItem + +AdditionalDLUPTNLInformationForHOItem ::= SEQUENCE { + additionalDL-NGU-UP-TNLInformation UPTransportLayerInformation, + additionalQosFlowSetupResponseList QosFlowListWithDataForwarding, + additionalDLForwardingUPTNLInformation UPTransportLayerInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { AdditionalDLUPTNLInformationForHOItem-ExtIEs} } OPTIONAL, + ... +} + +AdditionalDLUPTNLInformationForHOItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-AdditionalRedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }, + ... +} + +AdditionalQosFlowInformation ::= ENUMERATED { + more-likely, + ... +} + +AllocationAndRetentionPriority ::= SEQUENCE { + priorityLevelARP PriorityLevelARP, + pre-emptionCapability Pre-emptionCapability, + pre-emptionVulnerability Pre-emptionVulnerability, + iE-Extensions ProtocolExtensionContainer { {AllocationAndRetentionPriority-ExtIEs} } OPTIONAL, + ... +} + +AllocationAndRetentionPriority-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +Allowed-CAG-List-per-PLMN ::= SEQUENCE (SIZE(1..maxnoofAllowedCAGsperPLMN)) OF CAG-ID + +AllowedNSSAI ::= SEQUENCE (SIZE(1..maxnoofAllowedS-NSSAIs)) OF AllowedNSSAI-Item + +AllowedNSSAI-Item ::= SEQUENCE { + s-NSSAI S-NSSAI, + iE-Extensions ProtocolExtensionContainer { {AllowedNSSAI-Item-ExtIEs} } OPTIONAL, + ... +} + +AllowedNSSAI-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +Allowed-PNI-NPN-List ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF Allowed-PNI-NPN-Item + +Allowed-PNI-NPN-Item ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + pNI-NPN-restricted ENUMERATED {restricted, not-restricted, ...}, + allowed-CAG-List-per-PLMN Allowed-CAG-List-per-PLMN, + iE-Extensions ProtocolExtensionContainer { {Allowed-PNI-NPN-Item-ExtIEs} } OPTIONAL, + ... +} + +Allowed-PNI-NPN-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AllowedTACs ::= SEQUENCE (SIZE(1..maxnoofAllowedAreas)) OF TAC + +AlternativeQoSParaSetIndex ::= INTEGER (1..8, ...) + +AlternativeQoSParaSetNotifyIndex ::= INTEGER (0..8, ...) + +AlternativeQoSParaSetList ::= SEQUENCE (SIZE(1..maxnoofQosParaSets)) OF AlternativeQoSParaSetItem + +AlternativeQoSParaSetItem ::= SEQUENCE { + alternativeQoSParaSetIndex AlternativeQoSParaSetIndex, + guaranteedFlowBitRateDL BitRate OPTIONAL, + guaranteedFlowBitRateUL BitRate OPTIONAL, + packetDelayBudget PacketDelayBudget OPTIONAL, + packetErrorRate PacketErrorRate OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {AlternativeQoSParaSetItem-ExtIEs} } OPTIONAL, + ... +} + +AlternativeQoSParaSetItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AMFName ::= PrintableString (SIZE(1..150, ...)) + +AMFNameVisibleString ::= VisibleString (SIZE(1..150, ...)) + +AMFNameUTF8String ::= UTF8String (SIZE(1..150, ...)) + +AMFPagingTarget ::= CHOICE { + globalRANNodeID GlobalRANNodeID, + tAI TAI, + choice-Extensions ProtocolIE-SingleContainer { {AMFPagingTarget-ExtIEs} } +} + +AMFPagingTarget-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +AMFPointer ::= BIT STRING (SIZE(6)) + +AMFRegionID ::= BIT STRING (SIZE(8)) + +AMFSetID ::= BIT STRING (SIZE(10)) + +AMF-TNLAssociationSetupList ::= SEQUENCE (SIZE(1..maxnoofTNLAssociations)) OF AMF-TNLAssociationSetupItem + +AMF-TNLAssociationSetupItem ::= SEQUENCE { + aMF-TNLAssociationAddress CPTransportLayerInformation, + iE-Extensions ProtocolExtensionContainer { {AMF-TNLAssociationSetupItem-ExtIEs} } OPTIONAL, + ... +} + +AMF-TNLAssociationSetupItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AMF-TNLAssociationToAddList ::= SEQUENCE (SIZE(1..maxnoofTNLAssociations)) OF AMF-TNLAssociationToAddItem + +AMF-TNLAssociationToAddItem ::= SEQUENCE { + aMF-TNLAssociationAddress CPTransportLayerInformation, + tNLAssociationUsage TNLAssociationUsage OPTIONAL, + tNLAddressWeightFactor TNLAddressWeightFactor, + iE-Extensions ProtocolExtensionContainer { {AMF-TNLAssociationToAddItem-ExtIEs} } OPTIONAL, + ... +} + +AMF-TNLAssociationToAddItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AMF-TNLAssociationToRemoveList ::= SEQUENCE (SIZE(1..maxnoofTNLAssociations)) OF AMF-TNLAssociationToRemoveItem + +AMF-TNLAssociationToRemoveItem ::= SEQUENCE { + aMF-TNLAssociationAddress CPTransportLayerInformation, + iE-Extensions ProtocolExtensionContainer { {AMF-TNLAssociationToRemoveItem-ExtIEs} } OPTIONAL, + ... +} + +AMF-TNLAssociationToRemoveItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-TNLAssociationTransportLayerAddressNGRAN CRITICALITY reject EXTENSION CPTransportLayerInformation PRESENCE optional}, + ... +} + +AMF-TNLAssociationToUpdateList ::= SEQUENCE (SIZE(1..maxnoofTNLAssociations)) OF AMF-TNLAssociationToUpdateItem + +AMF-TNLAssociationToUpdateItem ::= SEQUENCE { + aMF-TNLAssociationAddress CPTransportLayerInformation, + tNLAssociationUsage TNLAssociationUsage OPTIONAL, + tNLAddressWeightFactor TNLAddressWeightFactor OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {AMF-TNLAssociationToUpdateItem-ExtIEs} } OPTIONAL, + ... +} + +AMF-TNLAssociationToUpdateItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AMF-UE-NGAP-ID ::= INTEGER (0..1099511627775) + +AreaOfInterest ::= SEQUENCE { + areaOfInterestTAIList AreaOfInterestTAIList OPTIONAL, + areaOfInterestCellList AreaOfInterestCellList OPTIONAL, + areaOfInterestRANNodeList AreaOfInterestRANNodeList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {AreaOfInterest-ExtIEs} } OPTIONAL, + ... +} + +AreaOfInterest-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AreaOfInterestCellList ::= SEQUENCE (SIZE(1..maxnoofCellinAoI)) OF AreaOfInterestCellItem + +AreaOfInterestCellItem ::= SEQUENCE { + nGRAN-CGI NGRAN-CGI, + iE-Extensions ProtocolExtensionContainer { {AreaOfInterestCellItem-ExtIEs} } OPTIONAL, + ... +} + +AreaOfInterestCellItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AreaOfInterestList ::= SEQUENCE (SIZE(1..maxnoofAoI)) OF AreaOfInterestItem + +AreaOfInterestItem ::= SEQUENCE { + areaOfInterest AreaOfInterest, + locationReportingReferenceID LocationReportingReferenceID, + iE-Extensions ProtocolExtensionContainer { {AreaOfInterestItem-ExtIEs} } OPTIONAL, + ... +} + +AreaOfInterestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AreaOfInterestRANNodeList ::= SEQUENCE (SIZE(1..maxnoofRANNodeinAoI)) OF AreaOfInterestRANNodeItem + +AreaOfInterestRANNodeItem ::= SEQUENCE { + globalRANNodeID GlobalRANNodeID, + iE-Extensions ProtocolExtensionContainer { {AreaOfInterestRANNodeItem-ExtIEs} } OPTIONAL, + ... +} + +AreaOfInterestRANNodeItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AreaOfInterestTAIList ::= SEQUENCE (SIZE(1..maxnoofTAIinAoI)) OF AreaOfInterestTAIItem + +AreaOfInterestTAIItem ::= SEQUENCE { + tAI TAI, + iE-Extensions ProtocolExtensionContainer { {AreaOfInterestTAIItem-ExtIEs} } OPTIONAL, + ... +} + +AreaOfInterestTAIItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AssistanceDataForPaging ::= SEQUENCE { + assistanceDataForRecommendedCells AssistanceDataForRecommendedCells OPTIONAL, + pagingAttemptInformation PagingAttemptInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {AssistanceDataForPaging-ExtIEs} } OPTIONAL, + ... +} + +AssistanceDataForPaging-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-NPN-PagingAssistanceInformation CRITICALITY ignore EXTENSION NPN-PagingAssistanceInformation PRESENCE optional }| + { ID id-PagingAssisDataforCEcapabUE CRITICALITY ignore EXTENSION PagingAssisDataforCEcapabUE PRESENCE optional }, + ... +} + +AssistanceDataForRecommendedCells ::= SEQUENCE { + recommendedCellsForPaging RecommendedCellsForPaging, + iE-Extensions ProtocolExtensionContainer { {AssistanceDataForRecommendedCells-ExtIEs} } OPTIONAL, + ... +} + +AssistanceDataForRecommendedCells-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AssociatedMBSQosFlowSetupRequestList ::= SEQUENCE (SIZE(1..maxnoofMBSQoSFlows)) OF AssociatedMBSQosFlowSetupRequestItem + +AssociatedMBSQosFlowSetupRequestItem ::= SEQUENCE { + mBS-QosFlowIdentifier QosFlowIdentifier, + associatedUnicastQosFlowIdentifier QosFlowIdentifier, + iE-Extensions ProtocolExtensionContainer { { AssociatedMBSQosFlowSetupRequestItem-ExtIEs} } OPTIONAL, + ... +} + +AssociatedMBSQosFlowSetupRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AssociatedMBSQosFlowSetuporModifyRequestList ::= SEQUENCE (SIZE(1..maxnoofMBSQoSFlows)) OF AssociatedMBSQosFlowSetuporModifyRequestItem + +AssociatedMBSQosFlowSetuporModifyRequestItem ::= SEQUENCE { + mBS-QosFlowIdentifier QosFlowIdentifier, + associatedUnicastQosFlowIdentifier QosFlowIdentifier, + iE-Extensions ProtocolExtensionContainer { { AssociatedMBSQosFlowSetuporModifyRequestItem-ExtIEs} } OPTIONAL, + ... +} + +AssociatedMBSQosFlowSetuporModifyRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AssociatedQosFlowList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF AssociatedQosFlowItem + +AssociatedQosFlowItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + qosFlowMappingIndication ENUMERATED {ul, dl, ...} OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {AssociatedQosFlowItem-ExtIEs} } OPTIONAL, + ... +} + +AssociatedQosFlowItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetIndex PRESENCE optional }, + ... +} + +AuthenticatedIndication ::= ENUMERATED {true, ...} + +AveragingWindow ::= INTEGER (0..4095, ...) + +AreaScopeOfMDT-NR ::= CHOICE { + cellBased CellBasedMDT-NR, + tABased TABasedMDT, + pLMNWide NULL, + tAIBased TAIBasedMDT, + choice-Extensions ProtocolIE-SingleContainer { {AreaScopeOfMDT-NR-ExtIEs} } +} + +AreaScopeOfMDT-NR-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +AreaScopeOfMDT-EUTRA ::= CHOICE { + cellBased CellBasedMDT-EUTRA, + tABased TABasedMDT, + pLMNWide NULL, + tAIBased TAIBasedMDT, + choice-Extensions ProtocolIE-SingleContainer { {AreaScopeOfMDT-EUTRA-ExtIEs} } +} + +AreaScopeOfMDT-EUTRA-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +AreaScopeOfNeighCellsList ::= SEQUENCE (SIZE(1..maxnoofFreqforMDT)) OF AreaScopeOfNeighCellsItem +AreaScopeOfNeighCellsItem ::= SEQUENCE { + nrFrequencyInfo NRFrequencyInfo, + pciListForMDT PCIListForMDT OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { AreaScopeOfNeighCellsItem-ExtIEs} } OPTIONAL, + ... +} + +AreaScopeOfNeighCellsItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +AreaScopeOfQMC ::= CHOICE { + cellBased CellBasedQMC, + tABased TABasedQMC, + tAIBased TAIBasedQMC, + pLMNAreaBased PLMNAreaBasedQMC, + choice-Extensions ProtocolIE-SingleContainer { { AreaScopeOfQMC-ExtIEs} } +} + +AreaScopeOfQMC-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +AvailableRANVisibleQoEMetrics ::= SEQUENCE { + applicationLayerBufferLevelList ENUMERATED {true, ...} OPTIONAL, + playoutDelayForMediaStartup ENUMERATED {true, ...} OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { AvailableRANVisibleQoEMetrics-ExtIEs} } OPTIONAL, + ... +} + +AvailableRANVisibleQoEMetrics-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- B + +BeamMeasurementsReportConfiguration ::= SEQUENCE { + beamMeasurementsReportQuantity BeamMeasurementsReportQuantity OPTIONAL, + maxNrofRS-IndexesToReport MaxNrofRS-IndexesToReport OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { BeamMeasurementsReportConfiguration-ExtIEs} } OPTIONAL, + ... +} + +BeamMeasurementsReportConfiguration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +BeamMeasurementsReportQuantity ::= SEQUENCE { + rSRP ENUMERATED {true, ...}, + rSRQ ENUMERATED {true, ...}, + sINR ENUMERATED {true, ...}, + iE-Extensions ProtocolExtensionContainer { { BeamMeasurementsReportQuantity-ExtIEs} } OPTIONAL, + ... +} + +BeamMeasurementsReportQuantity-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +BitRate ::= INTEGER (0..4000000000000, ...) + +BroadcastCancelledAreaList ::= CHOICE { + cellIDCancelledEUTRA CellIDCancelledEUTRA, + tAICancelledEUTRA TAICancelledEUTRA, + emergencyAreaIDCancelledEUTRA EmergencyAreaIDCancelledEUTRA, + cellIDCancelledNR CellIDCancelledNR, + tAICancelledNR TAICancelledNR, + emergencyAreaIDCancelledNR EmergencyAreaIDCancelledNR, + choice-Extensions ProtocolIE-SingleContainer { {BroadcastCancelledAreaList-ExtIEs} } +} + +BroadcastCancelledAreaList-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +BroadcastCompletedAreaList ::= CHOICE { + cellIDBroadcastEUTRA CellIDBroadcastEUTRA, + tAIBroadcastEUTRA TAIBroadcastEUTRA, + emergencyAreaIDBroadcastEUTRA EmergencyAreaIDBroadcastEUTRA, + cellIDBroadcastNR CellIDBroadcastNR, + tAIBroadcastNR TAIBroadcastNR, + emergencyAreaIDBroadcastNR EmergencyAreaIDBroadcastNR, + choice-Extensions ProtocolIE-SingleContainer { {BroadcastCompletedAreaList-ExtIEs} } +} + +BroadcastCompletedAreaList-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +BroadcastPLMNList ::= SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF BroadcastPLMNItem + +BroadcastPLMNItem ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + tAISliceSupportList SliceSupportList, + iE-Extensions ProtocolExtensionContainer { {BroadcastPLMNItem-ExtIEs} } OPTIONAL, + ... +} + +BroadcastPLMNItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-NPN-Support CRITICALITY reject EXTENSION NPN-Support PRESENCE optional}| + {ID id-ExtendedTAISliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional}| + {ID id-TAINSAGSupportList CRITICALITY ignore EXTENSION TAINSAGSupportList PRESENCE optional}, + ... +} + +BluetoothMeasurementConfiguration ::= SEQUENCE { + bluetoothMeasConfig BluetoothMeasConfig, + bluetoothMeasConfigNameList BluetoothMeasConfigNameList OPTIONAL, + bt-rssi ENUMERATED {true, ...} OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { BluetoothMeasurementConfiguration-ExtIEs } } OPTIONAL, + ... +} + +BluetoothMeasurementConfiguration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +BluetoothMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofBluetoothName)) OF BluetoothMeasConfigNameItem + +BluetoothMeasConfigNameItem ::= SEQUENCE { + bluetoothName BluetoothName, + iE-Extensions ProtocolExtensionContainer { { BluetoothMeasConfigNameItem-ExtIEs } } OPTIONAL, + ... +} + +BluetoothMeasConfigNameItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +BluetoothMeasConfig::= ENUMERATED {setup,...} + +BluetoothName ::= OCTET STRING (SIZE (1..248)) + +BurstArrivalTime ::= OCTET STRING + +-- C + +CAG-ID ::= BIT STRING (SIZE(32)) + +CancelAllWarningMessages ::= ENUMERATED { + true, + ... +} + +CancelledCellsInEAI-EUTRA ::= SEQUENCE (SIZE(1..maxnoofCellinEAI)) OF CancelledCellsInEAI-EUTRA-Item + +CancelledCellsInEAI-EUTRA-Item ::= SEQUENCE { + eUTRA-CGI EUTRA-CGI, + numberOfBroadcasts NumberOfBroadcasts, + iE-Extensions ProtocolExtensionContainer { {CancelledCellsInEAI-EUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +CancelledCellsInEAI-EUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CancelledCellsInEAI-NR ::= SEQUENCE (SIZE(1..maxnoofCellinEAI)) OF CancelledCellsInEAI-NR-Item + +CancelledCellsInEAI-NR-Item ::= SEQUENCE { + nR-CGI NR-CGI, + numberOfBroadcasts NumberOfBroadcasts, + iE-Extensions ProtocolExtensionContainer { {CancelledCellsInEAI-NR-Item-ExtIEs} } OPTIONAL, + ... +} + +CancelledCellsInEAI-NR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CancelledCellsInTAI-EUTRA ::= SEQUENCE (SIZE(1..maxnoofCellinTAI)) OF CancelledCellsInTAI-EUTRA-Item + +CancelledCellsInTAI-EUTRA-Item ::= SEQUENCE { + eUTRA-CGI EUTRA-CGI, + numberOfBroadcasts NumberOfBroadcasts, + iE-Extensions ProtocolExtensionContainer { {CancelledCellsInTAI-EUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +CancelledCellsInTAI-EUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CancelledCellsInTAI-NR ::= SEQUENCE (SIZE(1..maxnoofCellinTAI)) OF CancelledCellsInTAI-NR-Item + +CancelledCellsInTAI-NR-Item ::= SEQUENCE{ + nR-CGI NR-CGI, + numberOfBroadcasts NumberOfBroadcasts, + iE-Extensions ProtocolExtensionContainer { {CancelledCellsInTAI-NR-Item-ExtIEs} } OPTIONAL, + ... +} + +CancelledCellsInTAI-NR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CandidateCellList ::= SEQUENCE (SIZE(1.. maxnoofCandidateCells)) OF CandidateCellItem + +CandidateCellItem ::= SEQUENCE{ + candidateCell CandidateCell, + iE-Extensions ProtocolExtensionContainer { {CandidateCellItem-ExtIEs} } OPTIONAL, + ... +} + +CandidateCellItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CandidateCell::= CHOICE { + candidateCGI CandidateCellID, + candidatePCI CandidatePCI, + choice-Extensions ProtocolIE-SingleContainer { { CandidateCell-ExtIEs} } +} + +CandidateCell-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + + +CandidateCellID::= SEQUENCE { + candidateCellID NR-CGI, + iE-Extensions ProtocolExtensionContainer { { CandidateCellID-ExtIEs} } OPTIONAL, + ... +} + +CandidateCellID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CandidatePCI::= SEQUENCE { + candidatePCI INTEGER (0..1007, ...), + candidateNRARFCN INTEGER (0..maxNRARFCN), + iE-Extensions ProtocolExtensionContainer { { CandidatePCI-ExtIEs} } OPTIONAL, + ... +} + +CandidatePCI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +Cause ::= CHOICE { + radioNetwork CauseRadioNetwork, + transport CauseTransport, + nas CauseNas, + protocol CauseProtocol, + misc CauseMisc, + choice-Extensions ProtocolIE-SingleContainer { {Cause-ExtIEs} } +} + +Cause-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +CauseMisc ::= ENUMERATED { + control-processing-overload, + not-enough-user-plane-processing-resources, + hardware-failure, + om-intervention, + unknown-PLMN-or-SNPN, + unspecified, + ... +} + +CauseNas ::= ENUMERATED { + normal-release, + authentication-failure, + deregister, + unspecified, + ..., + uE-not-in-PLMN-serving-area +} + +CauseProtocol ::= ENUMERATED { + transfer-syntax-error, + abstract-syntax-error-reject, + abstract-syntax-error-ignore-and-notify, + message-not-compatible-with-receiver-state, + semantic-error, + abstract-syntax-error-falsely-constructed-message, + unspecified, + ... +} + +CauseRadioNetwork ::= ENUMERATED { + unspecified, + txnrelocoverall-expiry, + successful-handover, + release-due-to-ngran-generated-reason, + release-due-to-5gc-generated-reason, + handover-cancelled, + partial-handover, + ho-failure-in-target-5GC-ngran-node-or-target-system, + ho-target-not-allowed, + tngrelocoverall-expiry, + tngrelocprep-expiry, + cell-not-available, + unknown-targetID, + no-radio-resources-available-in-target-cell, + unknown-local-UE-NGAP-ID, + inconsistent-remote-UE-NGAP-ID, + handover-desirable-for-radio-reason, + time-critical-handover, + resource-optimisation-handover, + reduce-load-in-serving-cell, + user-inactivity, + radio-connection-with-ue-lost, + radio-resources-not-available, + invalid-qos-combination, + failure-in-radio-interface-procedure, + interaction-with-other-procedure, + unknown-PDU-session-ID, + unkown-qos-flow-ID, + multiple-PDU-session-ID-instances, + multiple-qos-flow-ID-instances, + encryption-and-or-integrity-protection-algorithms-not-supported, + ng-intra-system-handover-triggered, + ng-inter-system-handover-triggered, + xn-handover-triggered, + not-supported-5QI-value, + ue-context-transfer, + ims-voice-eps-fallback-or-rat-fallback-triggered, + up-integrity-protection-not-possible, + up-confidentiality-protection-not-possible, + slice-not-supported, + ue-in-rrc-inactive-state-not-reachable, + redirection, + resources-not-available-for-the-slice, + ue-max-integrity-protected-data-rate-reason, + release-due-to-cn-detected-mobility, + ..., + n26-interface-not-available, + release-due-to-pre-emption, + multiple-location-reporting-reference-ID-instances, + rsn-not-available-for-the-up, + npn-access-denied, + cag-only-access-denied, + insufficient-ue-capabilities, + redcap-ue-not-supported, + unknown-MBS-Session-ID, + indicated-MBS-session-area-information-not-served-by-the-gNB, + inconsistent-slice-info-for-the-session, + misaligned-association-for-multicast-unicast +} + +CauseTransport ::= ENUMERATED { + transport-resource-unavailable, + unspecified, + ... +} + +Cell-CAGInformation ::= SEQUENCE { + nGRAN-CGI NGRAN-CGI, + cellCAGList CellCAGList, + iE-Extensions ProtocolExtensionContainer { {Cell-CAGInformation-ExtIEs} } OPTIONAL, + ... +} + +Cell-CAGInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +CellCAGList ::= SEQUENCE (SIZE(1..maxnoofCAGSperCell)) OF CAG-ID + +CellIDBroadcastEUTRA ::= SEQUENCE (SIZE(1..maxnoofCellIDforWarning)) OF CellIDBroadcastEUTRA-Item + +CellIDBroadcastEUTRA-Item ::= SEQUENCE { + eUTRA-CGI EUTRA-CGI, + iE-Extensions ProtocolExtensionContainer { {CellIDBroadcastEUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +CellIDBroadcastEUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellIDBroadcastNR ::= SEQUENCE (SIZE(1..maxnoofCellIDforWarning)) OF CellIDBroadcastNR-Item + +CellIDBroadcastNR-Item ::= SEQUENCE { + nR-CGI NR-CGI, + iE-Extensions ProtocolExtensionContainer { {CellIDBroadcastNR-Item-ExtIEs} } OPTIONAL, + ... +} + +CellIDBroadcastNR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellIDCancelledEUTRA ::= SEQUENCE (SIZE(1..maxnoofCellIDforWarning)) OF CellIDCancelledEUTRA-Item + +CellIDCancelledEUTRA-Item ::= SEQUENCE { + eUTRA-CGI EUTRA-CGI, + numberOfBroadcasts NumberOfBroadcasts, + iE-Extensions ProtocolExtensionContainer { {CellIDCancelledEUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +CellIDCancelledEUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellIDCancelledNR ::= SEQUENCE (SIZE(1..maxnoofCellIDforWarning)) OF CellIDCancelledNR-Item + +CellIDCancelledNR-Item ::= SEQUENCE { + nR-CGI NR-CGI, + numberOfBroadcasts NumberOfBroadcasts, + iE-Extensions ProtocolExtensionContainer { {CellIDCancelledNR-Item-ExtIEs} } OPTIONAL, + ... +} + +CellIDCancelledNR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellIDListForRestart ::= CHOICE { + eUTRA-CGIListforRestart EUTRA-CGIList, + nR-CGIListforRestart NR-CGIList, + choice-Extensions ProtocolIE-SingleContainer { {CellIDListForRestart-ExtIEs} } +} + +CellIDListForRestart-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +CellSize ::= ENUMERATED {verysmall, small, medium, large, ...} + + +CellType ::= SEQUENCE { + cellSize CellSize, + iE-Extensions ProtocolExtensionContainer { {CellType-ExtIEs} } OPTIONAL, + ... +} + +CellType-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CEmodeBSupport-Indicator ::= ENUMERATED {supported,...} + + +CEmodeBrestricted ::= ENUMERATED { + restricted, + not-restricted, + ... +} + +CNAssistedRANTuning ::= SEQUENCE { + expectedUEBehaviour ExpectedUEBehaviour OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {CNAssistedRANTuning-ExtIEs} } OPTIONAL, + ... +} + +CNAssistedRANTuning-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CNsubgroupID ::= INTEGER (0..7, ...) + +CNTypeRestrictionsForEquivalent ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF CNTypeRestrictionsForEquivalentItem + +CNTypeRestrictionsForEquivalentItem ::= SEQUENCE { + plmnIdentity PLMNIdentity, + cn-Type ENUMERATED {epc-forbidden, fiveGC-forbidden, ...}, + iE-Extensions ProtocolExtensionContainer { {CNTypeRestrictionsForEquivalentItem-ExtIEs} } OPTIONAL, + ... +} + +CNTypeRestrictionsForEquivalentItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::={ + ... +} + +CNTypeRestrictionsForServing ::= ENUMERATED { + epc-forbidden, + ... +} + +CommonNetworkInstance ::= OCTET STRING + +CompletedCellsInEAI-EUTRA ::= SEQUENCE (SIZE(1..maxnoofCellinEAI)) OF CompletedCellsInEAI-EUTRA-Item + +CompletedCellsInEAI-EUTRA-Item ::= SEQUENCE { + eUTRA-CGI EUTRA-CGI, + iE-Extensions ProtocolExtensionContainer { {CompletedCellsInEAI-EUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +CompletedCellsInEAI-EUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CompletedCellsInEAI-NR ::= SEQUENCE (SIZE(1..maxnoofCellinEAI)) OF CompletedCellsInEAI-NR-Item + +CompletedCellsInEAI-NR-Item ::= SEQUENCE { + nR-CGI NR-CGI, + iE-Extensions ProtocolExtensionContainer { {CompletedCellsInEAI-NR-Item-ExtIEs} } OPTIONAL, + ... +} + +CompletedCellsInEAI-NR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CompletedCellsInTAI-EUTRA ::= SEQUENCE (SIZE(1..maxnoofCellinTAI)) OF CompletedCellsInTAI-EUTRA-Item + +CompletedCellsInTAI-EUTRA-Item ::= SEQUENCE{ + eUTRA-CGI EUTRA-CGI, + iE-Extensions ProtocolExtensionContainer { {CompletedCellsInTAI-EUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +CompletedCellsInTAI-EUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CompletedCellsInTAI-NR ::= SEQUENCE (SIZE(1..maxnoofCellinTAI)) OF CompletedCellsInTAI-NR-Item + +CompletedCellsInTAI-NR-Item ::= SEQUENCE{ + nR-CGI NR-CGI, + iE-Extensions ProtocolExtensionContainer { {CompletedCellsInTAI-NR-Item-ExtIEs} } OPTIONAL, + ... +} + +CompletedCellsInTAI-NR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ConcurrentWarningMessageInd ::= ENUMERATED { + true, + ... +} + +ConfidentialityProtectionIndication ::= ENUMERATED { + required, + preferred, + not-needed, + ... +} + +ConfidentialityProtectionResult ::= ENUMERATED { + performed, + not-performed, + ... +} + +ConfiguredTACIndication ::= ENUMERATED { + true, + ... +} + +CoreNetworkAssistanceInformationForInactive ::= SEQUENCE { + uEIdentityIndexValue UEIdentityIndexValue, + uESpecificDRX PagingDRX OPTIONAL, + periodicRegistrationUpdateTimer PeriodicRegistrationUpdateTimer, + mICOModeIndication MICOModeIndication OPTIONAL, + tAIListForInactive TAIListForInactive, + expectedUEBehaviour ExpectedUEBehaviour OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {CoreNetworkAssistanceInformationForInactive-ExtIEs} } OPTIONAL, + ... +} + +CoreNetworkAssistanceInformationForInactive-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-EUTRA-PagingeDRXInformation CRITICALITY ignore EXTENSION EUTRA-PagingeDRXInformation PRESENCE optional }| + { ID id-ExtendedUEIdentityIndexValue CRITICALITY ignore EXTENSION ExtendedUEIdentityIndexValue PRESENCE optional }| + { ID id-UERadioCapabilityForPaging CRITICALITY ignore EXTENSION UERadioCapabilityForPaging PRESENCE optional }| + { ID id-MicoAllPLMN CRITICALITY ignore EXTENSION MicoAllPLMN PRESENCE optional }| + { ID id-NR-PagingeDRXInformation CRITICALITY ignore EXTENSION NR-PagingeDRXInformation PRESENCE optional }| + { ID id-PagingCauseIndicationForVoiceService CRITICALITY ignore EXTENSION PagingCauseIndicationForVoiceService PRESENCE optional }| + { ID id-PEIPSassistanceInformation CRITICALITY ignore EXTENSION PEIPSassistanceInformation PRESENCE optional }| + { ID id-HashedUEIdentityIndexValue CRITICALITY ignore EXTENSION HashedUEIdentityIndexValue PRESENCE optional }, + ... +} + +COUNTValueForPDCP-SN12 ::= SEQUENCE { + pDCP-SN12 INTEGER (0..4095), + hFN-PDCP-SN12 INTEGER (0..1048575), + iE-Extensions ProtocolExtensionContainer { {COUNTValueForPDCP-SN12-ExtIEs} } OPTIONAL, + ... +} + +COUNTValueForPDCP-SN12-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +COUNTValueForPDCP-SN18 ::= SEQUENCE { + pDCP-SN18 INTEGER (0..262143), + hFN-PDCP-SN18 INTEGER (0..16383), + iE-Extensions ProtocolExtensionContainer { {COUNTValueForPDCP-SN18-ExtIEs} } OPTIONAL, + ... +} + +COUNTValueForPDCP-SN18-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CoverageEnhancementLevel ::= OCTET STRING + +CPTransportLayerInformation ::= CHOICE { + endpointIPAddress TransportLayerAddress, + choice-Extensions ProtocolIE-SingleContainer { {CPTransportLayerInformation-ExtIEs} } +} + +CPTransportLayerInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-EndpointIPAddressAndPort CRITICALITY reject TYPE EndpointIPAddressAndPort PRESENCE mandatory }, + ... +} + +CriticalityDiagnostics ::= SEQUENCE { + procedureCode ProcedureCode OPTIONAL, + triggeringMessage TriggeringMessage OPTIONAL, + procedureCriticality Criticality OPTIONAL, + iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL, + iE-Extensions ProtocolExtensionContainer {{CriticalityDiagnostics-ExtIEs}} OPTIONAL, + ... +} + +CriticalityDiagnostics-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE(1..maxnoofErrors)) OF CriticalityDiagnostics-IE-Item + +CriticalityDiagnostics-IE-Item ::= SEQUENCE { + iECriticality Criticality, + iE-ID ProtocolIE-ID, + typeOfError TypeOfError, + iE-Extensions ProtocolExtensionContainer {{CriticalityDiagnostics-IE-Item-ExtIEs}} OPTIONAL, + ... +} + +CriticalityDiagnostics-IE-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellBasedMDT-NR::= SEQUENCE { + cellIdListforMDT CellIdListforMDT-NR, + iE-Extensions ProtocolExtensionContainer { {CellBasedMDT-NR-ExtIEs} } OPTIONAL, + ... +} + +CellBasedMDT-NR-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellIdListforMDT-NR ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF NR-CGI + + +CellBasedMDT-EUTRA::= SEQUENCE { + cellIdListforMDT CellIdListforMDT-EUTRA, + iE-Extensions ProtocolExtensionContainer { {CellBasedMDT-EUTRA-ExtIEs} } OPTIONAL, + ... +} + +CellBasedMDT-EUTRA-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellBasedQMC ::= SEQUENCE { + cellIdListforQMC CellIdListforQMC, + iE-Extensions ProtocolExtensionContainer { {CellBasedQMC-ExtIEs} } OPTIONAL, + ... +} + +CellBasedQMC-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellIdListforQMC ::= SEQUENCE (SIZE(1..maxnoofCellIDforQMC)) OF NGRAN-CGI + +CellIdListforMDT-EUTRA ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF EUTRA-CGI + + +-- D + +DataCodingScheme ::= BIT STRING (SIZE(8)) + +DataForwardingAccepted ::= ENUMERATED { + data-forwarding-accepted, + ... +} + +DataForwardingNotPossible ::= ENUMERATED { + data-forwarding-not-possible, + ... +} + +DataForwardingResponseDRBList ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DataForwardingResponseDRBItem + +DataForwardingResponseDRBItem ::= SEQUENCE { + dRB-ID DRB-ID, + dLForwardingUP-TNLInformation UPTransportLayerInformation OPTIONAL, + uLForwardingUP-TNLInformation UPTransportLayerInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer {{DataForwardingResponseDRBItem-ExtIEs}} OPTIONAL, + ... +} + +DataForwardingResponseDRBItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DAPSRequestInfo ::= SEQUENCE { + dAPSIndicator ENUMERATED {daps-ho-required, ...}, + iE-Extensions ProtocolExtensionContainer { {DAPSRequestInfo-ExtIEs} } OPTIONAL, + ... +} + +DAPSRequestInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DAPSResponseInfoList ::= SEQUENCE (SIZE(1.. maxnoofDRBs)) OF DAPSResponseInfoItem + +DAPSResponseInfoItem ::= SEQUENCE { + dRB-ID DRB-ID, + dAPSResponseInfo DAPSResponseInfo, + iE-Extension ProtocolExtensionContainer { {DAPSResponseInfoItem-ExtIEs} } OPTIONAL, + ... +} + +DAPSResponseInfoItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DAPSResponseInfo ::= SEQUENCE { + dapsresponseindicator ENUMERATED {daps-ho-accepted, daps-ho-not-accepted, ...}, + iE-Extensions ProtocolExtensionContainer { { DAPSResponseInfo-ExtIEs} } OPTIONAL, + ... +} + +DAPSResponseInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +DataForwardingResponseERABList ::= SEQUENCE (SIZE(1..maxnoofE-RABs)) OF DataForwardingResponseERABListItem + +DataForwardingResponseERABListItem ::= SEQUENCE { + e-RAB-ID E-RAB-ID, + dLForwardingUP-TNLInformation UPTransportLayerInformation, + iE-Extensions ProtocolExtensionContainer { {DataForwardingResponseERABListItem-ExtIEs} } OPTIONAL, + ... +} + +DataForwardingResponseERABListItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DelayCritical ::= ENUMERATED { + delay-critical, + non-delay-critical, + ... +} + +DL-CP-SecurityInformation ::= SEQUENCE { + dl-NAS-MAC DL-NAS-MAC, + iE-Extensions ProtocolExtensionContainer { { DL-CP-SecurityInformation-ExtIEs} } OPTIONAL, + ... +} + +DL-CP-SecurityInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DL-NAS-MAC ::= BIT STRING (SIZE (16)) + +DLForwarding ::= ENUMERATED { + dl-forwarding-proposed, + ... +} + +DL-NGU-TNLInformationReused ::= ENUMERATED { + true, + ... +} + +DirectForwardingPathAvailability ::= ENUMERATED { + direct-path-available, + ... +} + +DRB-ID ::= INTEGER (1..32, ...) + +DRBsSubjectToStatusTransferList ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DRBsSubjectToStatusTransferItem + +DRBsSubjectToStatusTransferItem ::= SEQUENCE { + dRB-ID DRB-ID, + dRBStatusUL DRBStatusUL, + dRBStatusDL DRBStatusDL, + iE-Extension ProtocolExtensionContainer { {DRBsSubjectToStatusTransferItem-ExtIEs} } OPTIONAL, + ... +} + +DRBsSubjectToStatusTransferItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-OldAssociatedQosFlowList-ULendmarkerexpected CRITICALITY ignore EXTENSION AssociatedQosFlowList PRESENCE optional }, + ... +} + +DRBStatusDL ::= CHOICE { + dRBStatusDL12 DRBStatusDL12, + dRBStatusDL18 DRBStatusDL18, + choice-Extensions ProtocolIE-SingleContainer { {DRBStatusDL-ExtIEs} } +} + +DRBStatusDL-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +DRBStatusDL12 ::= SEQUENCE { + dL-COUNTValue COUNTValueForPDCP-SN12, + iE-Extension ProtocolExtensionContainer { {DRBStatusDL12-ExtIEs} } OPTIONAL, + ... +} + +DRBStatusDL12-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBStatusDL18 ::= SEQUENCE { + dL-COUNTValue COUNTValueForPDCP-SN18, + iE-Extension ProtocolExtensionContainer { {DRBStatusDL18-ExtIEs} } OPTIONAL, + ... +} + +DRBStatusDL18-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBStatusUL ::= CHOICE { + dRBStatusUL12 DRBStatusUL12, + dRBStatusUL18 DRBStatusUL18, + choice-Extensions ProtocolIE-SingleContainer { {DRBStatusUL-ExtIEs} } +} + +DRBStatusUL-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +DRBStatusUL12 ::= SEQUENCE { + uL-COUNTValue COUNTValueForPDCP-SN12, + receiveStatusOfUL-PDCP-SDUs BIT STRING (SIZE(1..2048)) OPTIONAL, + iE-Extension ProtocolExtensionContainer { {DRBStatusUL12-ExtIEs} } OPTIONAL, + ... +} + +DRBStatusUL12-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBStatusUL18 ::= SEQUENCE { + uL-COUNTValue COUNTValueForPDCP-SN18, + receiveStatusOfUL-PDCP-SDUs BIT STRING (SIZE(1..131072)) OPTIONAL, + iE-Extension ProtocolExtensionContainer { {DRBStatusUL18-ExtIEs} } OPTIONAL, + ... +} + +DRBStatusUL18-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsToQosFlowsMappingList ::= SEQUENCE (SIZE(1..maxnoofDRBs)) OF DRBsToQosFlowsMappingItem + +DRBsToQosFlowsMappingItem ::= SEQUENCE { + dRB-ID DRB-ID, + associatedQosFlowList AssociatedQosFlowList, + iE-Extensions ProtocolExtensionContainer { {DRBsToQosFlowsMappingItem-ExtIEs} } OPTIONAL, + ... +} + +DRBsToQosFlowsMappingItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-DAPSRequestInfo CRITICALITY ignore EXTENSION DAPSRequestInfo PRESENCE optional }, + ... +} + +Dynamic5QIDescriptor ::= SEQUENCE { + priorityLevelQos PriorityLevelQos, + packetDelayBudget PacketDelayBudget, + packetErrorRate PacketErrorRate, + fiveQI FiveQI OPTIONAL, + delayCritical DelayCritical OPTIONAL, +-- The above IE shall be present in case of GBR QoS flow + averagingWindow AveragingWindow OPTIONAL, +-- The above IE shall be present in case of GBR QoS flow + maximumDataBurstVolume MaximumDataBurstVolume OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {Dynamic5QIDescriptor-ExtIEs} } OPTIONAL, + ... +} + +Dynamic5QIDescriptor-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-ExtendedPacketDelayBudget CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }| + { ID id-CNPacketDelayBudgetDL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }| + { ID id-CNPacketDelayBudgetUL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }, + ... +} + +-- E + +EarlyMeasurement ::= ENUMERATED {true, ...} + +EarlyStatusTransfer-TransparentContainer ::= SEQUENCE { + procedureStage ProcedureStageChoice, + iE-Extensions ProtocolExtensionContainer { {EarlyStatusTransfer-TransparentContainer-ExtIEs} } OPTIONAL, + ... +} + +EarlyStatusTransfer-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ProcedureStageChoice ::= CHOICE { + first-dl-count FirstDLCount, + choice-Extensions ProtocolIE-SingleContainer { {ProcedureStageChoice-ExtIEs} } +} + +ProcedureStageChoice-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +FirstDLCount ::= SEQUENCE { + dRBsSubjectToEarlyStatusTransfer DRBsSubjectToEarlyStatusTransfer-List, + iE-Extension ProtocolExtensionContainer { {FirstDLCount-ExtIEs} } OPTIONAL, + ... +} + +FirstDLCount-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +DRBsSubjectToEarlyStatusTransfer-List ::= SEQUENCE (SIZE (1.. maxnoofDRBs)) OF DRBsSubjectToEarlyStatusTransfer-Item + +DRBsSubjectToEarlyStatusTransfer-Item ::= SEQUENCE { + dRB-ID DRB-ID, + firstDLCOUNT DRBStatusDL, + iE-Extension ProtocolExtensionContainer { { DRBsSubjectToEarlyStatusTransfer-Item-ExtIEs} } OPTIONAL, + ... +} + +DRBsSubjectToEarlyStatusTransfer-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +EDT-Session ::= ENUMERATED { + true, + ... +} + +EmergencyAreaID ::= OCTET STRING (SIZE(3)) + +EmergencyAreaIDBroadcastEUTRA ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaIDBroadcastEUTRA-Item + +EmergencyAreaIDBroadcastEUTRA-Item ::= SEQUENCE { + emergencyAreaID EmergencyAreaID, + completedCellsInEAI-EUTRA CompletedCellsInEAI-EUTRA, + iE-Extensions ProtocolExtensionContainer { {EmergencyAreaIDBroadcastEUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +EmergencyAreaIDBroadcastEUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EmergencyAreaIDBroadcastNR ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaIDBroadcastNR-Item + +EmergencyAreaIDBroadcastNR-Item ::= SEQUENCE { + emergencyAreaID EmergencyAreaID, + completedCellsInEAI-NR CompletedCellsInEAI-NR, + iE-Extensions ProtocolExtensionContainer { {EmergencyAreaIDBroadcastNR-Item-ExtIEs} } OPTIONAL, + ... +} + +EmergencyAreaIDBroadcastNR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EmergencyAreaIDCancelledEUTRA ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaIDCancelledEUTRA-Item + +EmergencyAreaIDCancelledEUTRA-Item ::= SEQUENCE { + emergencyAreaID EmergencyAreaID, + cancelledCellsInEAI-EUTRA CancelledCellsInEAI-EUTRA, + iE-Extensions ProtocolExtensionContainer { {EmergencyAreaIDCancelledEUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +EmergencyAreaIDCancelledEUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EmergencyAreaIDCancelledNR ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaIDCancelledNR-Item + +EmergencyAreaIDCancelledNR-Item ::= SEQUENCE { + emergencyAreaID EmergencyAreaID, + cancelledCellsInEAI-NR CancelledCellsInEAI-NR, + iE-Extensions ProtocolExtensionContainer { {EmergencyAreaIDCancelledNR-Item-ExtIEs} } OPTIONAL, + ... +} + +EmergencyAreaIDCancelledNR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EmergencyAreaIDList ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaID + +EmergencyAreaIDListForRestart ::= SEQUENCE (SIZE(1..maxnoofEAIforRestart)) OF EmergencyAreaID + +EmergencyFallbackIndicator ::= SEQUENCE { + emergencyFallbackRequestIndicator EmergencyFallbackRequestIndicator, + emergencyServiceTargetCN EmergencyServiceTargetCN OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {EmergencyFallbackIndicator-ExtIEs} } OPTIONAL, + ... +} + +EmergencyFallbackIndicator-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EmergencyFallbackRequestIndicator ::= ENUMERATED { + emergency-fallback-requested, + ... +} + +EmergencyServiceTargetCN ::= ENUMERATED { + fiveGC, + epc, + ... +} + +ENB-ID ::= CHOICE { + macroENB-ID BIT STRING (SIZE(20)), + homeENB-ID BIT STRING (SIZE(28)), + short-macroENB-ID BIT STRING (SIZE(18)), + long-macroENB-ID BIT STRING (SIZE(21)), + choice-Extensions ProtocolIE-SingleContainer { { ENB-ID-ExtIEs} } +} + +ENB-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + + +Enhanced-CoverageRestriction ::= ENUMERATED {restricted, ... } + + +Extended-ConnectedTime ::= INTEGER (0..255) + +EN-DCSONConfigurationTransfer ::= OCTET STRING + +EndpointIPAddressAndPort ::=SEQUENCE { + endpointIPAddress TransportLayerAddress, + portNumber PortNumber, + iE-Extensions ProtocolExtensionContainer { { EndpointIPAddressAndPort-ExtIEs} } OPTIONAL +} + +EndIndication ::= ENUMERATED { + no-further-data, + further-data-exists, + ... +} + +EndpointIPAddressAndPort-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EquivalentPLMNs ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF PLMNIdentity + +EPS-TAC ::= OCTET STRING (SIZE(2)) + +EPS-TAI ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + ePS-TAC EPS-TAC, + iE-Extensions ProtocolExtensionContainer { {EPS-TAI-ExtIEs} } OPTIONAL, + ... +} + +EPS-TAI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +E-RAB-ID ::= INTEGER (0..15, ...) + +E-RABInformationList ::= SEQUENCE (SIZE(1..maxnoofE-RABs)) OF E-RABInformationItem + +E-RABInformationItem ::= SEQUENCE { + e-RAB-ID E-RAB-ID, + dLForwarding DLForwarding OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {E-RABInformationItem-ExtIEs} } OPTIONAL, + ... +} + +E-RABInformationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-SourceTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}| + {ID id-SourceNodeTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}, + ... +} + +EUTRACellIdentity ::= BIT STRING (SIZE(28)) + +EUTRA-CGI ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + eUTRACellIdentity EUTRACellIdentity, + iE-Extensions ProtocolExtensionContainer { {EUTRA-CGI-ExtIEs} } OPTIONAL, + ... +} + +EUTRA-CGI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EUTRA-CGIList ::= SEQUENCE (SIZE(1..maxnoofCellsinngeNB)) OF EUTRA-CGI + +EUTRA-CGIListForWarning ::= SEQUENCE (SIZE(1..maxnoofCellIDforWarning)) OF EUTRA-CGI + +EUTRA-PagingeDRXInformation ::= SEQUENCE { + eUTRA-paging-eDRX-Cycle EUTRA-Paging-eDRX-Cycle, + eUTRA-paging-Time-Window EUTRA-Paging-Time-Window OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {EUTRA-PagingeDRXInformation-ExtIEs} } OPTIONAL, + ... +} + +EUTRA-PagingeDRXInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EUTRA-Paging-eDRX-Cycle ::= ENUMERATED { + hfhalf, hf1, hf2, hf4, hf6, + hf8, hf10, hf12, hf14, hf16, + hf32, hf64, hf128, hf256, + ... +} + +EUTRA-Paging-Time-Window ::= ENUMERATED { + s1, s2, s3, s4, s5, + s6, s7, s8, s9, s10, + s11, s12, s13, s14, s15, s16, + ... +} + +EUTRAencryptionAlgorithms ::= BIT STRING (SIZE(16, ...)) + +EUTRAintegrityProtectionAlgorithms ::= BIT STRING (SIZE(16, ...)) + +EventType ::= ENUMERATED { + direct, + change-of-serve-cell, + ue-presence-in-area-of-interest, + stop-change-of-serve-cell, + stop-ue-presence-in-area-of-interest, + cancel-location-reporting-for-the-ue, + ... +} + +ExcessPacketDelayThresholdConfiguration ::= SEQUENCE (SIZE(1..maxnoofThresholdsForExcessPacketDelay)) OF ExcessPacketDelayThresholdItem + +ExcessPacketDelayThresholdItem ::= SEQUENCE { + fiveQi FiveQI, + excessPacketDelayThresholdValue ExcessPacketDelayThresholdValue, + iE-Extensions ProtocolExtensionContainer { { ExcessPacketDelayThresholdItem-ExtIEs} } OPTIONAL, + ... +} + +ExcessPacketDelayThresholdItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ExcessPacketDelayThresholdValue ::= ENUMERATED { +ms0dot25, ms0dot5, ms1, ms2, ms4, ms5, ms10, ms20, ms30, ms40, ms50, ms60, ms70, ms80, ms90, ms100, ms150, ms300, ms500, + ... +} + +ExpectedActivityPeriod ::= INTEGER (1..30|40|50|60|80|100|120|150|180|181, ...) + +ExpectedHOInterval ::= ENUMERATED { + sec15, sec30, sec60, sec90, sec120, sec180, long-time, + ... +} + +ExpectedIdlePeriod ::= INTEGER (1..30|40|50|60|80|100|120|150|180|181, ...) + +ExpectedUEActivityBehaviour ::= SEQUENCE { + expectedActivityPeriod ExpectedActivityPeriod OPTIONAL, + expectedIdlePeriod ExpectedIdlePeriod OPTIONAL, + sourceOfUEActivityBehaviourInformation SourceOfUEActivityBehaviourInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ExpectedUEActivityBehaviour-ExtIEs} } OPTIONAL, + ... +} + +ExpectedUEActivityBehaviour-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ExpectedUEBehaviour ::= SEQUENCE { + expectedUEActivityBehaviour ExpectedUEActivityBehaviour OPTIONAL, + expectedHOInterval ExpectedHOInterval OPTIONAL, + expectedUEMobility ExpectedUEMobility OPTIONAL, + expectedUEMovingTrajectory ExpectedUEMovingTrajectory OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ExpectedUEBehaviour-ExtIEs} } OPTIONAL, + ... +} + +ExpectedUEBehaviour-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ExpectedUEMobility ::= ENUMERATED { + stationary, + mobile, + ... +} + +ExpectedUEMovingTrajectory ::= SEQUENCE (SIZE(1..maxnoofCellsUEMovingTrajectory)) OF ExpectedUEMovingTrajectoryItem + +ExpectedUEMovingTrajectoryItem ::= SEQUENCE { + nGRAN-CGI NGRAN-CGI, + timeStayedInCell INTEGER (0..4095) OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ExpectedUEMovingTrajectoryItem-ExtIEs} } OPTIONAL, + ... +} + +ExpectedUEMovingTrajectoryItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +Extended-AMFName ::= SEQUENCE { + aMFNameVisibleString AMFNameVisibleString OPTIONAL, + aMFNameUTF8String AMFNameUTF8String OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { Extended-AMFName-ExtIEs } } OPTIONAL, + ... +} + +Extended-AMFName-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ExtendedPacketDelayBudget ::= INTEGER (1..65535, ..., 65536..109999) + + +Extended-RANNodeName ::= SEQUENCE { + rANNodeNameVisibleString RANNodeNameVisibleString OPTIONAL, + rANNodeNameUTF8String RANNodeNameUTF8String OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { Extended-RANNodeName-ExtIEs } } OPTIONAL, ... +} + +Extended-RANNodeName-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ExtendedRATRestrictionInformation ::= SEQUENCE { + primaryRATRestriction BIT STRING (SIZE(8, ...)), + secondaryRATRestriction BIT STRING (SIZE(8, ...)), + iE-Extensions ProtocolExtensionContainer { {ExtendedRATRestrictionInformation-ExtIEs} } OPTIONAL, + ... +} + +ExtendedRATRestrictionInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ExtendedRNC-ID ::= INTEGER (4096..65535) + +ExtendedSliceSupportList ::= SEQUENCE (SIZE(1..maxnoofExtSliceItems)) OF SliceSupportItem + +ExtendedUEIdentityIndexValue ::= BIT STRING (SIZE(16)) + +EventTrigger::= CHOICE { + outOfCoverage ENUMERATED {true, ...}, + eventL1LoggedMDTConfig EventL1LoggedMDTConfig, + choice-Extensions ProtocolIE-SingleContainer { { EventTrigger-ExtIEs} } +} + +EventTrigger-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +EventL1LoggedMDTConfig ::= SEQUENCE { + l1Threshold MeasurementThresholdL1LoggedMDT, + hysteresis Hysteresis, + timeToTrigger TimeToTrigger, + iE-Extensions ProtocolExtensionContainer { { EventL1LoggedMDTConfig-ExtIEs} } OPTIONAL, + ... +} + +EventL1LoggedMDTConfig-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MeasurementThresholdL1LoggedMDT ::= CHOICE { + threshold-RSRP Threshold-RSRP, + threshold-RSRQ Threshold-RSRQ, + choice-Extensions ProtocolIE-SingleContainer { { MeasurementThresholdL1LoggedMDT-ExtIEs} } +} + +MeasurementThresholdL1LoggedMDT-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +-- F + +FailureIndication ::= SEQUENCE { + uERLFReportContainer UERLFReportContainer, + iE-Extensions ProtocolExtensionContainer { { FailureIndication-ExtIEs} } OPTIONAL, + ... +} + +FailureIndication-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +FiveG-ProSeAuthorized ::= SEQUENCE { + fiveGProSeDirectDiscovery FiveGProSeDirectDiscovery OPTIONAL, + fiveGProSeDirectCommunication FiveGProSeDirectCommunication OPTIONAL, + fiveGProSeLayer2UEtoNetworkRelay FiveGProSeLayer2UEtoNetworkRelay OPTIONAL, + fiveGProSeLayer3UEtoNetworkRelay FiveGProSeLayer3UEtoNetworkRelay OPTIONAL, + fiveGProSeLayer2RemoteUE FiveGProSeLayer2RemoteUE OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {FiveG-ProSeAuthorized-ExtIEs} } OPTIONAL, + ... +} + +FiveG-ProSeAuthorized-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +FiveGProSeDirectDiscovery ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +FiveGProSeDirectCommunication ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +FiveGProSeLayer2UEtoNetworkRelay ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +FiveGProSeLayer3UEtoNetworkRelay ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +FiveGProSeLayer2RemoteUE ::= ENUMERATED { + authorized, + not-authorized, + ... +} + + + +FiveG-ProSePC5QoSParameters ::= SEQUENCE { + fiveGProSepc5QoSFlowList FiveGProSePC5QoSFlowList, + fiveGProSepc5LinkAggregateBitRates BitRate OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { FiveG-ProSePC5QoSParameters-ExtIEs} } OPTIONAL, + ... +} + +FiveG-ProSePC5QoSParameters-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +FiveGProSePC5QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofPC5QoSFlows)) OF FiveGProSePC5QoSFlowItem + +FiveGProSePC5QoSFlowItem ::= SEQUENCE { + fiveGproSepQI FiveQI, + fiveGproSepc5FlowBitRates FiveGProSePC5FlowBitRates OPTIONAL, + fiveGproSerange Range OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { FiveGProSePC5QoSFlowItem-ExtIEs} } OPTIONAL, + ... +} + +FiveGProSePC5QoSFlowItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +FiveGProSePC5FlowBitRates ::= SEQUENCE { + fiveGproSeguaranteedFlowBitRate BitRate, + fiveGproSemaximumFlowBitRate BitRate, + iE-Extensions ProtocolExtensionContainer { { FiveGProSePC5FlowBitRates-ExtIEs} } OPTIONAL, + ... +} + +FiveGProSePC5FlowBitRates-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +FiveG-S-TMSI ::= SEQUENCE { + aMFSetID AMFSetID, + aMFPointer AMFPointer, + fiveG-TMSI FiveG-TMSI, + iE-Extensions ProtocolExtensionContainer { {FiveG-S-TMSI-ExtIEs} } OPTIONAL, + ... +} + +FiveG-S-TMSI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +FiveG-TMSI ::= OCTET STRING (SIZE(4)) + +FiveQI ::= INTEGER (0..255, ...) + +ForbiddenAreaInformation ::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF ForbiddenAreaInformation-Item + +ForbiddenAreaInformation-Item ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + forbiddenTACs ForbiddenTACs, + iE-Extensions ProtocolExtensionContainer { {ForbiddenAreaInformation-Item-ExtIEs} } OPTIONAL, + ... +} + +ForbiddenAreaInformation-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ForbiddenTACs ::= SEQUENCE (SIZE(1..maxnoofForbTACs)) OF TAC + +FromEUTRANtoNGRAN ::= SEQUENCE { + sourceeNBID IntersystemSONeNBID, + targetNGRANnodeID IntersystemSONNGRANnodeID, + iE-Extensions ProtocolExtensionContainer { { FromEUTRANtoNGRAN-ExtIEs} } OPTIONAL +} + +FromEUTRANtoNGRAN-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +FromNGRANtoEUTRAN ::= SEQUENCE { + sourceNGRANnodeID IntersystemSONNGRANnodeID, + targeteNBID IntersystemSONeNBID, + iE-Extensions ProtocolExtensionContainer { { FromNGRANtoEUTRAN-ExtIEs} } OPTIONAL +} + +FromNGRANtoEUTRAN-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- G + +GBR-QosInformation ::= SEQUENCE { + maximumFlowBitRateDL BitRate, + maximumFlowBitRateUL BitRate, + guaranteedFlowBitRateDL BitRate, + guaranteedFlowBitRateUL BitRate, + notificationControl NotificationControl OPTIONAL, + maximumPacketLossRateDL PacketLossRate OPTIONAL, + maximumPacketLossRateUL PacketLossRate OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {GBR-QosInformation-ExtIEs} } OPTIONAL, + ... +} + +GBR-QosInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-AlternativeQoSParaSetList CRITICALITY ignore EXTENSION AlternativeQoSParaSetList PRESENCE optional }, + ... +} + +GlobalCable-ID ::= OCTET STRING + +GlobalCable-ID-new ::= SEQUENCE { + globalCable-ID GlobalCable-ID, + tAI TAI, + iE-Extensions ProtocolExtensionContainer { { GlobalCable-ID-new-ExtIEs} } OPTIONAL, + ... +} + +GlobalCable-ID-new-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GlobalENB-ID ::= SEQUENCE { + pLMNidentity PLMNIdentity, + eNB-ID ENB-ID, + iE-Extensions ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalENB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +GlobalGNB-ID ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + gNB-ID GNB-ID, + iE-Extensions ProtocolExtensionContainer { {GlobalGNB-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalGNB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GlobalN3IWF-ID ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + n3IWF-ID N3IWF-ID, + iE-Extensions ProtocolExtensionContainer { {GlobalN3IWF-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalN3IWF-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GlobalLine-ID ::= SEQUENCE { + globalLineIdentity GlobalLineIdentity, + lineType LineType OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {GlobalLine-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalLine-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-TAI CRITICALITY ignore EXTENSION TAI PRESENCE optional }, + ... +} + +GlobalLineIdentity ::= OCTET STRING + +GlobalNgENB-ID ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + ngENB-ID NgENB-ID, + iE-Extensions ProtocolExtensionContainer { {GlobalNgENB-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalNgENB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GlobalRANNodeID ::= CHOICE { + globalGNB-ID GlobalGNB-ID, + globalNgENB-ID GlobalNgENB-ID, + globalN3IWF-ID GlobalN3IWF-ID, + choice-Extensions ProtocolIE-SingleContainer { {GlobalRANNodeID-ExtIEs} } +} + +GlobalRANNodeID-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-GlobalTNGF-ID CRITICALITY reject TYPE GlobalTNGF-ID PRESENCE mandatory }| + { ID id-GlobalTWIF-ID CRITICALITY reject TYPE GlobalTWIF-ID PRESENCE mandatory }| + { ID id-GlobalW-AGF-ID CRITICALITY reject TYPE GlobalW-AGF-ID PRESENCE mandatory }, + ... +} + +GlobalTNGF-ID ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + tNGF-ID TNGF-ID, + iE-Extensions ProtocolExtensionContainer { { GlobalTNGF-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalTNGF-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +GlobalTWIF-ID ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + tWIF-ID TWIF-ID, + iE-Extensions ProtocolExtensionContainer { { GlobalTWIF-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalTWIF-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +GlobalW-AGF-ID ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + w-AGF-ID W-AGF-ID, + iE-Extensions ProtocolExtensionContainer { { GlobalW-AGF-ID-ExtIEs} } OPTIONAL, + ... +} + +GlobalW-AGF-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GNB-ID ::= CHOICE { + gNB-ID BIT STRING (SIZE(22..32)), + choice-Extensions ProtocolIE-SingleContainer { {GNB-ID-ExtIEs} } +} + +GNB-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +GTP-TEID ::= OCTET STRING (SIZE(4)) + +GTPTunnel ::= SEQUENCE { + transportLayerAddress TransportLayerAddress, + gTP-TEID GTP-TEID, + iE-Extensions ProtocolExtensionContainer { {GTPTunnel-ExtIEs} } OPTIONAL, + ... +} + +GTPTunnel-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GUAMI ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + aMFRegionID AMFRegionID, + aMFSetID AMFSetID, + aMFPointer AMFPointer, + iE-Extensions ProtocolExtensionContainer { {GUAMI-ExtIEs} } OPTIONAL, + ... +} + +GUAMI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GUAMIType ::= ENUMERATED {native, mapped, ...} + +-- H + +HandoverCommandTransfer ::= SEQUENCE { + dLForwardingUP-TNLInformation UPTransportLayerInformation OPTIONAL, + qosFlowToBeForwardedList QosFlowToBeForwardedList OPTIONAL, + dataForwardingResponseDRBList DataForwardingResponseDRBList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {HandoverCommandTransfer-ExtIEs} } OPTIONAL, + ... +} + +HandoverCommandTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-AdditionalDLForwardingUPTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-ULForwardingUP-TNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalULForwardingUPTNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformationList PRESENCE optional }| + { ID id-DataForwardingResponseERABList CRITICALITY ignore EXTENSION DataForwardingResponseERABList PRESENCE optional }| + { ID id-QosFlowFailedToSetupList CRITICALITY ignore EXTENSION QosFlowListWithCause PRESENCE optional }, + ... +} + +HandoverFlag ::= ENUMERATED { + handover-preparation, + ... +} + +HandoverPreparationUnsuccessfulTransfer ::= SEQUENCE { + cause Cause, + iE-Extensions ProtocolExtensionContainer { {HandoverPreparationUnsuccessfulTransfer-ExtIEs} } OPTIONAL, + ... +} + +HandoverPreparationUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +HandoverRequestAcknowledgeTransfer ::= SEQUENCE { + dL-NGU-UP-TNLInformation UPTransportLayerInformation, + dLForwardingUP-TNLInformation UPTransportLayerInformation OPTIONAL, + securityResult SecurityResult OPTIONAL, + qosFlowSetupResponseList QosFlowListWithDataForwarding, + qosFlowFailedToSetupList QosFlowListWithCause OPTIONAL, + dataForwardingResponseDRBList DataForwardingResponseDRBList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {HandoverRequestAcknowledgeTransfer-ExtIEs} } OPTIONAL, + ... +} + +HandoverRequestAcknowledgeTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-AdditionalDLUPTNLInformationForHOList CRITICALITY ignore EXTENSION AdditionalDLUPTNLInformationForHOList PRESENCE optional }| + { ID id-ULForwardingUP-TNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalULForwardingUPTNLInformation CRITICALITY reject EXTENSION UPTransportLayerInformationList PRESENCE optional }| + { ID id-DataForwardingResponseERABList CRITICALITY ignore EXTENSION DataForwardingResponseERABList PRESENCE optional }| + { ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-UsedRSNInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional }| + { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }| + { ID id-MBS-SupportIndicator CRITICALITY ignore EXTENSION MBS-SupportIndicator PRESENCE optional }, + ... +} + +HandoverRequiredTransfer ::= SEQUENCE { + directForwardingPathAvailability DirectForwardingPathAvailability OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {HandoverRequiredTransfer-ExtIEs} } OPTIONAL, + ... +} + +HandoverRequiredTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +HandoverResourceAllocationUnsuccessfulTransfer ::= SEQUENCE { + cause Cause, + criticalityDiagnostics CriticalityDiagnostics OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {HandoverResourceAllocationUnsuccessfulTransfer-ExtIEs} } OPTIONAL, + ... +} + +HandoverResourceAllocationUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +HandoverType ::= ENUMERATED { + intra5gs, + fivegs-to-eps, + eps-to-5gs, + ..., + fivegs-to-utran +} + +HashedUEIdentityIndexValue ::= BIT STRING (SIZE(13, ...)) + + +HFCNode-ID ::= OCTET STRING + +HFCNode-ID-new ::= SEQUENCE { + hFCNode-ID HFCNode-ID, + tAI TAI, + iE-Extensions ProtocolExtensionContainer { { HFCNode-ID-new-ExtIEs} } OPTIONAL, + ... +} + +HFCNode-ID-new-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +HOReport::= SEQUENCE { + handoverReportType ENUMERATED {ho-too-early, ho-to-wrong-cell, intersystem-ping-pong, ...}, + handoverCause Cause, + sourcecellCGI NGRAN-CGI, + targetcellCGI NGRAN-CGI, + reestablishmentcellCGI NGRAN-CGI OPTIONAL, + -- The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" -- + sourcecellC-RNTI BIT STRING (SIZE(16)) OPTIONAL, + targetcellinE-UTRAN EUTRA-CGI OPTIONAL, + -- The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping-pong" -- + mobilityInformation MobilityInformation OPTIONAL, + uERLFReportContainer UERLFReportContainer OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { HOReport-ExtIEs} } OPTIONAL, + ... +} + +HOReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +Hysteresis ::= INTEGER (0..30) + +-- I + +IAB-Authorized ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +IAB-Supported ::= ENUMERATED { + true, + ... +} + +IABNodeIndication ::= ENUMERATED { + true, + ... +} + +IMSVoiceSupportIndicator ::= ENUMERATED { + supported, + not-supported, + ... +} + +IndexToRFSP ::= INTEGER (1..256, ...) + +InfoOnRecommendedCellsAndRANNodesForPaging ::= SEQUENCE { + recommendedCellsForPaging RecommendedCellsForPaging, + recommendRANNodesForPaging RecommendedRANNodesForPaging, + iE-Extensions ProtocolExtensionContainer { {InfoOnRecommendedCellsAndRANNodesForPaging-ExtIEs} } OPTIONAL, + ... +} + +InfoOnRecommendedCellsAndRANNodesForPaging-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +IntegrityProtectionIndication ::= ENUMERATED { + required, + preferred, + not-needed, + ... +} + +IntegrityProtectionResult ::= ENUMERATED { + performed, + not-performed, + ... +} + +IntendedNumberOfPagingAttempts ::= INTEGER (1..16, ...) + +InterfacesToTrace ::= BIT STRING (SIZE(8)) + +ImmediateMDTNr ::= SEQUENCE { + measurementsToActivate MeasurementsToActivate, + m1Configuration M1Configuration OPTIONAL, +-- The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” + m4Configuration M4Configuration OPTIONAL, +-- The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” + m5Configuration M5Configuration OPTIONAL, +-- The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” + m6Configuration M6Configuration OPTIONAL, +-- The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” + m7Configuration M7Configuration OPTIONAL, +-- The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” + bluetoothMeasurementConfiguration BluetoothMeasurementConfiguration OPTIONAL, + wLANMeasurementConfiguration WLANMeasurementConfiguration OPTIONAL, + mDT-Location-Info MDT-Location-Info OPTIONAL, + sensorMeasurementConfiguration SensorMeasurementConfiguration OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { ImmediateMDTNr-ExtIEs} } OPTIONAL, + ... +} + +ImmediateMDTNr-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +InterSystemFailureIndication ::= SEQUENCE { + uERLFReportContainer UERLFReportContainer OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { InterSystemFailureIndication-ExtIEs} } OPTIONAL, + ... +} + +InterSystemFailureIndication-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +IntersystemSONConfigurationTransfer ::= SEQUENCE { + transferType IntersystemSONTransferType, + intersystemSONInformation IntersystemSONInformation, + iE-Extensions ProtocolExtensionContainer { { IntersystemSONConfigurationTransfer-ExtIEs} } OPTIONAL, + ... +} + +IntersystemSONConfigurationTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +IntersystemSONTransferType ::= CHOICE { + fromEUTRANtoNGRAN FromEUTRANtoNGRAN, + fromNGRANtoEUTRAN FromNGRANtoEUTRAN, + choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONTransferType-ExtIEs} } +} +IntersystemSONTransferType-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +IntersystemSONeNBID ::= SEQUENCE { + globaleNBID GlobalENB-ID, + selectedEPSTAI EPS-TAI, + iE-Extensions ProtocolExtensionContainer { { IntersystemSONeNBID-ExtIEs} } OPTIONAL, + ... +} + +IntersystemSONeNBID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +IntersystemSONNGRANnodeID ::= SEQUENCE { + globalRANNodeID GlobalRANNodeID, + selectedTAI TAI, + iE-Extensions ProtocolExtensionContainer { { IntersystemSONNGRANnodeID-ExtIEs} } OPTIONAL, + ... +} + +IntersystemSONNGRANnodeID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +IntersystemSONInformation ::= CHOICE { + intersystemSONInformationReport IntersystemSONInformationReport, + choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONInformation-ExtIEs} } +} + +IntersystemSONInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-IntersystemSONInformationRequest CRITICALITY ignore TYPE IntersystemSONInformationRequest PRESENCE mandatory }| + { ID id-IntersystemSONInformationReply CRITICALITY ignore TYPE IntersystemSONInformationReply PRESENCE mandatory }, + ... +} + +-- -------------------------------------------------------------------- +-- INTER SYSTEM SON INFORMATION REQUEST +-- -------------------------------------------------------------------- + +IntersystemSONInformationRequest ::= CHOICE { + nGRAN-CellActivation IntersystemCellActivationRequest, + resourceStatus IntersystemResourceStatusRequest, + choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONInformationRequest-ExtIEs} } +} + +IntersystemSONInformationRequest-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +IntersystemCellActivationRequest ::= SEQUENCE { + activationID INTEGER (0..16384, ...), + cellsToActivateList CellsToActivateList, + iE-Extensions ProtocolExtensionContainer { { IntersystemCellActivationRequest-ExtIEs} } OPTIONAL, + ... +} + +IntersystemCellActivationRequest-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CellsToActivateList ::= SEQUENCE (SIZE(1..maxnoofCellsinNGRANNode)) OF NGRAN-CGI + + +-- -------------------------------------------------------------------- +-- Inter System Resource Status Request +-- -------------------------------------------------------------------- + +IntersystemResourceStatusRequest ::= SEQUENCE { + reportingSystem ReportingSystem, + reportCharacteristics ReportCharacteristics, + reportType ReportType, + iE-Extensions ProtocolExtensionContainer { { IntersystemResourceStatusRequest-ExtIEs} } OPTIONAL, + ... +} + +IntersystemResourceStatusRequest-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ReportingSystem ::= CHOICE { + eUTRAN EUTRAN-ReportingSystemIEs, + nGRAN NGRAN-ReportingSystemIEs, + noReporting NULL, + choice-Extensions ProtocolIE-SingleContainer { { ReportingSystem-ExtIEs}} +} + +ReportingSystem-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +EUTRAN-ReportingSystemIEs::= SEQUENCE { + eUTRAN-CellToReportList EUTRAN-CellToReportList, + iE-Extensions ProtocolExtensionContainer { {EUTRAN-ReportingSystemIEs-ExtIEs} } OPTIONAL, + ... +} + +EUTRAN-ReportingSystemIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NGRAN-ReportingSystemIEs ::= SEQUENCE { + nGRAN-CellToReportList NGRAN-CellToReportList, + iE-Extensions ProtocolExtensionContainer { {NGRAN-ReportingSystemIEs-ExtIEs} } OPTIONAL, + ... +} + +NGRAN-ReportingSystemIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EUTRAN-CellToReportList ::= SEQUENCE (SIZE(1..maxnoofReportedCells)) OF EUTRAN-CellToReportItem + +EUTRAN-CellToReportItem::= SEQUENCE { + eCGI EUTRA-CGI, + iE-Extensions ProtocolExtensionContainer { {EUTRAN-CellToReportItem-ExtIEs} } OPTIONAL, + ... +} + +EUTRAN-CellToReportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +NGRAN-CellToReportList ::= SEQUENCE (SIZE(1.. maxnoofReportedCells)) OF NGRAN-CellToReportItem + +NGRAN-CellToReportItem::= SEQUENCE { + nGRAN-CGI NGRAN-CGI, + iE-Extensions ProtocolExtensionContainer { {NGRAN-CellToReportItem-ExtIEs} } OPTIONAL, + ... +} + +NGRAN-CellToReportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ReportCharacteristics ::= BIT STRING(SIZE(32)) + +ReportType ::= CHOICE { + eventBasedReporting EventBasedReportingIEs, + periodicReporting PeriodicReportingIEs, + choice-Extensions ProtocolIE-SingleContainer { { ReportType-ExtIEs}} +} + +ReportType-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +EventBasedReportingIEs ::= SEQUENCE { + intersystemResourceThresholdLow IntersystemResourceThreshold, + intersystemResourceThresholdHigh IntersystemResourceThreshold, + numberOfMeasurementReportingLevels NumberOfMeasurementReportingLevels, + iE-Extensions ProtocolExtensionContainer { {EventBasedReportingIEs-ExtIEs} } OPTIONAL, + ... +} +EventBasedReportingIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +IntersystemResourceThreshold ::= INTEGER(0..100) + +NumberOfMeasurementReportingLevels ::= ENUMERATED {n2, n3, n4, n5, n10, ...} + +PeriodicReportingIEs ::= SEQUENCE { + reportingPeriodicity ReportingPeriodicity, + iE-Extensions ProtocolExtensionContainer { {PeriodicReportingIEs-ExtIEs} } OPTIONAL, + ... +} + +PeriodicReportingIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ReportingPeriodicity ::= ENUMERATED { + stop, + single, + ms1000, + ms2000, + ms5000, + ms10000, + ... +} + + +-- -------------------------------------------------------------------- +-- INTER SYSTEM SON INFORMATION REPLY +-- -------------------------------------------------------------------- + +IntersystemSONInformationReply ::= CHOICE { + nGRAN-CellActivation IntersystemCellActivationReply, + resourceStatus IntersystemResourceStatusReply, + choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONInformationReply-ExtIEs} } +} + +IntersystemSONInformationReply-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +IntersystemCellActivationReply ::= SEQUENCE { + activatedCellList ActivatedCellList, + activation-ID INTEGER(0..16384, ...), + iE-Extensions ProtocolExtensionContainer { { IntersystemCellActivationReply-ExtIEs} } OPTIONAL, + ... +} + +IntersystemCellActivationReply-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ActivatedCellList ::= SEQUENCE (SIZE(1..maxnoofCellsinNGRANNode)) OF NGRAN-CGI + + +-- -------------------------------------------------------------------- +-- Inter System Resource Status Reply +-- -------------------------------------------------------------------- + +IntersystemResourceStatusReply ::= SEQUENCE { + reportingsystem ReportingSystem, + iE-Extensions ProtocolExtensionContainer { { IntersystemResourceStatusReply-ExtIEs} } OPTIONAL, + ... +} + +IntersystemResourceStatusReply-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +-- -------------------------------------------------------------------- +-- INTER SYSTEM SON INFORMATION REPORT +-- -------------------------------------------------------------------- + +IntersystemSONInformationReport::= CHOICE { + hOReportInformation InterSystemHOReport, + failureIndicationInformation InterSystemFailureIndication, + choice-Extensions ProtocolIE-SingleContainer { { IntersystemSONInformationReport-ExtIEs} } +} + +IntersystemSONInformationReport-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-EnergySavingIndication CRITICALITY ignore TYPE IntersystemCellStateIndication PRESENCE mandatory }| + { ID id-IntersystemResourceStatusUpdate CRITICALITY ignore TYPE IntersystemResourceStatusReport PRESENCE mandatory }, + ... +} + +IntersystemCellStateIndication ::= SEQUENCE { + notificationCellList NotificationCellList, + iE-Extensions ProtocolExtensionContainer { { IntersystemCellStateIndication-ExtIEs} } OPTIONAL, + ... +} + +IntersystemCellStateIndication-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NotificationCellList ::= SEQUENCE (SIZE(1.. maxnoofCellsinNGRANNode)) OF NotificationCell-Item + +NotificationCell-Item ::= SEQUENCE { + nGRAN-CGI NGRAN-CGI, + notifyFlag ENUMERATED {activated, deactivated, ...}, + iE-Extensions ProtocolExtensionContainer { { NotificationCell-Item-ExtIEs} } OPTIONAL, + ... +} + +NotificationCell-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- -------------------------------------------------------------------- +-- Inter System Resource Status Report +-- -------------------------------------------------------------------- + +IntersystemResourceStatusReport ::= SEQUENCE { + reportingSystem ResourceStatusReportingSystem, + iE-Extensions ProtocolExtensionContainer { { IntersystemResourceStatusReport-ExtIEs} } OPTIONAL, + ... +} + +IntersystemResourceStatusReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ResourceStatusReportingSystem ::= CHOICE { + eUTRAN-ReportingStatus EUTRAN-ReportingStatusIEs, + nGRAN-ReportingStatus NGRAN-ReportingStatusIEs, + choice-Extensions ProtocolIE-SingleContainer { { ResourceStatusReportingSystem-ExtIEs}} +} + +ResourceStatusReportingSystem-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +EUTRAN-ReportingStatusIEs::= SEQUENCE { + eUTRAN-CellReportList EUTRAN-CellReportList, + iE-Extensions ProtocolExtensionContainer { {EUTRAN-ReportingStatusIEs-ExtIEs} } OPTIONAL, + ... +} + +EUTRAN-ReportingStatusIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EUTRAN-CellReportList ::= SEQUENCE (SIZE(1..maxnoofReportedCells)) OF EUTRAN-CellReportItem + +EUTRAN-CellReportItem ::= SEQUENCE { + eCGI EUTRA-CGI, + eUTRAN-CompositeAvailableCapacityGroup EUTRAN-CompositeAvailableCapacityGroup, + eUTRAN-NumberOfActiveUEs EUTRAN-NumberOfActiveUEs OPTIONAL, + eUTRAN-NoofRRCConnections NGRAN-NoofRRCConnections OPTIONAL, + eUTRAN-RadioResourceStatus EUTRAN-RadioResourceStatus OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {EUTRAN-CellReportItem-ExtIEs} } OPTIONAL, + ... +} + +EUTRAN-CellReportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +EUTRAN-CompositeAvailableCapacityGroup ::= SEQUENCE { + dL-CompositeAvailableCapacity CompositeAvailableCapacity, + uL-CompositeAvailableCapacity CompositeAvailableCapacity, + iE-Extensions ProtocolExtensionContainer { { EUTRAN-CompositeAvailableCapacityGroup-ExtIEs} } OPTIONAL, + ... +} + +EUTRAN-CompositeAvailableCapacityGroup-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +CompositeAvailableCapacity ::= SEQUENCE { + cellCapacityClassValue INTEGER (1..100, ...) OPTIONAL, + capacityValue INTEGER (0..100), + iE-Extensions ProtocolExtensionContainer { {CompositeAvailableCapacity-ExtIEs} } OPTIONAL, + ... +} + +CompositeAvailableCapacity-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +EUTRAN-NumberOfActiveUEs ::= INTEGER (0..16777215, ...) + +EUTRAN-RadioResourceStatus ::= SEQUENCE { + dL-GBR-PRB-usage INTEGER (0..100), + uL-GBR-PRB-usage INTEGER (0..100), + dL-non-GBR-PRB-usage INTEGER (0..100), + uL-non-GBR-PRB-usage INTEGER (0..100), + dL-Total-PRB-usage INTEGER (0..100), + uL-Total-PRB-usage INTEGER (0..100), + dL-scheduling-PDCCH-CCE-usage INTEGER (0..100) OPTIONAL, + uL-scheduling-PDCCH-CCE-usage INTEGER (0..100) OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {EUTRAN-RadioResourceStatus-ExtIEs} } OPTIONAL, + ... +} + +EUTRAN-RadioResourceStatus-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NGRAN-ReportingStatusIEs ::= SEQUENCE { + nGRAN-CellReportList NGRAN-CellReportList, + iE-Extensions ProtocolExtensionContainer { {NGRAN-ReportingStatusIEs-ExtIEs} } OPTIONAL, + ... +} + +NGRAN-ReportingStatusIEs-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NGRAN-CellReportList ::= SEQUENCE (SIZE(1..maxnoofReportedCells)) OF NGRAN-CellReportItem + +NGRAN-CellReportItem ::= SEQUENCE { + nGRAN-CGI NGRAN-CGI, + nGRAN-CompositeAvailableCapacityGroup EUTRAN-CompositeAvailableCapacityGroup, + nGRAN-NumberOfActiveUEs NGRAN-NumberOfActiveUEs OPTIONAL, + nGRAN-NoofRRCConnections NGRAN-NoofRRCConnections OPTIONAL, + nGRAN-RadioResourceStatus NGRAN-RadioResourceStatus OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {NGRAN-CellReportItem-ExtIEs} } OPTIONAL, + ... +} + +NGRAN-CellReportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +NGRAN-NumberOfActiveUEs ::= INTEGER (0..16777215, ...) + +NGRAN-NoofRRCConnections ::= INTEGER (1..65536, ...) + +NGRAN-RadioResourceStatus ::= SEQUENCE { + dL-GBR-PRB-usage-for-MIMO INTEGER (0..100), + uL-GBR-PRB-usage-for-MIMO INTEGER (0..100), + dL-non-GBR-PRB-usage-for-MIMO INTEGER (0..100), + uL-non-GBR-PRB-usage-for-MIMO INTEGER (0..100), + dL-Total-PRB-usage-for-MIMO INTEGER (0..100), + uL-Total-PRB-usage-for-MIMO INTEGER (0..100), + iE-Extensions ProtocolExtensionContainer { { NGRAN-RadioResourceStatus-ExtIEs} } OPTIONAL, + ... +} + +NGRAN-RadioResourceStatus-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +InterSystemHOReport ::= SEQUENCE { + handoverReportType InterSystemHandoverReportType, + iE-Extensions ProtocolExtensionContainer { { InterSystemHOReport-ExtIEs} } OPTIONAL, + ... +} + +InterSystemHOReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +InterSystemHandoverReportType ::= CHOICE { + tooearlyIntersystemHO TooearlyIntersystemHO, + intersystemUnnecessaryHO IntersystemUnnecessaryHO, + choice-Extensions ProtocolIE-SingleContainer { { InterSystemHandoverReportType-ExtIEs} } +} + +InterSystemHandoverReportType-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +IntersystemUnnecessaryHO ::= SEQUENCE { + sourcecellID NGRAN-CGI, + targetcellID EUTRA-CGI, + earlyIRATHO ENUMERATED {true, false, ...}, + candidateCellList CandidateCellList, + iE-Extensions ProtocolExtensionContainer { { IntersystemUnnecessaryHO-ExtIEs} } OPTIONAL, + ... +} + +IntersystemUnnecessaryHO-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- J +-- K +-- L + +LAC ::= OCTET STRING (SIZE (2)) + +LAI ::= SEQUENCE { + pLMNidentity PLMNIdentity, + lAC LAC, + iE-Extensions ProtocolExtensionContainer { {LAI-ExtIEs} } OPTIONAL, + ... +} + +LAI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +LastVisitedCellInformation ::= CHOICE { + nGRANCell LastVisitedNGRANCellInformation, + eUTRANCell LastVisitedEUTRANCellInformation, + uTRANCell LastVisitedUTRANCellInformation, + gERANCell LastVisitedGERANCellInformation, + choice-Extensions ProtocolIE-SingleContainer { {LastVisitedCellInformation-ExtIEs} } +} + +LastVisitedCellInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +LastVisitedCellItem ::= SEQUENCE { + lastVisitedCellInformation LastVisitedCellInformation, + iE-Extensions ProtocolExtensionContainer { {LastVisitedCellItem-ExtIEs} } OPTIONAL, + ... +} + +LastVisitedCellItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +LastVisitedEUTRANCellInformation ::= OCTET STRING + +LastVisitedGERANCellInformation ::= OCTET STRING + +LastVisitedNGRANCellInformation::= SEQUENCE { + globalCellID NGRAN-CGI, + cellType CellType, + timeUEStayedInCell TimeUEStayedInCell, + timeUEStayedInCellEnhancedGranularity TimeUEStayedInCellEnhancedGranularity OPTIONAL, + hOCauseValue Cause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {LastVisitedNGRANCellInformation-ExtIEs} } OPTIONAL, + ... +} + +LastVisitedNGRANCellInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-LastVisitedPSCellList CRITICALITY ignore EXTENSION LastVisitedPSCellList PRESENCE optional }, + ... +} + +LastVisitedPSCellList ::= SEQUENCE (SIZE(1..maxnoofPSCellsPerPrimaryCellinUEHistoryInfo)) OF LastVisitedPSCellInformation + +LastVisitedPSCellInformation ::= SEQUENCE { + pSCellID NGRAN-CGI OPTIONAL, + timeStay INTEGER (0..40950), + iE-Extensions ProtocolExtensionContainer { {LastVisitedPSCellInformation-ExtIEs} } OPTIONAL, + ... +} + +LastVisitedPSCellInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +LastVisitedUTRANCellInformation ::= OCTET STRING + +LineType ::= ENUMERATED { + dsl, + pon, + ... +} + + +LocationReportingAdditionalInfo ::= ENUMERATED { + includePSCell, + ... +} + +LocationReportingReferenceID ::= INTEGER (1..64, ...) + +LocationReportingRequestType ::= SEQUENCE { + eventType EventType, + reportArea ReportArea, + areaOfInterestList AreaOfInterestList OPTIONAL, + locationReportingReferenceIDToBeCancelled LocationReportingReferenceID OPTIONAL, +-- The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” + iE-Extensions ProtocolExtensionContainer { {LocationReportingRequestType-ExtIEs} } OPTIONAL, + ... +} + +LocationReportingRequestType-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-LocationReportingAdditionalInfo CRITICALITY ignore EXTENSION LocationReportingAdditionalInfo PRESENCE optional }, + ... +} + +LoggedMDTNr ::= SEQUENCE { + loggingInterval LoggingInterval, + loggingDuration LoggingDuration, + loggedMDTTrigger LoggedMDTTrigger, + bluetoothMeasurementConfiguration BluetoothMeasurementConfiguration OPTIONAL, + wLANMeasurementConfiguration WLANMeasurementConfiguration OPTIONAL, + sensorMeasurementConfiguration SensorMeasurementConfiguration OPTIONAL, + areaScopeOfNeighCellsList AreaScopeOfNeighCellsList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {LoggedMDTNr-ExtIEs} } OPTIONAL, + ... +} + +LoggedMDTNr-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-EarlyMeasurement CRITICALITY ignore EXTENSION EarlyMeasurement PRESENCE optional }, + ... +} + +LoggingInterval ::= ENUMERATED { + ms320, ms640, ms1280, ms2560, ms5120, ms10240, ms20480, ms30720, ms40960, ms61440, + infinity, + ... +} + +LoggingDuration ::= ENUMERATED {m10, m20, m40, m60, m90, m120, ...} + +Links-to-log ::= ENUMERATED { + uplink, + downlink, + both-uplink-and-downlink, + ... +} + +LoggedMDTTrigger ::= CHOICE{ + periodical NULL, + eventTrigger EventTrigger, + choice-Extensions ProtocolIE-SingleContainer { {LoggedMDTTrigger-ExtIEs} } +} + +LoggedMDTTrigger-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +LTEM-Indication ::= ENUMERATED {lte-m,...} + +LTEUERLFReportContainer ::= OCTET STRING + +LTEV2XServicesAuthorized ::= SEQUENCE { + vehicleUE VehicleUE OPTIONAL, + pedestrianUE PedestrianUE OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {LTEV2XServicesAuthorized-ExtIEs} } OPTIONAL, + ... +} + +LTEV2XServicesAuthorized-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +LTEUESidelinkAggregateMaximumBitrate ::= SEQUENCE { + uESidelinkAggregateMaximumBitRate BitRate, + iE-Extensions ProtocolExtensionContainer { {LTEUE-Sidelink-Aggregate-MaximumBitrates-ExtIEs} } OPTIONAL, + ... +} + +LTEUE-Sidelink-Aggregate-MaximumBitrates-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- M + +MaskedIMEISV ::= BIT STRING (SIZE(64)) + +MaximumDataBurstVolume ::= INTEGER (0..4095, ..., 4096.. 2000000) + +MessageIdentifier ::= BIT STRING (SIZE(16)) + +MaximumIntegrityProtectedDataRate ::= ENUMERATED { + bitrate64kbs, + maximum-UE-rate, + ... +} + + +MBS-AreaSessionID ::= INTEGER (0..65535, ...) + +MBS-DataForwardingResponseMRBList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MBS-DataForwardingResponseMRBItem + +MBS-DataForwardingResponseMRBItem ::= SEQUENCE { + mRB-ID MRB-ID, + dL-Forwarding-UPTNLInformation UPTransportLayerInformation, + mRB-ProgressInformation MRB-ProgressInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MBS-DataForwardingResponseMRBItem-ExtIEs} } OPTIONAL, + ... +} + +MBS-DataForwardingResponseMRBItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-MappingandDataForwardingRequestList ::= SEQUENCE (SIZE(1..maxnoofMRBs)) OF MBS-MappingandDataForwardingRequestItem + +MBS-MappingandDataForwardingRequestItem ::= SEQUENCE { + mRB-ID MRB-ID, + mBS-QoSFlowList MBS-QoSFlowList, + mRB-ProgressInformation MRB-ProgressInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MBS-MappingandDataForwardingRequestItem-ExtIEs} } OPTIONAL, + ... +} + +MBS-MappingandDataForwardingRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofMBSQoSFlows)) OF QosFlowIdentifier + +MRB-ProgressInformation ::= CHOICE { + pDCP-SN-Length12 INTEGER (0..4095), + pDCP-SN-Length18 INTEGER (0..262143), + choice-Extensions ProtocolIE-SingleContainer { { MRB-ProgressInformation-ExtIEs} } +} + +MRB-ProgressInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +MBS-QoSFlowsToBeSetupList ::= SEQUENCE (SIZE(1.. maxnoofMBSQoSFlows)) OF MBS-QoSFlowsToBeSetupItem + +MBS-QoSFlowsToBeSetupItem ::= SEQUENCE { + mBSqosFlowIdentifier QosFlowIdentifier, + mBSqosFlowLevelQosParameters QosFlowLevelQosParameters, + iE-Extensions ProtocolExtensionContainer { {MBS-QoSFlowsToBeSetupItem-ExtIEs} } OPTIONAL, + ... +} + +MBS-QoSFlowsToBeSetupItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +MBS-ServiceArea ::= CHOICE { + locationindependent MBS-ServiceAreaInformation, + locationdependent MBS-ServiceAreaInformationList, + choice-Extensions ProtocolIE-SingleContainer { {MBS-ServiceArea-ExtIEs} } +} + +MBS-ServiceArea-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +MBS-ServiceAreaInformationList ::= SEQUENCE (SIZE(1..maxnoofMBSServiceAreaInformation)) OF MBS-ServiceAreaInformationItem + + +MBS-ServiceAreaInformationItem ::= SEQUENCE { + mBS-AreaSessionID MBS-AreaSessionID, + mBS-ServiceAreaInformation MBS-ServiceAreaInformation, + iE-Extensions ProtocolExtensionContainer { {MBS-ServiceAreaInformationItem-ExtIEs} } OPTIONAL, + ... +} + +MBS-ServiceAreaInformationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-ServiceAreaInformation ::= SEQUENCE { + mBS-ServiceAreaCellList MBS-ServiceAreaCellList OPTIONAL, + mBS-ServiceAreaTAIList MBS-ServiceAreaTAIList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {MBS-ServiceAreaInformation-ExtIEs} } OPTIONAL, + ... +} + +MBS-ServiceAreaInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-ServiceAreaCellList ::= SEQUENCE (SIZE(1.. maxnoofCellsforMBS)) OF NR-CGI + +MBS-ServiceAreaTAIList ::= SEQUENCE (SIZE(1.. maxnoofTAIforMBS)) OF TAI + +MBS-SessionID ::= SEQUENCE { + tMGI TMGI, + nID NID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {MBS-SessionID-ExtIEs} } OPTIONAL, + ... +} + +MBS-SessionID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSSessionFailedtoSetupList ::= SEQUENCE (SIZE(1.. maxnoofMBSSessions)) OF MBSSessionFailedtoSetupItem + +MBSSessionFailedtoSetupItem ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-AreaSessionID MBS-AreaSessionID OPTIONAL, + cause Cause, + iE-Extensions ProtocolExtensionContainer { { MBSSessionFailedtoSetupItem-ExtIEs} } OPTIONAL, + ... +} + +MBSSessionFailedtoSetupItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-ActiveSessionInformation-SourcetoTargetList ::= SEQUENCE (SIZE(1..maxnoofMBSSessionsofUE)) OF MBS-ActiveSessionInformation-SourcetoTargetItem + +MBS-ActiveSessionInformation-SourcetoTargetItem ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-AreaSessionID MBS-AreaSessionID OPTIONAL, + mBS-ServiceArea MBS-ServiceArea OPTIONAL, + mBS-QoSFlowsToBeSetupList MBS-QoSFlowsToBeSetupList, + mBS-MappingandDataForwardingRequestList MBS-MappingandDataForwardingRequestList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MBS-ActiveSessionInformation-SourcetoTargetItem-ExtIEs} } OPTIONAL, + ... +} + +MBS-ActiveSessionInformation-SourcetoTargetItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-ActiveSessionInformation-TargettoSourceList ::= SEQUENCE (SIZE(1..maxnoofMBSSessionsofUE)) OF MBS-ActiveSessionInformation-TargettoSourceItem + +MBS-ActiveSessionInformation-TargettoSourceItem ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-DataForwardingResponseMRBList MBS-DataForwardingResponseMRBList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MBS-ActiveSessionInformation-TargettoSourceItem-ExtIEs} } OPTIONAL, + ... +} + +MBS-ActiveSessionInformation-TargettoSourceItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSSessionSetupOrModFailureTransfer ::= SEQUENCE { + cause Cause, + criticalityDiagnostics CriticalityDiagnostics OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MBSSessionSetupOrModFailureTransfer-ExtIEs} } OPTIONAL, + ... +} + +MBSSessionSetupOrModFailureTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSSessionSetupResponseList ::= SEQUENCE (SIZE(1.. maxnoofMBSSessions)) OF MBSSessionSetupResponseItem + +MBSSessionSetupResponseItem ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-AreaSessionID MBS-AreaSessionID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MBSSessionSetupResponseItem-ExtIEs} } OPTIONAL, + ... +} + +MBSSessionSetupResponseItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSSessionSetupOrModRequestTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MBSSessionSetupOrModRequestTransferIEs} }, + ... +} + +MBSSessionSetupOrModRequestTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionTNLInfo5GC CRITICALITY reject TYPE MBS-SessionTNLInfo5GC PRESENCE optional }| + { ID id-MBS-QoSFlowsToBeSetupModList CRITICALITY reject TYPE MBS-QoSFlowsToBeSetupList PRESENCE mandatory }| + { ID id-MBS-SessionFSAIDList CRITICALITY ignore TYPE MBS-SessionFSAIDList PRESENCE optional }, + ... +} + +MBS-SessionFSAIDList ::= SEQUENCE (SIZE(1.. maxnoofMBSFSAs)) OF MBS-SessionFSAID + +MBS-SessionFSAID ::= OCTET STRING (SIZE(3)) + +MBSSessionReleaseResponseTransfer ::= SEQUENCE { + mBS-SessionTNLInfoNGRAN MBS-SessionTNLInfoNGRAN OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {MBSSessionReleaseResponseTransfer-ExtIEs} } OPTIONAL, + ... +} + +MBSSessionReleaseResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSSessionSetupOrModResponseTransfer ::= SEQUENCE { + mBS-SessionTNLInfoNGRAN MBS-SessionTNLInfoNGRAN OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {MBSSessionSetupOrModResponseTransfer-ExtIEs} } OPTIONAL, + ... +} + +MBSSessionSetupOrModResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-SupportIndicator ::= ENUMERATED { + true, + ... +} + +MBS-SessionTNLInfo5GC ::= CHOICE { + locationindependent SharedNGU-MulticastTNLInformation, + locationdependent MBS-SessionTNLInfo5GCList, + choice-Extensions ProtocolIE-SingleContainer { {MBS-SessionTNLInfo5GC-ExtIEs} } +} + +MBS-SessionTNLInfo5GC-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +MBS-SessionTNLInfo5GCList ::= SEQUENCE (SIZE(1..maxnoofMBSServiceAreaInformation)) OF MBS-SessionTNLInfo5GCItem + +MBS-SessionTNLInfo5GCItem ::= SEQUENCE { + mBS-AreaSessionID MBS-AreaSessionID, + sharedNGU-MulticastTNLInformation SharedNGU-MulticastTNLInformation, + iE-Extensions ProtocolExtensionContainer { {MBS-SessionTNLInfo5GCItem-ExtIEs} } OPTIONAL, + ... +} + +MBS-SessionTNLInfo5GCItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-SessionTNLInfoNGRAN ::= CHOICE { + locationindependent UPTransportLayerInformation, + locationdependent MBS-SessionTNLInfoNGRANList, + choice-Extensions ProtocolIE-SingleContainer { {MBS-SessionTNLInfoNGRAN-ExtIEs} } +} + +MBS-SessionTNLInfoNGRAN-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +MBS-SessionTNLInfoNGRANList ::= SEQUENCE (SIZE(1..maxnoofMBSServiceAreaInformation)) OF MBS-SessionTNLInfoNGRANItem + +MBS-SessionTNLInfoNGRANItem ::= SEQUENCE { + mBS-AreaSessionID MBS-AreaSessionID, + sharedNGU-UnicastTNLInformation UPTransportLayerInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {MBS-SessionTNLInfoNGRANItem-ExtIEs} } OPTIONAL, + ... +} + +MBS-SessionTNLInfoNGRANItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-DistributionReleaseRequestTransfer ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-AreaSessionID MBS-AreaSessionID OPTIONAL, + sharedNGU-UnicastTNLInformation UPTransportLayerInformation OPTIONAL, + cause Cause, + iE-Extensions ProtocolExtensionContainer { { MBS-DistributionReleaseRequesTransfer-ExtIEs} } OPTIONAL, + ... +} + +MBS-DistributionReleaseRequesTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-DistributionSetupRequestTransfer ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-AreaSessionID MBS-AreaSessionID OPTIONAL, + sharedNGU-UnicastTNLInformation UPTransportLayerInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MBS-DistributionSetupRequestTransfer-ExtIEs} } OPTIONAL, + ... +} + +MBS-DistributionSetupRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-DistributionSetupResponseTransfer ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-AreaSessionID MBS-AreaSessionID OPTIONAL, + sharedNGU-MulticastTNLInformation MBS-SessionTNLInfo5GCItem OPTIONAL, + mBS-QoSFlowsToBeSetupList MBS-QoSFlowsToBeSetupList, + mBSSessionStatus MBSSessionStatus, + mBS-ServiceArea MBS-ServiceArea OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {MBS-DistributionSetupResponseTransfer-ExtIEs} } OPTIONAL, + ... +} + +MBS-DistributionSetupResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +MBS-DistributionSetupUnsuccessfulTransfer ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-AreaSessionID MBS-AreaSessionID OPTIONAL, + cause Cause, + criticalityDiagnostics CriticalityDiagnostics OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MBS-DistributionSetupUnsuccessfulTransfer-ExtIEs} } OPTIONAL, + ... +} + +MBS-DistributionSetupUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSSessionSetupRequestList ::= SEQUENCE (SIZE(1..maxnoofMBSSessions)) OF MBSSessionSetupRequestItem + +MBSSessionSetupRequestItem ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-AreaSessionID MBS-AreaSessionID OPTIONAL, + associatedMBSQosFlowSetupRequestList AssociatedMBSQosFlowSetupRequestList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MBSSessionSetupRequestItem-ExtIEs} } OPTIONAL, + ... +} + +MBSSessionSetupRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSSessionSetuporModifyRequestList ::= SEQUENCE (SIZE(1..maxnoofMBSSessions)) OF MBSSessionSetuporModifyRequestItem + +MBSSessionSetuporModifyRequestItem ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + mBS-AreaSessionID MBS-AreaSessionID OPTIONAL, + associatedMBSQosFlowSetuporModifyRequestList AssociatedMBSQosFlowSetuporModifyRequestList OPTIONAL, + mBS-QosFlowToReleaseList QosFlowListWithCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer {{MBSSessionSetuporModifyRequestItem-ExtIEs}} OPTIONAL, + ... +} + +MBSSessionSetuporModifyRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +MBSSessionToReleaseList ::= SEQUENCE (SIZE(1..maxnoofMBSSessions)) OF MBSSessionToReleaseItem + +MBSSessionToReleaseItem ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + cause Cause, + iE-Extensions ProtocolExtensionContainer { { MBSSessionToReleaseItem-ExtIEs} } OPTIONAL, + ... +} + +MBSSessionToReleaseItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBSSessionStatus ::= ENUMERATED { + activated, + deactivated, + ... +} + +MicoAllPLMN ::= ENUMERATED { + true, + ... +} + + +MICOModeIndication ::= ENUMERATED { + true, + ... +} + +MobilityInformation ::= BIT STRING (SIZE(16)) + +MobilityRestrictionList ::= SEQUENCE { + servingPLMN PLMNIdentity, + equivalentPLMNs EquivalentPLMNs OPTIONAL, + rATRestrictions RATRestrictions OPTIONAL, + forbiddenAreaInformation ForbiddenAreaInformation OPTIONAL, + serviceAreaInformation ServiceAreaInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {MobilityRestrictionList-ExtIEs} } OPTIONAL, + ... +} + +MobilityRestrictionList-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-LastEUTRAN-PLMNIdentity CRITICALITY ignore EXTENSION PLMNIdentity PRESENCE optional }| + { ID id-CNTypeRestrictionsForServing CRITICALITY ignore EXTENSION CNTypeRestrictionsForServing PRESENCE optional }| + { ID id-CNTypeRestrictionsForEquivalent CRITICALITY ignore EXTENSION CNTypeRestrictionsForEquivalent PRESENCE optional }| + { ID id-NPN-MobilityInformation CRITICALITY reject EXTENSION NPN-MobilityInformation PRESENCE optional }, + ... +} + +MDT-AlignmentInfo ::= CHOICE { + s-basedMDT NGRANTraceID, + choice-Extensions ProtocolIE-SingleContainer { { MDT-AlignmentInfo-ExtIEs} } +} + +MDT-AlignmentInfo-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMNIdentity + +MDTPLMNModificationList ::= SEQUENCE (SIZE(0..maxnoofMDTPLMNs)) OF PLMNIdentity + +MDT-Configuration ::= SEQUENCE { + mdt-Config-NR MDT-Configuration-NR OPTIONAL, + mdt-Config-EUTRA MDT-Configuration-EUTRA OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-ExtIEs} } OPTIONAL, + ... +} + +MDT-Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MDT-Configuration-NR ::= SEQUENCE { + mdt-Activation MDT-Activation, + areaScopeOfMDT AreaScopeOfMDT-NR, + mDTModeNr MDTModeNr, + signallingBasedMDTPLMNList MDTPLMNList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-NR-ExtIEs} } OPTIONAL, + ... +} + +MDT-Configuration-NR-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MDT-Configuration-EUTRA ::= SEQUENCE { + mdt-Activation MDT-Activation, + areaScopeOfMDT AreaScopeOfMDT-EUTRA, + mDTMode MDTModeEutra, + signallingBasedMDTPLMNList MDTPLMNList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MDT-Configuration-EUTRA-ExtIEs} } OPTIONAL, + ... +} + +MDT-Configuration-EUTRA-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MDT-Activation ::= ENUMERATED { + immediate-MDT-only, + logged-MDT-only, + immediate-MDT-and-Trace, + ... +} + +MDTModeNr ::= CHOICE { + immediateMDTNr ImmediateMDTNr, + loggedMDTNr LoggedMDTNr, + choice-Extensions ProtocolIE-SingleContainer { {MDTModeNr-ExtIEs} } +} + +MDTModeNr-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +MDTModeEutra ::= OCTET STRING + +MeasurementsToActivate ::= BIT STRING(SIZE(8)) + +MRB-ID ::= INTEGER (1..512, ...) + +MulticastSessionActivationRequestTransfer ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + iE-Extensions ProtocolExtensionContainer { { MulticastSessionActivationRequestTransfer-ExtIEs} } OPTIONAL, + ... +} + +MulticastSessionActivationRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MulticastSessionDeactivationRequestTransfer ::= SEQUENCE { + mBS-SessionID MBS-SessionID, + iE-Extensions ProtocolExtensionContainer { { MulticastSessionDeactivationRequestTransfer-ExtIEs} } OPTIONAL, + ... +} + +MulticastSessionDeactivationRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MulticastSessionUpdateRequestTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastSessionUpdateRequestTransferIEs} }, + ... +} + +MulticastSessionUpdateRequestTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE optional }| + { ID id-MBS-QoSFlowsToBeSetupModList CRITICALITY reject TYPE MBS-QoSFlowsToBeSetupList PRESENCE optional }| + { ID id-MBS-QoSFlowToReleaseList CRITICALITY reject TYPE QosFlowListWithCause PRESENCE optional }| + { ID id-MBS-SessionTNLInfo5GC CRITICALITY reject TYPE MBS-SessionTNLInfo5GC PRESENCE optional }, + ... +} + + +MulticastGroupPagingAreaList ::= SEQUENCE (SIZE(1..maxnoofPagingAreas)) OF MulticastGroupPagingAreaItem + +MulticastGroupPagingAreaItem ::= SEQUENCE { + multicastGroupPagingArea MulticastGroupPagingArea, + uE-PagingList UE-PagingList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { MulticastGroupPagingAreaItem-ExtIEs} } OPTIONAL, + ... +} + +MulticastGroupPagingAreaItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MBS-AreaTAIList ::= SEQUENCE (SIZE(1..maxnoofTAIforPaging)) OF TAI + +MulticastGroupPagingArea ::= SEQUENCE { + mBS-AreaTAIList MBS-AreaTAIList, + iE-Extensions ProtocolExtensionContainer { { MulticastGroupPagingArea-ExtIEs} } OPTIONAL, + ... +} + +MulticastGroupPagingArea-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UE-PagingList ::= SEQUENCE (SIZE(1..maxnoofUEsforPaging)) OF UE-PagingItem + +UE-PagingItem ::= SEQUENCE { + uEIdentityIndexValue UEIdentityIndexValue, + pagingDRX PagingDRX OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { UE-PagingItem-ExtIEs} } OPTIONAL, + ... +} + +UE-PagingItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +M1Configuration ::= SEQUENCE { + m1reportingTrigger M1ReportingTrigger, + m1thresholdEventA2 M1ThresholdEventA2 OPTIONAL, +-- The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event-triggered” or “A2event-triggered periodic” + m1periodicReporting M1PeriodicReporting OPTIONAL, +-- The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event-triggered periodic” + iE-Extensions ProtocolExtensionContainer { { M1Configuration-ExtIEs} } OPTIONAL, + ... +} + +M1Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-IncludeBeamMeasurementsIndication CRITICALITY ignore EXTENSION IncludeBeamMeasurementsIndication PRESENCE optional }| + { ID id-BeamMeasurementsReportConfiguration CRITICALITY ignore EXTENSION BeamMeasurementsReportConfiguration PRESENCE conditional }, +-- The above IE shall be present if the IncludeBeamMeasurementsIndication IE is set to “true” + ... +} + +IncludeBeamMeasurementsIndication ::= ENUMERATED { + true, + ... +} + +MaxNrofRS-IndexesToReport ::= INTEGER (1..64, ...) + +M1ReportingTrigger ::= ENUMERATED { + periodic, + a2eventtriggered, + a2eventtriggered-periodic, + ... +} + +M1ThresholdEventA2 ::= SEQUENCE { + m1ThresholdType M1ThresholdType, + iE-Extensions ProtocolExtensionContainer { { M1ThresholdEventA2-ExtIEs} } OPTIONAL, + ... +} + +M1ThresholdEventA2-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +M1ThresholdType ::= CHOICE { + threshold-RSRP Threshold-RSRP, + threshold-RSRQ Threshold-RSRQ, + threshold-SINR Threshold-SINR, + choice-Extensions ProtocolIE-SingleContainer { {M1ThresholdType-ExtIEs} } +} + +M1ThresholdType-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +M1PeriodicReporting ::= SEQUENCE { + reportInterval ReportIntervalMDT, + reportAmount ReportAmountMDT, + iE-Extensions ProtocolExtensionContainer { { M1PeriodicReporting-ExtIEs} } OPTIONAL, + ... +} + +M1PeriodicReporting-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-ExtendedReportIntervalMDT CRITICALITY ignore EXTENSION ExtendedReportIntervalMDT PRESENCE optional}, + ... +} + +M4Configuration ::= SEQUENCE { + m4period M4period, + m4-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M4Configuration-ExtIEs} } OPTIONAL, + ... +} + +M4Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-M4ReportAmount CRITICALITY ignore EXTENSION M4ReportAmountMDT PRESENCE optional }, + ... +} + +M4ReportAmountMDT ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity, ...} + +M4period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... } + +M5Configuration ::= SEQUENCE { + m5period M5period, + m5-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M5Configuration-ExtIEs} } OPTIONAL, + ... +} + +M5Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-M5ReportAmount CRITICALITY ignore EXTENSION M5ReportAmountMDT PRESENCE optional }, + ... +} + +M5ReportAmountMDT ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity, ...} + + +M5period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... } + +M6Configuration ::= SEQUENCE { + m6report-Interval M6report-Interval, + m6-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M6Configuration-ExtIEs} } OPTIONAL, + ... +} + +M6Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-M6ReportAmount CRITICALITY ignore EXTENSION M6ReportAmountMDT PRESENCE optional }| + { ID id-ExcessPacketDelayThresholdConfiguration CRITICALITY ignore EXTENSION ExcessPacketDelayThresholdConfiguration PRESENCE optional }, + ... +} + + +M6ReportAmountMDT ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity, ...} + +M6report-Interval ::= ENUMERATED { + ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, ms20480, ms40960, min1, min6, min12, min30, + ... +} + + +M7Configuration ::= SEQUENCE { + m7period M7period, + m7-links-to-log Links-to-log, + iE-Extensions ProtocolExtensionContainer { { M7Configuration-ExtIEs} } OPTIONAL, + ... +} + +M7Configuration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-M7ReportAmount CRITICALITY ignore EXTENSION M7ReportAmountMDT PRESENCE optional }, + ... +} + +M7ReportAmountMDT ::= ENUMERATED {r1, r2, r4, r8, r16, r32, r64, infinity, ...} + +M7period ::= INTEGER(1..60, ...) + +MDT-Location-Info ::= SEQUENCE { + mDT-Location-Information MDT-Location-Information, + iE-Extensions ProtocolExtensionContainer { { MDT-Location-Info-ExtIEs} } OPTIONAL, + ... +} + +MDT-Location-Info-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +MDT-Location-Information::= BIT STRING (SIZE (8)) + +-- N + +N3IWF-ID ::= CHOICE { + n3IWF-ID BIT STRING (SIZE(16)), + choice-Extensions ProtocolIE-SingleContainer { {N3IWF-ID-ExtIEs} } +} + +N3IWF-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +NAS-PDU ::= OCTET STRING + +NASSecurityParametersFromNGRAN ::= OCTET STRING + +NB-IoT-DefaultPagingDRX ::= ENUMERATED { + rf128, rf256, rf512, rf1024, + ... +} + +NB-IoT-PagingDRX ::= ENUMERATED { + rf32, rf64, rf128, rf256, rf512, rf1024, + ... +} + +NB-IoT-Paging-eDRXCycle ::= ENUMERATED { + hf2, hf4, hf6, hf8, hf10, hf12, hf14, hf16, hf32, hf64, hf128, hf256, hf512, hf1024, + ... +} + +NB-IoT-Paging-TimeWindow ::= ENUMERATED { + s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, + ... +} + +NB-IoT-Paging-eDRXInfo ::= SEQUENCE { + nB-IoT-Paging-eDRXCycle NB-IoT-Paging-eDRXCycle, + nB-IoT-Paging-TimeWindow NB-IoT-Paging-TimeWindow OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { NB-IoT-Paging-eDRXInfo-ExtIEs} } OPTIONAL, + ... +} + +NB-IoT-Paging-eDRXInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NB-IoT-UEPriority ::= INTEGER (0..255, ...) + +NetworkInstance ::= INTEGER (1..256, ...) + +NewSecurityContextInd ::= ENUMERATED { + true, + ... +} + +NextHopChainingCount ::= INTEGER (0..7) + +NextPagingAreaScope ::= ENUMERATED { + same, + changed, + ... +} + +NGAPIESupportInformationRequestList ::= SEQUENCE (SIZE(1.. maxnoofNGAPIESupportInfo)) OF NGAPIESupportInformationRequestItem + +NGAPIESupportInformationRequestItem ::= SEQUENCE { + ngap-ProtocolIE-Id ProtocolIE-ID, + iE-Extensions ProtocolExtensionContainer { { NGAPIESupportInformationRequestItem-ExtIEs} } OPTIONAL, + ... +} + +NGAPIESupportInformationRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NGAPIESupportInformationResponseList ::= SEQUENCE (SIZE(1.. maxnoofNGAPIESupportInfo)) OF NGAPIESupportInformationResponseItem + +NGAPIESupportInformationResponseItem ::= SEQUENCE { + ngap-ProtocolIE-Id ProtocolIE-ID, + ngap-ProtocolIESupportInfo ENUMERATED {supported, not-supported, ...}, + ngap-ProtocolIEPresenceInfo ENUMERATED {present, not-present, ...}, + iE-Extensions ProtocolExtensionContainer { { NGAPIESupportInformationResponseItem-ExtIEs} } OPTIONAL, + ... +} + +NGAPIESupportInformationResponseItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NgENB-ID ::= CHOICE { + macroNgENB-ID BIT STRING (SIZE(20)), + shortMacroNgENB-ID BIT STRING (SIZE(18)), + longMacroNgENB-ID BIT STRING (SIZE(21)), + choice-Extensions ProtocolIE-SingleContainer { {NgENB-ID-ExtIEs} } +} + +NgENB-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +NotifySourceNGRANNode ::= ENUMERATED { + notifySource, + ... +} + +NGRAN-CGI ::= CHOICE { + nR-CGI NR-CGI, + eUTRA-CGI EUTRA-CGI, + choice-Extensions ProtocolIE-SingleContainer { {NGRAN-CGI-ExtIEs} } +} + +NGRAN-CGI-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +NGRAN-TNLAssociationToRemoveList ::= SEQUENCE (SIZE(1..maxnoofTNLAssociations)) OF NGRAN-TNLAssociationToRemoveItem + +NGRAN-TNLAssociationToRemoveItem::= SEQUENCE { + tNLAssociationTransportLayerAddress CPTransportLayerInformation, + tNLAssociationTransportLayerAddressAMF CPTransportLayerInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { NGRAN-TNLAssociationToRemoveItem-ExtIEs} } OPTIONAL +} + +NGRAN-TNLAssociationToRemoveItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NGRANTraceID ::= OCTET STRING (SIZE(8)) + +NID ::= BIT STRING (SIZE(44)) + +NonDynamic5QIDescriptor ::= SEQUENCE { + fiveQI FiveQI, + priorityLevelQos PriorityLevelQos OPTIONAL, + averagingWindow AveragingWindow OPTIONAL, + maximumDataBurstVolume MaximumDataBurstVolume OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {NonDynamic5QIDescriptor-ExtIEs} } OPTIONAL, + ... +} + +NonDynamic5QIDescriptor-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CNPacketDelayBudgetDL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }| + { ID id-CNPacketDelayBudgetUL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }, + ... +} + +NotAllowedTACs ::= SEQUENCE (SIZE(1..maxnoofAllowedAreas)) OF TAC + +NotificationCause ::= ENUMERATED { + fulfilled, + not-fulfilled, + ... +} + +NotificationControl ::= ENUMERATED { + notification-requested, + ... +} + +NPN-AccessInformation ::= CHOICE { + pNI-NPN-Access-Information CellCAGList, + choice-Extensions ProtocolIE-SingleContainer { {NPN-AccessInformation-ExtIEs} } +} + +NPN-AccessInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +NPN-MobilityInformation ::= CHOICE { + sNPN-MobilityInformation SNPN-MobilityInformation, + pNI-NPN-MobilityInformation PNI-NPN-MobilityInformation, + choice-Extensions ProtocolIE-SingleContainer { {NPN-MobilityInformation-ExtIEs} } +} + +NPN-MobilityInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + + +NPN-PagingAssistanceInformation ::= CHOICE { + pNI-NPN-PagingAssistance Allowed-PNI-NPN-List, + choice-Extensions ProtocolIE-SingleContainer { {NPN-PagingAssistanceInformation-ExtIEs} } +} + +NPN-PagingAssistanceInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +NPN-Support ::= CHOICE { + sNPN NID, + choice-Extensions ProtocolIE-SingleContainer { {NPN-Support-ExtIEs} } +} + +NPN-Support-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +NRCellIdentity ::= BIT STRING (SIZE(36)) + +NR-CGI ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + nRCellIdentity NRCellIdentity, + iE-Extensions ProtocolExtensionContainer { {NR-CGI-ExtIEs} } OPTIONAL, + ... +} + +NR-CGI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NR-CGIList ::= SEQUENCE (SIZE(1..maxnoofCellsingNB)) OF NR-CGI + +NR-CGIListForWarning ::= SEQUENCE (SIZE(1..maxnoofCellIDforWarning)) OF NR-CGI + +NR-PagingeDRXInformation ::= SEQUENCE { + nR-paging-eDRX-Cycle NR-Paging-eDRX-Cycle, + nR-paging-Time-Window NR-Paging-Time-Window OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {NR-PagingeDRXInformation-ExtIEs} } OPTIONAL, + ... +} + +NR-PagingeDRXInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NR-Paging-eDRX-Cycle ::= ENUMERATED { + hfquarter, hfhalf, hf1, hf2, hf4, hf8, hf16, + hf32, hf64, hf128, hf256, hf512, hf1024, + ... +} + +NR-Paging-Time-Window ::= ENUMERATED { + s1, s2, s3, s4, s5, + s6, s7, s8, s9, s10, + s11, s12, s13, s14, s15, s16, + ..., + s17, s18, s19, s20, s21, s22, s23, s24, + s25, s26, s27, s28, s29, s30, s31, s32 +} + +NRencryptionAlgorithms ::= BIT STRING (SIZE(16, ...)) + +NRintegrityProtectionAlgorithms ::= BIT STRING (SIZE(16, ...)) + +NRMobilityHistoryReport ::= OCTET STRING + +NRPPa-PDU ::= OCTET STRING + +NRUERLFReportContainer ::= OCTET STRING + +NRNTNTAIInformation ::= SEQUENCE { + servingPLMN PLMNIdentity, + tACListInNRNTN TACListInNRNTN, + uELocationDerivedTACInNRNTN TAC OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { NRNTNTAIInformation-ExtIEs} } OPTIONAL, + ... +} + +NRNTNTAIInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +NumberOfBroadcasts ::= INTEGER (0..65535) + +NumberOfBroadcastsRequested ::= INTEGER (0..65535) + +NRARFCN ::= INTEGER (0.. maxNRARFCN) + +NRFrequencyBand ::= INTEGER (1..1024, ...) + +NRFrequencyBand-List ::= SEQUENCE (SIZE(1..maxnoofNRCellBands)) OF NRFrequencyBandItem + +NRFrequencyBandItem ::= SEQUENCE { + nr-frequency-band NRFrequencyBand, + iE-Extension ProtocolExtensionContainer { {NRFrequencyBandItem-ExtIEs} } OPTIONAL, + ... +} + +NRFrequencyBandItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NRFrequencyInfo ::= SEQUENCE { + nrARFCN NRARFCN, + frequencyBand-List NRFrequencyBand-List, + iE-Extension ProtocolExtensionContainer { {NRFrequencyInfo-ExtIEs} } OPTIONAL, + ... +} + +NRFrequencyInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NR-PCI ::= INTEGER (0..1007, ...) + +NRV2XServicesAuthorized ::= SEQUENCE { + vehicleUE VehicleUE OPTIONAL, + pedestrianUE PedestrianUE OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {NRV2XServicesAuthorized-ExtIEs} } OPTIONAL, + ... +} + +NRV2XServicesAuthorized-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +VehicleUE ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +PedestrianUE ::= ENUMERATED { + authorized, + not-authorized, + ... +} + +NRUESidelinkAggregateMaximumBitrate ::= SEQUENCE { + uESidelinkAggregateMaximumBitRate BitRate, + iE-Extensions ProtocolExtensionContainer { {NRUESidelinkAggregateMaximumBitrate-ExtIEs} } OPTIONAL, + ... +} + +NRUESidelinkAggregateMaximumBitrate-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +NSAG-ID ::= INTEGER (0..255, ...) + +-- O + +OnboardingSupport ::= ENUMERATED { + true, + ... +} + +OverloadAction ::= ENUMERATED { + reject-non-emergency-mo-dt, + reject-rrc-cr-signalling, + permit-emergency-sessions-and-mobile-terminated-services-only, + permit-high-priority-sessions-and-mobile-terminated-services-only, + ... +} + +OverloadResponse ::= CHOICE { + overloadAction OverloadAction, + choice-Extensions ProtocolIE-SingleContainer { {OverloadResponse-ExtIEs} } +} + +OverloadResponse-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +OverloadStartNSSAIList ::= SEQUENCE (SIZE (1..maxnoofSliceItems)) OF OverloadStartNSSAIItem + +OverloadStartNSSAIItem ::= SEQUENCE { + sliceOverloadList SliceOverloadList, + sliceOverloadResponse OverloadResponse OPTIONAL, + sliceTrafficLoadReductionIndication TrafficLoadReductionIndication OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {OverloadStartNSSAIItem-ExtIEs} } OPTIONAL, + ... +} + +OverloadStartNSSAIItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- P + +PacketDelayBudget ::= INTEGER (0..1023, ...) + +PacketErrorRate ::= SEQUENCE { + pERScalar INTEGER (0..9, ...), + pERExponent INTEGER (0..9, ...), + iE-Extensions ProtocolExtensionContainer { {PacketErrorRate-ExtIEs} } OPTIONAL, + ... +} + +PacketErrorRate-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PacketLossRate ::= INTEGER (0..1000, ...) + +PagingAssisDataforCEcapabUE ::= SEQUENCE { + eUTRA-CGI EUTRA-CGI, + coverageEnhancementLevel CoverageEnhancementLevel, + iE-Extensions ProtocolExtensionContainer { { PagingAssisDataforCEcapabUE-ExtIEs} } OPTIONAL, + ... +} + +PagingAssisDataforCEcapabUE-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PagingAttemptInformation ::= SEQUENCE { + pagingAttemptCount PagingAttemptCount, + intendedNumberOfPagingAttempts IntendedNumberOfPagingAttempts, + nextPagingAreaScope NextPagingAreaScope OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PagingAttemptInformation-ExtIEs} } OPTIONAL, + ... +} + +PagingAttemptInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PagingAttemptCount ::= INTEGER (1..16, ...) + +PagingCause ::= ENUMERATED { + voice, + ... +} + +PagingCauseIndicationForVoiceService ::= ENUMERATED { + supported, + ... +} + +PagingDRX ::= ENUMERATED { + v32, + v64, + v128, + v256, + ... +} + +PagingOrigin ::= ENUMERATED { + non-3gpp, + ... +} + +PagingPriority ::= ENUMERATED { + priolevel1, + priolevel2, + priolevel3, + priolevel4, + priolevel5, + priolevel6, + priolevel7, + priolevel8, + ... +} + +PagingProbabilityInformation ::= ENUMERATED { + p00, p05, p10, p15, p20, p25, p30, p35, p40, p45, p50, p55, p60, p65, p70, p75, p80, p85, p90, p95, p100, + ... +} + +PathSwitchRequestAcknowledgeTransfer ::= SEQUENCE { + uL-NGU-UP-TNLInformation UPTransportLayerInformation OPTIONAL, + securityIndication SecurityIndication OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PathSwitchRequestAcknowledgeTransfer-ExtIEs} } OPTIONAL, + ... +} + +PathSwitchRequestAcknowledgeTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-AdditionalNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }| + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalRedundantNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }| + { ID id-QosFlowParametersList CRITICALITY ignore EXTENSION QosFlowParametersList PRESENCE optional }, + ... +} + +PathSwitchRequestSetupFailedTransfer ::= SEQUENCE { + cause Cause, + iE-Extensions ProtocolExtensionContainer { {PathSwitchRequestSetupFailedTransfer-ExtIEs} } OPTIONAL, + ... +} + +PathSwitchRequestSetupFailedTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PathSwitchRequestTransfer ::= SEQUENCE { + dL-NGU-UP-TNLInformation UPTransportLayerInformation, + dL-NGU-TNLInformationReused DL-NGU-TNLInformationReused OPTIONAL, + userPlaneSecurityInformation UserPlaneSecurityInformation OPTIONAL, + qosFlowAcceptedList QosFlowAcceptedList, + iE-Extensions ProtocolExtensionContainer { {PathSwitchRequestTransfer-ExtIEs} } OPTIONAL, + ... +} + +PathSwitchRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-AdditionalDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-RedundantDL-NGU-TNLInformationReused CRITICALITY ignore EXTENSION DL-NGU-TNLInformationReused PRESENCE optional }| + { ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-UsedRSNInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional }| + { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }| + { ID id-MBS-SupportIndicator CRITICALITY ignore EXTENSION MBS-SupportIndicator PRESENCE optional }, + ... +} + +PathSwitchRequestUnsuccessfulTransfer ::= SEQUENCE { + cause Cause, + iE-Extensions ProtocolExtensionContainer { {PathSwitchRequestUnsuccessfulTransfer-ExtIEs} } OPTIONAL, + ... +} + +PathSwitchRequestUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PC5QoSParameters ::= SEQUENCE { + pc5QoSFlowList PC5QoSFlowList, + pc5LinkAggregateBitRates BitRate OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { PC5QoSParameters-ExtIEs} } OPTIONAL, + ... +} + +PC5QoSParameters-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PC5QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofPC5QoSFlows)) OF PC5QoSFlowItem + +PC5QoSFlowItem::= SEQUENCE { + pQI FiveQI, + pc5FlowBitRates PC5FlowBitRates OPTIONAL, + range Range OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { PC5QoSFlowItem-ExtIEs} } OPTIONAL, + ... +} + +PC5QoSFlowItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PC5FlowBitRates ::= SEQUENCE { + guaranteedFlowBitRate BitRate, + maximumFlowBitRate BitRate, + iE-Extensions ProtocolExtensionContainer { { PC5FlowBitRates-ExtIEs} } OPTIONAL, + ... +} + +PC5FlowBitRates-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +PCIListForMDT ::= SEQUENCE (SIZE(1.. maxnoofNeighPCIforMDT)) OF NR-PCI + +PrivacyIndicator ::= ENUMERATED { + immediate-MDT, + logged-MDT, + ... +} + +PDUSessionAggregateMaximumBitRate ::= SEQUENCE { + pDUSessionAggregateMaximumBitRateDL BitRate, + pDUSessionAggregateMaximumBitRateUL BitRate, + iE-Extensions ProtocolExtensionContainer { {PDUSessionAggregateMaximumBitRate-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionAggregateMaximumBitRate-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionID ::= INTEGER (0..255) + +PDUSessionPairID ::= INTEGER (0..255, ...) + +PDUSessionResourceAdmittedList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceAdmittedItem + +PDUSessionResourceAdmittedItem ::= SEQUENCE { + pDUSessionID PDUSessionID, + handoverRequestAcknowledgeTransfer OCTET STRING (CONTAINING HandoverRequestAcknowledgeTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceAdmittedItem-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceAdmittedItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceFailedToModifyListModCfm ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToModifyItemModCfm + +PDUSessionResourceFailedToModifyItemModCfm ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceModifyIndicationUnsuccessfulTransfer OCTET STRING (CONTAINING PDUSessionResourceModifyIndicationUnsuccessfulTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToModifyItemModCfm-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToModifyItemModCfm-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceFailedToModifyListModRes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToModifyItemModRes + +PDUSessionResourceFailedToModifyItemModRes ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceModifyUnsuccessfulTransfer OCTET STRING (CONTAINING PDUSessionResourceModifyUnsuccessfulTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToModifyItemModRes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToModifyItemModRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceFailedToResumeListRESReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToResumeItemRESReq + +PDUSessionResourceFailedToResumeItemRESReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + cause Cause, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToResumeItemRESReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToResumeItemRESReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +PDUSessionResourceFailedToResumeListRESRes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToResumeItemRESRes + +PDUSessionResourceFailedToResumeItemRESRes ::= SEQUENCE { + pDUSessionID PDUSessionID, + cause Cause, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToResumeItemRESRes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToResumeItemRESRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceFailedToSetupListCxtFail ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToSetupItemCxtFail + +PDUSessionResourceFailedToSetupItemCxtFail ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer OCTET STRING (CONTAINING PDUSessionResourceSetupUnsuccessfulTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToSetupItemCxtFail-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToSetupItemCxtFail-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceFailedToSetupListCxtRes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToSetupItemCxtRes + +PDUSessionResourceFailedToSetupItemCxtRes ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer OCTET STRING (CONTAINING PDUSessionResourceSetupUnsuccessfulTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToSetupItemCxtRes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToSetupItemCxtRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceFailedToSetupListHOAck ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToSetupItemHOAck + +PDUSessionResourceFailedToSetupItemHOAck ::= SEQUENCE { + pDUSessionID PDUSessionID, + handoverResourceAllocationUnsuccessfulTransfer OCTET STRING (CONTAINING HandoverResourceAllocationUnsuccessfulTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToSetupItemHOAck-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToSetupItemHOAck-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceFailedToSetupListPSReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToSetupItemPSReq + +PDUSessionResourceFailedToSetupItemPSReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + pathSwitchRequestSetupFailedTransfer OCTET STRING (CONTAINING PathSwitchRequestSetupFailedTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToSetupItemPSReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToSetupItemPSReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceFailedToSetupListSURes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceFailedToSetupItemSURes + +PDUSessionResourceFailedToSetupItemSURes ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer OCTET STRING (CONTAINING PDUSessionResourceSetupUnsuccessfulTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceFailedToSetupItemSURes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceFailedToSetupItemSURes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceHandoverList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceHandoverItem + +PDUSessionResourceHandoverItem ::= SEQUENCE { + pDUSessionID PDUSessionID, + handoverCommandTransfer OCTET STRING (CONTAINING HandoverCommandTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceHandoverItem-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceHandoverItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceInformationList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceInformationItem + +PDUSessionResourceInformationItem ::= SEQUENCE { + pDUSessionID PDUSessionID, + qosFlowInformationList QosFlowInformationList, + dRBsToQosFlowsMappingList DRBsToQosFlowsMappingList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceInformationItem-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceInformationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceListCxtRelCpl ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceItemCxtRelCpl + +PDUSessionResourceItemCxtRelCpl ::= SEQUENCE { + pDUSessionID PDUSessionID, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceItemCxtRelCpl-ExtIEs} } OPTIONAL, + ... +} + +-- WS modification: define a dedicated type +PDUSessionResourceReleaseResponseTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING PDUSessionResourceReleaseResponseTransfer) + +PDUSessionResourceItemCxtRelCpl-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { +-- WS modification: define a dedicated type +-- { ID id-PDUSessionResourceReleaseResponseTransfer CRITICALITY ignore EXTENSION OCTET STRING (CONTAINING PDUSessionResourceReleaseResponseTransfer) PRESENCE optional }, + { ID id-PDUSessionResourceReleaseResponseTransfer CRITICALITY ignore EXTENSION PDUSessionResourceReleaseResponseTransfer-OCTET-STRING PRESENCE optional }, + ... +} + +PDUSessionResourceListCxtRelReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceItemCxtRelReq + +PDUSessionResourceItemCxtRelReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceItemCxtRelReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceItemCxtRelReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceListHORqd ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceItemHORqd + +PDUSessionResourceItemHORqd ::= SEQUENCE { + pDUSessionID PDUSessionID, + handoverRequiredTransfer OCTET STRING (CONTAINING HandoverRequiredTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceItemHORqd-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceItemHORqd-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceModifyConfirmTransfer ::= SEQUENCE { + qosFlowModifyConfirmList QosFlowModifyConfirmList, + uLNGU-UP-TNLInformation UPTransportLayerInformation, + additionalNG-UUPTNLInformation UPTransportLayerInformationPairList OPTIONAL, + qosFlowFailedToModifyList QosFlowListWithCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModifyConfirmTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModifyConfirmTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalRedundantNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }, + ... +} + +PDUSessionResourceModifyIndicationUnsuccessfulTransfer ::= SEQUENCE { + cause Cause, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModifyIndicationUnsuccessfulTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModifyIndicationUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceModifyRequestTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceModifyRequestTransferIEs} }, + ... +} + +PDUSessionResourceModifyRequestTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-PDUSessionAggregateMaximumBitRate CRITICALITY reject TYPE PDUSessionAggregateMaximumBitRate PRESENCE optional }| + { ID id-UL-NGU-UP-TNLModifyList CRITICALITY reject TYPE UL-NGU-UP-TNLModifyList PRESENCE optional }| + { ID id-NetworkInstance CRITICALITY reject TYPE NetworkInstance PRESENCE optional }| + { ID id-QosFlowAddOrModifyRequestList CRITICALITY reject TYPE QosFlowAddOrModifyRequestList PRESENCE optional }| + { ID id-QosFlowToReleaseList CRITICALITY reject TYPE QosFlowListWithCause PRESENCE optional }| + { ID id-AdditionalUL-NGU-UP-TNLInformation CRITICALITY reject TYPE UPTransportLayerInformationList PRESENCE optional }| + { ID id-CommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }| + { ID id-AdditionalRedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformationList PRESENCE optional }| + { ID id-RedundantCommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }| + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformation PRESENCE optional }| + { ID id-SecurityIndication CRITICALITY ignore TYPE SecurityIndication PRESENCE optional }| + { ID id-MBSSessionSetuporModifyRequestList CRITICALITY ignore TYPE MBSSessionSetuporModifyRequestList PRESENCE optional }| + { ID id-MBSSessionToReleaseList CRITICALITY ignore TYPE MBSSessionToReleaseList PRESENCE optional }, + ... +} + +PDUSessionResourceModifyResponseTransfer ::= SEQUENCE { + dL-NGU-UP-TNLInformation UPTransportLayerInformation OPTIONAL, + uL-NGU-UP-TNLInformation UPTransportLayerInformation OPTIONAL, + qosFlowAddOrModifyResponseList QosFlowAddOrModifyResponseList OPTIONAL, + additionalDLQosFlowPerTNLInformation QosFlowPerTNLInformationList OPTIONAL, + qosFlowFailedToAddOrModifyList QosFlowListWithCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModifyResponseTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModifyResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-AdditionalNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }| + { ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-AdditionalRedundantNGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformationPairList PRESENCE optional }| + { ID id-SecondaryRATUsageInformation CRITICALITY ignore EXTENSION SecondaryRATUsageInformation PRESENCE optional }| + { ID id-MBS-SupportIndicator CRITICALITY ignore EXTENSION MBS-SupportIndicator PRESENCE optional }| + { ID id-MBSSessionSetuporModifyResponseList CRITICALITY ignore EXTENSION MBSSessionSetupResponseList PRESENCE optional }| + { ID id-MBSSessionFailedtoSetuporModifyList CRITICALITY ignore EXTENSION MBSSessionFailedtoSetupList PRESENCE optional }, + ... +} + +PDUSessionResourceModifyIndicationTransfer ::= SEQUENCE { + dLQosFlowPerTNLInformation QosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation QosFlowPerTNLInformationList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModifyIndicationTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModifyIndicationTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-SecondaryRATUsageInformation CRITICALITY ignore EXTENSION SecondaryRATUsageInformation PRESENCE optional }| + { ID id-SecurityResult CRITICALITY ignore EXTENSION SecurityResult PRESENCE optional }| + { ID id-RedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformation PRESENCE optional }| + { ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }, + ... +} + +PDUSessionResourceModifyListModCfm ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceModifyItemModCfm + +PDUSessionResourceModifyItemModCfm ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceModifyConfirmTransfer OCTET STRING (CONTAINING PDUSessionResourceModifyConfirmTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModifyItemModCfm-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModifyItemModCfm-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceModifyListModInd ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceModifyItemModInd + +PDUSessionResourceModifyItemModInd ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceModifyIndicationTransfer OCTET STRING (CONTAINING PDUSessionResourceModifyIndicationTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModifyItemModInd-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModifyItemModInd-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceModifyListModReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceModifyItemModReq + +PDUSessionResourceModifyItemModReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + nAS-PDU NAS-PDU OPTIONAL, + pDUSessionResourceModifyRequestTransfer OCTET STRING (CONTAINING PDUSessionResourceModifyRequestTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModifyItemModReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModifyItemModReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-S-NSSAI CRITICALITY reject EXTENSION S-NSSAI PRESENCE optional }| + { ID id-PduSessionExpectedUEActivityBehaviour CRITICALITY ignore EXTENSION ExpectedUEActivityBehaviour PRESENCE optional }, + ... +} + +PDUSessionResourceModifyListModRes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceModifyItemModRes + +PDUSessionResourceModifyItemModRes ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceModifyResponseTransfer OCTET STRING (CONTAINING PDUSessionResourceModifyResponseTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModifyItemModRes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModifyItemModRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceModifyUnsuccessfulTransfer ::= SEQUENCE { + cause Cause, + criticalityDiagnostics CriticalityDiagnostics OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceModifyUnsuccessfulTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceModifyUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceNotifyList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceNotifyItem + +PDUSessionResourceNotifyItem ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceNotifyTransfer OCTET STRING (CONTAINING PDUSessionResourceNotifyTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceNotifyItem-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceNotifyItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceNotifyReleasedTransfer ::= SEQUENCE { + cause Cause, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceNotifyReleasedTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceNotifyReleasedTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-SecondaryRATUsageInformation CRITICALITY ignore EXTENSION SecondaryRATUsageInformation PRESENCE optional }, + ... +} + +PDUSessionResourceNotifyTransfer ::= SEQUENCE { + qosFlowNotifyList QosFlowNotifyList OPTIONAL, + qosFlowReleasedList QosFlowListWithCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceNotifyTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceNotifyTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-SecondaryRATUsageInformation CRITICALITY ignore EXTENSION SecondaryRATUsageInformation PRESENCE optional }| + { ID id-QosFlowFeedbackList CRITICALITY ignore EXTENSION QosFlowFeedbackList PRESENCE optional }, + ... +} + +PDUSessionResourceReleaseCommandTransfer ::= SEQUENCE { + cause Cause, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceReleaseCommandTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceReleaseCommandTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceReleasedListNot ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceReleasedItemNot + +PDUSessionResourceReleasedItemNot ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceNotifyReleasedTransfer OCTET STRING (CONTAINING PDUSessionResourceNotifyReleasedTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceReleasedItemNot-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceReleasedItemNot-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceReleasedListPSAck ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceReleasedItemPSAck + +PDUSessionResourceReleasedItemPSAck ::= SEQUENCE { + pDUSessionID PDUSessionID, + pathSwitchRequestUnsuccessfulTransfer OCTET STRING (CONTAINING PathSwitchRequestUnsuccessfulTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceReleasedItemPSAck-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceReleasedItemPSAck-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceReleasedListPSFail ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceReleasedItemPSFail + +PDUSessionResourceReleasedItemPSFail ::= SEQUENCE { + pDUSessionID PDUSessionID, + pathSwitchRequestUnsuccessfulTransfer OCTET STRING (CONTAINING PathSwitchRequestUnsuccessfulTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceReleasedItemPSFail-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceReleasedItemPSFail-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceReleasedListRelRes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceReleasedItemRelRes + +PDUSessionResourceReleasedItemRelRes ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceReleaseResponseTransfer OCTET STRING (CONTAINING PDUSessionResourceReleaseResponseTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceReleasedItemRelRes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceReleasedItemRelRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceReleaseResponseTransfer ::= SEQUENCE { + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceReleaseResponseTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceReleaseResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-SecondaryRATUsageInformation CRITICALITY ignore EXTENSION SecondaryRATUsageInformation PRESENCE optional }, + ... +} + +PDUSessionResourceResumeListRESReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceResumeItemRESReq + +PDUSessionResourceResumeItemRESReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + uEContextResumeRequestTransfer OCTET STRING (CONTAINING UEContextResumeRequestTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceResumeItemRESReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceResumeItemRESReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceResumeListRESRes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceResumeItemRESRes + +PDUSessionResourceResumeItemRESRes ::= SEQUENCE { + pDUSessionID PDUSessionID, + uEContextResumeResponseTransfer OCTET STRING (CONTAINING UEContextResumeResponseTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceResumeItemRESRes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceResumeItemRESRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceSecondaryRATUsageList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSecondaryRATUsageItem + +PDUSessionResourceSecondaryRATUsageItem ::= SEQUENCE { + pDUSessionID PDUSessionID, + secondaryRATDataUsageReportTransfer OCTET STRING (CONTAINING SecondaryRATDataUsageReportTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSecondaryRATUsageItem-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSecondaryRATUsageItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceSetupListCxtReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSetupItemCxtReq + +PDUSessionResourceSetupItemCxtReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + nAS-PDU NAS-PDU OPTIONAL, + s-NSSAI S-NSSAI, + pDUSessionResourceSetupRequestTransfer OCTET STRING (CONTAINING PDUSessionResourceSetupRequestTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupItemCxtReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupItemCxtReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-PduSessionExpectedUEActivityBehaviour CRITICALITY ignore EXTENSION ExpectedUEActivityBehaviour PRESENCE optional }, + ... +} + +PDUSessionResourceSetupListCxtRes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSetupItemCxtRes + +PDUSessionResourceSetupItemCxtRes ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceSetupResponseTransfer OCTET STRING (CONTAINING PDUSessionResourceSetupResponseTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupItemCxtRes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupItemCxtRes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceSetupListHOReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSetupItemHOReq + +PDUSessionResourceSetupItemHOReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + s-NSSAI S-NSSAI, + handoverRequestTransfer OCTET STRING (CONTAINING PDUSessionResourceSetupRequestTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupItemHOReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupItemHOReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-PduSessionExpectedUEActivityBehaviour CRITICALITY ignore EXTENSION ExpectedUEActivityBehaviour PRESENCE optional }, + ... +} + +PDUSessionResourceSetupListSUReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSetupItemSUReq + +PDUSessionResourceSetupItemSUReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionNAS-PDU NAS-PDU OPTIONAL, + s-NSSAI S-NSSAI, + pDUSessionResourceSetupRequestTransfer OCTET STRING (CONTAINING PDUSessionResourceSetupRequestTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupItemSUReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupItemSUReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-PduSessionExpectedUEActivityBehaviour CRITICALITY ignore EXTENSION ExpectedUEActivityBehaviour PRESENCE optional }, + ... +} + +PDUSessionResourceSetupListSURes ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSetupItemSURes + +PDUSessionResourceSetupItemSURes ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceSetupResponseTransfer OCTET STRING (CONTAINING PDUSessionResourceSetupResponseTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupItemSURes-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupItemSURes-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceSetupRequestTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceSetupRequestTransferIEs} }, + ... +} + +PDUSessionResourceSetupRequestTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-PDUSessionAggregateMaximumBitRate CRITICALITY reject TYPE PDUSessionAggregateMaximumBitRate PRESENCE optional }| + { ID id-UL-NGU-UP-TNLInformation CRITICALITY reject TYPE UPTransportLayerInformation PRESENCE mandatory }| + { ID id-AdditionalUL-NGU-UP-TNLInformation CRITICALITY reject TYPE UPTransportLayerInformationList PRESENCE optional }| + { ID id-DataForwardingNotPossible CRITICALITY reject TYPE DataForwardingNotPossible PRESENCE optional }| + { ID id-PDUSessionType CRITICALITY reject TYPE PDUSessionType PRESENCE mandatory }| + { ID id-SecurityIndication CRITICALITY reject TYPE SecurityIndication PRESENCE optional }| + { ID id-NetworkInstance CRITICALITY reject TYPE NetworkInstance PRESENCE optional }| + { ID id-QosFlowSetupRequestList CRITICALITY reject TYPE QosFlowSetupRequestList PRESENCE mandatory }| + { ID id-CommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }| + { ID id-DirectForwardingPathAvailability CRITICALITY ignore TYPE DirectForwardingPathAvailability PRESENCE optional }| + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformation PRESENCE optional }| + { ID id-AdditionalRedundantUL-NGU-UP-TNLInformation CRITICALITY ignore TYPE UPTransportLayerInformationList PRESENCE optional }| + { ID id-RedundantCommonNetworkInstance CRITICALITY ignore TYPE CommonNetworkInstance PRESENCE optional }| + { ID id-RedundantPDUSessionInformation CRITICALITY ignore TYPE RedundantPDUSessionInformation PRESENCE optional }| + { ID id-MBSSessionSetupRequestList CRITICALITY ignore TYPE MBSSessionSetupRequestList PRESENCE optional }, + ... +} + +PDUSessionResourceSetupResponseTransfer ::= SEQUENCE { + dLQosFlowPerTNLInformation QosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation QosFlowPerTNLInformationList OPTIONAL, + securityResult SecurityResult OPTIONAL, + qosFlowFailedToSetupList QosFlowListWithCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupResponseTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-RedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformation PRESENCE optional }| + { ID id-AdditionalRedundantDLQosFlowPerTNLInformation CRITICALITY ignore EXTENSION QosFlowPerTNLInformationList PRESENCE optional }| + { ID id-UsedRSNInformation CRITICALITY ignore EXTENSION RedundantPDUSessionInformation PRESENCE optional }| + { ID id-GlobalRANNodeID CRITICALITY ignore EXTENSION GlobalRANNodeID PRESENCE optional }| + { ID id-MBS-SupportIndicator CRITICALITY ignore EXTENSION MBS-SupportIndicator PRESENCE optional }| + { ID id-MBSSessionSetupResponseList CRITICALITY ignore EXTENSION MBSSessionSetupResponseList PRESENCE optional }| + { ID id-MBSSessionFailedtoSetupList CRITICALITY ignore EXTENSION MBSSessionFailedtoSetupList PRESENCE optional }, + ... +} + +PDUSessionResourceSetupUnsuccessfulTransfer ::= SEQUENCE { + cause Cause, + criticalityDiagnostics CriticalityDiagnostics OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSetupUnsuccessfulTransfer-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSetupUnsuccessfulTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceSuspendListSUSReq ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSuspendItemSUSReq + +PDUSessionResourceSuspendItemSUSReq ::= SEQUENCE { + pDUSessionID PDUSessionID, + uEContextSuspendRequestTransfer OCTET STRING (CONTAINING UEContextSuspendRequestTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceSuspendItemSUSReq-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSuspendItemSUSReq-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceSwitchedList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceSwitchedItem + +PDUSessionResourceSwitchedItem ::= SEQUENCE { + pDUSessionID PDUSessionID, + pathSwitchRequestAcknowledgeTransfer OCTET STRING (CONTAINING PathSwitchRequestAcknowledgeTransfer), + iE-Extensions ProtocolExtensionContainer { { PDUSessionResourceSwitchedItem-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceSwitchedItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-PduSessionExpectedUEActivityBehaviour CRITICALITY ignore EXTENSION ExpectedUEActivityBehaviour PRESENCE optional }, + ... +} + +PDUSessionResourceToBeSwitchedDLList ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceToBeSwitchedDLItem + +PDUSessionResourceToBeSwitchedDLItem ::= SEQUENCE { + pDUSessionID PDUSessionID, + pathSwitchRequestTransfer OCTET STRING (CONTAINING PathSwitchRequestTransfer), + iE-Extensions ProtocolExtensionContainer { { PDUSessionResourceToBeSwitchedDLItem-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceToBeSwitchedDLItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceToReleaseListHOCmd ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceToReleaseItemHOCmd + +PDUSessionResourceToReleaseItemHOCmd ::= SEQUENCE { + pDUSessionID PDUSessionID, + handoverPreparationUnsuccessfulTransfer OCTET STRING (CONTAINING HandoverPreparationUnsuccessfulTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceToReleaseItemHOCmd-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceToReleaseItemHOCmd-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PDUSessionResourceToReleaseListRelCmd ::= SEQUENCE (SIZE(1..maxnoofPDUSessions)) OF PDUSessionResourceToReleaseItemRelCmd + +PDUSessionResourceToReleaseItemRelCmd ::= SEQUENCE { + pDUSessionID PDUSessionID, + pDUSessionResourceReleaseCommandTransfer OCTET STRING (CONTAINING PDUSessionResourceReleaseCommandTransfer), + iE-Extensions ProtocolExtensionContainer { {PDUSessionResourceToReleaseItemRelCmd-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionResourceToReleaseItemRelCmd-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} +PDUSessionType ::= ENUMERATED { + ipv4, + ipv6, + ipv4v6, + ethernet, + unstructured, + ... +} + +PDUSessionUsageReport ::= SEQUENCE { + rATType ENUMERATED {nr, eutra, ..., nr-unlicensed, e-utra-unlicensed}, + pDUSessionTimedReportList VolumeTimedReportList, + iE-Extensions ProtocolExtensionContainer { {PDUSessionUsageReport-ExtIEs} } OPTIONAL, + ... +} + +PDUSessionUsageReport-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PEIPSassistanceInformation ::= SEQUENCE { + cNsubgroupID CNsubgroupID, + iE-Extensions ProtocolExtensionContainer { {PEIPSassistanceInformation-ExtIEs} } OPTIONAL, + ... +} + +PEIPSassistanceInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +Periodicity ::= INTEGER (0..640000, ...) + +PeriodicRegistrationUpdateTimer ::= BIT STRING (SIZE(8)) + +PLMNIdentity ::= OCTET STRING (SIZE(3)) + +PLMNAreaBasedQMC ::= SEQUENCE { + plmnListforQMC PLMNListforQMC, + iE-Extensions ProtocolExtensionContainer { {PLMNAreaBasedQMC-ExtIEs} } OPTIONAL, + ... +} + +PLMNAreaBasedQMC-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PLMNListforQMC ::= SEQUENCE (SIZE(1..maxnoofPLMNforQMC)) OF PLMNIdentity + +PLMNSupportList ::= SEQUENCE (SIZE(1..maxnoofPLMNs)) OF PLMNSupportItem + +PLMNSupportItem ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + sliceSupportList SliceSupportList, + iE-Extensions ProtocolExtensionContainer { {PLMNSupportItem-ExtIEs} } OPTIONAL, + ... +} + +PLMNSupportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-NPN-Support CRITICALITY reject EXTENSION NPN-Support PRESENCE optional }| + { ID id-ExtendedSliceSupportList CRITICALITY reject EXTENSION ExtendedSliceSupportList PRESENCE optional }| + { ID id-OnboardingSupport CRITICALITY ignore EXTENSION OnboardingSupport PRESENCE optional }, + ... +} + +PNI-NPN-MobilityInformation ::= SEQUENCE { + allowed-PNI-NPI-List Allowed-PNI-NPN-List, + iE-Extensions ProtocolExtensionContainer { {PNI-NPN-MobilityInformation-ExtIEs} } OPTIONAL, + ... +} + +PNI-NPN-MobilityInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +PortNumber ::= OCTET STRING (SIZE(2)) + +Pre-emptionCapability ::= ENUMERATED { + shall-not-trigger-pre-emption, + may-trigger-pre-emption, + ... +} + +Pre-emptionVulnerability ::= ENUMERATED { + not-pre-emptable, + pre-emptable, + ... +} + +PriorityLevelARP ::= INTEGER (1..15) + +PriorityLevelQos ::= INTEGER (1..127, ...) + +PWSFailedCellIDList ::= CHOICE { + eUTRA-CGI-PWSFailedList EUTRA-CGIList, + nR-CGI-PWSFailedList NR-CGIList, + choice-Extensions ProtocolIE-SingleContainer { {PWSFailedCellIDList-ExtIEs} } +} + +PWSFailedCellIDList-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +-- Q + +QMCConfigInfo ::= SEQUENCE { + uEAppLayerMeasInfoList UEAppLayerMeasInfoList, + iE-Extensions ProtocolExtensionContainer { { QMCConfigInfo-ExtIEs} } OPTIONAL, + ... +} + +QMCConfigInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +QMCDeactivation ::= SEQUENCE { + qoEReferenceList QoEReferenceList, + iE-Extensions ProtocolExtensionContainer { { QMCDeactivation-ExtIEs} } OPTIONAL, + ... +} + +QMCDeactivation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoEReferenceList ::= SEQUENCE (SIZE(1..maxnoofUEAppLayerMeas)) OF QoEReference + +QoEReference ::= OCTET STRING (SIZE(6)) + +QosCharacteristics ::= CHOICE { + nonDynamic5QI NonDynamic5QIDescriptor, + dynamic5QI Dynamic5QIDescriptor, + choice-Extensions ProtocolIE-SingleContainer { {QosCharacteristics-ExtIEs} } +} + +QosCharacteristics-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +QosFlowAcceptedList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowAcceptedItem + +QosFlowAcceptedItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + iE-Extensions ProtocolExtensionContainer { {QosFlowAcceptedItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowAcceptedItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetIndex PRESENCE optional }, + ... +} + +QosFlowAddOrModifyRequestList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowAddOrModifyRequestItem + +QosFlowAddOrModifyRequestItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + qosFlowLevelQosParameters QosFlowLevelQosParameters OPTIONAL, + e-RAB-ID E-RAB-ID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QosFlowAddOrModifyRequestItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowAddOrModifyRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-TSCTrafficCharacteristics CRITICALITY ignore EXTENSION TSCTrafficCharacteristics PRESENCE optional }| + {ID id-RedundantQosFlowIndicator CRITICALITY ignore EXTENSION RedundantQosFlowIndicator PRESENCE optional }, + ... +} + +QosFlowAddOrModifyResponseList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowAddOrModifyResponseItem + +QosFlowAddOrModifyResponseItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + iE-Extensions ProtocolExtensionContainer { {QosFlowAddOrModifyResponseItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowAddOrModifyResponseItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetIndex PRESENCE optional }, + ... +} + +QosFlowFeedbackList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowFeedbackItem + +QosFlowFeedbackItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + updateFeedback UpdateFeedback OPTIONAL, + cNpacketDelayBudgetDL ExtendedPacketDelayBudget OPTIONAL, + cNpacketDelayBudgetUL ExtendedPacketDelayBudget OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QosFlowFeedbackItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowFeedbackItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +QosFlowIdentifier ::= INTEGER (0..63, ...) + +QosFlowInformationList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowInformationItem + +QosFlowInformationItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + dLForwarding DLForwarding OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QosFlowInformationItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowInformationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-ULForwarding CRITICALITY ignore EXTENSION ULForwarding PRESENCE optional}| + {ID id-SourceTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}| + {ID id-SourceNodeTNLAddrInfo CRITICALITY ignore EXTENSION TransportLayerAddress PRESENCE optional}, + ... +} + +QosFlowLevelQosParameters ::= SEQUENCE { + qosCharacteristics QosCharacteristics, + allocationAndRetentionPriority AllocationAndRetentionPriority, + gBR-QosInformation GBR-QosInformation OPTIONAL, + reflectiveQosAttribute ReflectiveQosAttribute OPTIONAL, + additionalQosFlowInformation AdditionalQosFlowInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QosFlowLevelQosParameters-ExtIEs} } OPTIONAL, + ... +} + +QosFlowLevelQosParameters-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-QosMonitoringRequest CRITICALITY ignore EXTENSION QosMonitoringRequest PRESENCE optional}| + {ID id-QosMonitoringReportingFrequency CRITICALITY ignore EXTENSION QosMonitoringReportingFrequency PRESENCE optional}, + ... +} + + +QosMonitoringRequest ::= ENUMERATED {ul, dl, both, ..., stop} + +QosMonitoringReportingFrequency ::= INTEGER (1..1800, ...) + +QoSFlowList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowIdentifier + +QosFlowListWithCause ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowWithCauseItem + +QosFlowWithCauseItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + cause Cause, + iE-Extensions ProtocolExtensionContainer { {QosFlowWithCauseItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowWithCauseItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +QosFlowModifyConfirmList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowModifyConfirmItem + +QosFlowModifyConfirmItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + iE-Extensions ProtocolExtensionContainer { {QosFlowModifyConfirmItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowModifyConfirmItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +QosFlowNotifyList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowNotifyItem + +QosFlowNotifyItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + notificationCause NotificationCause, + iE-Extensions ProtocolExtensionContainer { {QosFlowNotifyItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowNotifyItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetNotifyIndex PRESENCE optional }, + ... +} +QosFlowParametersList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowParametersItem + +QosFlowParametersItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + alternativeQoSParaSetList AlternativeQoSParaSetList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QosFlowParametersItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowParametersItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CNPacketDelayBudgetDL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }| + { ID id-CNPacketDelayBudgetUL CRITICALITY ignore EXTENSION ExtendedPacketDelayBudget PRESENCE optional }| + { ID id-BurstArrivalTimeDownlink CRITICALITY ignore EXTENSION BurstArrivalTime PRESENCE optional }, + ... +} + +QosFlowPerTNLInformation ::= SEQUENCE { + uPTransportLayerInformation UPTransportLayerInformation, + associatedQosFlowList AssociatedQosFlowList, + iE-Extensions ProtocolExtensionContainer { { QosFlowPerTNLInformation-ExtIEs} } OPTIONAL, + ... +} + +QosFlowPerTNLInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +QosFlowPerTNLInformationList ::= SEQUENCE (SIZE(1..maxnoofMultiConnectivityMinusOne)) OF QosFlowPerTNLInformationItem + +QosFlowPerTNLInformationItem ::= SEQUENCE { + qosFlowPerTNLInformation QosFlowPerTNLInformation, + iE-Extensions ProtocolExtensionContainer { { QosFlowPerTNLInformationItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowPerTNLInformationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +QosFlowSetupRequestList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowSetupRequestItem + +QosFlowSetupRequestItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + qosFlowLevelQosParameters QosFlowLevelQosParameters, + e-RAB-ID E-RAB-ID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QosFlowSetupRequestItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowSetupRequestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-TSCTrafficCharacteristics CRITICALITY ignore EXTENSION TSCTrafficCharacteristics PRESENCE optional }| + {ID id-RedundantQosFlowIndicator CRITICALITY ignore EXTENSION RedundantQosFlowIndicator PRESENCE optional }, + ... +} + +QosFlowListWithDataForwarding ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowItemWithDataForwarding + +QosFlowItemWithDataForwarding ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + dataForwardingAccepted DataForwardingAccepted OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {QosFlowItemWithDataForwarding-ExtIEs} } OPTIONAL, + ... +} + +QosFlowItemWithDataForwarding-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CurrentQoSParaSetIndex CRITICALITY ignore EXTENSION AlternativeQoSParaSetIndex PRESENCE optional }, + ... +} + +QosFlowToBeForwardedList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QosFlowToBeForwardedItem + +QosFlowToBeForwardedItem ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + iE-Extensions ProtocolExtensionContainer { {QosFlowToBeForwardedItem-ExtIEs} } OPTIONAL, + ... +} + +QosFlowToBeForwardedItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +QoSFlowsUsageReportList ::= SEQUENCE (SIZE(1..maxnoofQosFlows)) OF QoSFlowsUsageReport-Item + +QoSFlowsUsageReport-Item ::= SEQUENCE { + qosFlowIdentifier QosFlowIdentifier, + rATType ENUMERATED {nr, eutra, ..., nr-unlicensed, e-utra-unlicensed}, + qoSFlowsTimedReportList VolumeTimedReportList, + iE-Extensions ProtocolExtensionContainer { {QoSFlowsUsageReport-Item-ExtIEs} } OPTIONAL, + ... +} + +QoSFlowsUsageReport-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- R + +Range ::= ENUMERATED {m50, m80, m180, m200, m350, m400, m500, m700, m1000, ...} + +RANNodeName ::= PrintableString (SIZE(1..150, ...)) + +RANNodeNameVisibleString ::= VisibleString (SIZE(1..150, ...)) + +RANNodeNameUTF8String ::= UTF8String (SIZE(1..150, ...)) + +RANPagingPriority ::= INTEGER (1..256) + +RANStatusTransfer-TransparentContainer ::= SEQUENCE { + dRBsSubjectToStatusTransferList DRBsSubjectToStatusTransferList, + iE-Extensions ProtocolExtensionContainer { {RANStatusTransfer-TransparentContainer-ExtIEs} } OPTIONAL, + ... +} + +RANStatusTransfer-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +RAN-UE-NGAP-ID ::= INTEGER (0..4294967295) + +RAT-Information ::= ENUMERATED { + unlicensed, + nb-IoT, + ..., + nR-LEO, + nR-MEO, + nR-GEO, + nR-OTHERSAT +} + +RATRestrictions ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF RATRestrictions-Item + +RATRestrictions-Item ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + rATRestrictionInformation RATRestrictionInformation, + iE-Extensions ProtocolExtensionContainer { {RATRestrictions-Item-ExtIEs} } OPTIONAL, + ... +} + +RATRestrictions-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-ExtendedRATRestrictionInformation CRITICALITY ignore EXTENSION ExtendedRATRestrictionInformation PRESENCE optional }, + ... +} + +RATRestrictionInformation ::= BIT STRING (SIZE(8, ...)) + +RecommendedCellsForPaging ::= SEQUENCE { + recommendedCellList RecommendedCellList, + iE-Extensions ProtocolExtensionContainer { {RecommendedCellsForPaging-ExtIEs} } OPTIONAL, + ... +} + +RecommendedCellsForPaging-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +RecommendedCellList ::= SEQUENCE (SIZE(1..maxnoofRecommendedCells)) OF RecommendedCellItem + +RecommendedCellItem ::= SEQUENCE { + nGRAN-CGI NGRAN-CGI, + timeStayedInCell INTEGER (0..4095) OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {RecommendedCellItem-ExtIEs} } OPTIONAL, + ... +} + +RecommendedCellItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +RecommendedRANNodesForPaging ::= SEQUENCE { + recommendedRANNodeList RecommendedRANNodeList, + iE-Extensions ProtocolExtensionContainer { {RecommendedRANNodesForPaging-ExtIEs} } OPTIONAL, + ... +} + +RecommendedRANNodesForPaging-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +RecommendedRANNodeList::= SEQUENCE (SIZE(1..maxnoofRecommendedRANNodes)) OF RecommendedRANNodeItem + +RecommendedRANNodeItem ::= SEQUENCE { + aMFPagingTarget AMFPagingTarget, + iE-Extensions ProtocolExtensionContainer { {RecommendedRANNodeItem-ExtIEs} } OPTIONAL, + ... +} + +RecommendedRANNodeItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +RedCapIndication ::= ENUMERATED { + redcap, + ... +} + +RedirectionVoiceFallback ::= ENUMERATED { + possible, + not-possible, + ... +} + +RedundantPDUSessionInformation ::= SEQUENCE { + rSN RSN, + iE-Extensions ProtocolExtensionContainer { {RedundantPDUSessionInformation-ExtIEs} } OPTIONAL, + ... +} + +RedundantPDUSessionInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-PDUSessionPairID CRITICALITY ignore EXTENSION PDUSessionPairID PRESENCE optional }, + ... +} + +RedundantQosFlowIndicator ::= ENUMERATED {true, false} + +ReflectiveQosAttribute ::= ENUMERATED { + subject-to, + ... +} + +RelativeAMFCapacity ::= INTEGER (0..255) + +ReportArea ::= ENUMERATED { + cell, + ... +} + +RepetitionPeriod ::= INTEGER (0..131071) + +ResetAll ::= ENUMERATED { + reset-all, + ... +} + +ReportAmountMDT ::= ENUMERATED { + r1, r2, r4, r8, r16, r32, r64, rinfinity +} + +ReportIntervalMDT ::= ENUMERATED { + ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, min60 +} + +ExtendedReportIntervalMDT ::= ENUMERATED { + ms20480, ms40960, ... +} + +ResetType ::= CHOICE { + nG-Interface ResetAll, + partOfNG-Interface UE-associatedLogicalNG-connectionList, + choice-Extensions ProtocolIE-SingleContainer { {ResetType-ExtIEs} } +} + +ResetType-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +RGLevelWirelineAccessCharacteristics ::= OCTET STRING + +RNC-ID ::= INTEGER (0..4095) + +RoutingID ::= OCTET STRING + +RRCContainer ::= OCTET STRING + +RRCEstablishmentCause ::= ENUMERATED { + emergency, + highPriorityAccess, + mt-Access, + mo-Signalling, + mo-Data, + mo-VoiceCall, + mo-VideoCall, + mo-SMS, + mps-PriorityAccess, + mcs-PriorityAccess, + ..., + notAvailable, + mo-ExceptionData +} + +RRCInactiveTransitionReportRequest ::= ENUMERATED { + subsequent-state-transition-report, + single-rrc-connected-state-report, + cancel-report, + ... +} + +RRCState ::= ENUMERATED { + inactive, + connected, + ... +} + +RSN ::= ENUMERATED {v1, v2, ...} + +RIMInformationTransfer ::= SEQUENCE { + targetRANNodeID-RIM TargetRANNodeID-RIM, + sourceRANNodeID SourceRANNodeID, + rIMInformation RIMInformation, + iE-Extensions ProtocolExtensionContainer { {RIMInformationTransfer-ExtIEs} } OPTIONAL, + ... +} + +RIMInformationTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +RIMInformation ::= SEQUENCE { + targetgNBSetID GNBSetID, + rIM-RSDetection ENUMERATED {rs-detected, rs-disappeared, ...}, + iE-Extensions ProtocolExtensionContainer { {RIMInformation-ExtIEs} } OPTIONAL, + ... +} + +RIMInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +GNBSetID ::= BIT STRING (SIZE(22)) + +-- S + +ScheduledCommunicationTime ::= SEQUENCE { + dayofWeek BIT STRING (SIZE(7)) OPTIONAL, + timeofDayStart INTEGER (0..86399, ...) OPTIONAL, + timeofDayEnd INTEGER (0..86399, ...) OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { ScheduledCommunicationTime-ExtIEs}} OPTIONAL, + ... +} + +ScheduledCommunicationTime-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SCTP-TLAs ::= SEQUENCE (SIZE(1..maxnoofXnTLAs)) OF TransportLayerAddress + +SD ::= OCTET STRING (SIZE(3)) + +SecondaryRATUsageInformation ::= SEQUENCE { + pDUSessionUsageReport PDUSessionUsageReport OPTIONAL, + qosFlowsUsageReportList QoSFlowsUsageReportList OPTIONAL, + iE-Extension ProtocolExtensionContainer { {SecondaryRATUsageInformation-ExtIEs} } OPTIONAL, + ... +} + +SecondaryRATUsageInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SecondaryRATDataUsageReportTransfer ::= SEQUENCE { + secondaryRATUsageInformation SecondaryRATUsageInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {SecondaryRATDataUsageReportTransfer-ExtIEs} } OPTIONAL, + ... +} + +SecondaryRATDataUsageReportTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SecurityContext ::= SEQUENCE { + nextHopChainingCount NextHopChainingCount, + nextHopNH SecurityKey, + iE-Extensions ProtocolExtensionContainer { {SecurityContext-ExtIEs} } OPTIONAL, + ... +} + +SecurityContext-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SecurityIndication ::= SEQUENCE { + integrityProtectionIndication IntegrityProtectionIndication, + confidentialityProtectionIndication ConfidentialityProtectionIndication, + maximumIntegrityProtectedDataRate-UL MaximumIntegrityProtectedDataRate OPTIONAL, +-- The above IE shall be present if integrity protection is required or preferred + iE-Extensions ProtocolExtensionContainer { {SecurityIndication-ExtIEs} } OPTIONAL, + ... +} + +SecurityIndication-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-MaximumIntegrityProtectedDataRate-DL CRITICALITY ignore EXTENSION MaximumIntegrityProtectedDataRate PRESENCE optional }, + ... +} + +SecurityKey ::= BIT STRING (SIZE(256)) + +SecurityResult ::= SEQUENCE { + integrityProtectionResult IntegrityProtectionResult, + confidentialityProtectionResult ConfidentialityProtectionResult, + iE-Extensions ProtocolExtensionContainer { {SecurityResult-ExtIEs} } OPTIONAL, + ... +} + +SecurityResult-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SensorMeasurementConfiguration ::= SEQUENCE { + sensorMeasConfig SensorMeasConfig, + sensorMeasConfigNameList SensorMeasConfigNameList OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {SensorMeasurementConfiguration-ExtIEs} } OPTIONAL, + ... +} + +SensorMeasurementConfiguration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SensorMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofSensorName)) OF SensorMeasConfigNameItem + +SensorMeasConfigNameItem ::= SEQUENCE { + sensorNameConfig SensorNameConfig, + iE-Extensions ProtocolExtensionContainer { { SensorMeasConfigNameItem-ExtIEs } } OPTIONAL, + ... +} + +SensorMeasConfigNameItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SensorMeasConfig::= ENUMERATED {setup,...} + +SensorNameConfig ::= CHOICE { + uncompensatedBarometricConfig ENUMERATED {true, ...}, + ueSpeedConfig ENUMERATED {true, ...}, + ueOrientationConfig ENUMERATED {true, ...}, + choice-Extensions ProtocolIE-SingleContainer { {SensorNameConfig-ExtIEs} } +} + +SensorNameConfig-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +SerialNumber ::= BIT STRING (SIZE(16)) + +ServedGUAMIList ::= SEQUENCE (SIZE(1..maxnoofServedGUAMIs)) OF ServedGUAMIItem + +ServedGUAMIItem ::= SEQUENCE { + gUAMI GUAMI, + backupAMFName AMFName OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ServedGUAMIItem-ExtIEs} } OPTIONAL, + ... +} + +ServedGUAMIItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-GUAMIType CRITICALITY ignore EXTENSION GUAMIType PRESENCE optional }, + ... +} + +ServiceAreaInformation ::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF ServiceAreaInformation-Item + +ServiceAreaInformation-Item ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + allowedTACs AllowedTACs OPTIONAL, + notAllowedTACs NotAllowedTACs OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {ServiceAreaInformation-Item-ExtIEs} } OPTIONAL, + ... +} + +ServiceAreaInformation-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ServiceType ::= ENUMERATED {streaming, mTSI, vR, ...} + +SgNB-UE-X2AP-ID ::= INTEGER (0..4294967295) + +SharedNGU-MulticastTNLInformation ::= SEQUENCE { + iP-MulticastAddress TransportLayerAddress, + iP-SourceAddress TransportLayerAddress, + gTP-TEID GTP-TEID, + iE-Extensions ProtocolExtensionContainer { {SharedNGU-MulticastTNLInformation-ExtIEs} } OPTIONAL, + ... +} + +SharedNGU-MulticastTNLInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SliceOverloadList ::= SEQUENCE (SIZE(1..maxnoofSliceItems)) OF SliceOverloadItem + +SliceOverloadItem ::= SEQUENCE { + s-NSSAI S-NSSAI, + iE-Extensions ProtocolExtensionContainer { {SliceOverloadItem-ExtIEs} } OPTIONAL, + ... +} + +SliceOverloadItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SliceSupportList ::= SEQUENCE (SIZE(1..maxnoofSliceItems)) OF SliceSupportItem + +SliceSupportItem ::= SEQUENCE { + s-NSSAI S-NSSAI, + iE-Extensions ProtocolExtensionContainer { {SliceSupportItem-ExtIEs} } OPTIONAL, + ... +} + +SliceSupportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SliceSupportListQMC ::= SEQUENCE (SIZE(1..maxnoofSNSSAIforQMC)) OF SliceSupportQMC-Item + +SliceSupportQMC-Item ::= SEQUENCE { + s-NSSAI S-NSSAI, + iE-Extensions ProtocolExtensionContainer { {SliceSupportQMC-Item-ExtIEs} } OPTIONAL, + ... +} + +SliceSupportQMC-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SNPN-MobilityInformation ::= SEQUENCE { + serving-NID NID, + iE-Extensions ProtocolExtensionContainer { {SNPN-MobilityInformation-ExtIEs} } OPTIONAL, + ... +} + +SNPN-MobilityInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +S-NSSAI ::= SEQUENCE { + sST SST, + sD SD OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { S-NSSAI-ExtIEs} } OPTIONAL, + ... +} + +S-NSSAI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SONConfigurationTransfer ::= SEQUENCE { + targetRANNodeID-SON TargetRANNodeID-SON, + sourceRANNodeID SourceRANNodeID, + sONInformation SONInformation, + xnTNLConfigurationInfo XnTNLConfigurationInfo OPTIONAL, +-- The above IE shall be present if the SON Information IE contains the SON Information Request IE set to “Xn TNL Configuration Info” + iE-Extensions ProtocolExtensionContainer { {SONConfigurationTransfer-ExtIEs} } OPTIONAL, + ... +} + +SONConfigurationTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SONInformation ::= CHOICE { + sONInformationRequest SONInformationRequest, + sONInformationReply SONInformationReply, + choice-Extensions ProtocolIE-SingleContainer { {SONInformation-ExtIEs} } +} + +SONInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-SONInformationReport CRITICALITY ignore TYPE SONInformationReport PRESENCE mandatory }, + ... +} + +SONInformationReply ::= SEQUENCE { + xnTNLConfigurationInfo XnTNLConfigurationInfo OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {SONInformationReply-ExtIEs} } OPTIONAL, + ... +} + +SONInformationReply-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SONInformationReport::= CHOICE { + failureIndicationInformation FailureIndication, + hOReportInformation HOReport, + choice-Extensions ProtocolIE-SingleContainer { { SONInformationReport-ExtIEs} } +} + +SONInformationReport-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-SuccessfulHandoverReportList CRITICALITY ignore TYPE SuccessfulHandoverReportList PRESENCE mandatory }, + ... +} + +-- -------------------------------------------------------------------- +-- SON Information Report +-- -------------------------------------------------------------------- + +SuccessfulHandoverReportList ::= SEQUENCE (SIZE(1..maxnoofSuccessfulHOReports)) OF SuccessfulHandoverReport-Item + +SuccessfulHandoverReport-Item ::= SEQUENCE { + successfulHOReportContainer OCTET STRING, + iE-Extensions ProtocolExtensionContainer { { SuccessfulHandoverReport-Item-ExtIEs} } OPTIONAL, + ... +} + +SuccessfulHandoverReport-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SONInformationRequest ::= ENUMERATED { + xn-TNL-configuration-info, + ... +} + +SourceNGRANNode-ToTargetNGRANNode-TransparentContainer ::= SEQUENCE { + rRCContainer RRCContainer, + pDUSessionResourceInformationList PDUSessionResourceInformationList OPTIONAL, + e-RABInformationList E-RABInformationList OPTIONAL, + targetCell-ID NGRAN-CGI, + indexToRFSP IndexToRFSP OPTIONAL, + uEHistoryInformation UEHistoryInformation, + iE-Extensions ProtocolExtensionContainer { {SourceNGRANNode-ToTargetNGRANNode-TransparentContainer-ExtIEs} } OPTIONAL, + ... +} + +SourceNGRANNode-ToTargetNGRANNode-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-SgNB-UE-X2AP-ID CRITICALITY ignore EXTENSION SgNB-UE-X2AP-ID PRESENCE optional }| + { ID id-UEHistoryInformationFromTheUE CRITICALITY ignore EXTENSION UEHistoryInformationFromTheUE PRESENCE optional }| + { ID id-SourceNodeID CRITICALITY ignore EXTENSION SourceNodeID PRESENCE optional }| + { ID id-UEContextReferenceAtSource CRITICALITY ignore EXTENSION RAN-UE-NGAP-ID PRESENCE optional }| + { ID id-MBS-ActiveSessionInformation-SourcetoTargetList CRITICALITY ignore EXTENSION MBS-ActiveSessionInformation-SourcetoTargetList PRESENCE optional }| + { ID id-QMCConfigInfo CRITICALITY ignore EXTENSION QMCConfigInfo PRESENCE optional }| + { ID id-NGAPIESupportInformationRequestList CRITICALITY ignore EXTENSION NGAPIESupportInformationRequestList PRESENCE optional }, + ... +} + +SourceNodeID ::= CHOICE { + sourceengNB-ID GlobalGNB-ID, + choice-Extensions ProtocolIE-SingleContainer { { SourceNodeID-ExtIEs} } +} + +SourceNodeID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +SourceOfUEActivityBehaviourInformation ::= ENUMERATED { + subscription-information, + statistics, + ... +} + +SourceRANNodeID ::= SEQUENCE { + globalRANNodeID GlobalRANNodeID, + selectedTAI TAI, + iE-Extensions ProtocolExtensionContainer { {SourceRANNodeID-ExtIEs} } OPTIONAL, + ... +} + +SourceRANNodeID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +SourceToTarget-TransparentContainer ::= OCTET STRING +-- This IE includes a transparent container from the source RAN node to the target RAN node. +-- The octets of the OCTET STRING are encoded according to the specifications of the target system. + +SourceToTarget-AMFInformationReroute ::= SEQUENCE { + configuredNSSAI ConfiguredNSSAI OPTIONAL, + rejectedNSSAIinPLMN RejectedNSSAIinPLMN OPTIONAL, + rejectedNSSAIinTA RejectedNSSAIinTA OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {SourceToTarget-AMFInformationReroute-ExtIEs} } OPTIONAL, + ... +} + +SourceToTarget-AMFInformationReroute-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF. +-- The octets of the OCTET STRING are encoded according to the specifications of the Core network. + +SRVCCOperationPossible ::= ENUMERATED { + possible, + notPossible, + ... +} + +ConfiguredNSSAI ::= OCTET STRING (SIZE(128)) + +RejectedNSSAIinPLMN ::= OCTET STRING (SIZE(32)) + +RejectedNSSAIinTA ::= OCTET STRING (SIZE(32)) + +SST ::= OCTET STRING (SIZE(1)) + +SupportedTAList ::= SEQUENCE (SIZE(1..maxnoofTACs)) OF SupportedTAItem + +SupportedTAItem ::= SEQUENCE { + tAC TAC, + broadcastPLMNList BroadcastPLMNList, + iE-Extensions ProtocolExtensionContainer { {SupportedTAItem-ExtIEs} } OPTIONAL, + ... +} + +SupportedTAItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-ConfiguredTACIndication CRITICALITY ignore EXTENSION ConfiguredTACIndication PRESENCE optional }| + {ID id-RAT-Information CRITICALITY reject EXTENSION RAT-Information PRESENCE optional }, + ... +} + +SuspendIndicator ::= ENUMERATED { + true, + ... +} + +Suspend-Request-Indication ::= ENUMERATED { + suspend-requested, + ... +} + +Suspend-Response-Indication ::= ENUMERATED { + suspend-indicated, + ... +} + +SurvivalTime ::= INTEGER (0..1920000, ...) + + +-- T + +TAC ::= OCTET STRING (SIZE(3)) + +TACListInNRNTN ::= SEQUENCE (SIZE(1..maxnoofTACsinNTN)) OF TAC + +TAI ::= SEQUENCE { + pLMNIdentity PLMNIdentity, + tAC TAC, + iE-Extensions ProtocolExtensionContainer { {TAI-ExtIEs} } OPTIONAL, + ... +} + +TAI-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAIBroadcastEUTRA ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAIBroadcastEUTRA-Item + +TAIBroadcastEUTRA-Item ::= SEQUENCE { + tAI TAI, + completedCellsInTAI-EUTRA CompletedCellsInTAI-EUTRA, + iE-Extensions ProtocolExtensionContainer { {TAIBroadcastEUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +TAIBroadcastEUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAIBroadcastNR ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAIBroadcastNR-Item + +TAIBroadcastNR-Item ::= SEQUENCE { + tAI TAI, + completedCellsInTAI-NR CompletedCellsInTAI-NR, + iE-Extensions ProtocolExtensionContainer { {TAIBroadcastNR-Item-ExtIEs} } OPTIONAL, + ... +} + +TAIBroadcastNR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAICancelledEUTRA ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAICancelledEUTRA-Item + +TAICancelledEUTRA-Item ::= SEQUENCE { + tAI TAI, + cancelledCellsInTAI-EUTRA CancelledCellsInTAI-EUTRA, + iE-Extensions ProtocolExtensionContainer { {TAICancelledEUTRA-Item-ExtIEs} } OPTIONAL, + ... +} + +TAICancelledEUTRA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAICancelledNR ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAICancelledNR-Item + +TAICancelledNR-Item ::= SEQUENCE { + tAI TAI, + cancelledCellsInTAI-NR CancelledCellsInTAI-NR, + iE-Extensions ProtocolExtensionContainer { {TAICancelledNR-Item-ExtIEs} } OPTIONAL, + ... +} + +TAICancelledNR-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAIListForInactive ::= SEQUENCE (SIZE(1..maxnoofTAIforInactive)) OF TAIListForInactiveItem + +TAIListForInactiveItem ::= SEQUENCE { + tAI TAI, + iE-Extensions ProtocolExtensionContainer { {TAIListForInactiveItem-ExtIEs} } OPTIONAL, + ... +} + +TAIListForInactiveItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAIListForPaging ::= SEQUENCE (SIZE(1..maxnoofTAIforPaging)) OF TAIListForPagingItem + +TAIListForPagingItem ::= SEQUENCE { + tAI TAI, + iE-Extensions ProtocolExtensionContainer { {TAIListForPagingItem-ExtIEs} } OPTIONAL, + ... +} + +TAIListForPagingItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAIListForRestart ::= SEQUENCE (SIZE(1..maxnoofTAIforRestart)) OF TAI + +TAIListForWarning ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI + +TAINSAGSupportList ::= SEQUENCE (SIZE(1..maxnoofNSAGs)) OF TAINSAGSupportItem + +TAINSAGSupportItem ::= SEQUENCE { + nSAG-ID NSAG-ID, + nSAGSliceSupportList ExtendedSliceSupportList, + iE-Extensions ProtocolExtensionContainer { {TAINSAGSupportItem-ExtIEs} } OPTIONAL, + ... +} + +TAINSAGSupportItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TargeteNB-ID ::= SEQUENCE { + globalENB-ID GlobalNgENB-ID, + selected-EPS-TAI EPS-TAI, + iE-Extensions ProtocolExtensionContainer { {TargeteNB-ID-ExtIEs} } OPTIONAL, + ... +} + +TargeteNB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TargetHomeENB-ID ::= SEQUENCE { + pLMNidentity PLMNIdentity, + homeENB-ID BIT STRING (SIZE(28)), + selected-EPS-TAI EPS-TAI, + iE-Extensions ProtocolExtensionContainer { {TargetHomeENB-ID-ExtIEs} } OPTIONAL, + ... +} + +TargetHomeENB-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TargetID ::= CHOICE { + targetRANNodeID TargetRANNodeID, + targeteNB-ID TargeteNB-ID, + choice-Extensions ProtocolIE-SingleContainer { {TargetID-ExtIEs} } +} + +TargetID-ExtIEs NGAP-PROTOCOL-IES ::= { + {ID id-TargetRNC-ID CRITICALITY reject TYPE TargetRNC-ID PRESENCE mandatory }| + {ID id-TargetHomeENB-ID CRITICALITY reject TYPE TargetHomeENB-ID PRESENCE mandatory }, + ... +} + +TargetNGRANNode-ToSourceNGRANNode-TransparentContainer ::= SEQUENCE { + rRCContainer RRCContainer, + iE-Extensions ProtocolExtensionContainer { {TargetNGRANNode-ToSourceNGRANNode-TransparentContainer-ExtIEs} } OPTIONAL, + ... +} + +TargetNGRANNode-ToSourceNGRANNode-TransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-DAPSResponseInfoList CRITICALITY ignore EXTENSION DAPSResponseInfoList PRESENCE optional }| + { ID id-DirectForwardingPathAvailability CRITICALITY ignore EXTENSION DirectForwardingPathAvailability PRESENCE optional }| + { ID id-MBS-ActiveSessionInformation-TargettoSourceList CRITICALITY ignore EXTENSION MBS-ActiveSessionInformation-TargettoSourceList PRESENCE optional }| + { ID id-NGAPIESupportInformationResponseList CRITICALITY ignore EXTENSION NGAPIESupportInformationResponseList PRESENCE optional }, + ... +} + +TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer ::= SEQUENCE { + cell-CAGInformation Cell-CAGInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer-ExtIEs} } OPTIONAL, + ... +} + +TargetNGRANNode-ToSourceNGRANNode-FailureTransparentContainer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-NGAPIESupportInformationResponseList CRITICALITY ignore EXTENSION NGAPIESupportInformationResponseList PRESENCE optional }, + ... +} + +TargetNSSAI ::= SEQUENCE (SIZE(1..maxnoofTargetS-NSSAIs)) OF TargetNSSAI-Item + +TargetNSSAI-Item ::= SEQUENCE { + s-NSSAI S-NSSAI, + iE-Extensions ProtocolExtensionContainer { {TargetNSSAI-Item-ExtIEs} } OPTIONAL, + ... +} + +TargetNSSAI-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TargetNSSAIInformation ::= SEQUENCE { + targetNSSAI TargetNSSAI, + indexToRFSP IndexToRFSP, + iE-Extensions ProtocolExtensionContainer { {TargetNSSAIInformation-Item-ExtIEs} } OPTIONAL, + ... +} + +TargetNSSAIInformation-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TargetRANNodeID ::= SEQUENCE { + globalRANNodeID GlobalRANNodeID, + selectedTAI TAI, + iE-Extensions ProtocolExtensionContainer { {TargetRANNodeID-ExtIEs} } OPTIONAL, + ... +} + +TargetRANNodeID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TargetRANNodeID-RIM ::= SEQUENCE { + globalRANNodeID GlobalRANNodeID, + selectedTAI TAI, + iE-Extensions ProtocolExtensionContainer { {TargetRANNodeID-RIM-ExtIEs} } OPTIONAL, + ... +} + +TargetRANNodeID-RIM-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TargetRANNodeID-SON ::= SEQUENCE { + globalRANNodeID GlobalRANNodeID, + selectedTAI TAI, + iE-Extensions ProtocolExtensionContainer { {TargetRANNodeID-SON-ExtIEs} } OPTIONAL, + ... +} + +TargetRANNodeID-SON-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + {ID id-NR-CGI CRITICALITY ignore EXTENSION NR-CGI PRESENCE optional }, + ... +} + +TargetRNC-ID ::= SEQUENCE { + lAI LAI, + rNC-ID RNC-ID, + extendedRNC-ID ExtendedRNC-ID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {TargetRNC-ID-ExtIEs} } OPTIONAL, + ... +} + +TargetRNC-ID-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TargetToSource-TransparentContainer ::= OCTET STRING +-- This IE includes a transparent container from the target RAN node to the source RAN node. +-- The octets of the OCTET STRING are encoded according to the specifications of the target system. + +TargettoSource-Failure-TransparentContainer ::= OCTET STRING +-- This IE includes a transparent container from the target RAN node to the source RAN node. +-- The octets of the OCTET STRING are encoded according to the specifications of the target system (if applicable). + +TimerApproachForGUAMIRemoval ::= ENUMERATED { + apply-timer, + ... +} + +TimeStamp ::= OCTET STRING (SIZE(4)) + +TimeSyncAssistanceInfo ::= SEQUENCE { + timeDistributionIndication ENUMERATED {enabled, disabled, ...}, + uUTimeSyncErrorBudget INTEGER (1..1000000, ...) OPTIONAL, + -- The above IE shall be present if the Time Distribution Indication IE is set to the value “enabled” + iE-Extensions ProtocolExtensionContainer { {TimeSyncAssistanceInfo-ExtIEs} } OPTIONAL, + ... +} + +TimeSyncAssistanceInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...} + +TimeUEStayedInCell ::= INTEGER (0..4095) + +TimeUEStayedInCellEnhancedGranularity ::= INTEGER (0..40950) + +TMGI ::= OCTET STRING (SIZE(6)) + +TNAP-ID ::= OCTET STRING + +TNGF-ID ::= CHOICE { + tNGF-ID BIT STRING (SIZE(32, ...)), + choice-Extensions ProtocolIE-SingleContainer { {TNGF-ID-ExtIEs} } +} + +TNGF-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +TNLAddressWeightFactor ::= INTEGER (0..255) + +TNLAssociationList ::= SEQUENCE (SIZE(1..maxnoofTNLAssociations)) OF TNLAssociationItem + +TNLAssociationItem ::= SEQUENCE { + tNLAssociationAddress CPTransportLayerInformation, + cause Cause, + iE-Extensions ProtocolExtensionContainer { {TNLAssociationItem-ExtIEs} } OPTIONAL, + ... +} + +TNLAssociationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TNLAssociationUsage ::= ENUMERATED { + ue, + non-ue, + both, + ... +} + +TooearlyIntersystemHO::= SEQUENCE { + sourcecellID EUTRA-CGI, + failurecellID NGRAN-CGI, + uERLFReportContainer UERLFReportContainer OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { TooearlyIntersystemHO-ExtIEs} } OPTIONAL, + ... +} + +TooearlyIntersystemHO-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TraceActivation ::= SEQUENCE { + nGRANTraceID NGRANTraceID, + interfacesToTrace InterfacesToTrace, +traceDepth TraceDepth, +traceCollectionEntityIPAddress TransportLayerAddress, + iE-Extensions ProtocolExtensionContainer { {TraceActivation-ExtIEs} } OPTIONAL, + ... +} + +TraceActivation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-MDTConfiguration CRITICALITY ignore EXTENSION MDT-Configuration PRESENCE optional }| + { ID id-TraceCollectionEntityURI CRITICALITY ignore EXTENSION URI-address PRESENCE optional }, + ... +} + +TraceDepth ::= ENUMERATED { + minimum, + medium, + maximum, + minimumWithoutVendorSpecificExtension, + mediumWithoutVendorSpecificExtension, + maximumWithoutVendorSpecificExtension, + ... +} + +TrafficLoadReductionIndication ::= INTEGER (1..99) + +TransportLayerAddress ::= BIT STRING (SIZE(1..160, ...)) + +TypeOfError ::= ENUMERATED { + not-understood, + missing, + ... +} + +TAIBasedMDT ::= SEQUENCE { + tAIListforMDT TAIListforMDT, + iE-Extensions ProtocolExtensionContainer { {TAIBasedMDT-ExtIEs} } OPTIONAL, + ... +} + +TAIBasedMDT-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAIListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAI + +TAIBasedQMC ::= SEQUENCE { + tAIListforQMC TAIListforQMC, + iE-Extensions ProtocolExtensionContainer { {TAIBasedQMC-ExtIEs} } OPTIONAL, + ... +} + +TAIBasedQMC-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAIListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAI + +TABasedQMC ::= SEQUENCE { + tAListforQMC TAListforQMC, + iE-Extensions ProtocolExtensionContainer { {TABasedQMC-ExtIEs} } OPTIONAL, + ... +} + +TABasedQMC-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAC + + +TABasedMDT ::= SEQUENCE { + tAListforMDT TAListforMDT, + iE-Extensions ProtocolExtensionContainer { {TABasedMDT-ExtIEs} } OPTIONAL, + ... +} + +TABasedMDT-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +TAListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAC + +Threshold-RSRP ::= INTEGER(0..127) + +Threshold-RSRQ ::= INTEGER(0..127) + +Threshold-SINR ::= INTEGER(0..127) + +TimeToTrigger ::= ENUMERATED {ms0, ms40, ms64, ms80, ms100, ms128, ms160, ms256, ms320, ms480, ms512, ms640, ms1024, ms1280, ms2560, ms5120} + + +TWAP-ID ::= OCTET STRING + +TWIF-ID ::= CHOICE { + tWIF-ID BIT STRING (SIZE(32, ...)), + choice-Extensions ProtocolIE-SingleContainer { {TWIF-ID-ExtIEs} } +} + +TWIF-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +TSCAssistanceInformation ::= SEQUENCE { + periodicity Periodicity, + burstArrivalTime BurstArrivalTime OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {TSCAssistanceInformation-ExtIEs} } OPTIONAL, + ... +} + +TSCAssistanceInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-SurvivalTime CRITICALITY ignore EXTENSION SurvivalTime PRESENCE optional}, + ... +} + +TSCTrafficCharacteristics ::= SEQUENCE { + tSCAssistanceInformationDL TSCAssistanceInformation OPTIONAL, + tSCAssistanceInformationUL TSCAssistanceInformation OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {TSCTrafficCharacteristics-ExtIEs} } OPTIONAL, + ... +} + +TSCTrafficCharacteristics-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- U + +UEAggregateMaximumBitRate ::= SEQUENCE { + uEAggregateMaximumBitRateDL BitRate, + uEAggregateMaximumBitRateUL BitRate, + iE-Extensions ProtocolExtensionContainer { {UEAggregateMaximumBitRate-ExtIEs} } OPTIONAL, + ... +} + +UEAggregateMaximumBitRate-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UEAppLayerMeasInfoList ::= SEQUENCE (SIZE(1..maxnoofUEAppLayerMeas)) OF UEAppLayerMeasInfoItem + +UEAppLayerMeasInfoItem ::= SEQUENCE { + uEAppLayerMeasConfigInfo UEAppLayerMeasConfigInfo, + iE-Extensions ProtocolExtensionContainer { { UEAppLayerMeasInfoItem-ExtIEs} } OPTIONAL, + ... +} + +UEAppLayerMeasInfoItem-ExtIEs NGAP-PROTOCOL-EXTENSION::= { + ... +} + +UEAppLayerMeasConfigInfo ::= SEQUENCE { + qoEReference QoEReference, + serviceType ServiceType, + areaScopeOfQMC AreaScopeOfQMC OPTIONAL, + measCollEntityIPAddress TransportLayerAddress, + qoEMeasurementStatus ENUMERATED {ongoing,...} OPTIONAL, + containerForAppLayerMeasConfig OCTET STRING (SIZE(1..8000)) OPTIONAL, + measConfigAppLayerID INTEGER (0..15, ...) OPTIONAL, + sliceSupportListQMC SliceSupportListQMC OPTIONAL, + mDT-AlignmentInfo MDT-AlignmentInfo OPTIONAL, + availableRANVisibleQoEMetrics AvailableRANVisibleQoEMetrics OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { UEAppLayerMeasConfigInfo-ExtIEs} } OPTIONAL, + ... +} + +UEAppLayerMeasConfigInfo-ExtIEs NGAP-PROTOCOL-EXTENSION::= { + ... +} + +UE-associatedLogicalNG-connectionList ::= SEQUENCE (SIZE(1..maxnoofNGConnectionsToReset)) OF UE-associatedLogicalNG-connectionItem + +UE-associatedLogicalNG-connectionItem ::= SEQUENCE { + aMF-UE-NGAP-ID AMF-UE-NGAP-ID OPTIONAL, + rAN-UE-NGAP-ID RAN-UE-NGAP-ID OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UE-associatedLogicalNG-connectionItem-ExtIEs} } OPTIONAL, + ... +} + +UE-associatedLogicalNG-connectionItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UECapabilityInfoRequest ::= ENUMERATED { + requested, + ... +} + +UEContextRequest ::= ENUMERATED {requested, ...} + + +UEContextResumeRequestTransfer ::= SEQUENCE { + qosFlowFailedToResumeList QosFlowListWithCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UEContextResumeRequestTransfer-ExtIEs} } OPTIONAL, + ... +} + +UEContextResumeRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UEContextResumeResponseTransfer ::= SEQUENCE { + qosFlowFailedToResumeList QosFlowListWithCause OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UEContextResumeResponseTransfer-ExtIEs} } OPTIONAL, + ... +} + +UEContextResumeResponseTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UEContextSuspendRequestTransfer ::= SEQUENCE { + suspendIndicator SuspendIndicator OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UEContextSuspendRequestTransfer-ExtIEs} } OPTIONAL, + ... +} + +UEContextSuspendRequestTransfer-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UE-DifferentiationInfo ::= SEQUENCE { + periodicCommunicationIndicator ENUMERATED {periodically, ondemand, ... } OPTIONAL, + periodicTime INTEGER (1..3600, ...) OPTIONAL, + scheduledCommunicationTime ScheduledCommunicationTime OPTIONAL, + stationaryIndication ENUMERATED {stationary, mobile, ...} OPTIONAL, + trafficProfile ENUMERATED {single-packet, dual-packets, multiple-packets, ...} OPTIONAL, + batteryIndication ENUMERATED {battery-powered, battery-powered-not-rechargeable-or-replaceable, not-battery-powered, ...} OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { UE-DifferentiationInfo-ExtIEs} } OPTIONAL, + ... +} + +UE-DifferentiationInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UEHistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCellsinUEHistoryInfo)) OF LastVisitedCellItem + +UEHistoryInformationFromTheUE ::= CHOICE { + nR NRMobilityHistoryReport, + choice-Extensions ProtocolIE-SingleContainer { {UEHistoryInformationFromTheUE-ExtIEs} } +} + +UEHistoryInformationFromTheUE-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +UEIdentityIndexValue ::= CHOICE { + indexLength10 BIT STRING (SIZE(10)), + choice-Extensions ProtocolIE-SingleContainer { {UEIdentityIndexValue-ExtIEs} } +} + +UEIdentityIndexValue-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +UE-NGAP-IDs ::= CHOICE { + uE-NGAP-ID-pair UE-NGAP-ID-pair, + aMF-UE-NGAP-ID AMF-UE-NGAP-ID, + choice-Extensions ProtocolIE-SingleContainer { {UE-NGAP-IDs-ExtIEs} } +} + +UE-NGAP-IDs-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +UE-NGAP-ID-pair ::= SEQUENCE{ + aMF-UE-NGAP-ID AMF-UE-NGAP-ID, + rAN-UE-NGAP-ID RAN-UE-NGAP-ID, + iE-Extensions ProtocolExtensionContainer { {UE-NGAP-ID-pair-ExtIEs} } OPTIONAL, + ... +} + +UE-NGAP-ID-pair-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UEPagingIdentity ::= CHOICE { + fiveG-S-TMSI FiveG-S-TMSI, + choice-Extensions ProtocolIE-SingleContainer { {UEPagingIdentity-ExtIEs} } + } + +UEPagingIdentity-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +UEPresence ::= ENUMERATED {in, out, unknown, ...} + +UEPresenceInAreaOfInterestList ::= SEQUENCE (SIZE(1..maxnoofAoI)) OF UEPresenceInAreaOfInterestItem + +UEPresenceInAreaOfInterestItem ::= SEQUENCE { + locationReportingReferenceID LocationReportingReferenceID, + uEPresence UEPresence, + iE-Extensions ProtocolExtensionContainer { {UEPresenceInAreaOfInterestItem-ExtIEs} } OPTIONAL, + ... +} + +UEPresenceInAreaOfInterestItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UERadioCapability ::= OCTET STRING + +UERadioCapabilityForPaging ::= SEQUENCE { + uERadioCapabilityForPagingOfNR UERadioCapabilityForPagingOfNR OPTIONAL, + uERadioCapabilityForPagingOfEUTRA UERadioCapabilityForPagingOfEUTRA OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UERadioCapabilityForPaging-ExtIEs} } OPTIONAL, + ... +} + +UERadioCapabilityForPaging-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-UERadioCapabilityForPagingOfNB-IoT CRITICALITY ignore EXTENSION UERadioCapabilityForPagingOfNB-IoT PRESENCE optional }, + ... +} + +UERadioCapabilityForPagingOfNB-IoT ::= OCTET STRING + +UERadioCapabilityForPagingOfNR ::= OCTET STRING + +UERadioCapabilityForPagingOfEUTRA ::= OCTET STRING + +UERadioCapabilityID ::= OCTET STRING + +UERetentionInformation ::= ENUMERATED { + ues-retained, + ... +} + +UERLFReportContainer ::= CHOICE { + nR NRUERLFReportContainer, + lTE LTEUERLFReportContainer, + choice-Extensions ProtocolIE-SingleContainer { {UERLFReportContainer-ExtIEs} } +} + +UERLFReportContainer-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +UESecurityCapabilities ::= SEQUENCE { + nRencryptionAlgorithms NRencryptionAlgorithms, + nRintegrityProtectionAlgorithms NRintegrityProtectionAlgorithms, + eUTRAencryptionAlgorithms EUTRAencryptionAlgorithms, + eUTRAintegrityProtectionAlgorithms EUTRAintegrityProtectionAlgorithms, + iE-Extensions ProtocolExtensionContainer { {UESecurityCapabilities-ExtIEs} } OPTIONAL, + ... +} + +UESecurityCapabilities-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UESliceMaximumBitRateList ::= SEQUENCE (SIZE(1..maxnoofAllowedS-NSSAIs)) OF UESliceMaximumBitRateItem + +UESliceMaximumBitRateItem ::= SEQUENCE { + s-NSSAI S-NSSAI, + uESliceMaximumBitRateDL BitRate, + uESliceMaximumBitRateUL BitRate, + iE-Extensions ProtocolExtensionContainer { { UESliceMaximumBitRateItem-ExtIEs} } OPTIONAL, + ... +} + +UESliceMaximumBitRateItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + + +UE-UP-CIoT-Support ::= ENUMERATED {supported, ...} + +UL-CP-SecurityInformation ::= SEQUENCE { + ul-NAS-MAC UL-NAS-MAC, + ul-NAS-Count UL-NAS-Count, + iE-Extensions ProtocolExtensionContainer { { UL-CP-SecurityInformation-ExtIEs} } OPTIONAL, + ... +} + +UL-CP-SecurityInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +UL-NAS-MAC ::= BIT STRING (SIZE (16)) + +UL-NAS-Count ::= BIT STRING (SIZE (5)) + +UL-NGU-UP-TNLModifyList ::= SEQUENCE (SIZE(1..maxnoofMultiConnectivity)) OF UL-NGU-UP-TNLModifyItem + +UL-NGU-UP-TNLModifyItem ::= SEQUENCE { + uL-NGU-UP-TNLInformation UPTransportLayerInformation, + dL-NGU-UP-TNLInformation UPTransportLayerInformation, + iE-Extensions ProtocolExtensionContainer { {UL-NGU-UP-TNLModifyItem-ExtIEs} } OPTIONAL, + ... +} + +UL-NGU-UP-TNLModifyItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-RedundantUL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }| + { ID id-RedundantDL-NGU-UP-TNLInformation CRITICALITY ignore EXTENSION UPTransportLayerInformation PRESENCE optional }, + ... +} + +UnavailableGUAMIList ::= SEQUENCE (SIZE(1..maxnoofServedGUAMIs)) OF UnavailableGUAMIItem + +UnavailableGUAMIItem ::= SEQUENCE { + gUAMI GUAMI, + timerApproachForGUAMIRemoval TimerApproachForGUAMIRemoval OPTIONAL, + backupAMFName AMFName OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UnavailableGUAMIItem-ExtIEs} } OPTIONAL, + ... +} + +UnavailableGUAMIItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +ULForwarding ::= ENUMERATED { + ul-forwarding-proposed, + ... +} + +UpdateFeedback ::= BIT STRING (SIZE(8, ...)) + +UPTransportLayerInformation ::= CHOICE { + gTPTunnel GTPTunnel, + choice-Extensions ProtocolIE-SingleContainer { {UPTransportLayerInformation-ExtIEs} } +} + +UPTransportLayerInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +UPTransportLayerInformationList ::= SEQUENCE (SIZE(1..maxnoofMultiConnectivityMinusOne)) OF UPTransportLayerInformationItem + +UPTransportLayerInformationItem ::= SEQUENCE { + nGU-UP-TNLInformation UPTransportLayerInformation, + iE-Extensions ProtocolExtensionContainer { {UPTransportLayerInformationItem-ExtIEs} } OPTIONAL, + ... +} + +UPTransportLayerInformationItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-CommonNetworkInstance CRITICALITY ignore EXTENSION CommonNetworkInstance PRESENCE optional }, + ... +} + + +UPTransportLayerInformationPairList ::= SEQUENCE (SIZE(1..maxnoofMultiConnectivityMinusOne)) OF UPTransportLayerInformationPairItem + +UPTransportLayerInformationPairItem ::= SEQUENCE { + uL-NGU-UP-TNLInformation UPTransportLayerInformation, + dL-NGU-UP-TNLInformation UPTransportLayerInformation, + iE-Extensions ProtocolExtensionContainer { {UPTransportLayerInformationPairItem-ExtIEs} } OPTIONAL, + ... +} + +UPTransportLayerInformationPairItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +URI-address ::= VisibleString + +UserLocationInformation ::= CHOICE { + userLocationInformationEUTRA UserLocationInformationEUTRA, + userLocationInformationNR UserLocationInformationNR, + userLocationInformationN3IWF UserLocationInformationN3IWF, + choice-Extensions ProtocolIE-SingleContainer { {UserLocationInformation-ExtIEs} } +} + +UserLocationInformation-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-UserLocationInformationTNGF CRITICALITY ignore TYPE UserLocationInformationTNGF PRESENCE mandatory }| + { ID id-UserLocationInformationTWIF CRITICALITY ignore TYPE UserLocationInformationTWIF PRESENCE mandatory }| + { ID id-UserLocationInformationW-AGF CRITICALITY ignore TYPE UserLocationInformationW-AGF PRESENCE mandatory }, + ... +} + +UserLocationInformationEUTRA ::= SEQUENCE { + eUTRA-CGI EUTRA-CGI, + tAI TAI, + timeStamp TimeStamp OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UserLocationInformationEUTRA-ExtIEs} } OPTIONAL, + ... +} + +UserLocationInformationEUTRA-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-PSCellInformation CRITICALITY ignore EXTENSION NGRAN-CGI PRESENCE optional}, + ... +} + +UserLocationInformationN3IWF ::= SEQUENCE { + iPAddress TransportLayerAddress, + portNumber PortNumber, + iE-Extensions ProtocolExtensionContainer { {UserLocationInformationN3IWF-ExtIEs} } OPTIONAL, + ... +} + +UserLocationInformationN3IWF-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-TAI CRITICALITY ignore EXTENSION TAI PRESENCE optional }, + ... +} + +UserLocationInformationTNGF ::= SEQUENCE { + tNAP-ID TNAP-ID, + iPAddress TransportLayerAddress, + portNumber PortNumber OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UserLocationInformationTNGF-ExtIEs} } OPTIONAL, + ... +} + +UserLocationInformationTNGF-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-TAI CRITICALITY ignore EXTENSION TAI PRESENCE optional }, + ... +} + +UserLocationInformationTWIF ::= SEQUENCE { + tWAP-ID TWAP-ID, + iPAddress TransportLayerAddress, + portNumber PortNumber OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UserLocationInformationTWIF-ExtIEs} } OPTIONAL, + ... +} + +UserLocationInformationTWIF-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-TAI CRITICALITY ignore EXTENSION TAI PRESENCE optional }, + ... +} + +UserLocationInformationW-AGF ::= CHOICE { + globalLine-ID GlobalLine-ID, + hFCNode-ID HFCNode-ID, + choice-Extensions ProtocolIE-SingleContainer { { UserLocationInformationW-AGF-ExtIEs} } +} + +UserLocationInformationW-AGF-ExtIEs NGAP-PROTOCOL-IES ::= { + { ID id-GlobalCable-ID CRITICALITY ignore TYPE GlobalCable-ID PRESENCE mandatory }| + { ID id-HFCNode-ID-new CRITICALITY ignore TYPE HFCNode-ID-new PRESENCE mandatory }| + { ID id-GlobalCable-ID-new CRITICALITY ignore TYPE GlobalCable-ID-new PRESENCE mandatory }, + ... +} + +UserLocationInformationNR ::= SEQUENCE { + nR-CGI NR-CGI, + tAI TAI, + timeStamp TimeStamp OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {UserLocationInformationNR-ExtIEs} } OPTIONAL, + ... +} + +UserLocationInformationNR-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-PSCellInformation CRITICALITY ignore EXTENSION NGRAN-CGI PRESENCE optional }| + { ID id-NID CRITICALITY reject EXTENSION NID PRESENCE optional }| + { ID id-NRNTNTAIInformation CRITICALITY ignore EXTENSION NRNTNTAIInformation PRESENCE optional }, + ... +} + +UserPlaneSecurityInformation ::= SEQUENCE { + securityResult SecurityResult, + securityIndication SecurityIndication, + iE-Extensions ProtocolExtensionContainer { {UserPlaneSecurityInformation-ExtIEs} } OPTIONAL, + ... +} + +UserPlaneSecurityInformation-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- V + +VolumeTimedReportList ::= SEQUENCE (SIZE(1..maxnoofTimePeriods)) OF VolumeTimedReport-Item + +VolumeTimedReport-Item ::= SEQUENCE { + startTimeStamp OCTET STRING (SIZE(4)), + endTimeStamp OCTET STRING (SIZE(4)), + usageCountUL INTEGER (0..18446744073709551615), + usageCountDL INTEGER (0..18446744073709551615), + iE-Extensions ProtocolExtensionContainer { {VolumeTimedReport-Item-ExtIEs} } OPTIONAL, + ... +} + +VolumeTimedReport-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- W + +W-AGF-ID ::= CHOICE { + w-AGF-ID BIT STRING (SIZE(16, ...)), + choice-Extensions ProtocolIE-SingleContainer { {W-AGF-ID-ExtIEs} } +} + +W-AGF-ID-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +WarningAreaCoordinates ::= OCTET STRING (SIZE(1..1024)) + +WarningAreaList ::= CHOICE { + eUTRA-CGIListForWarning EUTRA-CGIListForWarning, + nR-CGIListForWarning NR-CGIListForWarning, + tAIListForWarning TAIListForWarning, + emergencyAreaIDList EmergencyAreaIDList, + choice-Extensions ProtocolIE-SingleContainer { {WarningAreaList-ExtIEs} } +} + +WarningAreaList-ExtIEs NGAP-PROTOCOL-IES ::= { + ... +} + +WarningMessageContents ::= OCTET STRING (SIZE(1..9600)) + +WarningSecurityInfo ::= OCTET STRING (SIZE(50)) + +WarningType ::= OCTET STRING (SIZE(2)) + +WLANMeasurementConfiguration ::= SEQUENCE { + wlanMeasConfig WLANMeasConfig, + wlanMeasConfigNameList WLANMeasConfigNameList OPTIONAL, + wlan-rssi ENUMERATED {true, ...} OPTIONAL, + wlan-rtt ENUMERATED {true, ...} OPTIONAL, + iE-Extensions ProtocolExtensionContainer { { WLANMeasurementConfiguration-ExtIEs } } OPTIONAL, + ... +} + +WLANMeasurementConfiguration-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +WLANMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofWLANName)) OF WLANMeasConfigNameItem + +WLANMeasConfigNameItem ::= SEQUENCE { + wLANName WLANName, + iE-Extensions ProtocolExtensionContainer { { WLANMeasConfigNameItem-ExtIEs } } OPTIONAL, + ... +} + +WLANMeasConfigNameItem-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +WLANMeasConfig::= ENUMERATED {setup,...} + +WLANName ::= OCTET STRING (SIZE (1..32)) + +WUS-Assistance-Information ::= SEQUENCE { + pagingProbabilityInformation PagingProbabilityInformation, + iE-Extensions ProtocolExtensionContainer { { WUS-Assistance-Information-ExtIEs } } OPTIONAL, + ... +} + +WUS-Assistance-Information-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- X + +XnExtTLAs ::= SEQUENCE (SIZE(1..maxnoofXnExtTLAs)) OF XnExtTLA-Item + +XnExtTLA-Item ::= SEQUENCE { + iPsecTLA TransportLayerAddress OPTIONAL, + gTP-TLAs XnGTP-TLAs OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {XnExtTLA-Item-ExtIEs} } OPTIONAL, + ... +} + +XnExtTLA-Item-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + { ID id-SCTP-TLAs CRITICALITY ignore EXTENSION SCTP-TLAs PRESENCE optional }, + ... +} + +XnGTP-TLAs ::= SEQUENCE (SIZE(1..maxnoofXnGTP-TLAs)) OF TransportLayerAddress + +XnTLAs ::= SEQUENCE (SIZE(1..maxnoofXnTLAs)) OF TransportLayerAddress + +XnTNLConfigurationInfo ::= SEQUENCE { + xnTransportLayerAddresses XnTLAs, + xnExtendedTransportLayerAddresses XnExtTLAs OPTIONAL, + iE-Extensions ProtocolExtensionContainer { {XnTNLConfigurationInfo-ExtIEs} } OPTIONAL, + ... +} + +XnTNLConfigurationInfo-ExtIEs NGAP-PROTOCOL-EXTENSION ::= { + ... +} + +-- Y +-- Z + +END diff --git a/ttcn/LibNGAP/lib/asn1/NGAP_PDU_Contents.asn b/ttcn/LibNGAP/lib/asn1/NGAP_PDU_Contents.asn new file mode 100644 index 0000000..453c923 --- /dev/null +++ b/ttcn/LibNGAP/lib/asn1/NGAP_PDU_Contents.asn @@ -0,0 +1,3388 @@ +-- 3GPP TS 38.413 V17.5.0 (2023-06) +-- 9.4.4 PDU Definitions +-- ************************************************************** +-- +-- PDU definitions for NGAP. +-- +-- ************************************************************** + +NGAP-PDU-Contents { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-PDU-Contents (1) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +-- ************************************************************** +-- +-- IE parameter types from other modules. +-- +-- ************************************************************** + +IMPORTS + + AllowedNSSAI, + AMFName, + AMFSetID, + AMF-TNLAssociationSetupList, + AMF-TNLAssociationToAddList, + AMF-TNLAssociationToRemoveList, + AMF-TNLAssociationToUpdateList, + AMF-UE-NGAP-ID, + AssistanceDataForPaging, + AuthenticatedIndication, + BroadcastCancelledAreaList, + BroadcastCompletedAreaList, + CancelAllWarningMessages, + Cause, + CellIDListForRestart, + CEmodeBrestricted, + CEmodeBSupport-Indicator, + CNAssistedRANTuning, + ConcurrentWarningMessageInd, + CoreNetworkAssistanceInformationForInactive, + CPTransportLayerInformation, + CriticalityDiagnostics, + DataCodingScheme, + DL-CP-SecurityInformation, + DirectForwardingPathAvailability, + EarlyStatusTransfer-TransparentContainer, + EDT-Session, + EmergencyAreaIDListForRestart, + EmergencyFallbackIndicator, + EN-DCSONConfigurationTransfer, + EndIndication, + Enhanced-CoverageRestriction, + EUTRA-CGI, + EUTRA-PagingeDRXInformation, + Extended-AMFName, + Extended-ConnectedTime, + Extended-RANNodeName, + FiveG-ProSeAuthorized, + FiveG-ProSePC5QoSParameters, + FiveG-S-TMSI, + GlobalRANNodeID, + GUAMI, + HandoverFlag, + HandoverType, + IAB-Authorized, + IAB-Supported, + IABNodeIndication, + IMSVoiceSupportIndicator, + IndexToRFSP, + InfoOnRecommendedCellsAndRANNodesForPaging, + IntersystemSONConfigurationTransfer, + LAI, + LTEM-Indication, + LocationReportingRequestType, + LTEUESidelinkAggregateMaximumBitrate, + LTEV2XServicesAuthorized, + MaskedIMEISV, + MBS-AreaSessionID, + MBS-ServiceArea, + MBS-SessionID, + MBS-DistributionReleaseRequestTransfer, + MBS-DistributionSetupRequestTransfer, + MBS-DistributionSetupResponseTransfer, + MBS-DistributionSetupUnsuccessfulTransfer, + MBSSessionReleaseResponseTransfer, + MBSSessionSetupOrModFailureTransfer, + MBSSessionSetupOrModRequestTransfer, + MBSSessionSetupOrModResponseTransfer, + MessageIdentifier, + MDTPLMNList, + MDTPLMNModificationList, + MobilityRestrictionList, + MulticastSessionActivationRequestTransfer, + MulticastSessionDeactivationRequestTransfer, + MulticastSessionUpdateRequestTransfer, + MulticastGroupPagingAreaList, + NAS-PDU, + NASSecurityParametersFromNGRAN, + NB-IoT-DefaultPagingDRX, + NB-IoT-PagingDRX, + NB-IoT-Paging-eDRXInfo, + NB-IoT-UEPriority, + NewSecurityContextInd, + NGRAN-CGI, + NGRAN-TNLAssociationToRemoveList, + NGRANTraceID, + NotifySourceNGRANNode, + NPN-AccessInformation, + NR-CGI, + NR-PagingeDRXInformation, + NRPPa-PDU, + NumberOfBroadcastsRequested, + NRUESidelinkAggregateMaximumBitrate, + NRV2XServicesAuthorized, + OverloadResponse, + OverloadStartNSSAIList, + PagingAssisDataforCEcapabUE, + PagingCause, + PagingDRX, + PagingOrigin, + PagingPriority, + PDUSessionAggregateMaximumBitRate, + PDUSessionResourceAdmittedList, + PDUSessionResourceFailedToModifyListModCfm, + PDUSessionResourceFailedToModifyListModRes, + PDUSessionResourceFailedToResumeListRESReq, + PDUSessionResourceFailedToResumeListRESRes, + PDUSessionResourceFailedToSetupListCxtFail, + PDUSessionResourceFailedToSetupListCxtRes, + PDUSessionResourceFailedToSetupListHOAck, + PDUSessionResourceFailedToSetupListPSReq, + PDUSessionResourceFailedToSetupListSURes, + PDUSessionResourceHandoverList, + PDUSessionResourceListCxtRelCpl, + PDUSessionResourceListCxtRelReq, + PDUSessionResourceListHORqd, + PDUSessionResourceModifyListModCfm, + PDUSessionResourceModifyListModInd, + PDUSessionResourceModifyListModReq, + PDUSessionResourceModifyListModRes, + PDUSessionResourceNotifyList, + PDUSessionResourceReleasedListNot, + PDUSessionResourceReleasedListPSAck, + PDUSessionResourceReleasedListPSFail, + PDUSessionResourceReleasedListRelRes, + PDUSessionResourceResumeListRESReq, + PDUSessionResourceResumeListRESRes, + PDUSessionResourceSecondaryRATUsageList, + PDUSessionResourceSetupListCxtReq, + PDUSessionResourceSetupListCxtRes, + PDUSessionResourceSetupListHOReq, + PDUSessionResourceSetupListSUReq, + PDUSessionResourceSetupListSURes, + PDUSessionResourceSuspendListSUSReq, + PDUSessionResourceSwitchedList, + PDUSessionResourceToBeSwitchedDLList, + PDUSessionResourceToReleaseListHOCmd, + PDUSessionResourceToReleaseListRelCmd, + PEIPSassistanceInformation, + PLMNIdentity, + PLMNSupportList, + PrivacyIndicator, + PWSFailedCellIDList, + PC5QoSParameters, + QMCConfigInfo, + QMCDeactivation, + RANNodeName, + RANPagingPriority, + RANStatusTransfer-TransparentContainer, + RAN-UE-NGAP-ID, + RedCapIndication, + RedirectionVoiceFallback, + RelativeAMFCapacity, + RepetitionPeriod, + ResetType, + RGLevelWirelineAccessCharacteristics, + RoutingID, + RRCEstablishmentCause, + RRCInactiveTransitionReportRequest, + RRCState, + SecurityContext, + SecurityKey, + SerialNumber, + ServedGUAMIList, + SliceSupportList, + S-NSSAI, + SONConfigurationTransfer, + SourceToTarget-TransparentContainer, + SourceToTarget-AMFInformationReroute, + SRVCCOperationPossible, + SupportedTAList, + Suspend-Request-Indication, + Suspend-Response-Indication, + TAI, + TAIListForPaging, + TAIListForRestart, + TargetID, + TargetNSSAIInformation, + TargetToSource-TransparentContainer, + TargettoSource-Failure-TransparentContainer, + TimeSyncAssistanceInfo, + TimeToWait, + TNLAssociationList, + TraceActivation, + TrafficLoadReductionIndication, + TransportLayerAddress, + UEAggregateMaximumBitRate, + UE-associatedLogicalNG-connectionList, + UECapabilityInfoRequest, + UEContextRequest, + UE-DifferentiationInfo, + UE-NGAP-IDs, + UEPagingIdentity, + UEPresenceInAreaOfInterestList, + UERadioCapability, + UERadioCapabilityForPaging, + UERadioCapabilityID, + UERetentionInformation, + UESecurityCapabilities, + UESliceMaximumBitRateList, + UE-UP-CIoT-Support, + UL-CP-SecurityInformation, + UnavailableGUAMIList, + URI-address, + UserLocationInformation, + WarningAreaCoordinates, + WarningAreaList, + WarningMessageContents, + WarningSecurityInfo, + WarningType, + WUS-Assistance-Information, + RIMInformationTransfer + +FROM NGAP-IEs + + PrivateIE-Container{}, + ProtocolExtensionContainer{}, + ProtocolIE-Container{}, + ProtocolIE-ContainerList{}, + ProtocolIE-ContainerPair{}, + ProtocolIE-SingleContainer{}, + NGAP-PRIVATE-IES, + NGAP-PROTOCOL-EXTENSION, + NGAP-PROTOCOL-IES, + NGAP-PROTOCOL-IES-PAIR +FROM NGAP-Containers + + id-AllowedNSSAI, + id-AMFName, + id-AMFOverloadResponse, + id-AMFSetID, + id-AMF-TNLAssociationFailedToSetupList, + id-AMF-TNLAssociationSetupList, + id-AMF-TNLAssociationToAddList, + id-AMF-TNLAssociationToRemoveList, + id-AMF-TNLAssociationToUpdateList, + id-AMFTrafficLoadReductionIndication, + id-AMF-UE-NGAP-ID, + id-AssistanceDataForPaging, + id-AuthenticatedIndication, + id-BroadcastCancelledAreaList, + id-BroadcastCompletedAreaList, + id-CancelAllWarningMessages, + id-Cause, + id-CellIDListForRestart, + id-CEmodeBrestricted, + id-CEmodeBSupport-Indicator, + id-CNAssistedRANTuning, + id-ConcurrentWarningMessageInd, + id-CoreNetworkAssistanceInformationForInactive, + id-CriticalityDiagnostics, + id-DataCodingScheme, + id-DefaultPagingDRX, + id-DirectForwardingPathAvailability, + id-DL-CP-SecurityInformation, + id-EarlyStatusTransfer-TransparentContainer, + id-EDT-Session, + id-EmergencyAreaIDListForRestart, + id-EmergencyFallbackIndicator, + id-ENDC-SONConfigurationTransferDL, + id-ENDC-SONConfigurationTransferUL, + id-EndIndication, + id-Enhanced-CoverageRestriction, + id-EUTRA-CGI, + id-EUTRA-PagingeDRXInformation, + id-Extended-AMFName, + id-Extended-ConnectedTime, + id-Extended-RANNodeName, + id-FiveG-ProSeAuthorized, + id-FiveG-ProSeUEPC5AggregateMaximumBitRate, + id-FiveG-ProSePC5QoSParameters, + id-FiveG-S-TMSI, + id-GlobalRANNodeID, + id-GUAMI, + id-HandoverFlag, + id-HandoverType, + id-IAB-Authorized, + id-IAB-Supported, + id-IABNodeIndication, + id-IMSVoiceSupportIndicator, + id-IndexToRFSP, + id-InfoOnRecommendedCellsAndRANNodesForPaging, + id-IntersystemSONConfigurationTransferDL, + id-IntersystemSONConfigurationTransferUL, + id-LocationReportingRequestType, + id-LTEM-Indication, + id-LTEV2XServicesAuthorized, + id-LTEUESidelinkAggregateMaximumBitrate, + id-ManagementBasedMDTPLMNList, + id-ManagementBasedMDTPLMNModificationList, + id-MaskedIMEISV, + id-MBS-AreaSessionID, + id-MBS-ServiceArea, + id-MBS-SessionID, + id-MBS-DistributionReleaseRequestTransfer, + id-MBS-DistributionSetupRequestTransfer, + id-MBS-DistributionSetupResponseTransfer, + id-MBS-DistributionSetupUnsuccessfulTransfer, + id-MBSSessionModificationFailureTransfer, + id-MBSSessionModificationRequestTransfer, + id-MBSSessionModificationResponseTransfer, + id-MBSSessionReleaseResponseTransfer, + id-MBSSessionSetupFailureTransfer, + id-MBSSessionSetupRequestTransfer, + id-MBSSessionSetupResponseTransfer, + id-MessageIdentifier, + id-MobilityRestrictionList, + id-MulticastSessionActivationRequestTransfer, + id-MulticastSessionDeactivationRequestTransfer, + id-MulticastSessionUpdateRequestTransfer, + id-MulticastGroupPagingAreaList, + id-NAS-PDU, + id-NASC, + id-NASSecurityParametersFromNGRAN, + id-NB-IoT-DefaultPagingDRX, + id-NB-IoT-PagingDRX, + id-NB-IoT-Paging-eDRXInfo, + id-NB-IoT-UEPriority, + id-NewAMF-UE-NGAP-ID, + id-NewGUAMI, + id-NewSecurityContextInd, + id-NGAP-Message, + id-NGRAN-CGI, + id-NGRAN-TNLAssociationToRemoveList, + id-NGRANTraceID, + id-NotifySourceNGRANNode, + id-NPN-AccessInformation, + id-NR-PagingeDRXInformation, + id-NRPPa-PDU, + id-NRV2XServicesAuthorized, + id-NRUESidelinkAggregateMaximumBitrate, + id-NumberOfBroadcastsRequested, + id-OldAMF, + id-OverloadStartNSSAIList, + id-PagingAssisDataforCEcapabUE, + id-PagingCause, + id-PagingDRX, + id-PagingOrigin, + id-PagingPriority, + id-PDUSessionResourceAdmittedList, + id-PDUSessionResourceFailedToModifyListModCfm, + id-PDUSessionResourceFailedToModifyListModRes, + id-PDUSessionResourceFailedToResumeListRESReq, + id-PDUSessionResourceFailedToResumeListRESRes, + id-PDUSessionResourceFailedToSetupListCxtFail, + id-PDUSessionResourceFailedToSetupListCxtRes, + id-PDUSessionResourceFailedToSetupListHOAck, + id-PDUSessionResourceFailedToSetupListPSReq, + id-PDUSessionResourceFailedToSetupListSURes, + id-PDUSessionResourceHandoverList, + id-PDUSessionResourceListCxtRelCpl, + id-PDUSessionResourceListCxtRelReq, + id-PDUSessionResourceListHORqd, + id-PDUSessionResourceModifyListModCfm, + id-PDUSessionResourceModifyListModInd, + id-PDUSessionResourceModifyListModReq, + id-PDUSessionResourceModifyListModRes, + id-PDUSessionResourceNotifyList, + id-PDUSessionResourceReleasedListNot, + id-PDUSessionResourceReleasedListPSAck, + id-PDUSessionResourceReleasedListPSFail, + id-PDUSessionResourceReleasedListRelRes, + id-PDUSessionResourceResumeListRESReq, + id-PDUSessionResourceResumeListRESRes, + id-PDUSessionResourceSecondaryRATUsageList, + id-PDUSessionResourceSetupListCxtReq, + id-PDUSessionResourceSetupListCxtRes, + id-PDUSessionResourceSetupListHOReq, + id-PDUSessionResourceSetupListSUReq, + id-PDUSessionResourceSetupListSURes, + id-PDUSessionResourceSuspendListSUSReq, + id-PDUSessionResourceSwitchedList, + id-PDUSessionResourceToBeSwitchedDLList, + id-PDUSessionResourceToReleaseListHOCmd, + id-PDUSessionResourceToReleaseListRelCmd, + id-PEIPSassistanceInformation, + id-PLMNSupportList, + id-PrivacyIndicator, + id-PWSFailedCellIDList, + id-PC5QoSParameters, + id-QMCConfigInfo, + id-QMCDeactivation, + id-RANNodeName, + id-RANPagingPriority, + id-RANStatusTransfer-TransparentContainer, + id-RAN-UE-NGAP-ID, + id-RedCapIndication, + id-RedirectionVoiceFallback, + id-RelativeAMFCapacity, + id-RepetitionPeriod, + id-ResetType, + id-RGLevelWirelineAccessCharacteristics, + id-RoutingID, + id-RRCEstablishmentCause, + id-RRCInactiveTransitionReportRequest, + id-RRC-Resume-Cause, + id-RRCState, + id-SecurityContext, + id-SecurityKey, + id-SelectedPLMNIdentity, + id-SerialNumber, + id-ServedGUAMIList, + id-SliceSupportList, + id-S-NSSAI, + id-SONConfigurationTransferDL, + id-SONConfigurationTransferUL, + id-SourceAMF-UE-NGAP-ID, + id-SourceToTarget-TransparentContainer, + id-SourceToTarget-AMFInformationReroute, + id-SRVCCOperationPossible, + id-SupportedTAList, + id-Suspend-Request-Indication, + id-Suspend-Response-Indication, + id-TAI, + id-TAIListForPaging, + id-TAIListForRestart, + id-TargetID, + id-TargetNSSAIInformation, + id-TargetToSource-TransparentContainer, + id-TargettoSource-Failure-TransparentContainer, + id-TimeSyncAssistanceInfo, + id-TimeToWait, + id-TNGFIdentityInformation, + id-TraceActivation, + id-TraceCollectionEntityIPAddress, + id-TraceCollectionEntityURI, + id-TWIFIdentityInformation, + id-UEAggregateMaximumBitRate, + id-UE-associatedLogicalNG-connectionList, + id-UECapabilityInfoRequest, + id-UEContextRequest, + id-UE-DifferentiationInfo, + id-UE-NGAP-IDs, + id-UEPagingIdentity, + id-UEPresenceInAreaOfInterestList, + id-UERadioCapability, + id-UERadioCapabilityForPaging, + id-UERadioCapabilityID, + id-UERadioCapability-EUTRA-Format, + id-UERetentionInformation, + id-UESecurityCapabilities, + id-UESliceMaximumBitRateList, + id-UE-UP-CIoT-Support, + id-UL-CP-SecurityInformation, + id-UnavailableGUAMIList, + id-UserLocationInformation, + id-W-AGFIdentityInformation, + id-WarningAreaCoordinates, + id-WarningAreaList, + id-WarningMessageContents, + id-WarningSecurityInfo, + id-WarningType, + id-WUS-Assistance-Information, + id-RIMInformationTransfer + +FROM NGAP-Constants; + +-- ************************************************************** +-- +-- PDU SESSION MANAGEMENT ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PDU Session Resource Setup Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PDU SESSION RESOURCE SETUP REQUEST +-- +-- ************************************************************** + +PDUSessionResourceSetupRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceSetupRequestIEs} }, + ... +} + +PDUSessionResourceSetupRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RANPagingPriority CRITICALITY ignore TYPE RANPagingPriority PRESENCE optional }| + { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE optional }| + { ID id-PDUSessionResourceSetupListSUReq CRITICALITY reject TYPE PDUSessionResourceSetupListSUReq PRESENCE mandatory }| + { ID id-UEAggregateMaximumBitRate CRITICALITY ignore TYPE UEAggregateMaximumBitRate PRESENCE optional }| + { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- PDU SESSION RESOURCE SETUP RESPONSE +-- +-- ************************************************************** + +PDUSessionResourceSetupResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceSetupResponseIEs} }, + ... +} + +PDUSessionResourceSetupResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceSetupListSURes CRITICALITY ignore TYPE PDUSessionResourceSetupListSURes PRESENCE optional }| + { ID id-PDUSessionResourceFailedToSetupListSURes CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListSURes PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Release Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PDU SESSION RESOURCE RELEASE COMMAND +-- +-- ************************************************************** + +PDUSessionResourceReleaseCommand ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceReleaseCommandIEs} }, + ... +} + +PDUSessionResourceReleaseCommandIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RANPagingPriority CRITICALITY ignore TYPE RANPagingPriority PRESENCE optional }| + { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE optional }| + { ID id-PDUSessionResourceToReleaseListRelCmd CRITICALITY reject TYPE PDUSessionResourceToReleaseListRelCmd PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- PDU SESSION RESOURCE RELEASE RESPONSE +-- +-- ************************************************************** + +PDUSessionResourceReleaseResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceReleaseResponseIEs} }, + ... +} + +PDUSessionResourceReleaseResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceReleasedListRelRes CRITICALITY ignore TYPE PDUSessionResourceReleasedListRelRes PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- PDU Session Resource Modify Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PDU SESSION RESOURCE MODIFY REQUEST +-- +-- ************************************************************** + +PDUSessionResourceModifyRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceModifyRequestIEs} }, + ... +} + +PDUSessionResourceModifyRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RANPagingPriority CRITICALITY ignore TYPE RANPagingPriority PRESENCE optional }| + { ID id-PDUSessionResourceModifyListModReq CRITICALITY reject TYPE PDUSessionResourceModifyListModReq PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- PDU SESSION RESOURCE MODIFY RESPONSE +-- +-- ************************************************************** + +PDUSessionResourceModifyResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceModifyResponseIEs} }, + ... +} + +PDUSessionResourceModifyResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceModifyListModRes CRITICALITY ignore TYPE PDUSessionResourceModifyListModRes PRESENCE optional }| + { ID id-PDUSessionResourceFailedToModifyListModRes CRITICALITY ignore TYPE PDUSessionResourceFailedToModifyListModRes PRESENCE optional }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Notify Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PDU SESSION RESOURCE NOTIFY +-- +-- ************************************************************** + +PDUSessionResourceNotify ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceNotifyIEs} }, + ... +} + +PDUSessionResourceNotifyIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceNotifyList CRITICALITY reject TYPE PDUSessionResourceNotifyList PRESENCE optional }| + { ID id-PDUSessionResourceReleasedListNot CRITICALITY ignore TYPE PDUSessionResourceReleasedListNot PRESENCE optional }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- PDU Session Resource Modify Indication Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PDU SESSION RESOURCE MODIFY INDICATION +-- +-- ************************************************************** + +PDUSessionResourceModifyIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceModifyIndicationIEs} }, + ... +} + +PDUSessionResourceModifyIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceModifyListModInd CRITICALITY reject TYPE PDUSessionResourceModifyListModInd PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- PDU SESSION RESOURCE MODIFY CONFIRM +-- +-- ************************************************************** + +PDUSessionResourceModifyConfirm ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PDUSessionResourceModifyConfirmIEs} }, + ... +} + +PDUSessionResourceModifyConfirmIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceModifyListModCfm CRITICALITY ignore TYPE PDUSessionResourceModifyListModCfm PRESENCE optional }| + { ID id-PDUSessionResourceFailedToModifyListModCfm CRITICALITY ignore TYPE PDUSessionResourceFailedToModifyListModCfm PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT MANAGEMENT ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- Initial Context Setup Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- INITIAL CONTEXT SETUP REQUEST +-- +-- ************************************************************** + +InitialContextSetupRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {InitialContextSetupRequestIEs} }, + ... +} + +InitialContextSetupRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-OldAMF CRITICALITY reject TYPE AMFName PRESENCE optional }| + { ID id-UEAggregateMaximumBitRate CRITICALITY reject TYPE UEAggregateMaximumBitRate PRESENCE conditional }| + { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| + { ID id-GUAMI CRITICALITY reject TYPE GUAMI PRESENCE mandatory }| + { ID id-PDUSessionResourceSetupListCxtReq CRITICALITY reject TYPE PDUSessionResourceSetupListCxtReq PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE mandatory }| + { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory }| + { ID id-SecurityKey CRITICALITY reject TYPE SecurityKey PRESENCE mandatory }| + { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }| + { ID id-MobilityRestrictionList CRITICALITY ignore TYPE MobilityRestrictionList PRESENCE optional }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-IndexToRFSP CRITICALITY ignore TYPE IndexToRFSP PRESENCE optional }| + { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }| + { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE optional }| + { ID id-EmergencyFallbackIndicator CRITICALITY reject TYPE EmergencyFallbackIndicator PRESENCE optional }| + { ID id-RRCInactiveTransitionReportRequest CRITICALITY ignore TYPE RRCInactiveTransitionReportRequest PRESENCE optional }| + { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }| + { ID id-RedirectionVoiceFallback CRITICALITY ignore TYPE RedirectionVoiceFallback PRESENCE optional }| + { ID id-LocationReportingRequestType CRITICALITY ignore TYPE LocationReportingRequestType PRESENCE optional }| + { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-IAB-Authorized CRITICALITY ignore TYPE IAB-Authorized PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| +{ ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| +{ ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| +{ ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| +{ ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-UE-UP-CIoT-Support CRITICALITY ignore TYPE UE-UP-CIoT-Support PRESENCE optional }| + { ID id-RGLevelWirelineAccessCharacteristics CRITICALITY ignore TYPE RGLevelWirelineAccessCharacteristics PRESENCE optional }| + { ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }| + { ID id-TimeSyncAssistanceInfo CRITICALITY ignore TYPE TimeSyncAssistanceInfo PRESENCE optional }| + { ID id-QMCConfigInfo CRITICALITY ignore TYPE QMCConfigInfo PRESENCE optional }| + { ID id-TargetNSSAIInformation CRITICALITY ignore TYPE TargetNSSAIInformation PRESENCE optional }| + { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }| + { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }| + { ID id-FiveG-ProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-FiveG-ProSePC5QoSParameters CRITICALITY ignore TYPE FiveG-ProSePC5QoSParameters PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- INITIAL CONTEXT SETUP RESPONSE +-- +-- ************************************************************** + +InitialContextSetupResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {InitialContextSetupResponseIEs} }, + ... +} + +InitialContextSetupResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceSetupListCxtRes CRITICALITY ignore TYPE PDUSessionResourceSetupListCxtRes PRESENCE optional }| + { ID id-PDUSessionResourceFailedToSetupListCxtRes CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListCxtRes PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- INITIAL CONTEXT SETUP FAILURE +-- +-- ************************************************************** + +InitialContextSetupFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {InitialContextSetupFailureIEs} }, + ... +} + +InitialContextSetupFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceFailedToSetupListCxtFail CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListCxtFail PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE Context Release Request Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE CONTEXT RELEASE REQUEST +-- +-- ************************************************************** + +UEContextReleaseRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextReleaseRequest-IEs} }, + ... +} + +UEContextReleaseRequest-IEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceListCxtRelReq CRITICALITY reject TYPE PDUSessionResourceListCxtRelReq PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UE Context Release Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE CONTEXT RELEASE COMMAND +-- +-- ************************************************************** + +UEContextReleaseCommand ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextReleaseCommand-IEs} }, + ... +} + +UEContextReleaseCommand-IEs NGAP-PROTOCOL-IES ::= { + { ID id-UE-NGAP-IDs CRITICALITY reject TYPE UE-NGAP-IDs PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT RELEASE COMPLETE +-- +-- ************************************************************** + +UEContextReleaseComplete ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextReleaseComplete-IEs} }, + ... +} + +UEContextReleaseComplete-IEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }| + { ID id-InfoOnRecommendedCellsAndRANNodesForPaging CRITICALITY ignore TYPE InfoOnRecommendedCellsAndRANNodesForPaging PRESENCE optional }| + { ID id-PDUSessionResourceListCxtRelCpl CRITICALITY reject TYPE PDUSessionResourceListCxtRelCpl PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-PagingAssisDataforCEcapabUE CRITICALITY ignore TYPE PagingAssisDataforCEcapabUE PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE Context Resume Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE CONTEXT RESUME REQUEST +-- +-- ************************************************************** + +UEContextResumeRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextResumeRequestIEs} }, + ... +} + +UEContextResumeRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RRC-Resume-Cause CRITICALITY ignore TYPE RRCEstablishmentCause PRESENCE mandatory }| + { ID id-PDUSessionResourceResumeListRESReq CRITICALITY reject TYPE PDUSessionResourceResumeListRESReq PRESENCE optional }| + { ID id-PDUSessionResourceFailedToResumeListRESReq CRITICALITY reject TYPE PDUSessionResourceFailedToResumeListRESReq PRESENCE optional }| + { ID id-Suspend-Request-Indication CRITICALITY ignore TYPE Suspend-Request-Indication PRESENCE optional }| + { ID id-InfoOnRecommendedCellsAndRANNodesForPaging CRITICALITY ignore TYPE InfoOnRecommendedCellsAndRANNodesForPaging PRESENCE optional }| + { ID id-PagingAssisDataforCEcapabUE CRITICALITY ignore TYPE PagingAssisDataforCEcapabUE PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT RESUME RESPONSE +-- +-- ************************************************************** + +UEContextResumeResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextResumeResponseIEs} }, + ... +} + +UEContextResumeResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceResumeListRESRes CRITICALITY reject TYPE PDUSessionResourceResumeListRESRes PRESENCE optional }| + { ID id-PDUSessionResourceFailedToResumeListRESRes CRITICALITY reject TYPE PDUSessionResourceFailedToResumeListRESRes PRESENCE optional }| + { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE optional }| + { ID id-Suspend-Response-Indication CRITICALITY ignore TYPE Suspend-Response-Indication PRESENCE optional }| + { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT RESUME FAILURE +-- +-- ************************************************************** + +UEContextResumeFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { UEContextResumeFailureIEs} }, + ... +} + +UEContextResumeFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- UE Context Suspend Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE CONTEXT SUSPEND REQUEST +-- +-- ************************************************************** + +UEContextSuspendRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextSuspendRequestIEs} }, + ... +} + +UEContextSuspendRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-InfoOnRecommendedCellsAndRANNodesForPaging CRITICALITY ignore TYPE InfoOnRecommendedCellsAndRANNodesForPaging PRESENCE optional }| + { ID id-PagingAssisDataforCEcapabUE CRITICALITY ignore TYPE PagingAssisDataforCEcapabUE PRESENCE optional }| + { ID id-PDUSessionResourceSuspendListSUSReq CRITICALITY reject TYPE PDUSessionResourceSuspendListSUSReq PRESENCE optional }, ... +} + +-- ************************************************************** +-- +-- UE CONTEXT SUSPEND RESPONSE +-- +-- ************************************************************** + +UEContextSuspendResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextSuspendResponseIEs} }, + ... +} + +UEContextSuspendResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT SUSPEND FAILURE +-- +-- ************************************************************** + +UEContextSuspendFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { UEContextSuspendFailureIEs} }, + ... +} + +UEContextSuspendFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE Context Modification Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE CONTEXT MODIFICATION REQUEST +-- +-- ************************************************************** + +UEContextModificationRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextModificationRequestIEs} }, + ... +} + +UEContextModificationRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RANPagingPriority CRITICALITY ignore TYPE RANPagingPriority PRESENCE optional }| + { ID id-SecurityKey CRITICALITY reject TYPE SecurityKey PRESENCE optional }| + { ID id-IndexToRFSP CRITICALITY ignore TYPE IndexToRFSP PRESENCE optional }| + { ID id-UEAggregateMaximumBitRate CRITICALITY ignore TYPE UEAggregateMaximumBitRate PRESENCE optional }| + { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE optional }| + { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| + { ID id-EmergencyFallbackIndicator CRITICALITY reject TYPE EmergencyFallbackIndicator PRESENCE optional }| + { ID id-NewAMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE optional }| + { ID id-RRCInactiveTransitionReportRequest CRITICALITY ignore TYPE RRCInactiveTransitionReportRequest PRESENCE optional }| + { ID id-NewGUAMI CRITICALITY reject TYPE GUAMI PRESENCE optional }| + { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-IAB-Authorized CRITICALITY ignore TYPE IAB-Authorized PRESENCE optional }| + { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| + { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| + { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }| + { ID id-RGLevelWirelineAccessCharacteristics CRITICALITY ignore TYPE RGLevelWirelineAccessCharacteristics PRESENCE optional }| + { ID id-TimeSyncAssistanceInfo CRITICALITY ignore TYPE TimeSyncAssistanceInfo PRESENCE optional }| + { ID id-QMCConfigInfo CRITICALITY ignore TYPE QMCConfigInfo PRESENCE optional }| + { ID id-QMCDeactivation CRITICALITY ignore TYPE QMCDeactivation PRESENCE optional }| + { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }| + { ID id-ManagementBasedMDTPLMNModificationList CRITICALITY ignore TYPE MDTPLMNModificationList PRESENCE optional }| + { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }| + { ID id-FiveG-ProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-FiveG-ProSePC5QoSParameters CRITICALITY ignore TYPE FiveG-ProSePC5QoSParameters PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT MODIFICATION RESPONSE +-- +-- ************************************************************** + +UEContextModificationResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextModificationResponseIEs} }, + ... +} + +UEContextModificationResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RRCState CRITICALITY ignore TYPE RRCState PRESENCE optional }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE CONTEXT MODIFICATION FAILURE +-- +-- ************************************************************** + +UEContextModificationFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UEContextModificationFailureIEs} }, + ... +} + +UEContextModificationFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RRC INACTIVE TRANSITION REPORT +-- +-- ************************************************************** + +RRCInactiveTransitionReport ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {RRCInactiveTransitionReportIEs} }, + ... +} + +RRCInactiveTransitionReportIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RRCState CRITICALITY ignore TYPE RRCState PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- Retrieve UE Information +-- +-- ************************************************************** + +RetrieveUEInformation ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { RetrieveUEInformationIEs} }, + ... +} + +RetrieveUEInformationIEs NGAP-PROTOCOL-IES ::= { + { ID id-FiveG-S-TMSI CRITICALITY reject TYPE FiveG-S-TMSI PRESENCE mandatory }, + ... + +} + +-- ************************************************************** + +-- UE Information Transfer +-- +-- ************************************************************** + +UEInformationTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { UEInformationTransferIEs} }, + ... +} + +UEInformationTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-FiveG-S-TMSI CRITICALITY reject TYPE FiveG-S-TMSI PRESENCE mandatory }| + { ID id-NB-IoT-UEPriority CRITICALITY ignore TYPE NB-IoT-UEPriority PRESENCE optional }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-S-NSSAI CRITICALITY ignore TYPE S-NSSAI PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY ignore TYPE AllowedNSSAI PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| + { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RAN CP Relocation Indication +-- +-- ************************************************************** + +RANCPRelocationIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { RANCPRelocationIndicationIEs} }, + ... +} + +RANCPRelocationIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-FiveG-S-TMSI CRITICALITY reject TYPE FiveG-S-TMSI PRESENCE mandatory }| + { ID id-EUTRA-CGI CRITICALITY ignore TYPE EUTRA-CGI PRESENCE mandatory }| + { ID id-TAI CRITICALITY ignore TYPE TAI PRESENCE mandatory }| + { ID id-UL-CP-SecurityInformation CRITICALITY reject TYPE UL-CP-SecurityInformation PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UE MOBILITY MANAGEMENT ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- Handover Preparation Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- HANDOVER REQUIRED +-- +-- ************************************************************** + +HandoverRequired ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {HandoverRequiredIEs} }, + ... +} + +HandoverRequiredIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-TargetID CRITICALITY reject TYPE TargetID PRESENCE mandatory }| + { ID id-DirectForwardingPathAvailability CRITICALITY ignore TYPE DirectForwardingPathAvailability PRESENCE optional }| + { ID id-PDUSessionResourceListHORqd CRITICALITY reject TYPE PDUSessionResourceListHORqd PRESENCE mandatory }| + { ID id-SourceToTarget-TransparentContainer CRITICALITY reject TYPE SourceToTarget-TransparentContainer PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- HANDOVER COMMAND +-- +-- ************************************************************** + +HandoverCommand ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {HandoverCommandIEs} }, + ... +} + +HandoverCommandIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory }| + { ID id-NASSecurityParametersFromNGRAN CRITICALITY reject TYPE NASSecurityParametersFromNGRAN PRESENCE conditional }| + -- This IE shall be present if HandoverType IE is set to value "5GStoEPPS" or “5GStoUTRAN” -- + { ID id-PDUSessionResourceHandoverList CRITICALITY ignore TYPE PDUSessionResourceHandoverList PRESENCE optional }| + { ID id-PDUSessionResourceToReleaseListHOCmd CRITICALITY ignore TYPE PDUSessionResourceToReleaseListHOCmd PRESENCE optional }| + { ID id-TargetToSource-TransparentContainer CRITICALITY reject TYPE TargetToSource-TransparentContainer PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- HANDOVER PREPARATION FAILURE +-- +-- ************************************************************** + +HandoverPreparationFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {HandoverPreparationFailureIEs} }, + ... +} + +HandoverPreparationFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-TargettoSource-Failure-TransparentContainer CRITICALITY ignore TYPE TargettoSource-Failure-TransparentContainer PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Handover Resource Allocation Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- HANDOVER REQUEST +-- +-- ************************************************************** + +HandoverRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {HandoverRequestIEs} }, + ... +} + +HandoverRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-HandoverType CRITICALITY reject TYPE HandoverType PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-UEAggregateMaximumBitRate CRITICALITY reject TYPE UEAggregateMaximumBitRate PRESENCE mandatory }| + { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| + { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory }| + { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory }| + { ID id-NewSecurityContextInd CRITICALITY reject TYPE NewSecurityContextInd PRESENCE optional }| + { ID id-NASC CRITICALITY reject TYPE NAS-PDU PRESENCE optional }| + { ID id-PDUSessionResourceSetupListHOReq CRITICALITY reject TYPE PDUSessionResourceSetupListHOReq PRESENCE mandatory }| + { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE mandatory }| + { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }| + { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }| + { ID id-SourceToTarget-TransparentContainer CRITICALITY reject TYPE SourceToTarget-TransparentContainer PRESENCE mandatory }| + { ID id-MobilityRestrictionList CRITICALITY ignore TYPE MobilityRestrictionList PRESENCE optional }| + { ID id-LocationReportingRequestType CRITICALITY ignore TYPE LocationReportingRequestType PRESENCE optional }| + { ID id-RRCInactiveTransitionReportRequest CRITICALITY ignore TYPE RRCInactiveTransitionReportRequest PRESENCE optional }| + { ID id-GUAMI CRITICALITY reject TYPE GUAMI PRESENCE mandatory }| + { ID id-RedirectionVoiceFallback CRITICALITY ignore TYPE RedirectionVoiceFallback PRESENCE optional }| + { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-IAB-Authorized CRITICALITY reject TYPE IAB-Authorized PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| + { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| + { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| + { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-UE-UP-CIoT-Support CRITICALITY ignore TYPE UE-UP-CIoT-Support PRESENCE optional }| + { ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }| + { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }| + { ID id-TimeSyncAssistanceInfo CRITICALITY ignore TYPE TimeSyncAssistanceInfo PRESENCE optional }| + { ID id-UESliceMaximumBitRateList CRITICALITY ignore TYPE UESliceMaximumBitRateList PRESENCE optional }| + { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }| + { ID id-FiveG-ProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-FiveG-ProSePC5QoSParameters CRITICALITY ignore TYPE FiveG-ProSePC5QoSParameters PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- HANDOVER REQUEST ACKNOWLEDGE +-- +-- ************************************************************** + +HandoverRequestAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {HandoverRequestAcknowledgeIEs} }, + ... +} + +HandoverRequestAcknowledgeIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceAdmittedList CRITICALITY ignore TYPE PDUSessionResourceAdmittedList PRESENCE mandatory }| + { ID id-PDUSessionResourceFailedToSetupListHOAck CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListHOAck PRESENCE optional }| + { ID id-TargetToSource-TransparentContainer CRITICALITY reject TYPE TargetToSource-TransparentContainer PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-NPN-AccessInformation CRITICALITY reject TYPE NPN-AccessInformation PRESENCE optional }| + { ID id-RedCapIndication CRITICALITY ignore TYPE RedCapIndication PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- HANDOVER FAILURE +-- +-- ************************************************************** + +HandoverFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { HandoverFailureIEs} }, + ... +} + +HandoverFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-TargettoSource-Failure-TransparentContainer CRITICALITY ignore TYPE TargettoSource-Failure-TransparentContainer PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Handover Notification Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- HANDOVER NOTIFY +-- +-- ************************************************************** + +HandoverNotify ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { HandoverNotifyIEs} }, + ... +} + +HandoverNotifyIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }| + { ID id-NotifySourceNGRANNode CRITICALITY ignore TYPE NotifySourceNGRANNode PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Path Switch Request Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PATH SWITCH REQUEST +-- +-- ************************************************************** + +PathSwitchRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { PathSwitchRequestIEs} }, + ... +} + +PathSwitchRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-SourceAMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }| + { ID id-UESecurityCapabilities CRITICALITY ignore TYPE UESecurityCapabilities PRESENCE mandatory }| + { ID id-PDUSessionResourceToBeSwitchedDLList CRITICALITY reject TYPE PDUSessionResourceToBeSwitchedDLList PRESENCE mandatory }| + { ID id-PDUSessionResourceFailedToSetupListPSReq CRITICALITY ignore TYPE PDUSessionResourceFailedToSetupListPSReq PRESENCE optional }| + { ID id-RRC-Resume-Cause CRITICALITY ignore TYPE RRCEstablishmentCause PRESENCE optional }| + { ID id-RedCapIndication CRITICALITY ignore TYPE RedCapIndication PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- PATH SWITCH REQUEST ACKNOWLEDGE +-- +-- ************************************************************** + +PathSwitchRequestAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { PathSwitchRequestAcknowledgeIEs} }, + ... +} + +PathSwitchRequestAcknowledgeIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE optional }| + { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory }| + { ID id-NewSecurityContextInd CRITICALITY reject TYPE NewSecurityContextInd PRESENCE optional }| + { ID id-PDUSessionResourceSwitchedList CRITICALITY ignore TYPE PDUSessionResourceSwitchedList PRESENCE mandatory }| + { ID id-PDUSessionResourceReleasedListPSAck CRITICALITY ignore TYPE PDUSessionResourceReleasedListPSAck PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE mandatory }| + { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| + { ID id-RRCInactiveTransitionReportRequest CRITICALITY ignore TYPE RRCInactiveTransitionReportRequest PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-RedirectionVoiceFallback CRITICALITY ignore TYPE RedirectionVoiceFallback PRESENCE optional }| + { ID id-CNAssistedRANTuning CRITICALITY ignore TYPE CNAssistedRANTuning PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| + { ID id-NRV2XServicesAuthorized CRITICALITY ignore TYPE NRV2XServicesAuthorized PRESENCE optional }| + { ID id-LTEV2XServicesAuthorized CRITICALITY ignore TYPE LTEV2XServicesAuthorized PRESENCE optional }| + { ID id-NRUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-LTEUESidelinkAggregateMaximumBitrate CRITICALITY ignore TYPE LTEUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-PC5QoSParameters CRITICALITY ignore TYPE PC5QoSParameters PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-UE-UP-CIoT-Support CRITICALITY ignore TYPE UE-UP-CIoT-Support PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }| + { ID id-ManagementBasedMDTPLMNList CRITICALITY ignore TYPE MDTPLMNList PRESENCE optional }| + { ID id-TimeSyncAssistanceInfo CRITICALITY ignore TYPE TimeSyncAssistanceInfo PRESENCE optional }| + { ID id-FiveG-ProSeAuthorized CRITICALITY ignore TYPE FiveG-ProSeAuthorized PRESENCE optional }| + { ID id-FiveG-ProSeUEPC5AggregateMaximumBitRate CRITICALITY ignore TYPE NRUESidelinkAggregateMaximumBitrate PRESENCE optional }| + { ID id-FiveG-ProSePC5QoSParameters CRITICALITY ignore TYPE FiveG-ProSePC5QoSParameters PRESENCE optional }| + { ID id-ManagementBasedMDTPLMNModificationList CRITICALITY ignore TYPE MDTPLMNModificationList PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- PATH SWITCH REQUEST FAILURE +-- +-- ************************************************************** + +PathSwitchRequestFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { PathSwitchRequestFailureIEs} }, + ... +} + +PathSwitchRequestFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceReleasedListPSFail CRITICALITY ignore TYPE PDUSessionResourceReleasedListPSFail PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Handover Cancellation Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- HANDOVER CANCEL +-- +-- ************************************************************** + +HandoverCancel ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { HandoverCancelIEs} }, + ... +} + +HandoverCancelIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- HANDOVER CANCEL ACKNOWLEDGE +-- +-- ************************************************************** + +HandoverCancelAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { HandoverCancelAcknowledgeIEs} }, + ... +} + +HandoverCancelAcknowledgeIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- HANDOVER SUCCESS ELEMENTARY PROCEDURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- HANDOVER SUCCESS +-- +-- ************************************************************** + +HandoverSuccess ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { HandoverSuccessIEs} }, + ... +} + +HandoverSuccessIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UPLINK RAN EARLY STATUS TRANSFER ELEMENTARY PROCEDURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- Uplink RAN Early Status Transfer +-- +-- ************************************************************** + +UplinkRANEarlyStatusTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UplinkRANEarlyStatusTransferIEs} }, + ... +} + +UplinkRANEarlyStatusTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory}| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory}| + { ID id-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE EarlyStatusTransfer-TransparentContainer PRESENCE mandatory}, + ... +} + +-- ************************************************************** +-- +-- DOWNLINK RAN EARLY STATUS TRANSFER ELEMENTARY PROCEDURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- Downlink RAN Early Status Transfer +-- +-- ************************************************************** + +DownlinkRANEarlyStatusTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DownlinkRANEarlyStatusTransferIEs} }, + ... +} + +DownlinkRANEarlyStatusTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory}| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory}| + { ID id-EarlyStatusTransfer-TransparentContainer CRITICALITY reject TYPE EarlyStatusTransfer-TransparentContainer PRESENCE mandatory}, + ... +} + + +-- ************************************************************** +-- +-- Uplink RAN Status Transfer Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UPLINK RAN STATUS TRANSFER +-- +-- ************************************************************** + +UplinkRANStatusTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UplinkRANStatusTransferIEs} }, + ... +} + +UplinkRANStatusTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RANStatusTransfer-TransparentContainer CRITICALITY reject TYPE RANStatusTransfer-TransparentContainer PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- Downlink RAN Status Transfer Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- DOWNLINK RAN STATUS TRANSFER +-- +-- ************************************************************** + +DownlinkRANStatusTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DownlinkRANStatusTransferIEs} }, + ... +} + +DownlinkRANStatusTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RANStatusTransfer-TransparentContainer CRITICALITY reject TYPE RANStatusTransfer-TransparentContainer PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- PAGING ELEMENTARY PROCEDURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PAGING +-- +-- ************************************************************** + +Paging ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PagingIEs} }, + ... +} + +PagingIEs NGAP-PROTOCOL-IES ::= { + { ID id-UEPagingIdentity CRITICALITY ignore TYPE UEPagingIdentity PRESENCE mandatory }| + { ID id-PagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional }| + { ID id-TAIListForPaging CRITICALITY ignore TYPE TAIListForPaging PRESENCE mandatory }| + { ID id-PagingPriority CRITICALITY ignore TYPE PagingPriority PRESENCE optional }| + { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }| + { ID id-PagingOrigin CRITICALITY ignore TYPE PagingOrigin PRESENCE optional }| + { ID id-AssistanceDataForPaging CRITICALITY ignore TYPE AssistanceDataForPaging PRESENCE optional }| + { ID id-NB-IoT-Paging-eDRXInfo CRITICALITY ignore TYPE NB-IoT-Paging-eDRXInfo PRESENCE optional }| + { ID id-NB-IoT-PagingDRX CRITICALITY ignore TYPE NB-IoT-PagingDRX PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-WUS-Assistance-Information CRITICALITY ignore TYPE WUS-Assistance-Information PRESENCE optional }| + { ID id-EUTRA-PagingeDRXInformation CRITICALITY ignore TYPE EUTRA-PagingeDRXInformation PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-NR-PagingeDRXInformation CRITICALITY ignore TYPE NR-PagingeDRXInformation PRESENCE optional }| + { ID id-PagingCause CRITICALITY ignore TYPE PagingCause PRESENCE optional }| + { ID id-PEIPSassistanceInformation CRITICALITY ignore TYPE PEIPSassistanceInformation PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- NAS TRANSPORT ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- INITIAL UE MESSAGE +-- +-- ************************************************************** + +InitialUEMessage ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {InitialUEMessage-IEs} }, + ... +} + +InitialUEMessage-IEs NGAP-PROTOCOL-IES ::= { + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY reject TYPE UserLocationInformation PRESENCE mandatory }| + { ID id-RRCEstablishmentCause CRITICALITY ignore TYPE RRCEstablishmentCause PRESENCE mandatory }| + { ID id-FiveG-S-TMSI CRITICALITY reject TYPE FiveG-S-TMSI PRESENCE optional }| + { ID id-AMFSetID CRITICALITY ignore TYPE AMFSetID PRESENCE optional }| + { ID id-UEContextRequest CRITICALITY ignore TYPE UEContextRequest PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE optional }| + { ID id-SourceToTarget-AMFInformationReroute CRITICALITY ignore TYPE SourceToTarget-AMFInformationReroute PRESENCE optional }| + { ID id-SelectedPLMNIdentity CRITICALITY ignore TYPE PLMNIdentity PRESENCE optional }| + { ID id-IABNodeIndication CRITICALITY reject TYPE IABNodeIndication PRESENCE optional }| + { ID id-CEmodeBSupport-Indicator CRITICALITY reject TYPE CEmodeBSupport-Indicator PRESENCE optional }| + { ID id-LTEM-Indication CRITICALITY ignore TYPE LTEM-Indication PRESENCE optional }| + { ID id-EDT-Session CRITICALITY ignore TYPE EDT-Session PRESENCE optional }| + { ID id-AuthenticatedIndication CRITICALITY ignore TYPE AuthenticatedIndication PRESENCE optional }| + { ID id-NPN-AccessInformation CRITICALITY reject TYPE NPN-AccessInformation PRESENCE optional }| + { ID id-RedCapIndication CRITICALITY ignore TYPE RedCapIndication PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- DOWNLINK NAS TRANSPORT +-- +-- ************************************************************** + +DownlinkNASTransport ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DownlinkNASTransport-IEs} }, + ... +} + +DownlinkNASTransport-IEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-OldAMF CRITICALITY reject TYPE AMFName PRESENCE optional }| + { ID id-RANPagingPriority CRITICALITY ignore TYPE RANPagingPriority PRESENCE optional }| + { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE mandatory }| + { ID id-MobilityRestrictionList CRITICALITY ignore TYPE MobilityRestrictionList PRESENCE optional }| + { ID id-IndexToRFSP CRITICALITY ignore TYPE IndexToRFSP PRESENCE optional }| + { ID id-UEAggregateMaximumBitRate CRITICALITY ignore TYPE UEAggregateMaximumBitRate PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE optional }| + { ID id-SRVCCOperationPossible CRITICALITY ignore TYPE SRVCCOperationPossible PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-Extended-ConnectedTime CRITICALITY ignore TYPE Extended-ConnectedTime PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-UECapabilityInfoRequest CRITICALITY ignore TYPE UECapabilityInfoRequest PRESENCE optional }| + { ID id-EndIndication CRITICALITY ignore TYPE EndIndication PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }| + { ID id-TargetNSSAIInformation CRITICALITY ignore TYPE TargetNSSAIInformation PRESENCE optional }| + { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UPLINK NAS TRANSPORT +-- +-- ************************************************************** + +UplinkNASTransport ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UplinkNASTransport-IEs} }, + ... +} + +-- WS modification, add a definition for messages +W-AGFIdentityInformation ::= OCTET STRING +TNGFIdentityInformation ::= OCTET STRING +TWIFIdentityInformation ::= OCTET STRING + +UplinkNASTransport-IEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-NAS-PDU CRITICALITY reject TYPE NAS-PDU PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }| +-- WS modification, add a definition for messages +-- { ID id-W-AGFIdentityInformation CRITICALITY reject TYPE OCTET STRING PRESENCE optional }| + { ID id-W-AGFIdentityInformation CRITICALITY reject TYPE W-AGFIdentityInformation PRESENCE optional }| +-- { ID id-TNGFIdentityInformation CRITICALITY reject TYPE OCTET STRING PRESENCE optional }| + { ID id-TNGFIdentityInformation CRITICALITY reject TYPE TNGFIdentityInformation PRESENCE optional }| +-- { ID id-TWIFIdentityInformation CRITICALITY reject TYPE OCTET STRING PRESENCE optional }, + { ID id-TWIFIdentityInformation CRITICALITY reject TYPE TWIFIdentityInformation PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- NAS NON DELIVERY INDICATION +-- +-- ************************************************************** + +NASNonDeliveryIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {NASNonDeliveryIndication-IEs} }, + ... +} + +NASNonDeliveryIndication-IEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-NAS-PDU CRITICALITY ignore TYPE NAS-PDU PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- REROUTE NAS REQUEST +-- +-- ************************************************************** + +RerouteNASRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {RerouteNASRequest-IEs} }, + ... +} + +-- WS modification, add a definition for NGAP Message +NGAP-Message ::= OCTET STRING + +RerouteNASRequest-IEs NGAP-PROTOCOL-IES ::= { + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE optional }| +-- WS modification, add a definition for NGAP Message +-- { ID id-NGAP-Message CRITICALITY reject TYPE OCTET STRING PRESENCE mandatory }| + { ID id-NGAP-Message CRITICALITY reject TYPE NGAP-Message PRESENCE mandatory }| + { ID id-AMFSetID CRITICALITY reject TYPE AMFSetID PRESENCE mandatory }| + { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE optional }| + { ID id-SourceToTarget-AMFInformationReroute CRITICALITY ignore TYPE SourceToTarget-AMFInformationReroute PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- INTERFACE MANAGEMENT ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- NG Setup Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- NG SETUP REQUEST +-- +-- ************************************************************** + +NGSetupRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {NGSetupRequestIEs} }, + ... +} + +NGSetupRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-GlobalRANNodeID CRITICALITY reject TYPE GlobalRANNodeID PRESENCE mandatory }| + { ID id-RANNodeName CRITICALITY ignore TYPE RANNodeName PRESENCE optional }| + { ID id-SupportedTAList CRITICALITY reject TYPE SupportedTAList PRESENCE mandatory }| + { ID id-DefaultPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE mandatory }| + { ID id-UERetentionInformation CRITICALITY ignore TYPE UERetentionInformation PRESENCE optional }| + { ID id-NB-IoT-DefaultPagingDRX CRITICALITY ignore TYPE NB-IoT-DefaultPagingDRX PRESENCE optional }| + { ID id-Extended-RANNodeName CRITICALITY ignore TYPE Extended-RANNodeName PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- NG SETUP RESPONSE +-- +-- ************************************************************** + +NGSetupResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {NGSetupResponseIEs} }, + ... +} + +NGSetupResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMFName CRITICALITY reject TYPE AMFName PRESENCE mandatory }| + { ID id-ServedGUAMIList CRITICALITY reject TYPE ServedGUAMIList PRESENCE mandatory }| + { ID id-RelativeAMFCapacity CRITICALITY ignore TYPE RelativeAMFCapacity PRESENCE mandatory }| + { ID id-PLMNSupportList CRITICALITY reject TYPE PLMNSupportList PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-UERetentionInformation CRITICALITY ignore TYPE UERetentionInformation PRESENCE optional }| + { ID id-IAB-Supported CRITICALITY ignore TYPE IAB-Supported PRESENCE optional }| + { ID id-Extended-AMFName CRITICALITY ignore TYPE Extended-AMFName PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- NG SETUP FAILURE +-- +-- ************************************************************** + +NGSetupFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {NGSetupFailureIEs} }, + ... +} + +NGSetupFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RAN Configuration Update Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- RAN CONFIGURATION UPDATE +-- +-- ************************************************************** + +RANConfigurationUpdate ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {RANConfigurationUpdateIEs} }, + ... +} + +RANConfigurationUpdateIEs NGAP-PROTOCOL-IES ::= { + { ID id-RANNodeName CRITICALITY ignore TYPE RANNodeName PRESENCE optional }| + { ID id-SupportedTAList CRITICALITY reject TYPE SupportedTAList PRESENCE optional }| + { ID id-DefaultPagingDRX CRITICALITY ignore TYPE PagingDRX PRESENCE optional }| + { ID id-GlobalRANNodeID CRITICALITY ignore TYPE GlobalRANNodeID PRESENCE optional }| + { ID id-NGRAN-TNLAssociationToRemoveList CRITICALITY reject TYPE NGRAN-TNLAssociationToRemoveList PRESENCE optional }| + { ID id-NB-IoT-DefaultPagingDRX CRITICALITY ignore TYPE NB-IoT-DefaultPagingDRX PRESENCE optional }| + { ID id-Extended-RANNodeName CRITICALITY ignore TYPE Extended-RANNodeName PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RAN CONFIGURATION UPDATE ACKNOWLEDGE +-- +-- ************************************************************** + +RANConfigurationUpdateAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {RANConfigurationUpdateAcknowledgeIEs} }, + ... +} + +RANConfigurationUpdateAcknowledgeIEs NGAP-PROTOCOL-IES ::= { + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RAN CONFIGURATION UPDATE FAILURE +-- +-- ************************************************************** + +RANConfigurationUpdateFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {RANConfigurationUpdateFailureIEs} }, + ... +} + +RANConfigurationUpdateFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, +... +} + +-- ************************************************************** +-- +-- AMF Configuration Update Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- AMF CONFIGURATION UPDATE +-- +-- ************************************************************** + +AMFConfigurationUpdate ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {AMFConfigurationUpdateIEs} }, + ... +} + +AMFConfigurationUpdateIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMFName CRITICALITY reject TYPE AMFName PRESENCE optional }| + { ID id-ServedGUAMIList CRITICALITY reject TYPE ServedGUAMIList PRESENCE optional }| + { ID id-RelativeAMFCapacity CRITICALITY ignore TYPE RelativeAMFCapacity PRESENCE optional }| + { ID id-PLMNSupportList CRITICALITY reject TYPE PLMNSupportList PRESENCE optional }| + { ID id-AMF-TNLAssociationToAddList CRITICALITY ignore TYPE AMF-TNLAssociationToAddList PRESENCE optional }| + { ID id-AMF-TNLAssociationToRemoveList CRITICALITY ignore TYPE AMF-TNLAssociationToRemoveList PRESENCE optional }| + { ID id-AMF-TNLAssociationToUpdateList CRITICALITY ignore TYPE AMF-TNLAssociationToUpdateList PRESENCE optional }| + { ID id-Extended-AMFName CRITICALITY ignore TYPE Extended-AMFName PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- AMF CONFIGURATION UPDATE ACKNOWLEDGE +-- +-- ************************************************************** + +AMFConfigurationUpdateAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {AMFConfigurationUpdateAcknowledgeIEs} }, + ... +} + +AMFConfigurationUpdateAcknowledgeIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-TNLAssociationSetupList CRITICALITY ignore TYPE AMF-TNLAssociationSetupList PRESENCE optional }| + { ID id-AMF-TNLAssociationFailedToSetupList CRITICALITY ignore TYPE TNLAssociationList PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- AMF CONFIGURATION UPDATE FAILURE +-- +-- ************************************************************** + +AMFConfigurationUpdateFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {AMFConfigurationUpdateFailureIEs} }, + ... +} + +AMFConfigurationUpdateFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- AMF Status Indication Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- AMF STATUS INDICATION +-- +-- ************************************************************** + +AMFStatusIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {AMFStatusIndicationIEs} }, + ... +} + +AMFStatusIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-UnavailableGUAMIList CRITICALITY reject TYPE UnavailableGUAMIList PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- NG Reset Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- NG RESET +-- +-- ************************************************************** + +NGReset ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {NGResetIEs} }, + ... +} + +NGResetIEs NGAP-PROTOCOL-IES ::= { + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-ResetType CRITICALITY reject TYPE ResetType PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- NG RESET ACKNOWLEDGE +-- +-- ************************************************************** + +NGResetAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {NGResetAcknowledgeIEs} }, + ... +} + +NGResetAcknowledgeIEs NGAP-PROTOCOL-IES ::= { + { ID id-UE-associatedLogicalNG-connectionList CRITICALITY ignore TYPE UE-associatedLogicalNG-connectionList PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Error Indication Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- ERROR INDICATION +-- +-- ************************************************************** + +ErrorIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {ErrorIndicationIEs} }, + ... +} + +ErrorIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE optional }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-FiveG-S-TMSI CRITICALITY ignore TYPE FiveG-S-TMSI PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- OVERLOAD START +-- +-- ************************************************************** + +OverloadStart ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {OverloadStartIEs} }, + ... +} + +OverloadStartIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMFOverloadResponse CRITICALITY reject TYPE OverloadResponse PRESENCE optional }| + { ID id-AMFTrafficLoadReductionIndication CRITICALITY ignore TYPE TrafficLoadReductionIndication PRESENCE optional }| + { ID id-OverloadStartNSSAIList CRITICALITY ignore TYPE OverloadStartNSSAIList PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- OVERLOAD STOP +-- +-- ************************************************************** + +OverloadStop ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {OverloadStopIEs} }, + ... +} + +OverloadStopIEs NGAP-PROTOCOL-IES ::= { + ... +} + +-- ************************************************************** +-- +-- CONFIGURATION TRANSFER ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UPLINK RAN CONFIGURATION TRANSFER +-- +-- ************************************************************** + +UplinkRANConfigurationTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UplinkRANConfigurationTransferIEs} }, + ... +} + +UplinkRANConfigurationTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-SONConfigurationTransferUL CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional }| + { ID id-ENDC-SONConfigurationTransferUL CRITICALITY ignore TYPE EN-DCSONConfigurationTransfer PRESENCE optional }| + { ID id-IntersystemSONConfigurationTransferUL CRITICALITY ignore TYPE IntersystemSONConfigurationTransfer PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- DOWNLINK RAN CONFIGURATION TRANSFER +-- +-- ************************************************************** + +DownlinkRANConfigurationTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DownlinkRANConfigurationTransferIEs} }, + ... +} + +DownlinkRANConfigurationTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-SONConfigurationTransferDL CRITICALITY ignore TYPE SONConfigurationTransfer PRESENCE optional }| + { ID id-ENDC-SONConfigurationTransferDL CRITICALITY ignore TYPE EN-DCSONConfigurationTransfer PRESENCE optional }| + { ID id-IntersystemSONConfigurationTransferDL CRITICALITY ignore TYPE IntersystemSONConfigurationTransfer PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- WARNING MESSAGE TRANSMISSION ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- Write-Replace Warning Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- WRITE-REPLACE WARNING REQUEST +-- +-- ************************************************************** + +WriteReplaceWarningRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {WriteReplaceWarningRequestIEs} }, + ... +} + +WriteReplaceWarningRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }| + { ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }| + { ID id-WarningAreaList CRITICALITY ignore TYPE WarningAreaList PRESENCE optional }| + { ID id-RepetitionPeriod CRITICALITY reject TYPE RepetitionPeriod PRESENCE mandatory }| + { ID id-NumberOfBroadcastsRequested CRITICALITY reject TYPE NumberOfBroadcastsRequested PRESENCE mandatory }| + { ID id-WarningType CRITICALITY ignore TYPE WarningType PRESENCE optional }| + { ID id-WarningSecurityInfo CRITICALITY ignore TYPE WarningSecurityInfo PRESENCE optional }| + { ID id-DataCodingScheme CRITICALITY ignore TYPE DataCodingScheme PRESENCE optional }| + { ID id-WarningMessageContents CRITICALITY ignore TYPE WarningMessageContents PRESENCE optional }| + { ID id-ConcurrentWarningMessageInd CRITICALITY reject TYPE ConcurrentWarningMessageInd PRESENCE optional }| + { ID id-WarningAreaCoordinates CRITICALITY ignore TYPE WarningAreaCoordinates PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- WRITE-REPLACE WARNING RESPONSE +-- +-- ************************************************************** + +WriteReplaceWarningResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {WriteReplaceWarningResponseIEs} }, + ... +} + +WriteReplaceWarningResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }| + { ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }| + { ID id-BroadcastCompletedAreaList CRITICALITY ignore TYPE BroadcastCompletedAreaList PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- PWS Cancel Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PWS CANCEL REQUEST +-- +-- ************************************************************** + +PWSCancelRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PWSCancelRequestIEs} }, + ... +} + +PWSCancelRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }| + { ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }| + { ID id-WarningAreaList CRITICALITY ignore TYPE WarningAreaList PRESENCE optional }| + { ID id-CancelAllWarningMessages CRITICALITY reject TYPE CancelAllWarningMessages PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- PWS CANCEL RESPONSE +-- +-- ************************************************************** + +PWSCancelResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PWSCancelResponseIEs} }, + ... +} + +PWSCancelResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MessageIdentifier CRITICALITY reject TYPE MessageIdentifier PRESENCE mandatory }| + { ID id-SerialNumber CRITICALITY reject TYPE SerialNumber PRESENCE mandatory }| + { ID id-BroadcastCancelledAreaList CRITICALITY ignore TYPE BroadcastCancelledAreaList PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- PWS Restart Indication Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PWS RESTART INDICATION +-- +-- ************************************************************** + +PWSRestartIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PWSRestartIndicationIEs} }, + ... +} + +PWSRestartIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-CellIDListForRestart CRITICALITY reject TYPE CellIDListForRestart PRESENCE mandatory }| + { ID id-GlobalRANNodeID CRITICALITY reject TYPE GlobalRANNodeID PRESENCE mandatory }| + { ID id-TAIListForRestart CRITICALITY reject TYPE TAIListForRestart PRESENCE mandatory }| + { ID id-EmergencyAreaIDListForRestart CRITICALITY reject TYPE EmergencyAreaIDListForRestart PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- PWS Failure Indication Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PWS FAILURE INDICATION +-- +-- ************************************************************** + +PWSFailureIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {PWSFailureIndicationIEs} }, + ... +} + +PWSFailureIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-PWSFailedCellIDList CRITICALITY reject TYPE PWSFailedCellIDList PRESENCE mandatory }| + { ID id-GlobalRANNodeID CRITICALITY reject TYPE GlobalRANNodeID PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- NRPPA TRANSPORT ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- DOWNLINK UE ASSOCIATED NRPPA TRANSPORT +-- +-- ************************************************************** + +DownlinkUEAssociatedNRPPaTransport ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DownlinkUEAssociatedNRPPaTransportIEs} }, + ... +} + +DownlinkUEAssociatedNRPPaTransportIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RoutingID CRITICALITY reject TYPE RoutingID PRESENCE mandatory }| + { ID id-NRPPa-PDU CRITICALITY reject TYPE NRPPa-PDU PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UPLINK UE ASSOCIATED NRPPA TRANSPORT +-- +-- ************************************************************** + +UplinkUEAssociatedNRPPaTransport ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UplinkUEAssociatedNRPPaTransportIEs} }, + ... +} + +UplinkUEAssociatedNRPPaTransportIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RoutingID CRITICALITY reject TYPE RoutingID PRESENCE mandatory }| + { ID id-NRPPa-PDU CRITICALITY reject TYPE NRPPa-PDU PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- DOWNLINK NON UE ASSOCIATED NRPPA TRANSPORT +-- +-- ************************************************************** + +DownlinkNonUEAssociatedNRPPaTransport ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DownlinkNonUEAssociatedNRPPaTransportIEs} }, + ... +} + +DownlinkNonUEAssociatedNRPPaTransportIEs NGAP-PROTOCOL-IES ::= { + { ID id-RoutingID CRITICALITY reject TYPE RoutingID PRESENCE mandatory }| + { ID id-NRPPa-PDU CRITICALITY reject TYPE NRPPa-PDU PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UPLINK NON UE ASSOCIATED NRPPA TRANSPORT +-- +-- ************************************************************** + +UplinkNonUEAssociatedNRPPaTransport ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UplinkNonUEAssociatedNRPPaTransportIEs} }, + ... +} + +UplinkNonUEAssociatedNRPPaTransportIEs NGAP-PROTOCOL-IES ::= { + { ID id-RoutingID CRITICALITY reject TYPE RoutingID PRESENCE mandatory }| + { ID id-NRPPa-PDU CRITICALITY reject TYPE NRPPa-PDU PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- TRACE ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- TRACE START +-- +-- ************************************************************** + +TraceStart ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {TraceStartIEs} }, + ... +} + +TraceStartIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- TRACE FAILURE INDICATION +-- +-- ************************************************************** + +TraceFailureIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {TraceFailureIndicationIEs} }, + ... +} + +TraceFailureIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-NGRANTraceID CRITICALITY ignore TYPE NGRANTraceID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- DEACTIVATE TRACE +-- +-- ************************************************************** + +DeactivateTrace ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DeactivateTraceIEs} }, + ... +} + +DeactivateTraceIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-NGRANTraceID CRITICALITY ignore TYPE NGRANTraceID PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- CELL TRAFFIC TRACE +-- +-- ************************************************************** + +CellTrafficTrace ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {CellTrafficTraceIEs} }, + ... +} + +CellTrafficTraceIEs NGAP-PROTOCOL-IES ::= { + {ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + {ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + {ID id-NGRANTraceID CRITICALITY ignore TYPE NGRANTraceID PRESENCE mandatory }| + {ID id-NGRAN-CGI CRITICALITY ignore TYPE NGRAN-CGI PRESENCE mandatory }| + {ID id-TraceCollectionEntityIPAddress CRITICALITY ignore TYPE TransportLayerAddress PRESENCE mandatory }| + {ID id-PrivacyIndicator CRITICALITY ignore TYPE PrivacyIndicator PRESENCE optional }| + {ID id-TraceCollectionEntityURI CRITICALITY ignore TYPE URI-address PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- LOCATION REPORTING ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- LOCATION REPORTING CONTROL +-- +-- ************************************************************** + +LocationReportingControl ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {LocationReportingControlIEs} }, + ... +} + +LocationReportingControlIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-LocationReportingRequestType CRITICALITY ignore TYPE LocationReportingRequestType PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- LOCATION REPORTING FAILURE INDICATION +-- +-- ************************************************************** + +LocationReportingFailureIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {LocationReportingFailureIndicationIEs} }, + ... +} + +LocationReportingFailureIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- LOCATION REPORT +-- +-- ************************************************************** + +LocationReport ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {LocationReportIEs} }, + ... +} + +LocationReportIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE mandatory }| + { ID id-UEPresenceInAreaOfInterestList CRITICALITY ignore TYPE UEPresenceInAreaOfInterestList PRESENCE optional }| + { ID id-LocationReportingRequestType CRITICALITY ignore TYPE LocationReportingRequestType PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UE TNLA BINDING ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE TNLA BINDING RELEASE REQUEST +-- +-- ************************************************************** + +UETNLABindingReleaseRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UETNLABindingReleaseRequestIEs} }, + ... +} + +UETNLABindingReleaseRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UE RADIO CAPABILITY MANAGEMENT ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE RADIO CAPABILITY INFO INDICATION +-- +-- ************************************************************** + +UERadioCapabilityInfoIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UERadioCapabilityInfoIndicationIEs} }, + ... +} + +UERadioCapabilityInfoIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE mandatory }| + { ID id-UERadioCapabilityForPaging CRITICALITY ignore TYPE UERadioCapabilityForPaging PRESENCE optional }| + { ID id-UERadioCapability-EUTRA-Format CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE Radio Capability Check Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE RADIO CAPABILITY CHECK REQUEST +-- +-- ************************************************************** + +UERadioCapabilityCheckRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UERadioCapabilityCheckRequestIEs} }, + ... +} + +UERadioCapabilityCheckRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- UE RADIO CAPABILITY CHECK RESPONSE +-- +-- ************************************************************** + +UERadioCapabilityCheckResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UERadioCapabilityCheckResponseIEs} }, + ... +} + +UERadioCapabilityCheckResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-IMSVoiceSupportIndicator CRITICALITY reject TYPE IMSVoiceSupportIndicator PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- PRIVATE MESSAGE ELEMENTARY PROCEDURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- PRIVATE MESSAGE +-- +-- ************************************************************** + +PrivateMessage ::= SEQUENCE { + privateIEs PrivateIE-Container { { PrivateMessageIEs } }, + ... +} + +PrivateMessageIEs NGAP-PRIVATE-IES ::= { + ... +} + + +-- ************************************************************** +-- +-- DATA USAGE REPORTING ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- SECONDARY RAT DATA USAGE REPORT +-- +-- ************************************************************** + +SecondaryRATDataUsageReport ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {SecondaryRATDataUsageReportIEs} }, + ... +} + +SecondaryRATDataUsageReportIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY ignore TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY ignore TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-PDUSessionResourceSecondaryRATUsageList CRITICALITY ignore TYPE PDUSessionResourceSecondaryRATUsageList PRESENCE mandatory }| + { ID id-HandoverFlag CRITICALITY ignore TYPE HandoverFlag PRESENCE optional }| + { ID id-UserLocationInformation CRITICALITY ignore TYPE UserLocationInformation PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RIM INFORMATION TRANSFER ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UPLINK RIM INFORMATION TRANSFER +-- +-- ************************************************************** + +UplinkRIMInformationTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UplinkRIMInformationTransferIEs} }, + ... +} + +UplinkRIMInformationTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-RIMInformationTransfer CRITICALITY ignore TYPE RIMInformationTransfer PRESENCE optional }, + ... +} +-- ************************************************************** +-- +-- DOWNLINK RIM INFORMATION TRANSFER +-- +-- ************************************************************** + +DownlinkRIMInformationTransfer ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DownlinkRIMInformationTransferIEs} }, + ... +} + +DownlinkRIMInformationTransferIEs NGAP-PROTOCOL-IES ::= { + { ID id-RIMInformationTransfer CRITICALITY ignore TYPE RIMInformationTransfer PRESENCE optional }, + + ... +} + +-- ************************************************************** +-- +-- Connection Establishment Indication +-- +-- ************************************************************** + +ConnectionEstablishmentIndication::= SEQUENCE { + protocolIEs ProtocolIE-Container { {ConnectionEstablishmentIndicationIEs} }, + ... +} + +ConnectionEstablishmentIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE optional }| + { ID id-EndIndication CRITICALITY ignore TYPE EndIndication PRESENCE optional }| + { ID id-S-NSSAI CRITICALITY ignore TYPE S-NSSAI PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY ignore TYPE AllowedNSSAI PRESENCE optional }| + { ID id-UE-DifferentiationInfo CRITICALITY ignore TYPE UE-DifferentiationInfo PRESENCE optional }| + { ID id-DL-CP-SecurityInformation CRITICALITY ignore TYPE DL-CP-SecurityInformation PRESENCE optional }| + { ID id-NB-IoT-UEPriority CRITICALITY ignore TYPE NB-IoT-UEPriority PRESENCE optional }| + { ID id-Enhanced-CoverageRestriction CRITICALITY ignore TYPE Enhanced-CoverageRestriction PRESENCE optional }| + { ID id-CEmodeBrestricted CRITICALITY ignore TYPE CEmodeBrestricted PRESENCE optional }| + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE optional }| + { ID id-MaskedIMEISV CRITICALITY ignore TYPE MaskedIMEISV PRESENCE optional }| + { ID id-OldAMF CRITICALITY reject TYPE AMFName PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- UE RADIO CAPABILITY ID MAPPING ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- UE RADIO CAPABILITY ID MAPPING REQUEST +-- +-- ************************************************************** + +UERadioCapabilityIDMappingRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UERadioCapabilityIDMappingRequestIEs} }, + ... +} + +UERadioCapabilityIDMappingRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- UE RADIO CAPABILITY ID MAPPING RESPONSE +-- +-- ************************************************************** + +UERadioCapabilityIDMappingResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {UERadioCapabilityIDMappingResponseIEs} }, + ... +} + +UERadioCapabilityIDMappingResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-UERadioCapabilityID CRITICALITY reject TYPE UERadioCapabilityID PRESENCE mandatory }| + { ID id-UERadioCapability CRITICALITY ignore TYPE UERadioCapability PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- AMF CP Relocation Indication +-- +-- ************************************************************** + +AMFCPRelocationIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container { { AMFCPRelocationIndicationIEs} }, + ... +} + +AMFCPRelocationIndicationIEs NGAP-PROTOCOL-IES ::= { + { ID id-AMF-UE-NGAP-ID CRITICALITY reject TYPE AMF-UE-NGAP-ID PRESENCE mandatory }| + { ID id-RAN-UE-NGAP-ID CRITICALITY reject TYPE RAN-UE-NGAP-ID PRESENCE mandatory }| + { ID id-S-NSSAI CRITICALITY ignore TYPE S-NSSAI PRESENCE optional }| + { ID id-AllowedNSSAI CRITICALITY ignore TYPE AllowedNSSAI PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- MBS SESSION MANAGEMENT ELEMENTARY PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- Broadcast Session Setup Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- BROADCAST SESSION SETUP REQUEST +-- +-- ************************************************************** + +BroadcastSessionSetupRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {BroadcastSessionSetupRequestIEs} }, + ... +} +-- WS modification: define a dedicated type +MBSSessionSetupOrModRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBSSessionSetupOrModRequestTransfer) + +BroadcastSessionSetupRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-S-NSSAI CRITICALITY reject TYPE S-NSSAI PRESENCE mandatory }| + { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE mandatory }| +-- WS modification: define a dedicated type +-- { ID id-MBSSessionSetupRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModRequestTransfer) PRESENCE mandatory }, + { ID id-MBSSessionSetupRequestTransfer CRITICALITY reject TYPE MBSSessionSetupOrModRequestTransfer-OCTET-STRING PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- BROADCAST SESSION SETUP RESPONSE +-- +-- ************************************************************** + +BroadcastSessionSetupResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {BroadcastSessionSetupResponseIEs} }, + ... +} + +-- WS modification: define a dedicated type +MBSSessionSetupOrModResponseTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBSSessionSetupOrModResponseTransfer) + +BroadcastSessionSetupResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| +-- WS modification: define a dedicated type +-- { ID id-MBSSessionSetupResponseTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModResponseTransfer) PRESENCE optional }| + { ID id-MBSSessionSetupResponseTransfer CRITICALITY reject TYPE MBSSessionSetupOrModResponseTransfer-OCTET-STRING PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- BROADCAST SESSION SETUP FAILURE +-- +-- ************************************************************** + +BroadcastSessionSetupFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {BroadcastSessionSetupFailureIEs} }, + ... +} + +-- WS modification: define a dedicated type +MBSSessionSetupOrModFailureTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBSSessionSetupOrModFailureTransfer) + +BroadcastSessionSetupFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| +-- WS modification: define a dedicated type +-- { ID id-MBSSessionSetupFailureTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModFailureTransfer ) PRESENCE optional }| + { ID id-MBSSessionSetupFailureTransfer CRITICALITY reject TYPE MBSSessionSetupOrModFailureTransfer-OCTET-STRING PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Broadcast Session Modification Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- BROADCAST SESSION MODIFICATION REQUEST +-- +-- ************************************************************** + +BroadcastSessionModificationRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {BroadcastSessionModificationRequestIEs} }, + ... +} + +BroadcastSessionModificationRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-ServiceArea CRITICALITY reject TYPE MBS-ServiceArea PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-MBSSessionModificationRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModRequestTransfer) PRESENCE optional }, + { ID id-MBSSessionModificationRequestTransfer CRITICALITY reject TYPE MBSSessionSetupOrModRequestTransfer-OCTET-STRING PRESENCE optional }, ... +} + +-- ************************************************************** +-- +-- BROADCAST SESSION MODIFICATION RESPONSE +-- +-- ************************************************************** + +BroadcastSessionModificationResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {BroadcastSessionModificationResponseIEs} }, + ... +} + +BroadcastSessionModificationResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| +-- WS modification: define a dedicated type +-- { ID id-MBSSessionModificationResponseTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModResponseTransfer) PRESENCE optional }| + { ID id-MBSSessionModificationResponseTransfer CRITICALITY reject TYPE MBSSessionSetupOrModResponseTransfer-OCTET-STRING PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- BROADCAST SESSION MODIFICATION FAILURE +-- +-- ************************************************************** + +BroadcastSessionModificationFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {BroadcastSessionModificationFailureIEs} }, + ... +} + +BroadcastSessionModificationFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| +-- WS modification: define a dedicated type +-- { ID id-MBSSessionModificationFailureTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBSSessionSetupOrModFailureTransfer) PRESENCE optional }| + { ID id-MBSSessionModificationFailureTransfer CRITICALITY reject TYPE MBSSessionSetupOrModFailureTransfer-OCTET-STRING PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Broadcast Session Release Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- BROADCAST SESSION RELEASE REQUEST +-- +-- ************************************************************** + +BroadcastSessionReleaseRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {BroadcastSessionReleaseRequestIEs} }, + ... +} + +BroadcastSessionReleaseRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- Broadcast Session Release Required Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- BROADCAST SESSION RELEASE REQUIRED +-- +-- ************************************************************** + +BroadcastSessionReleaseRequired ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {BroadcastSessionReleaseRequiredIEs} }, + ... +} + +BroadcastSessionReleaseRequiredIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- BROADCAST SESSION RELEASE RESPONSE +-- +-- ************************************************************** + +BroadcastSessionReleaseResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {BroadcastSessionReleaseResponseIEs} }, + ... +} + +-- WS modification: defien a dedicated type +MBSSessionReleaseResponseTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBSSessionReleaseResponseTransfer) + +BroadcastSessionReleaseResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| +-- WS modification: define a dedicated type +-- { ID id-MBSSessionReleaseResponseTransfer CRITICALITY ignore TYPE OCTET STRING (CONTAINING MBSSessionReleaseResponseTransfer) PRESENCE optional }| + { ID id-MBSSessionReleaseResponseTransfer CRITICALITY ignore TYPE MBSSessionReleaseResponseTransfer-OCTET-STRING PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- Distribution Setup Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- DISTRIBUTION SETUP REQUEST +-- +-- ************************************************************** + +DistributionSetupRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DistributionSetupRequestIEs} }, + ... +} + +-- WS modification: define a dedicated type +MBS-DistributionSetupRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBS-DistributionSetupRequestTransfer) + +DistributionSetupRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-MBS-DistributionSetupRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBS-DistributionSetupRequestTransfer) PRESENCE mandatory }, + { ID id-MBS-DistributionSetupRequestTransfer CRITICALITY reject TYPE MBS-DistributionSetupRequestTransfer-OCTET-STRING PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- DISTRIBUTION SETUP RESPONSE +-- +-- ************************************************************** + +DistributionSetupResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DistributionSetupResponseIEs} }, + ... +} + +-- WS modification: define a dedicated type +MBS-DistributionSetupResponseTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBS-DistributionSetupResponseTransfer) + +DistributionSetupResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-MBS-DistributionSetupResponseTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBS-DistributionSetupResponseTransfer) PRESENCE mandatory }| + { ID id-MBS-DistributionSetupResponseTransfer CRITICALITY reject TYPE MBS-DistributionSetupResponseTransfer-OCTET-STRING PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- DISTRIBUTION SETUP FAILURE +-- +-- ************************************************************** + +DistributionSetupFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DistributionSetupFailureIEs} }, + ... +} + +-- WS modification: define a dedicated type +MBS-DistributionSetupUnsuccessfulTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBS-DistributionSetupUnsuccessfulTransfer) + +DistributionSetupFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-MBS-DistributionSetupUnsuccessfulTransfer CRITICALITY ignore TYPE OCTET STRING (CONTAINING MBS-DistributionSetupUnsuccessfulTransfer) PRESENCE mandatory }| + { ID id-MBS-DistributionSetupUnsuccessfulTransfer CRITICALITY ignore TYPE MBS-DistributionSetupUnsuccessfulTransfer-OCTET-STRING PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Distribution Release Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- DISTRIBUTION RELEASE REQUEST +-- +-- ************************************************************** + +DistributionReleaseRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DistributionReleaseRequestIEs} }, + ... +} + +-- WS modification: define a dedicated type +MBS-DistributionReleaseRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MBS-DistributionReleaseRequestTransfer) + +DistributionReleaseRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-MBS-DistributionReleaseRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MBS-DistributionReleaseRequestTransfer) PRESENCE mandatory }| + { ID id-MBS-DistributionReleaseRequestTransfer CRITICALITY reject TYPE MBS-DistributionReleaseRequestTransfer-OCTET-STRING PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- DISTRIBUTION RELEASE RESPONSE +-- +-- ************************************************************** + +DistributionReleaseResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {DistributionReleaseResponseIEs} }, + ... +} + +DistributionReleaseResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Multicast Session Activation Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- MULTICAST SESSION ACTIVATION REQUEST +-- +-- ************************************************************** + +MulticastSessionActivationRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastSessionActivationRequestIEs} }, + ... +} + +-- WS modification: define a dedicated type +MulticastSessionActivationRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MulticastSessionActivationRequestTransfer) + +MulticastSessionActivationRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| +-- WS modification: define a dedicated type +-- { ID id-MulticastSessionActivationRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MulticastSessionActivationRequestTransfer) PRESENCE mandatory }, + { ID id-MulticastSessionActivationRequestTransfer CRITICALITY reject TYPE MulticastSessionActivationRequestTransfer-OCTET-STRING PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- MULTICAST SESSION ACTIVATION RESPONSE +-- +-- ************************************************************** + +MulticastSessionActivationResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastSessionActivationResponseIEs} }, + ... +} + +MulticastSessionActivationResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- MULTICAST SESSION ACTIVATION FAILURE +-- +-- ************************************************************** + +MulticastSessionActivationFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastSessionActivationFailureIEs} }, + ... +} + +MulticastSessionActivationFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Multicast Session Deactivation Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- MULTICAST SESSION DEACTIVATION REQUEST +-- +-- ************************************************************** + +MulticastSessionDeactivationRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastSessionDeactivationRequestIEs} }, + ... +} + +-- WS modification: define a dedicated type +MulticastSessionDeactivationRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MulticastSessionDeactivationRequestTransfer) + +MulticastSessionDeactivationRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| +-- WS modification: define a dedicated type +-- { ID id-MulticastSessionDeactivationRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MulticastSessionDeactivationRequestTransfer) PRESENCE mandatory }, + { ID id-MulticastSessionDeactivationRequestTransfer CRITICALITY reject TYPE MulticastSessionDeactivationRequestTransfer-OCTET-STRING PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- MULTICAST SESSION DEACTIVATION RESPONSE +-- +-- ************************************************************** + +MulticastSessionDeactivationResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastSessionDeactivationResponseIEs} }, + ... +} + +MulticastSessionDeactivationResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Multicast Session Update Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- MULTICAST SESSION UPDATE REQUEST +-- +-- ************************************************************** + +MulticastSessionUpdateRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastSessionUpdateRequestIEs} }, + ... +} + +-- WS modification: define a dedicated type +MulticastSessionUpdateRequestTransfer-OCTET-STRING ::= OCTET STRING (CONTAINING MulticastSessionUpdateRequestTransfer) + +MulticastSessionUpdateRequestIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }| +-- WS modification: define a dedicated type +-- { ID id-MulticastSessionUpdateRequestTransfer CRITICALITY reject TYPE OCTET STRING (CONTAINING MulticastSessionUpdateRequestTransfer) PRESENCE mandatory }, + { ID id-MulticastSessionUpdateRequestTransfer CRITICALITY reject TYPE MulticastSessionUpdateRequestTransfer-OCTET-STRING PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- MULTICAST SESSION UPDATE RESPONSE +-- +-- ************************************************************** + +MulticastSessionUpdateResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastSessionUpdateResponseIEs} }, + ... +} + +MulticastSessionUpdateResponseIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- MULTICAST SESSION UPDATE FAILURE +-- +-- ************************************************************** + +MulticastSessionUpdateFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastSessionUpdateFailureIEs} }, + ... +} + +MulticastSessionUpdateFailureIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY reject TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-AreaSessionID CRITICALITY reject TYPE MBS-AreaSessionID PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- MULTICAST GROUP PAGING ELEMENTARY PROCEDURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- MULTICAST GROUP PAGING +-- +-- ************************************************************** + +MulticastGroupPaging ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {MulticastGroupPagingIEs} }, + ... +} + +MulticastGroupPagingIEs NGAP-PROTOCOL-IES ::= { + { ID id-MBS-SessionID CRITICALITY ignore TYPE MBS-SessionID PRESENCE mandatory }| + { ID id-MBS-ServiceArea CRITICALITY ignore TYPE MBS-ServiceArea PRESENCE optional }| + { ID id-MulticastGroupPagingAreaList CRITICALITY ignore TYPE MulticastGroupPagingAreaList PRESENCE mandatory }, + ... +} + + +END diff --git a/ttcn/LibNGAP/lib/asn1/NGAP_PDU_Descriptions.asn b/ttcn/LibNGAP/lib/asn1/NGAP_PDU_Descriptions.asn new file mode 100644 index 0000000..d8dbd98 --- /dev/null +++ b/ttcn/LibNGAP/lib/asn1/NGAP_PDU_Descriptions.asn @@ -0,0 +1,888 @@ +-- 3GPP TS 38.413 V17.5.0 (2023-06) +-- 9.4.3 Elementary Procedure Definitions +-- ************************************************************** +-- +-- Elementary Procedure definitions +-- +-- ************************************************************** + +NGAP-PDU-Descriptions { +itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) +ngran-Access (22) modules (3) ngap (1) version1 (1) ngap-PDU-Descriptions (0)} + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +-- ************************************************************** +-- +-- IE parameter types from other modules. +-- +-- ************************************************************** + +IMPORTS + + Criticality, + ProcedureCode +FROM NGAP-CommonDataTypes + + AMFConfigurationUpdate, + AMFConfigurationUpdateAcknowledge, + AMFConfigurationUpdateFailure, + AMFCPRelocationIndication, + AMFStatusIndication, + BroadcastSessionModificationFailure, + BroadcastSessionModificationRequest, + BroadcastSessionModificationResponse, + BroadcastSessionReleaseRequest, + BroadcastSessionReleaseRequired, + BroadcastSessionReleaseResponse, + BroadcastSessionSetupFailure, + BroadcastSessionSetupRequest, + BroadcastSessionSetupResponse, + CellTrafficTrace, + ConnectionEstablishmentIndication, + DeactivateTrace, + DistributionReleaseRequest, + DistributionReleaseResponse, + DistributionSetupFailure, + DistributionSetupRequest, + DistributionSetupResponse, + DownlinkNASTransport, + DownlinkNonUEAssociatedNRPPaTransport, + DownlinkRANConfigurationTransfer, + DownlinkRANEarlyStatusTransfer, + DownlinkRANStatusTransfer, + DownlinkUEAssociatedNRPPaTransport, + ErrorIndication, + HandoverCancel, + HandoverCancelAcknowledge, + HandoverCommand, + HandoverFailure, + HandoverNotify, + HandoverPreparationFailure, + HandoverRequest, + HandoverRequestAcknowledge, + HandoverRequired, + HandoverSuccess, + InitialContextSetupFailure, + InitialContextSetupRequest, + InitialContextSetupResponse, + InitialUEMessage, + LocationReport, + LocationReportingControl, + LocationReportingFailureIndication, + MulticastSessionActivationFailure, + MulticastSessionActivationRequest, + MulticastSessionActivationResponse, + MulticastSessionDeactivationRequest, + MulticastSessionDeactivationResponse, + MulticastSessionUpdateFailure, + MulticastSessionUpdateRequest, + MulticastSessionUpdateResponse, + MulticastGroupPaging, + NASNonDeliveryIndication, + NGReset, + NGResetAcknowledge, + NGSetupFailure, + NGSetupRequest, + NGSetupResponse, + OverloadStart, + OverloadStop, + Paging, + PathSwitchRequest, + PathSwitchRequestAcknowledge, + PathSwitchRequestFailure, + PDUSessionResourceModifyConfirm, + PDUSessionResourceModifyIndication, + PDUSessionResourceModifyRequest, + PDUSessionResourceModifyResponse, + PDUSessionResourceNotify, + PDUSessionResourceReleaseCommand, + PDUSessionResourceReleaseResponse, + PDUSessionResourceSetupRequest, + PDUSessionResourceSetupResponse, + PrivateMessage, + PWSCancelRequest, + PWSCancelResponse, + PWSFailureIndication, + PWSRestartIndication, + RANConfigurationUpdate, + RANConfigurationUpdateAcknowledge, + RANConfigurationUpdateFailure, + RANCPRelocationIndication, + RerouteNASRequest, + RetrieveUEInformation, + RRCInactiveTransitionReport, + SecondaryRATDataUsageReport, + TraceFailureIndication, + TraceStart, + UEContextModificationFailure, + UEContextModificationRequest, + UEContextModificationResponse, + UEContextReleaseCommand, + UEContextReleaseComplete, + UEContextReleaseRequest, + UEContextResumeRequest, + UEContextResumeResponse, + UEContextResumeFailure, + UEContextSuspendRequest, + UEContextSuspendResponse, + UEContextSuspendFailure, + UEInformationTransfer, + UERadioCapabilityCheckRequest, + UERadioCapabilityCheckResponse, + UERadioCapabilityIDMappingRequest, + UERadioCapabilityIDMappingResponse, + UERadioCapabilityInfoIndication, + UETNLABindingReleaseRequest, + UplinkNASTransport, + UplinkNonUEAssociatedNRPPaTransport, + UplinkRANConfigurationTransfer, + UplinkRANEarlyStatusTransfer, + UplinkRANStatusTransfer, + UplinkUEAssociatedNRPPaTransport, + WriteReplaceWarningRequest, + WriteReplaceWarningResponse, + UplinkRIMInformationTransfer, + DownlinkRIMInformationTransfer + +FROM NGAP-PDU-Contents + + id-AMFConfigurationUpdate, + id-AMFCPRelocationIndication, + id-AMFStatusIndication, + id-BroadcastSessionModification, + id-BroadcastSessionRelease, + id-BroadcastSessionReleaseRequired, + id-BroadcastSessionSetup, + id-CellTrafficTrace, + id-ConnectionEstablishmentIndication, + id-DeactivateTrace, + id-DistributionSetup, + id-DistributionRelease, + id-DownlinkNASTransport, + id-DownlinkNonUEAssociatedNRPPaTransport, + id-DownlinkRANConfigurationTransfer, + id-DownlinkRANEarlyStatusTransfer, + id-DownlinkRANStatusTransfer, + id-DownlinkUEAssociatedNRPPaTransport, + id-ErrorIndication, + id-HandoverCancel, + id-HandoverNotification, + id-HandoverPreparation, + id-HandoverResourceAllocation, + id-HandoverSuccess, + id-InitialContextSetup, + id-InitialUEMessage, + id-LocationReport, + id-LocationReportingControl, + id-LocationReportingFailureIndication, + id-MulticastSessionActivation, + id-MulticastSessionDeactivation, + id-MulticastSessionUpdate, + id-MulticastGroupPaging, + id-NASNonDeliveryIndication, + id-NGReset, + id-NGSetup, + id-OverloadStart, + id-OverloadStop, + id-Paging, + id-PathSwitchRequest, + id-PDUSessionResourceModify, + id-PDUSessionResourceModifyIndication, + id-PDUSessionResourceNotify, + id-PDUSessionResourceRelease, + id-PDUSessionResourceSetup, + id-PrivateMessage, + id-PWSCancel, + id-PWSFailureIndication, + id-PWSRestartIndication, + id-RANConfigurationUpdate, + id-RANCPRelocationIndication, + id-RerouteNASRequest, + id-RetrieveUEInformation, + id-RRCInactiveTransitionReport, + id-SecondaryRATDataUsageReport, + id-TraceFailureIndication, + id-TraceStart, + id-UEContextModification, + id-UEContextRelease, + id-UEContextReleaseRequest, + id-UEContextResume, + id-UEContextSuspend, + id-UEInformationTransfer, + id-UERadioCapabilityCheck, + id-UERadioCapabilityIDMapping, + id-UERadioCapabilityInfoIndication, + id-UETNLABindingRelease, + id-UplinkNASTransport, + id-UplinkNonUEAssociatedNRPPaTransport, + id-UplinkRANConfigurationTransfer, + id-UplinkRANEarlyStatusTransfer, + id-UplinkRANStatusTransfer, + id-UplinkUEAssociatedNRPPaTransport, + id-WriteReplaceWarning, + id-UplinkRIMInformationTransfer, + id-DownlinkRIMInformationTransfer + +FROM NGAP-Constants; + +-- ************************************************************** +-- +-- Interface Elementary Procedure Class +-- +-- ************************************************************** + +NGAP-ELEMENTARY-PROCEDURE ::= CLASS { + &InitiatingMessage , + &SuccessfulOutcome OPTIONAL, + &UnsuccessfulOutcome OPTIONAL, + &procedureCode ProcedureCode UNIQUE, + &criticality Criticality DEFAULT ignore +} + +WITH SYNTAX { + INITIATING MESSAGE &InitiatingMessage + [SUCCESSFUL OUTCOME &SuccessfulOutcome] + [UNSUCCESSFUL OUTCOME &UnsuccessfulOutcome] + PROCEDURE CODE &procedureCode + [CRITICALITY &criticality] +} + +-- ************************************************************** +-- +-- Interface PDU Definition +-- +-- ************************************************************** + +NGAP-PDU ::= CHOICE { + initiatingMessage InitiatingMessage, + successfulOutcome SuccessfulOutcome, + unsuccessfulOutcome UnsuccessfulOutcome, + ... +} + +InitiatingMessage ::= SEQUENCE { + procedureCode NGAP-ELEMENTARY-PROCEDURE.&procedureCode ({NGAP-ELEMENTARY-PROCEDURES}), + criticality NGAP-ELEMENTARY-PROCEDURE.&criticality ({NGAP-ELEMENTARY-PROCEDURES}{@procedureCode}), + value NGAP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({NGAP-ELEMENTARY-PROCEDURES}{@procedureCode}) OPTIONAL +} + +SuccessfulOutcome ::= SEQUENCE { + procedureCode NGAP-ELEMENTARY-PROCEDURE.&procedureCode ({NGAP-ELEMENTARY-PROCEDURES}), + criticality NGAP-ELEMENTARY-PROCEDURE.&criticality ({NGAP-ELEMENTARY-PROCEDURES}{@procedureCode}), + value NGAP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({NGAP-ELEMENTARY-PROCEDURES}{@procedureCode}) +} + +UnsuccessfulOutcome ::= SEQUENCE { + procedureCode NGAP-ELEMENTARY-PROCEDURE.&procedureCode ({NGAP-ELEMENTARY-PROCEDURES}), + criticality NGAP-ELEMENTARY-PROCEDURE.&criticality ({NGAP-ELEMENTARY-PROCEDURES}{@procedureCode}), + value NGAP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({NGAP-ELEMENTARY-PROCEDURES}{@procedureCode}) +} + +-- ************************************************************** +-- +-- Interface Elementary Procedure List +-- +-- ************************************************************** + +NGAP-ELEMENTARY-PROCEDURES NGAP-ELEMENTARY-PROCEDURE ::= { + NGAP-ELEMENTARY-PROCEDURES-CLASS-1 | + NGAP-ELEMENTARY-PROCEDURES-CLASS-2, + ... +} + +NGAP-ELEMENTARY-PROCEDURES-CLASS-1 NGAP-ELEMENTARY-PROCEDURE ::= { + aMFConfigurationUpdate | + broadcastSessionModification | + broadcastSessionRelease | + broadcastSessionSetup | + distributionSetup | + distributionRelease | + handoverCancel | + handoverPreparation | + handoverResourceAllocation | + initialContextSetup | + multicastSessionActivation | + multicastSessionDeactivation | + multicastSessionUpdate | + nGReset | + nGSetup | + pathSwitchRequest | + pDUSessionResourceModify | + pDUSessionResourceModifyIndication | + pDUSessionResourceRelease | + pDUSessionResourceSetup | + pWSCancel | + rANConfigurationUpdate | + uEContextModification | + uEContextRelease | + uEContextResume | + uEContextSuspend | + uERadioCapabilityCheck | + uERadioCapabilityIDMapping | + writeReplaceWarning, + ... +} + +NGAP-ELEMENTARY-PROCEDURES-CLASS-2 NGAP-ELEMENTARY-PROCEDURE ::= { + aMFCPRelocationIndication | + aMFStatusIndication | + broadcastSessionReleaseRequired | + cellTrafficTrace | + connectionEstablishmentIndication | + deactivateTrace | + downlinkNASTransport | + downlinkNonUEAssociatedNRPPaTransport | + downlinkRANConfigurationTransfer | + downlinkRANEarlyStatusTransfer | + downlinkRANStatusTransfer | + downlinkRIMInformationTransfer | + downlinkUEAssociatedNRPPaTransport | + errorIndication | + handoverNotification | + handoverSuccess | + initialUEMessage | + locationReport | + locationReportingControl | + locationReportingFailureIndication | + multicastGroupPaging | + nASNonDeliveryIndication | + overloadStart | + overloadStop | + paging | + pDUSessionResourceNotify | + privateMessage | + pWSFailureIndication | + pWSRestartIndication | + rANCPRelocationIndication | + rerouteNASRequest | + retrieveUEInformation | + rRCInactiveTransitionReport | + secondaryRATDataUsageReport | + traceFailureIndication | + traceStart | + uEContextReleaseRequest | + uEInformationTransfer | + uERadioCapabilityInfoIndication | + uETNLABindingRelease | + uplinkNASTransport | + uplinkNonUEAssociatedNRPPaTransport | + uplinkRANConfigurationTransfer | + uplinkRANEarlyStatusTransfer | + uplinkRANStatusTransfer | + uplinkRIMInformationTransfer | + uplinkUEAssociatedNRPPaTransport, + ... + +} + +-- ************************************************************** +-- +-- Interface Elementary Procedures +-- +-- ************************************************************** + +aMFConfigurationUpdate NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE AMFConfigurationUpdate + SUCCESSFUL OUTCOME AMFConfigurationUpdateAcknowledge + UNSUCCESSFUL OUTCOME AMFConfigurationUpdateFailure + PROCEDURE CODE id-AMFConfigurationUpdate + CRITICALITY reject +} + +aMFCPRelocationIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE AMFCPRelocationIndication + PROCEDURE CODE id-AMFCPRelocationIndication + CRITICALITY reject +} + +aMFStatusIndication NGAP-ELEMENTARY-PROCEDURE ::={ + INITIATING MESSAGE AMFStatusIndication + PROCEDURE CODE id-AMFStatusIndication + CRITICALITY ignore +} + +broadcastSessionModification NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE BroadcastSessionModificationRequest + SUCCESSFUL OUTCOME BroadcastSessionModificationResponse + UNSUCCESSFUL OUTCOME BroadcastSessionModificationFailure + PROCEDURE CODE id-BroadcastSessionModification + CRITICALITY reject +} + +broadcastSessionRelease NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE BroadcastSessionReleaseRequest + SUCCESSFUL OUTCOME BroadcastSessionReleaseResponse + PROCEDURE CODE id-BroadcastSessionRelease + CRITICALITY reject +} + +broadcastSessionReleaseRequired NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE BroadcastSessionReleaseRequired + PROCEDURE CODE id-BroadcastSessionReleaseRequired + CRITICALITY reject +} + +broadcastSessionSetup NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE BroadcastSessionSetupRequest + SUCCESSFUL OUTCOME BroadcastSessionSetupResponse + UNSUCCESSFUL OUTCOME BroadcastSessionSetupFailure + PROCEDURE CODE id-BroadcastSessionSetup + CRITICALITY reject +} + +cellTrafficTrace NGAP-ELEMENTARY-PROCEDURE ::={ + INITIATING MESSAGE CellTrafficTrace + PROCEDURE CODE id-CellTrafficTrace + CRITICALITY ignore +} + +connectionEstablishmentIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ConnectionEstablishmentIndication + PROCEDURE CODE id-ConnectionEstablishmentIndication + CRITICALITY reject +} + +deactivateTrace NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DeactivateTrace + PROCEDURE CODE id-DeactivateTrace + CRITICALITY ignore +} + +distributionSetup NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DistributionSetupRequest + SUCCESSFUL OUTCOME DistributionSetupResponse + UNSUCCESSFUL OUTCOME DistributionSetupFailure + PROCEDURE CODE id-DistributionSetup + CRITICALITY reject +} + +distributionRelease NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DistributionReleaseRequest + SUCCESSFUL OUTCOME DistributionReleaseResponse + PROCEDURE CODE id-DistributionRelease + CRITICALITY reject +} + +downlinkNASTransport NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DownlinkNASTransport + PROCEDURE CODE id-DownlinkNASTransport + CRITICALITY ignore +} + +downlinkNonUEAssociatedNRPPaTransport NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DownlinkNonUEAssociatedNRPPaTransport + PROCEDURE CODE id-DownlinkNonUEAssociatedNRPPaTransport + CRITICALITY ignore +} + +downlinkRANConfigurationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DownlinkRANConfigurationTransfer + PROCEDURE CODE id-DownlinkRANConfigurationTransfer + CRITICALITY ignore +} + +downlinkRANEarlyStatusTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DownlinkRANEarlyStatusTransfer + PROCEDURE CODE id-DownlinkRANEarlyStatusTransfer + CRITICALITY ignore +} + +downlinkRANStatusTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DownlinkRANStatusTransfer + PROCEDURE CODE id-DownlinkRANStatusTransfer + CRITICALITY ignore +} + +downlinkUEAssociatedNRPPaTransport NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DownlinkUEAssociatedNRPPaTransport + PROCEDURE CODE id-DownlinkUEAssociatedNRPPaTransport + CRITICALITY ignore +} + +errorIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ErrorIndication + PROCEDURE CODE id-ErrorIndication + CRITICALITY ignore +} + +handoverCancel NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE HandoverCancel + SUCCESSFUL OUTCOME HandoverCancelAcknowledge + PROCEDURE CODE id-HandoverCancel + CRITICALITY reject +} + +handoverNotification NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE HandoverNotify + PROCEDURE CODE id-HandoverNotification + CRITICALITY ignore +} + +handoverPreparation NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE HandoverRequired + SUCCESSFUL OUTCOME HandoverCommand + UNSUCCESSFUL OUTCOME HandoverPreparationFailure + PROCEDURE CODE id-HandoverPreparation + CRITICALITY reject +} + +handoverResourceAllocation NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE HandoverRequest + SUCCESSFUL OUTCOME HandoverRequestAcknowledge + UNSUCCESSFUL OUTCOME HandoverFailure + PROCEDURE CODE id-HandoverResourceAllocation + CRITICALITY reject +} + +handoverSuccess NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE HandoverSuccess + PROCEDURE CODE id-HandoverSuccess + CRITICALITY ignore +} + +initialContextSetup NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE InitialContextSetupRequest + SUCCESSFUL OUTCOME InitialContextSetupResponse + UNSUCCESSFUL OUTCOME InitialContextSetupFailure + PROCEDURE CODE id-InitialContextSetup + CRITICALITY reject +} + +initialUEMessage NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE InitialUEMessage + PROCEDURE CODE id-InitialUEMessage + CRITICALITY ignore +} + +locationReport NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE LocationReport + PROCEDURE CODE id-LocationReport + CRITICALITY ignore +} + +locationReportingControl NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE LocationReportingControl + PROCEDURE CODE id-LocationReportingControl + CRITICALITY ignore +} + +locationReportingFailureIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE LocationReportingFailureIndication + PROCEDURE CODE id-LocationReportingFailureIndication + CRITICALITY ignore +} + +multicastSessionActivation NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE MulticastSessionActivationRequest + SUCCESSFUL OUTCOME MulticastSessionActivationResponse + UNSUCCESSFUL OUTCOME MulticastSessionActivationFailure + PROCEDURE CODE id-MulticastSessionActivation + CRITICALITY reject +} + +multicastSessionDeactivation NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE MulticastSessionDeactivationRequest + SUCCESSFUL OUTCOME MulticastSessionDeactivationResponse + PROCEDURE CODE id-MulticastSessionDeactivation + CRITICALITY reject +} + +multicastSessionUpdate NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE MulticastSessionUpdateRequest + SUCCESSFUL OUTCOME MulticastSessionUpdateResponse + UNSUCCESSFUL OUTCOME MulticastSessionUpdateFailure + PROCEDURE CODE id-MulticastSessionUpdate + CRITICALITY reject +} + +multicastGroupPaging NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE MulticastGroupPaging + PROCEDURE CODE id-MulticastGroupPaging + CRITICALITY ignore +} + +nASNonDeliveryIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE NASNonDeliveryIndication + PROCEDURE CODE id-NASNonDeliveryIndication + CRITICALITY ignore +} + +nGReset NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE NGReset + SUCCESSFUL OUTCOME NGResetAcknowledge + PROCEDURE CODE id-NGReset + CRITICALITY reject +} + +nGSetup NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE NGSetupRequest + SUCCESSFUL OUTCOME NGSetupResponse + UNSUCCESSFUL OUTCOME NGSetupFailure + PROCEDURE CODE id-NGSetup + CRITICALITY reject +} + +overloadStart NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE OverloadStart + PROCEDURE CODE id-OverloadStart + CRITICALITY ignore +} + +overloadStop NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE OverloadStop + PROCEDURE CODE id-OverloadStop + CRITICALITY reject +} + +paging NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE Paging + PROCEDURE CODE id-Paging + CRITICALITY ignore +} + +pathSwitchRequest NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PathSwitchRequest + SUCCESSFUL OUTCOME PathSwitchRequestAcknowledge + UNSUCCESSFUL OUTCOME PathSwitchRequestFailure + PROCEDURE CODE id-PathSwitchRequest + CRITICALITY reject +} + +pDUSessionResourceModify NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PDUSessionResourceModifyRequest + SUCCESSFUL OUTCOME PDUSessionResourceModifyResponse + PROCEDURE CODE id-PDUSessionResourceModify + CRITICALITY reject +} + +pDUSessionResourceModifyIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PDUSessionResourceModifyIndication + SUCCESSFUL OUTCOME PDUSessionResourceModifyConfirm + PROCEDURE CODE id-PDUSessionResourceModifyIndication + CRITICALITY reject +} + +pDUSessionResourceNotify NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PDUSessionResourceNotify + PROCEDURE CODE id-PDUSessionResourceNotify + CRITICALITY ignore +} + +pDUSessionResourceRelease NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PDUSessionResourceReleaseCommand + SUCCESSFUL OUTCOME PDUSessionResourceReleaseResponse + PROCEDURE CODE id-PDUSessionResourceRelease + CRITICALITY reject +} + +pDUSessionResourceSetup NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PDUSessionResourceSetupRequest + SUCCESSFUL OUTCOME PDUSessionResourceSetupResponse + PROCEDURE CODE id-PDUSessionResourceSetup + CRITICALITY reject +} + +privateMessage NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PrivateMessage + PROCEDURE CODE id-PrivateMessage + CRITICALITY ignore +} + +pWSCancel NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PWSCancelRequest + SUCCESSFUL OUTCOME PWSCancelResponse + PROCEDURE CODE id-PWSCancel + CRITICALITY reject +} + +pWSFailureIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PWSFailureIndication + PROCEDURE CODE id-PWSFailureIndication + CRITICALITY ignore +} + +pWSRestartIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE PWSRestartIndication + PROCEDURE CODE id-PWSRestartIndication + CRITICALITY ignore +} + +rANConfigurationUpdate NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RANConfigurationUpdate + SUCCESSFUL OUTCOME RANConfigurationUpdateAcknowledge + UNSUCCESSFUL OUTCOME RANConfigurationUpdateFailure + PROCEDURE CODE id-RANConfigurationUpdate + CRITICALITY reject +} + +rANCPRelocationIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RANCPRelocationIndication + PROCEDURE CODE id-RANCPRelocationIndication + CRITICALITY reject +} + +rerouteNASRequest NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RerouteNASRequest + PROCEDURE CODE id-RerouteNASRequest + CRITICALITY reject +} + + +retrieveUEInformation NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RetrieveUEInformation + PROCEDURE CODE id-RetrieveUEInformation + CRITICALITY reject +} + +rRCInactiveTransitionReport NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RRCInactiveTransitionReport + PROCEDURE CODE id-RRCInactiveTransitionReport + CRITICALITY ignore +} + +secondaryRATDataUsageReport NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE SecondaryRATDataUsageReport + PROCEDURE CODE id-SecondaryRATDataUsageReport + CRITICALITY ignore +} + +traceFailureIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE TraceFailureIndication + PROCEDURE CODE id-TraceFailureIndication + CRITICALITY ignore +} + +traceStart NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE TraceStart + PROCEDURE CODE id-TraceStart + CRITICALITY ignore +} + +uEContextModification NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEContextModificationRequest + SUCCESSFUL OUTCOME UEContextModificationResponse + UNSUCCESSFUL OUTCOME UEContextModificationFailure + PROCEDURE CODE id-UEContextModification + CRITICALITY reject +} + +uEContextRelease NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEContextReleaseCommand + SUCCESSFUL OUTCOME UEContextReleaseComplete + PROCEDURE CODE id-UEContextRelease + CRITICALITY reject +} + +uEContextReleaseRequest NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEContextReleaseRequest + PROCEDURE CODE id-UEContextReleaseRequest + CRITICALITY ignore +} + +uEContextResume NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEContextResumeRequest + SUCCESSFUL OUTCOME UEContextResumeResponse + UNSUCCESSFUL OUTCOME UEContextResumeFailure + PROCEDURE CODE id-UEContextResume + CRITICALITY reject +} + +uEContextSuspend NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEContextSuspendRequest + SUCCESSFUL OUTCOME UEContextSuspendResponse + UNSUCCESSFUL OUTCOME UEContextSuspendFailure + PROCEDURE CODE id-UEContextSuspend + CRITICALITY reject +} + +uEInformationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UEInformationTransfer + PROCEDURE CODE id-UEInformationTransfer + CRITICALITY reject +} + +uERadioCapabilityCheck NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UERadioCapabilityCheckRequest + SUCCESSFUL OUTCOME UERadioCapabilityCheckResponse + PROCEDURE CODE id-UERadioCapabilityCheck + CRITICALITY reject +} + +uERadioCapabilityIDMapping NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UERadioCapabilityIDMappingRequest + SUCCESSFUL OUTCOME UERadioCapabilityIDMappingResponse + PROCEDURE CODE id-UERadioCapabilityIDMapping + CRITICALITY reject +} + +uERadioCapabilityInfoIndication NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UERadioCapabilityInfoIndication + PROCEDURE CODE id-UERadioCapabilityInfoIndication + CRITICALITY ignore +} + +uETNLABindingRelease NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UETNLABindingReleaseRequest + PROCEDURE CODE id-UETNLABindingRelease + CRITICALITY ignore +} + +uplinkNASTransport NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UplinkNASTransport + PROCEDURE CODE id-UplinkNASTransport + CRITICALITY ignore +} + +uplinkNonUEAssociatedNRPPaTransport NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UplinkNonUEAssociatedNRPPaTransport + PROCEDURE CODE id-UplinkNonUEAssociatedNRPPaTransport + CRITICALITY ignore +} + +uplinkRANConfigurationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UplinkRANConfigurationTransfer + PROCEDURE CODE id-UplinkRANConfigurationTransfer + CRITICALITY ignore +} + +uplinkRANEarlyStatusTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UplinkRANEarlyStatusTransfer + PROCEDURE CODE id-UplinkRANEarlyStatusTransfer + CRITICALITY reject +} + +uplinkRANStatusTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UplinkRANStatusTransfer + PROCEDURE CODE id-UplinkRANStatusTransfer + CRITICALITY ignore +} + +uplinkUEAssociatedNRPPaTransport NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UplinkUEAssociatedNRPPaTransport + PROCEDURE CODE id-UplinkUEAssociatedNRPPaTransport + CRITICALITY ignore +} + +writeReplaceWarning NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE WriteReplaceWarningRequest + SUCCESSFUL OUTCOME WriteReplaceWarningResponse + PROCEDURE CODE id-WriteReplaceWarning + CRITICALITY reject +} + +uplinkRIMInformationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE UplinkRIMInformationTransfer + PROCEDURE CODE id-UplinkRIMInformationTransfer + CRITICALITY ignore +} + +downlinkRIMInformationTransfer NGAP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE DownlinkRIMInformationTransfer + PROCEDURE CODE id-DownlinkRIMInformationTransfer + CRITICALITY ignore +} + +END diff --git a/ttcn/LibNGAP/lib/asn1/converter-example.mk b/ttcn/LibNGAP/lib/asn1/converter-example.mk new file mode 100644 index 0000000..15c6946 --- /dev/null +++ b/ttcn/LibNGAP/lib/asn1/converter-example.mk @@ -0,0 +1,33 @@ +include Makefile.am.libasncodec + +LIBS += -lm +CFLAGS += $(ASN_MODULE_CFLAGS) -DASN_PDU_COLLECTION -I. +ASN_LIBRARY ?= libasncodec.a +ASN_PROGRAM ?= converter-example +ASN_PROGRAM_SRCS ?= \ + converter-example.c\ + pdu_collection.c + +all: $(ASN_PROGRAM) + +$(ASN_PROGRAM): $(ASN_LIBRARY) $(ASN_PROGRAM_SRCS:.c=.o) + $(CC) $(CFLAGS) $(CPPFLAGS) -o $(ASN_PROGRAM) $(ASN_PROGRAM_SRCS:.c=.o) $(LDFLAGS) $(ASN_LIBRARY) $(LIBS) + +$(ASN_LIBRARY): $(ASN_MODULE_SRCS:.c=.o) + $(AR) rcs $@ $(ASN_MODULE_SRCS:.c=.o) + +.SUFFIXES: +.SUFFIXES: .c .o + +.c.o: + $(CC) $(CFLAGS) -o $@ -c $< + +clean: + rm -f $(ASN_PROGRAM) $(ASN_LIBRARY) + rm -f $(ASN_MODULE_SRCS:.c=.o) $(ASN_PROGRAM_SRCS:.c=.o) + +regen: regenerate-from-asn1-source + +regenerate-from-asn1-source: + asn1c NGAP_CommonDataTypes.asn + diff --git a/ttcn/LibNGAP/lib/asn1/module.mk b/ttcn/LibNGAP/lib/asn1/module.mk new file mode 100644 index 0000000..047fef3 --- /dev/null +++ b/ttcn/LibNGAP/lib/asn1/module.mk @@ -0,0 +1,2 @@ +sources := NGAP_CommonDataTypes.asn NGAP_Constants.asn NGAP_Containers.asn NGAP_IEs.asn NGAP_PDU_Contents.asn NGAP_PDU_Descriptions.asn + diff --git a/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn b/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn new file mode 100644 index 0000000..bc9321a --- /dev/null +++ b/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn @@ -0,0 +1,80 @@ +/** + * @author ETSI / STF + * @version $URL:$ + * $Id:$ + * @desc This module provides the types used by the test component for NGAP 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 / 3GPP TS + */ +module LibNGAP_Interface { + + // LibCommon + import from LibCommon_Sync all; + + // LibNGAP + import from NGAP_IEs language "ASN.1:1997" all; + import from NGAP_PDU_Descriptions language "ASN.1:1997" all; + import from LibNGAP_Pixits all; + + group portDefinitions { + + /** + * @desc NGAP protocol port + */ + type port NGAPPort message { + inout NGAP_PDU + } // End of type NGAPPort + + } // End of group portDefinitions + + group interfacePorts { + type component NGAPComponent extends SelfSyncComp { + // Port + port NGAPPort N2_gNBaMF_P; + + // Global variables + + var boolean vc_serverStop:=false; + + // test adapter params + var charstring vc_ETS_address := ""; //defined in init + var charstring vc_ETS_address2 := ""; //defined in init + var integer vc_ETS_port := 3868; //defined in init + var integer vc_ETS_port2 := 3869; //defined in init + var charstring vc_SUT_address := ""; //defined in init + var integer vc_SUT_port := 3868; //defined in init + + + var NGAP_PDU vc_sendNGAP_PDU ; + var NGAP_PDU vc_recvNGAP_PDU ; + var NGAP_PDU vc_recvNGAP_PDUDefault ; //global variable defined to save Dimeter message received within default altstep + + // Init of values at component started + // Note: generation of following MME and ENB UE IDs can be done randomly in init + //var AMF_UE_NGAP_ID vc_AMF_UE_ID := 10; + //var GNB_UE_NGAP_ID vc_gNB_UE_ID := 11; + + // General timers + timer tc_wait := PX_NGAP_TWAIT; + timer tc_delay := 0.3; // delay next Request + + // Variables for storing default references + var default vc_default_ngap; + var default vc_def_catchSyncStop_ngap; + + } // End of type component NGAPComponent + + + type component gNBNGAPComponent extends NGAPComponent { + } // End of type component gNBNGAPComponent + + type component aMFNGAPComponent extends NGAPComponent { + } // End of type component aMFNGAPComponent + + } // End of group interfacePorts + +} // End of module LibNGAP_Interface + diff --git a/ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn b/ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn new file mode 100644 index 0000000..1568729 --- /dev/null +++ b/ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn @@ -0,0 +1,384 @@ +/** + * @author ETSI / + * @version $URL$ + * $Id$ + * @desc This module provides functions used in NGAP. + * @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 / 3GPP TS + */ +module LibNGAP_Steps { + + // LibCommon + import from LibCommon_Sync all; + import from LibCommon_VerdictControl all; + import from LibCommon_BasicTypesAndValues all; + + // LibNGAP + import from NGAP_CommonDataTypes language "ASN.1:1997" all; + import from NGAP_PDU_Descriptions language "ASN.1:1997" all; + import from NGAP_IEs language "ASN.1:1997" all; + + import from LibNGAP_TypesAndValues all; + import from LibNGAP_Interface all; + import from LibNGAP_Pixits all; + import from LibNGAP_Templates all; + + /** + * @desc Common functions description + */ + group commonFunctions { + + } // End of group commonFunctions + + /** + * @desc Receive functions description + */ + group receivePDU { + + /** + * @desc This is a test step that assign common NGAP + * @param p_PDU Extract the message payload from the NGAP PDU + */ + function f_NGAPPDU_Get( + inout NGAP_PDU p_PDU + ) runs on NGAPComponent { + + vc_recvNGAP_PDU := p_PDU; + + if (ischosen(p_PDU.initiatingMessage)) { + // Nothing to do + } + if (ischosen(p_PDU.successfulOutcome)) { + // Nothing to do + } + if (ischosen(p_PDU.unsuccessfulOutcome)) { + // Nothing to do + } + } // End of function f_NGAPPDU_Get + + /** + * @desc Receive NGAP PDU from protocol port + * @param p_PDU template of the message to be received + */ + function f_recv_NGAP_PDU( + in template NGAP_PDU p_PDU + ) runs on NGAPComponent { + var NGAP_PDU v_PDU; + + tc_wait.start; + alt { + [] N2_gNBaMF_P.receive(p_PDU) -> value v_PDU { + tc_wait.stop; + f_NGAPPDU_Get(v_PDU) + } + [] tc_wait.timeout { + setverdict(inconc,"*** " & __SCOPE__ & ": INCONC: Message was not received in due time. ***"); + //Stop the component in case of timeout + all timer.stop; + f_componentStop(); + } + } + + } // End of function f_recv_NGAP_PDU + + /** + * @desc Receive NGAP PDU with InitiatingMessage payload from protocol port + * @param p_initiatingMessage Receive template for InitiatingMessage message + */ + function f_recv_NGAP_initiatingMessage( + template (present) InitiatingMessage p_initiatingMessage := ? + ) runs on NGAPComponent { + f_recv_NGAP_PDU( { initiatingMessage := p_initiatingMessage }) + } // End of function f_recv_NGAP_initiatingMessage + + /** + * @desc Receive NGAP PDU with SuccessfulOutcome payload from protocol port + * @param p_successfulOutcome Receive template for SuccessfulOutcome message + */ + function f_recv_NGAP_successfulOutcome( + template (present) SuccessfulOutcome p_successfulOutcome := ? + ) runs on NGAPComponent { + f_recv_NGAP_PDU( {successfulOutcome := p_successfulOutcome}) + } // End of f_recv_NGAP_successfulOutcome + + /** + * @desc Receive NGAP PDU with UnsuccessfulOutcome payload from protocol port + * @param p_unsuccessfulOutcome Receive template for UnsuccessfulOutcome message + */ + function f_recv_NGAP_unsuccessfulOutcome( + template (present) UnsuccessfulOutcome p_unsuccessfulOutcome := ? + ) runs on NGAPComponent { + f_recv_NGAP_PDU( {unsuccessfulOutcome := p_unsuccessfulOutcome}) + } // End of function f_recv_NGAP_unsuccessfulOutcome + + + } // End of group receivePDU + + /** + * @desc Send functions description + */ + group sendPDU { + + /** + * @desc This is a test step that assign common NGAP + * @param p_PDU The NGAP protocol message to set up + */ + function f_NGAPPDU_Set( + inout template (value) NGAP_PDU p_PDU + ) runs on NGAPComponent { + + if (ischosen(p_PDU.initiatingMessage)) { + vc_sendNGAP_PDU:=valueof(p_PDU); + } + if (ischosen(p_PDU.successfulOutcome)) { + vc_sendNGAP_PDU:=valueof(p_PDU); + } + if (ischosen(p_PDU.unsuccessfulOutcome)) { + vc_sendNGAP_PDU:=valueof(p_PDU); + } + + } // End of function f_NGAPPDU_Set + + /** + * @desc Send NGAP PDU to protocol port + * @param p_PDU template value message to be send + */ + function f_send_NGAP_PDU( + in template (value) NGAP_PDU p_PDU + ) runs on NGAPComponent { + f_NGAPPDU_Set(p_PDU); + N2_gNBaMF_P.send(p_PDU); + } // End of function f_send_NGAPPDU + + /** + * @desc Send NGAP PDU with InitiatingMessage payload from protocol port + * @param p_initiatingMessage Send value template for InitiatingMessage message + */ + function f_send_NGAP_initiatingMessage( + in template (value) InitiatingMessage p_initiatingMessage, + in template (value) Criticality p_criticality := reject + ) runs on NGAPComponent { + f_send_NGAP_PDU( {initiatingMessage := p_initiatingMessage}) + } // End of function f_send_NGAP_initiatingMessage + + /** + * @desc Send NGAP PDU with SuccessfulOutcome payload from protocol port + * @param p_successfulOutcome Send value template for SuccessfulOutcome message + */ + function f_send_NGAP_successfulOutcome( + in template (value) SuccessfulOutcome p_successfulOutcome + ) runs on NGAPComponent { + f_send_NGAP_PDU( {successfulOutcome := p_successfulOutcome}) + } // End of function f_send_NGAP_successfulOutcome + + /** + * @desc Send NGAP PDU with UnsuccessfulOutcome payload from protocol port + * @param p_unsuccessfulOutcome Send value template for UnsuccessfulOutcome message + */ + function f_send_NGAP_unsuccessfulOutcome( + in template (value) UnsuccessfulOutcome p_unsuccessfulOutcome + ) runs on NGAPComponent { + f_send_NGAP_PDU( {unsuccessfulOutcome := p_unsuccessfulOutcome}) + } // End of function f_send_NGAP_unsuccessfulOutcome + + } // End of group sendPDU + + /** + * @desc Setup full procedure functions + * @see ETSI TS + */ + group fullProcedures { + } // End of group fullProcedures + + group externalFunctions { + } // End of group externalFunctions + + group preambles { + + group preamble_NGAP{ + + /** + * @desc + * @verdict + */ + function f_preambleNGAP_MME() + runs on NGAPComponent { + // Nothing to do + } // End of function f_preambleNGAP_MME + + /** + * @desc + * @verdict + */ + function f_preambleNGAP_eNB() + runs on NGAPComponent { + // Nothing to do + } // End of function f_preambleNGAP_eNB + + } // End of group preamble_NGAP + + } // End of group preambles + + group postambles { + + group postamble_NGAP{ + + /** + * @desc + * @verdict + */ + function f_postambleNGAP_gNB() + runs on NGAPComponent { + // Nothing to do + } // End of function f_postambleNGAP_gNB + + /** + * @desc + * @verdict + */ + function f_postambleNGAP_AMF() + runs on NGAPComponent { + // Nothing to do + } // End of function f_postambleNGAP_AMF + + } // End of group postamble_NGAP + + } // End of group postambles + + /** + * @desc Global 'altstep' statements description + */ + group globalSteps { + + /** + * @desc This is a test step that init NGAP component + */ + function f_NGAP_Init_Component() + runs on NGAPComponent { + // Nothing to do + } // End of function f_NGAP_Init_Component + + /** + * @desc Component termination + */ + function f_NGAP_terminate_component() + runs on NGAPComponent { + + log("component terminated - forced!"); + deactivate; + stop; + } // End of function f_NGAP_terminate_component + + /** + * @desc Component termination + */ + function f_componentStop() + runs on NGAPComponent { + + syncPort.send(m_syncClientStop); + N2_gNBaMF_P.clear; + stop; + } // End of function f_componentStop + + /** + * @desc Original copied from older LibCommon_VerdictControl + */ + function f_getVerdict() // FIXME Are you sure we really need it??? + return FncRetCode { + + var FncRetCode v_ret := e_error; + if (getverdict == pass or getverdict == none) { + v_ret := e_success; + } + return v_ret; + } // End of function + + } // End of group globalSteps + + /** + * @desc Default 'altstep' statements description + */ + group defaultsTestStep { + + /** + * @desc + * @verdict + */ + altstep a_defaultNGAP() + runs on NGAPComponent { + [] any timer.timeout { + all timer.stop; + if (vc_serverStop==false) { + f_selfOrClientSyncAndVerdict("error", e_timeout); + } + else { + stop; + } + } + [] N2_gNBaMF_P.receive (NGAP_PDU:{initiatingMessage := ?}) -> value vc_recvNGAP_PDUDefault { + repeat; + } + [] N2_gNBaMF_P.receive (NGAP_PDU:{successfulOutcome := ?}) -> value vc_recvNGAP_PDUDefault { + repeat; + } + [] N2_gNBaMF_P.receive (NGAP_PDU:{unsuccessfulOutcome := ?}) -> value vc_recvNGAP_PDUDefault { + repeat; + } + [] N2_gNBaMF_P.receive (NGAP_PDU:?) -> value vc_recvNGAP_PDUDefault { + if (vc_serverStop==false) { + f_selfOrClientSyncAndVerdict("error", e_error); + } + else { + stop; + } + } + [] N2_gNBaMF_P.receive { + if (vc_serverStop==false) { + f_selfOrClientSyncAndVerdict("error", e_error); + } + else { + stop; + } + } + [] a_shutdown() { + // Process temination on error + log("*** a_defaultNGAP() : Process temination on error ***"); + // Terminate component execution + stop; + } + } // End of altstep a_defaultNGAP + + altstep a_defaultNGAP_MME() + runs on NGAPComponent { + [] any timer.timeout { + all timer.stop; + if (vc_serverStop==false) { + f_selfOrClientSyncAndVerdict("error", e_timeout); + } + else { + stop; + } + } + // Note: possible unscollicited messages should be filtered + } // End of altstep a_defaultNGAP_MME + + altstep a_defaultNGAP_eNB() + runs on NGAPComponent { + [] any timer.timeout { + all timer.stop; + if (vc_serverStop==false) { + f_selfOrClientSyncAndVerdict("error", e_timeout); + } + else { + stop; + } + } + // Note: possible unscollicited messages should be filtered + } // End of altstep a_defaultNGAP_eNB + + } // End of group defaultsTestStep + +} // End of module LibNGAP_Steps diff --git a/ttcn/LibNGAP/module.mk b/ttcn/LibNGAP/module.mk new file mode 100644 index 0000000..5b97534 --- /dev/null +++ b/ttcn/LibNGAP/module.mk @@ -0,0 +1,6 @@ +sources := LibNGAP_TypesAndValues.ttcn \ + LibNGAP_Interface.ttcn \ + LibNGAP_Pixits.ttcn \ + LibNGAP_Steps.ttcn \ + LibNGAP_Templates.ttcn \ + LibNGAP_EncdecDeclarations.ttcn -- GitLab From 4e23fbc3d19f6ef21308e9273fc241389c6b35ba Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 13 Oct 2023 11:02:25 +0200 Subject: [PATCH 006/365] Added TITAN patches --- Makefile | 12 ++++++------ config.mk | 10 +++++----- libNr5gcAsn1.mk | 2 +- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Makefile b/Makefile index fc5ec5e..477edd7 100644 --- a/Makefile +++ b/Makefile @@ -103,7 +103,7 @@ echo: echo_sources @echo -e "defines: $(addsuffix \n, $(defines))" clean: - rm -f $(outdir)/$(ATS)$(EXE) $(gen_objects) $(gen_sources) $(gen_headers) $(cc_objects) $(outdir)/.generate $(outdir)/../libAsn.so + rm -f $(outdir)/$(ATS)$(EXE) $(gen_objects) $(gen_sources) $(gen_headers) $(cc_objects) $(outdir)/.generate $(outdir)/../lib5GNGAPAsn.so # rm -f $(outdir)/asn1/*.so $(outdir)/asn1/*.o $(outdir)/asn1/*.c $(outdir)/asn1/*.h $(outdir)/asn1/Makefile.am.libasncodec regen: force_regen $(outdir)/.generate @@ -125,8 +125,8 @@ t3d: all $(outdir) $(outdir)/asn1 $(bindir): mkdir -p $@ -$(bindir)/$(ATS)$(EXE): $(outdir)/asn1/libAsn.a $(gen_objects) $(cc_objects) - g++ -g -O0 -std=c++17 -o $@ $(LDFLAGS) $(gen_objects) $(cc_objects) $(outdir)/asn1/libAsn.a $(libs) +$(bindir)/$(ATS)$(EXE): $(outdir)/asn1/lib5GNGAPAsn.a $(gen_objects) $(cc_objects) + g++ -g -O0 -std=c++17 -o $@ $(LDFLAGS) $(gen_objects) $(cc_objects) $(outdir)/asn1/lib5GNGAPAsn.a $(libs) $(gen_objects) :%.o :%.cc g++ -g -O0 -std=c++17 -c $(addprefix -D, $(defines)) $(addprefix -I, $(includes)) -o $@ $< @@ -144,17 +144,17 @@ $(outdir)/.generate: Makefile $(tt_sources) $(TTCN3_DIR)/bin/compiler $(TTCN3_COMPILER_OPTIONS) -o $(outdir) $(tt_sources) touch $@ -$(bindir)/libAsn.so: $(outdir)/asn1/libAsn.so +$(bindir)/lib5GNGAPAsn.so: $(outdir)/asn1/lib5GNGAPAsn.so cp -f $< $@ -$(outdir)/asn1/libAsn.a: $(asn_sources) $(asn1_sources) libasn1.mk Makefile +$(outdir)/asn1/lib5GNGAPAsn.a: $(asn_sources) $(asn1_sources) libNr5gcAsn1.mk Makefile mkdir -p $(outdir)/asn1 echo TOP_DIR := ../../.. >$(outdir)/asn1/Makefile echo ASN_PDU := $(pdu) >>$(outdir)/asn1/Makefile echo ASN_FILES := \\ >>$(outdir)/asn1/Makefile for n in $(asn_sources) $(asn1_sources); do echo " $$n \\"; done >>$(outdir)/asn1/Makefile echo >>$(outdir)/asn1/Makefile - cat libasn1.mk >>$(outdir)/asn1/Makefile + cat libNr5gcAsn1.mk >>$(outdir)/asn1/Makefile $(MAKE) -C $(outdir)/asn1 touch $@ diff --git a/config.mk b/config.mk index 68db5bf..1a1a7e1 100644 --- a/config.mk +++ b/config.mk @@ -1,8 +1,8 @@ -#TTCN3_COMPILER_OPTIONS := -d -e -f -g -j -H -l -L -R -U none -x -X -TTCN3_COMPILER_OPTIONS := -d -e -f -g -j -l -L -R -U none -x -X -#TTCN3_DIR := $(HOME)/frameworks/titan/titan.core/Install -TTCN3_DIR := $(HOME)/tmp/ttcn3-9.0.0 -#ASN1C_PATH := $(HOME)/frameworks/asn1c.denis +TTCN3_COMPILER_OPTIONS := -d -e -f -g -j -H -l -L -R -U none -x -X +#TTCN3_COMPILER_OPTIONS := -d -e -f -g -j -l -L -R -U none -x -X +TTCN3_DIR := $(HOME)/frameworks/titan/titan.core/Install +#TTCN3_DIR := $(HOME)/tmp/ttcn3-9.0.0 +ASN1C_PATH := $(HOME)/frameworks/asn1c.denis #ASN1C_PATH := /home/ubuntu/bin/asn1c.denis/ #WPCAP_DLL_PATH := /cygdrive/c/windows/system32/npcap/wpcap.dll #NPCAP_INCLUDE := /cygdrive/c/PROGRA~1/Npcap/sdk/include diff --git a/libNr5gcAsn1.mk b/libNr5gcAsn1.mk index 469d8c9..cc1cdac 100644 --- a/libNr5gcAsn1.mk +++ b/libNr5gcAsn1.mk @@ -6,7 +6,7 @@ ########################################################## # The name of the library -ASN_LIBRARY = libItsAsn.a +ASN_LIBRARY = lib5GNGAPAsn.a ifeq (,$(sort $(ASN_FILES))) $(error ASN_FILES should be specified ) -- GitLab From 756cacf819127222705d9162e0984501a06513a4 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 13 Oct 2023 11:04:54 +0200 Subject: [PATCH 007/365] Added TITAN Abstract_Socket module --- .gitmodules | 3 +++ .../titan.TestPorts.Common_Components.Abstract_Socket/module | 1 + 2 files changed, 4 insertions(+) create mode 160000 ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module diff --git a/.gitmodules b/.gitmodules index 090e70f..00b2836 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,3 +2,6 @@ path = titan-test-system-framework url = https://labs.etsi.org/rep/cti-tools/titan-test-system-framework.git branch = devel +[submodule "ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module"] + path = ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module + url = https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.Common_Components.Abstract_Socket.git diff --git a/ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module b/ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module new file mode 160000 index 0000000..f6b2d2b --- /dev/null +++ b/ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module @@ -0,0 +1 @@ +Subproject commit f6b2d2ba3f486dea778e108ce60e02a3fcae9ff8 -- GitLab From 78e1cdc33351b423c9d418ba5830d47bc228e63d Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 13 Oct 2023 11:04:54 +0200 Subject: [PATCH 008/365] Added TITAN Abstract_Socket module --- install.sh | 27 + .../module.mk | 2 + ttcn/patch_lib_common_titan/module.mk | 9 + .../ttcn/LibCommon_AbstractData.ttcn | 137 ++ .../ttcn/LibCommon_BasicTypesAndValues.ttcn | 247 +++ .../ttcn/LibCommon_DataStrings.ttcn | 168 ++ .../ttcn/LibCommon_Sync.ttcn | 1359 +++++++++++++++++ 7 files changed, 1949 insertions(+) create mode 100755 install.sh create mode 100644 ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module.mk create mode 100644 ttcn/patch_lib_common_titan/module.mk create mode 100644 ttcn/patch_lib_common_titan/ttcn/LibCommon_AbstractData.ttcn create mode 100644 ttcn/patch_lib_common_titan/ttcn/LibCommon_BasicTypesAndValues.ttcn create mode 100644 ttcn/patch_lib_common_titan/ttcn/LibCommon_DataStrings.ttcn create mode 100644 ttcn/patch_lib_common_titan/ttcn/LibCommon_Sync.ttcn diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..0e65e40 --- /dev/null +++ b/install.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +#set -e +set -vx + +BASE_PATH=`pwd` + +git checkout devel +git submodule update --init --recursive --remote + +if [ ! -f ./titan-test-system-framework ] +then + git clone --recurse-submodules --branch devel https://labs.etsi.org/rep/cti-tools/titan-test-system-framework.git + cd ./titan-test-system-framework +else + cd ./titan-test-system-framework + git checkout devel +fi +# TODO later +#cd ./ttcn/LibHttp +#ln -sf module_5GNGAP.mk module.mk + +cd $BASE_PATH +ln -f ./ttcn/patch_lib_common_titan/module.mk ./ttcn/LibCommon/ +# TODO Add other patch + +exit 0 diff --git a/ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module.mk b/ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module.mk new file mode 100644 index 0000000..9b0b530 --- /dev/null +++ b/ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module.mk @@ -0,0 +1,2 @@ +sources := module/src/Abstract_Socket.cc +includes := module/src \ No newline at end of file diff --git a/ttcn/patch_lib_common_titan/module.mk b/ttcn/patch_lib_common_titan/module.mk new file mode 100644 index 0000000..b4b7cd7 --- /dev/null +++ b/ttcn/patch_lib_common_titan/module.mk @@ -0,0 +1,9 @@ +sources := \ + ../patch_lib_common_titan/ttcn/LibCommon_AbstractData.ttcn \ + ../patch_lib_common_titan/ttcn/LibCommon_BasicTypesAndValues.ttcn \ + ../patch_lib_common_titan/ttcn/LibCommon_DataStrings.ttcn \ + ../patch_lib_common_titan/ttcn/LibCommon_Sync.ttcn \ + ttcn/LibCommon_TextStrings.ttcn \ + ttcn/LibCommon_Time.ttcn \ + ttcn/LibCommon_VerdictControl.ttcn + diff --git a/ttcn/patch_lib_common_titan/ttcn/LibCommon_AbstractData.ttcn b/ttcn/patch_lib_common_titan/ttcn/LibCommon_AbstractData.ttcn new file mode 100644 index 0000000..8ae5f85 --- /dev/null +++ b/ttcn/patch_lib_common_titan/ttcn/LibCommon_AbstractData.ttcn @@ -0,0 +1,137 @@ +/** + * @author ETSI + * @version $URL$ + * $Id$ + * @desc A collection of functions for abstract data types which may be + * useful in the implementation of any TTCN-3 test suite. + * @remark End users should be aware that any changes made to the in + * definitions this module may be overwritten in future releases. + * End users are encouraged to contact the distributers of this + * module regarding their modifications or additions so that future + * updates will include your changes. + * @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. + * + */ + module LibCommon_AbstractData { + + import from LibCommon_BasicTypesAndValues all; + + group stringStack { + + type record StringStack { + UInt stackSize, + StringItems stringItems + } + + type record of charstring StringItems; + + /** + * @desc Constant which can be used to initialize a + * string stack. A string stack can be intialized by + * assigning this value in the variable declariation. + * An alternative is to call the initlialization function. + * @see LibCommon_AbstractData.f_initStringStack + * @remark Note that an initlialized stack stack is not + * necessarily the same as an empty string stack. + * An empty tring stack as 0 zero elements but may + * have a non empty list of (empty) items. + */ + const StringStack c_initStringStack := { 0, {} } + + /** + * @desc The invocation of this function will initialize + * a string stack to an empty string stack. + * An alternative is to initlialize a stack using a + * constant value. + * @see LibCommon_AbstractData.c_initStringStack + * @param p_stack String stack to be initialized. + */ + function f_initStringStack ( inout StringStack p_stack ) { + p_stack := c_initStringStack + } + + /** + * @desc This function checks if a string stack is empty. + * @param p_stack String stack to be checked. + * @return true if empty, false if not empty + */ + function f_isStringStackEmpty ( inout StringStack p_stack ) + return boolean { + if ( p_stack.stackSize == 0 ) {return true} + else {return false} + } + + /** + * @desc This function checks if a given string is on the + * string stack. + * @param p_stack String stack where the string item + * is to be looked for. + * @param p_item String to be checked for. + * @return true if found, false if not found + */ + function f_isItemOnStringStack ( inout StringStack p_stack, + in charstring p_item ) + return boolean { + var integer i; + for (i := 0; i < p_stack.stackSize; i := i+1 ) { + if ( p_stack.stringItems[i] == p_item ) { + return true; + } + } + return false; + } + + /** + * @desc This function checks if a given string is on the + * string stack. + * @param p_stack String stack where the string item + * is to be looked for. + * @param p_item String item on top of the stack. + * @return false if stack is empty, true otherwise + */ + function f_peekStringStackTop ( inout StringStack p_stack, + out charstring p_item) + return boolean { + if (p_stack.stackSize == 0) { + p_item := "f_peekTopStringStack: String stack is empty!"; + return false; + } + p_item := valueof(p_stack.stringItems[p_stack.stackSize-1]); + return true; + } + + + /** + * @desc This function puts a string to the top of a + * string stack. + * @param p_stack String stack to which the string item + * is to be added. + * @param p_item String to be added. + */ + function f_pushStringStack ( inout StringStack p_stack, + in charstring p_item ) { + p_stack.stringItems[p_stack.stackSize] := p_item; + p_stack.stackSize := p_stack.stackSize + 1; + } + + /** + * @desc This function removes the string from the top of a + * string stack. If the stack is empty nothing is done + * @param p_stack String stack from which the top string item + * is to be removed. + */ + function f_popStringStack ( inout StringStack p_stack ) { + if ( p_stack.stackSize > 0 ) { + p_stack.stackSize := p_stack.stackSize-1; + // "delete" top stack item to be safe + // Note: due to record of index the "old top" is size-1! + p_stack.stringItems[p_stack.stackSize] := ""; + } + } + + } // end group stringStack + +} // end module LibCommon_AbstractData diff --git a/ttcn/patch_lib_common_titan/ttcn/LibCommon_BasicTypesAndValues.ttcn b/ttcn/patch_lib_common_titan/ttcn/LibCommon_BasicTypesAndValues.ttcn new file mode 100644 index 0000000..9b5477d --- /dev/null +++ b/ttcn/patch_lib_common_titan/ttcn/LibCommon_BasicTypesAndValues.ttcn @@ -0,0 +1,247 @@ +/** + * @author ETSI + * @version $URL$ + * $Id$ + * @desc A collection of basic type and value definitions which may be + * useful in the implementation of any TTCN-3 test suite.

+ * @remark End users should be aware that any changes made to the in + * definitions this module may be overwritten in future releases. + * End users are encouraged to contact the distributers of this + * module regarding their modifications or additions so that future + * updates will include your changes. + * @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. + * + */ + module LibCommon_BasicTypesAndValues { + + /** + * @remark Number in subtype name always indicates encoding length + * in _bits_ + */ + group unsignedIntegerDefintions { + + const integer c_uInt1Max := 1; + const integer c_uInt2Max := 3; + const integer c_uInt3Max := 7; + const integer c_uInt4Max := 15; + const integer c_uInt5Max := 31; + const integer c_uInt6Max := 63; + const integer c_uInt7Max := 127; + const integer c_uInt8Max := 255; + const integer c_uInt9Max := 511; + const integer c_uInt10Max := 1023; + const integer c_uInt11Max := 2047; + const integer c_uInt12Max := 4095; + const integer c_uInt13Max := 8191; + const integer c_uInt14Max := 16383; + const integer c_uInt15Max := 32767; + const integer c_uInt16Max := 65535; + const integer c_uInt17Max := 131071; + const integer c_uInt18Max := 262143; + const integer c_uInt19Max := 524287; + const integer c_uInt20Max := 1048575; + const integer c_uInt21Max := 2097151; + const integer c_uInt22Max := 4194303; + const integer c_uInt23Max := 8388607; + const integer c_uInt24Max := 16777215; + const integer c_uInt25Max := 33554431; + const integer c_uInt26Max := 67108863; + const integer c_uInt27Max := 134217727; + const integer c_uInt28Max := 268435456; + const integer c_uInt29Max := 536870911; + const integer c_uInt30Max := 1073741823; + const integer c_uInt31Max := 2147483647; + const integer c_uInt32Max := 4294967295; + const integer c_uInt36Max := 68719476735; + const integer c_uInt48Max := 281474976710655; + const integer c_uInt52Max := 4503599627370495; + const integer c_uInt64Max := 18446744073709551615; + + type integer UInt (0 .. infinity); + type integer UInt1 (0 .. c_uInt1Max) with {variant "unsigned 1 bit"}; + type integer UInt2 (0 .. c_uInt2Max) with {variant "unsigned 2 bit"}; + type integer UInt3 (0 .. c_uInt3Max) with {variant "unsigned 3 bit"}; + type integer UInt4 (0 .. c_uInt4Max) with {variant "unsigned 4 bit"}; + type integer UInt5 (0 .. c_uInt5Max) with {variant "unsigned 5 bit"}; + type integer UInt6 (0 .. c_uInt6Max) with {variant "unsigned 6 bit"}; + type integer UInt7 (0 .. c_uInt7Max) with {variant "unsigned 7 bit"}; + type integer UInt8 (0 .. c_uInt8Max) with {variant "unsigned 8 bit"}; + type integer UInt9 (0 .. c_uInt9Max) with {variant "unsigned 9 bit"}; + type integer UInt10 (0 .. c_uInt10Max) with {variant "unsigned 10 bit"}; + type integer UInt11 (0 .. c_uInt11Max) with {variant "unsigned 11 bit"}; + type integer UInt12 (0 .. c_uInt12Max) with {variant "unsigned 12 bit"}; + type integer UInt13 (0 .. c_uInt13Max) with {variant "unsigned 13 bit"}; + type integer UInt14 (0 .. c_uInt14Max) with {variant "unsigned 14 bit"}; + type integer UInt15 (0 .. c_uInt15Max) with {variant "unsigned 15 bit"}; + type integer UInt16 (0 .. c_uInt16Max) with {variant "unsigned 16 bit"}; + type integer UInt17 (0 .. c_uInt17Max) with {variant "unsigned 17 bit"}; + type integer UInt18 (0 .. c_uInt18Max) with {variant "unsigned 18 bit"}; + type integer UInt19 (0 .. c_uInt19Max) with {variant "unsigned 19 bit"}; + type integer UInt20 (0 .. c_uInt20Max) with {variant "unsigned 20 bit"}; + type integer UInt21 (0 .. c_uInt21Max) with {variant "unsigned 21 bit"}; + type integer UInt22 (0 .. c_uInt22Max) with {variant "unsigned 22 bit"}; + type integer UInt23 (0 .. c_uInt23Max) with {variant "unsigned 23 bit"}; + type integer UInt24 (0 .. c_uInt24Max) with {variant "unsigned 24 bit"}; + type integer UInt25 (0 .. c_uInt25Max) with {variant "unsigned 25 bit"}; + type integer UInt26 (0 .. c_uInt26Max) with {variant "unsigned 26 bit"}; + type integer UInt27 (0 .. c_uInt27Max) with {variant "unsigned 27 bit"}; + type integer UInt28 (0 .. c_uInt28Max) with {variant "unsigned 28 bit"}; + type integer UInt29 (0 .. c_uInt29Max) with {variant "unsigned 29 bit"}; + type integer UInt30 (0 .. c_uInt30Max) with {variant "unsigned 30 bit"}; + type integer UInt31 (0 .. c_uInt31Max) with {variant "unsigned 31 bit"}; + type integer UInt32 (0 .. c_uInt32Max) with {variant "unsigned 32 bit"}; + type integer UInt36 (0 .. c_uInt36Max) with {variant "unsigned 36 bit"}; + type integer UInt48 (0 .. c_uInt48Max) with {variant "unsigned 48 bit"}; + type integer UInt52 (0 .. c_uInt52Max) with {variant "unsigned 52 bit"}; + type integer UInt64 (0 .. c_uInt64Max) with {variant "unsigned 64 bit"}; + + } // end group unsignedIntegerDefintions + + /** + * @remark Number in subtype name always indicates encoding length + * in _bits_ + */ + group signedIntegerDefintions { + + const integer c_int1Min := -1; + const integer c_int1Max := 0; + const integer c_int2Min := -2; + const integer c_int2Max := 1; + const integer c_int3Min := -4; + const integer c_int3Max := 3; + const integer c_int4Min := -8; + const integer c_int4Max := 7; + const integer c_int5Min := -16; + const integer c_int5Max := 15; + const integer c_int6Min := -32; + const integer c_int6Max := 31; + const integer c_int7Min := -64; + const integer c_int7Max := 63; + const integer c_int8Min := -128; + const integer c_int8Max := 127; + const integer c_int9Min := -256; + const integer c_int9Max := 255; + const integer c_int10Min := -512; + const integer c_int10Max := 511; + const integer c_int11Min := -1024; + const integer c_int11Max := 1023; + const integer c_int12Min := -2048; + const integer c_int12Max := 2047; + const integer c_int13Min := -4096; + const integer c_int13Max := 4095; + const integer c_int14Min := -8192; + const integer c_int14Max := 8191; + const integer c_int15Min := -16384; + const integer c_int15Max := 16383; + const integer c_int16Min := -32768; + const integer c_int16Max := 32767; + const integer c_int17Min := -65536; + const integer c_int17Max := 65535; + const integer c_int18Min := -131072; + const integer c_int18Max := 131071; + const integer c_int19Min := -262144; + const integer c_int19Max := 262143; + const integer c_int20Min := -524288; + const integer c_int20Max := 524287; + const integer c_int21Min := -1048576; + const integer c_int21Max := 1048575; + const integer c_int22Min := -2097152; + const integer c_int22Max := 2097151; + const integer c_int23Min := -4194304; + const integer c_int23Max := 4194303; + const integer c_int24Min := -8388608; + const integer c_int24Max := 8388607; + const integer c_int25Min := -16777216; + const integer c_int25Max := 16777215; + const integer c_int26Min := -33554432; + const integer c_int26Max := 33554431; + const integer c_int27Min := -67108864; + const integer c_int27Max := 67108863; + const integer c_int28Min := -134217728; + const integer c_int28Max := 134217727; + const integer c_int29Min := -268435456; + const integer c_int29Max := 268435456; + const integer c_int30Min := -536870912; + const integer c_int30Max := 536870911; + const integer c_int31Min := -1073741824; + const integer c_int31Max := 1073741823; + const integer c_int32Min := -2147483648; + const integer c_int32Max := 2147483647; + + type integer Int; + type integer Int1 (c_int1Min .. c_int1Max) with { variant "1 bit"}; + type integer Int2 (c_int2Min .. c_int2Max) with { variant "2 bit"}; + type integer Int3 (c_int3Min .. c_int3Max) with { variant "3 bit"}; + type integer Int4 (c_int4Min .. c_int4Max) with { variant "4 bit"}; + type integer Int5 (c_int5Min .. c_int5Max) with { variant "5 bit"}; + type integer Int6 (c_int6Min .. c_int6Max) with { variant "6 bit"}; + type integer Int7 (c_int7Min .. c_int7Max) with { variant "7 bit"}; + type integer Int8 (c_int8Min .. c_int8Max) with { variant "8 bit"}; + type integer Int9 (c_int9Min .. c_int9Max) with { variant "9 bit"}; + type integer Int10 (c_int10Min .. c_int10Max) with { variant "10 bit"}; + type integer Int11 (c_int11Min .. c_int11Max) with { variant "11 bit"}; + type integer Int12 (c_int12Min .. c_int12Max) with { variant "12 bit"}; + type integer Int13 (c_int13Min .. c_int13Max) with { variant "13 bit"}; + type integer Int14 (c_int14Min .. c_int14Max) with { variant "14 bit"}; + type integer Int15 (c_int15Min .. c_int15Max) with { variant "15 bit"}; + type integer Int16 (c_int16Min .. c_int16Max) with { variant "16 bit"}; + type integer Int17 (c_int17Min .. c_int17Max) with { variant "17 bit"}; + type integer Int18 (c_int18Min .. c_int18Max) with { variant "18 bit"}; + type integer Int19 (c_int19Min .. c_int19Max) with { variant "19 bit"}; + type integer Int20 (c_int20Min .. c_int20Max) with { variant "20 bit"}; + type integer Int21 (c_int21Min .. c_int21Max) with { variant "21 bit"}; + type integer Int22 (c_int22Min .. c_int22Max) with { variant "22 bit"}; + type integer Int23 (c_int23Min .. c_int23Max) with { variant "23 bit"}; + type integer Int24 (c_int24Min .. c_int24Max) with { variant "24 bit"}; + type integer Int25 (c_int25Min .. c_int25Max) with { variant "25 bit"}; + type integer Int26 (c_int26Min .. c_int26Max) with { variant "26 bit"}; + type integer Int27 (c_int27Min .. c_int27Max) with { variant "27 bit"}; + type integer Int28 (c_int28Min .. c_int28Max) with { variant "28 bit"}; + type integer Int29 (c_int29Min .. c_int29Max) with { variant "29 bit"}; + type integer Int30 (c_int30Min .. c_int30Max) with { variant "30 bit"}; + type integer Int31 (c_int31Min .. c_int31Max) with { variant "31 bit"}; + type integer Int32 (c_int32Min .. c_int32Max) with { variant "32 bit"}; + + } // end group signedIntegerDefintions + + group zeroedIntegers { + + const UInt1 c_uInt1Zero := 0; + const UInt2 c_uInt2Zero := 0; + const UInt3 c_uInt3Zero := 0; + const UInt4 c_uInt4Zero := 0; + const UInt5 c_uInt5Zero := 0; + const UInt6 c_uInt6Zero := 0; + const UInt7 c_uInt7Zero := 0; + const UInt8 c_uInt8Zero := 0; + const UInt10 c_uInt10Zero := 0; + const UInt12 c_uInt12Zero := 0; + const UInt14 c_uInt14Zero := 0; + const UInt16 c_uInt16Zero := 0; + const UInt24 c_uInt24Zero := 0; + const UInt32 c_uInt32Zero := 0; + const UInt48 c_uInt48Zero := 0; + + }//end group zeroedInt + + /** + * @remark Number in subtype name always indicates encoding length + * in _bits_ + */ + group booleanDefintions { + + type boolean Bool1 with { variant "1 bit" }; + type boolean Bool2 with { variant "2 bit" }; + type boolean Bool3 with { variant "3 bit" }; + type boolean Bool4 with { variant "4 bit" }; + type boolean Bool5 with { variant "5 bit" }; + type boolean Bool6 with { variant "6 bit" }; + type boolean Bool7 with { variant "7 bit" }; + type boolean Bool8 with { variant "8 bit" }; + + } // end group booleanDefintions + +} // end module LibCommon_BasicTypesAndValues diff --git a/ttcn/patch_lib_common_titan/ttcn/LibCommon_DataStrings.ttcn b/ttcn/patch_lib_common_titan/ttcn/LibCommon_DataStrings.ttcn new file mode 100644 index 0000000..9bfbe61 --- /dev/null +++ b/ttcn/patch_lib_common_titan/ttcn/LibCommon_DataStrings.ttcn @@ -0,0 +1,168 @@ +/** + * + * @author ETSI + * @version $URL$ + * $Id$ + * @desc A collection of data string type and value definitions which + * may be useful in the implementation of any TTCN-3 test + * suite. "Data string" refers to TTCN-3 hexstring, octetstring + * and bitstring types. + * @remark End users should be aware that any changes made to the in + * definitions this module may be overwritten in future releases. + * End users are encouraged to contact the distributers of this + * module regarding their modifications or additions so that future + * updates will include your changes. + * @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. + * + */ + module LibCommon_DataStrings { + + /** + * @remark Number in name indicates string length in number of + * _bits_ + */ + group bitStringSubTypes { + + type bitstring Bit1 length(1) with {encode "length(1)"}; + type bitstring Bit2 length(2) with {encode "length(2)"}; + type bitstring Bit3 length(3) with {encode "length(3)"}; + type bitstring Bit4 length(4) with {encode "length(4)"}; + type bitstring Bit5 length(5) with {encode "length(5)"}; + type bitstring Bit6 length(6) with {encode "length(6)"}; + type bitstring Bit7 length(7) with {encode "length(7)"}; + type bitstring Bit8 length(8) with {encode "length(8)"}; + type bitstring Bit9 length(9) with {encode "length(9)"}; + type bitstring Bit10 length(10) with {encode "length(10)"}; + type bitstring Bit11 length(11) with {encode "length(11)"}; + type bitstring Bit12 length(12) with {encode "length(12)"}; + type bitstring Bit13 length(13) with {encode "length(13)"}; + type bitstring Bit14 length(14) with {encode "length(14)"}; + type bitstring Bit15 length(15) with {encode "length(15)"}; + type bitstring Bit16 length(16) with {encode "length(16)"}; + type bitstring Bit17 length(17) with {encode "length(17)"}; + type bitstring Bit18 length(18) with {encode "length(18)"}; + type bitstring Bit19 length(19) with {encode "length(19)"}; + type bitstring Bit20 length(20) with {encode "length(20)"}; + type bitstring Bit21 length(21) with {encode "length(21)"}; + type bitstring Bit22 length(22) with {encode "length(22)"}; + type bitstring Bit23 length(23) with {encode "length(23)"}; + type bitstring Bit24 length(24) with {encode "length(24)"}; + type bitstring Bit25 length(25) with {encode "length(25)"}; + type bitstring Bit26 length(26) with {encode "length(26)"}; + type bitstring Bit27 length(27) with {encode "length(27)"}; + type bitstring Bit28 length(28) with {encode "length(28)"}; + type bitstring Bit29 length(29) with {encode "length(29)"}; + type bitstring Bit30 length(30) with {encode "length(30)"}; + type bitstring Bit31 length(31) with {encode "length(31)"}; + type bitstring Bit32 length(32) with {encode "length(32)"}; + type bitstring Bit40 length(40) with {encode "length(40)"}; + + type bitstring Bit48 length(48) with {encode "length(48)"}; + type bitstring Bit64 length(64) with {encode "length(64)"}; + type bitstring Bit72 length(72) with {encode "length(72)"}; + type bitstring Bit128 length(128) with {encode "length(128)"}; + type bitstring Bit144 length(144) with {encode "length(144)"}; + type bitstring Bit256 length(256) with {encode "length(256)"}; + + } // end group bitStringSubTypes + + group zeroedBits { + + const Bit1 c_1ZeroBit := int2bit(0,1); + const Bit2 c_2ZeroBits := int2bit(0,2); + const Bit4 c_4ZeroBits := int2bit(0,4); + const Bit5 c_5ZeroBits := int2bit(0,5); + const Bit6 c_6ZeroBits := int2bit(0,6); + const Bit8 c_8ZeroBits := int2bit(0,8); + const Bit14 c_14ZeroBits := int2bit(0,14); + const Bit64 c_64ZeroBits := int2bit(0,64); + + }//end group zeroedBits + + /** + * @remark Number in name indicates string length in number of + * _octets_ + */ + group octetStringSubTypes { + + type octetstring Oct1 length(1) with {encode "length(1)"}; + type octetstring Oct2 length(2) with {encode "length(2)"}; + type octetstring Oct3 length(3) with {encode "length(3)"}; + type octetstring Oct4 length(4) with {encode "length(4)"}; + type octetstring Oct5 length(5) with {encode "length(5)"}; + type octetstring Oct6 length(6) with {encode "length(6)"}; + type octetstring Oct7 length(7) with {encode "length(7)"}; + type octetstring Oct8 length(8) with {encode "length(8)"}; + type octetstring Oct9 length(9) with {encode "length(9)"}; + type octetstring Oct10 length(10) with {encode "length(10)"}; + type octetstring Oct11 length(11) with {encode "length(11)"}; + type octetstring Oct12 length(12) with {encode "length(12)"}; + type octetstring Oct13 length(13) with {encode "length(13)"}; + type octetstring Oct14 length(14) with {encode "length(14)"}; + type octetstring Oct15 length(15) with {encode "length(15)"}; + type octetstring Oct16 length(16) with {encode "length(16)"}; + + type octetstring Oct20 length(20) with {encode "length(20)"}; + type octetstring Oct32 length(32) with {encode "length(32)"}; + type octetstring Oct48 length(48) with {encode "length(48)"}; + type octetstring Oct64 length(64) with {encode "length(64)"}; + type octetstring Oct80 length(80) with {encode "length(80)"}; + type octetstring Oct96 length(96) with {encode "length(96)"}; + type octetstring Oct128 length(128) with {encode "length(128)"}; + type octetstring Oct160 length(160) with {encode "length(160)"}; + type octetstring Oct320 length(320) with {encode "length(320)"}; + type octetstring Oct640 length(640) with {encode "length(640)"}; + type octetstring Oct1280 length(1280) with {encode "length(1280)"}; + type octetstring Oct1380 length(1380) with {encode "length(1380)"}; + + type octetstring Oct0to3 length(0..3) with {encode "length(0..3)"}; + type octetstring Oct0to8 length(0..16) with {encode "length(0..8)"}; + type octetstring Oct0to12 length(0..12) with {encode "length(0..12)"}; + type octetstring Oct0to16 length(0..16) with {encode "length(0..16)"}; + type octetstring Oct0to31 length(0..31) with {encode "length(0..31)"}; + type octetstring Oct0to20 length(0..20) with {encode "length(0..20)"}; + type octetstring Oct0to30 length(0..20) with {encode "length(0..30)"}; + type octetstring Oct0to127 length(0..127) with {encode "length(0..127)"}; + type octetstring Oct0to255 length(0..255) with {encode "length(0..255)"}; + + type octetstring Oct1to15 length(1..15) with {encode "length(1..15)"}; + type octetstring Oct1to31 length(1..31) with {encode "length(1..31)"}; + type octetstring Oct1to128 length(1..128) with {encode "length(1..128)"}; + type octetstring Oct1to254 length(1..254) with {encode "length(1..254)"}; + type octetstring Oct1to255 length(1..255) with {encode "length(1..255)"}; + + type octetstring Oct4to16 length(4..16) with {encode "length(4..16)"}; + type octetstring Oct6to15 length(6..15) with {encode "length(6..15)"}; + + } // end group octetStringSubTypes + + group zeroedBytes { + const Oct1 c_1ZeroByte := int2oct(0,1); + const Oct2 c_2ZeroBytes := int2oct(0,2); + const Oct4 c_4ZeroBytes := int2oct(0,4); + const Oct6 c_6ZeroBytes := int2oct(0,6); + const Oct8 c_8ZeroBytes := int2oct(0,8); + const Oct9 c_9ZeroBytes := int2oct(0,9); + const Oct12 c_12ZeroBytes := int2oct(0,12); + const Oct16 c_16ZeroBytes := int2oct(0,16); + const Oct20 c_20ZeroBytes := int2oct(0,20); + + const Oct80 c_80ZeroBytes := int2oct(0,80); + const Oct160 c_160ZeroBytes := int2oct(0,160); + const Oct320 c_320ZeroBytes := int2oct(0,320); + const Oct640 c_640ZeroBytes := int2oct(0,640); + const Oct1280 c_1280ZeroBytes := int2oct(0,1280); + const Oct1380 c_1380ZeroBytes := int2oct(0,1380); + const octetstring c_256ZeroBytes := int2oct(0,256); + const octetstring c_1KZeroBytes := int2oct(0,1024); + const octetstring c_4KZeroBytes := int2oct(0,4096); + const octetstring c_16KZeroBytes := int2oct(0,16384); + const octetstring c_64KZeroBytes := int2oct(0,65536); + const octetstring c_128KZeroBytes := int2oct(0,131072); + + }//end group zeroedBytes + +} // end module LibCommon_DataStrings diff --git a/ttcn/patch_lib_common_titan/ttcn/LibCommon_Sync.ttcn b/ttcn/patch_lib_common_titan/ttcn/LibCommon_Sync.ttcn new file mode 100644 index 0000000..39d9659 --- /dev/null +++ b/ttcn/patch_lib_common_titan/ttcn/LibCommon_Sync.ttcn @@ -0,0 +1,1359 @@ +/** + * @author ETSI + * @version $URL$ + * $Id$ + * @desc This module implements _one_ generic synchronization mechanism + * for TTCN-3 test cases with one or more test components. + * Key concept is here that one test component acts as a + * synchronization server which listens and triggers one or more + * synchronization clients. It is recomended to use the MTC always as + * the synchronization server but in theory also a PTC can act as such + * a server.

+ * This synchronization is used by calling a function on + * the server test component to wait for a desired amount of clients + * to notify the server that they have reached a specific synchronization + * point. Each client test component must call another + * function to perform this notification.

+ * In the event that a client is not able to reach a synchronization + * point the server sends out a signal to all clients to abort the + * test case. This signal is a STOP message which can be caught by + * a test component default which in turn can then run a proper + * shut down behavior based on the current state of the test + * component.

+ * Note that this synchronization mechanism can also be used + * in a special mode called "self synchronization" when a test case + * only has one test component. Here, the test component in essence + * acts as a server and client at the same time. The main benefit of + * using self synchoronization is that the same shutdown mechanisms + * can also be reused fomr the multi component test cases.

+ * This module contains a lot of TTCN-3 definitions. It has been + * structured into tree main groups to help the user to identify + * quickly relevant TTCN-3 definitions. For rookie users of this + * module basicUserRelevantDefinitions should offer all the needed + * definitions. Advanced users can consider use of definitions in + * advancedUserRelevantDefinitions. Finally, internalDefinitions + * are definitions which are required for the module to work + * properly but do not need to be used in your code. Remember that + * the main motiviation of this sychronization module is to offer + * are _simple_ user interface. Practice has shown that when writing + * actual test component behavior _only a handful_ of functions + * usually wind up being used! Also check the synchronization examples + * module for example uses of this synchronization mechanism.

+ * The invocation of the sync functions is also closely tied + * to the verdict control functions which should also be reviewed + * prior to using this module.

+ * This module has been derived from EtsiCommon_Synchronization + * which was created in ETSIs STF256/276. It has been kept + * intentionally separate to avoid conflicts with future ETSI + * test suite releases. + * @see LibCommon_Sync.basicUserRelevantDefinitions + * @see LibCommon_Sync.advancedUserRelevantDefinitions + * @remark End users should be aware that any changes made to the in + * definitions this module may be overwritten in future releases. + * End users are encouraged to contact the distributers of this + * module regarding their modifications or additions so that future + * updates will include your changes. + * @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. + * + */ +module LibCommon_Sync { + + //Common + import from LibCommon_BasicTypesAndValues all; + import from LibCommon_AbstractData all; + import from LibCommon_VerdictControl all; + + group basicUserRelevantDefinitions { + + group importantSyncTypeDefinitions { + + group compTypeRelated { + + /** + * @desc This type is used to be the base of any synchronization + * behavior which is to be executed on a sync server + * component. The test component which acts as a + * sync server in a test case must NOT directly use + * this component type in its runs on clause! + * Note that server synchronization functions may be + * invoked by a test component as long as its + * component type is type compatible to this component + * type definition! + */ + type component BaseSyncComp { + port SyncPort syncPort; + timer tc_sync := PX_TSYNC_TIME_LIMIT; + } + + /** + * @desc This type is used to define any synchronization + * behavior which is to be executed on a sync server + * component. The test component which acts as a + * sync server in a test case may - but does + * not have to - directly use this component type its + * runs on clause. + * Note that server synchronization functions may be + * invoked by a test component as long as its + * component type is type compatible to this component + * type definition! + */ + type component ServerSyncComp extends BaseSyncComp { + timer tc_shutDown := PX_TSHUT_DOWN_TIME_LIMIT; + } + + /** + * @desc This type is used to define any synchronization + * behavior which is to be executed on a sync client + * component. The test component(s) which act as a + * sync client in a test case may - but do not have + * to - directly use this component type their runs + * on clause. + * Note that server synchronization functions may be + * invoked by a test component as long as its + * component type is type compatible to this component + * type definition! + */ + type component ClientSyncComp extends BaseSyncComp { + var StringStack v_stateStack:= c_initStringStack; + var TestcaseStep vc_testcaseStep := e_preamble; + } + + /** + * @desc This type is used to define any synchronization + * behavior which is relevant to non-concurrent test + * cases. + * Note that self synchronization functions may be + * invoked by a test component as long as its + * component type is type compatible to this component + * type definition! + * Note also that this type is type compatible to the + * ClientSyncComp type so that shutdown altsteps from + * concurrent test cases can also be reused in single + * component test cases! + * @see LibCommon_Sync.ClientSyncComp + */ + type component SelfSyncComp extends ClientSyncComp { + port SyncPort syncSendPort; + } + + /** + * @desc This port type must be imported into test suites + * when defining test component types which are + * type compatible to a synchronization component + * type + * @see LibCommon_Sync.SelfSyncComp + * @see LibCommon_Sync.ServerSyncComp + * @see LibCommon_Sync.ClientSyncComp + */ + type port SyncPort message { + inout SyncCmd + } with { + extension "internal" + } + + + /** + * @desc Describes in which step of execution is the testcase + */ + type enumerated TestcaseStep { + e_preamble, + e_testBody, + e_postamble + } + + } // end compTypeRelated + + group standardSyncPointNames { + const charstring c_prDone := "preambleDone"; + const charstring c_poDone := "postambleDone"; + const charstring c_tbDone := "testBodyDone"; + const charstring c_initDone := "initDone"; + } + + } // end group importantSyncTypeDefinitions + + group syncCompTestConfiguration { + + /** + * @desc Calls self connect function if invoking + * component is the MTC or otherwise connects the client + * the server. This function allows to implement preambles + * in a way that they can be used by test components + * in both non-concurrent as well as concurrent test + * cases! + * @remark This function should _not_ be called if the MTC + * acts as a client (and not a server) in a concurrent + * test case. In this case f_connect4ClientSync + * should be used instead. + * @see LibCommon_Sync.f_connect4SelfSync + * @see LibCommon_Sync.f_connect4ClientSync + */ + function f_connect4SelfOrClientSync() + runs on SelfSyncComp { + if ( self == mtc ) { + f_connect4SelfSync(); + } else { + f_connect4ClientSync(); + } + } + + /** + * @desc Calls self connect function if the invoking + * component is the MTC or otherwise disconnects the client + * from the server. This function allows to implement + * postambles in a way that they can be used in both + * non-concurrent as well as concurrent test cases. + * @remark This function should _not_ be called if the MTC + * acts as a client (and not a server) in a concurrent + * test case. In this case f_disconnect4ClientSync + * should be used instead. + * @see LibCommon_Sync.f_disconnect4SelfSync + * @see LibCommon_Sync.f_disconnect4ClientSync + */ + function f_disconnect4SelfOrClientSync() + runs on SelfSyncComp { + if ( self == mtc ) { + f_disconnect4SelfSync(); + } else { + f_disconnect4ClientSync(); + } + } + + } // end group syncCompTestConfiguration + + group syncFunctions { + + /** + * @desc Implements synchronization of 2 clients from server side + * on one or more synchronization points. + * If problem occurs, then server sends STOP to all clients. + * Waits for PX_TSYNC_TIME_LIMIT to let clients + * finish executing their behavior until this + * synchronization point. After passing all synchronization + * points successfuly the server waits for all clients + * to stop. + * See f_serverSyncClientsTimed for overwriting this + * the timing constraint! + * This function sets the server component verdict. + * @remark The use of this function requires prior connection of + * the server sync ports! + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_Sync.PX_TSYNC_TIME_LIMIT + * @see LibCommon_Sync.f_serverSyncClientsTimed + * @see LibCommon_Sync.f_serverWaitForAllClientsToStop + * @param p_syncPointIds list of synchronization point name/ids + */ + function f_serverSync2ClientsAndStop( in SyncPointList p_syncPointIds ) + runs on ServerSyncComp { + f_serverSyncNClientsAndStop(2, p_syncPointIds); + } + + /** + * @desc Implements synchronization of 3 clients from server side + * on one or more synchronization points. + * If problem occurs, then server sends STOP to all clients. + * Waits for PX_TSYNC_TIME_LIMIT to let clients + * finish executing their behavior until this + * synchronization point. After passing all synchronization + * points successfuly the server waits for all clients + * to stop. + * See f_serverSyncClientsTimed for overwriting this + * the timing constraint! + * This function sets the server component verdict. + * @remark The use of this function requires prior connection of + * the server sync ports! + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_Sync.PX_TSYNC_TIME_LIMIT + * @see LibCommon_Sync.f_serverSyncClientsTimed + * @see LibCommon_Sync.f_serverWaitForAllClientsToStop + * @param p_syncPointIds list of synchronization point name/ids + */ + function f_serverSync3ClientsAndStop( in SyncPointList p_syncPointIds ) + runs on ServerSyncComp { + f_serverSyncNClientsAndStop(3, p_syncPointIds); + } + + /** + * @desc Implements synchronization of 4 clients from server side + * on one or more synchronization points. + * If problem occurs, then server sends STOP to all clients. + * Waits for PX_TSYNC_TIME_LIMIT to let clients + * finish executing their behavior until this + * synchronization point. After passing all synchronization + * points successfuly the server waits for all clients + * to stop. + * See f_serverSyncClientsTimed for overwriting this + * the timing constraint! + * This function sets the server component verdict. + * @remark The use of this function requires prior connection of + * the server sync ports! + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_Sync.PX_TSYNC_TIME_LIMIT + * @see LibCommon_Sync.f_serverSyncClientsTimed + * @see LibCommon_Sync.f_serverWaitForAllClientsToStop + * @param p_syncPointIds list of synchronization point name/ids + */ + function f_serverSync4ClientsAndStop( in SyncPointList p_syncPointIds ) + runs on ServerSyncComp { + f_serverSyncNClientsAndStop(4, p_syncPointIds); + } + + /** + * @desc Implements synchronization of N clients from server side + * on one or more synchronization points. + * If problem occurs, then server sends STOP to all clients. + * Waits for PX_TSYNC_TIME_LIMIT to let clients + * finish executing their behavior until this + * synchronization point. After passing all synchronization + * points successfuly the server waits for all clients + * to stop. + * See f_serverSyncClientsTimed for overwriting this + * the timing constraint! + * This function sets the server component verdict. + * @remark The use of this function requires prior connection of + * the server sync ports! + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_Sync.PX_TSYNC_TIME_LIMIT + * @see LibCommon_Sync.f_serverSyncClientsTimed + * @see LibCommon_Sync.f_serverWaitForAllClientsToStop + * @param p_numClients number of synchronization clients + * @param p_syncPointIds list of synchronization point name/ids + */ + function f_serverSyncNClientsAndStop ( + in UInt p_numClients, + in SyncPointList p_syncPointIds ) + runs on ServerSyncComp { + var integer i, v_noOfSyncIds := sizeof(p_syncPointIds); + for ( i := 0; i < v_noOfSyncIds; i := i+1 ) { + f_serverSyncClientsTimed ( + p_numClients, + valueof(p_syncPointIds[i]), + PX_TSYNC_TIME_LIMIT ); + } + f_serverWaitForAllClientsToStop(); + } + + /** + * @desc Implements synchronization of 2 clients and 1 UT from server side + * on one or more synchronization points. + * If problem occurs, then server sends STOP to all clients. + * Waits for PX_TSYNC_TIME_LIMIT to let clients + * finish executing their behavior until this + * synchronization point. After passing all synchronization + * points successfuly the server waits for all clients + * to stop. + * See f_serverSyncClientsTimed for overwriting this + * the timing constraint! + * This function sets the server component verdict. + * @remark The use of this function requires prior connection of + * the server sync ports! + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_Sync.PX_TSYNC_TIME_LIMIT + * @see LibCommon_Sync.f_serverSyncClientsTimed + * @see LibCommon_Sync.f_serverWaitForAllClientsToStop + * @param p_syncPointIds list of synchronization point name/ids + */ + function f_serverSync2ClientsUtAndStop( in SyncPointList p_syncPointIds ) + runs on ServerSyncComp { + var integer i, v_noOfSyncIds := sizeof(p_syncPointIds); + for ( i := 0; i < v_noOfSyncIds; i := i+1 ) { + f_serverSyncClientsTimed(3,valueof(p_syncPointIds[i]), PX_TSYNC_TIME_LIMIT); + } + f_serverWaitForAllClientsToStop(); + } + + /** + * @desc Calls either self synchronization function if + * invoking component is the MTC, otherwise + * calls client synchronization. After that it + * sets the verdict based on the specified return code. + * This function allows to implement TTCN-3 functions + * in a way that they can be used in both non-concurrent + * as well as concurrent test cases. + * @remark This function should _not_ be called if the MTC + * acts as a client (and not a server) in a concurrent + * test case. In this case f_clientSyncAndVerdict + * should be used instead. + * @param p_syncPoint Synchronization point name/id + * @param p_ret Current behavior execution status + * @see LibCommon_Sync.f_clientSyncAndVerdict + * @see LibCommon_VerdictControl.f_setVerdict + */ + function f_selfOrClientSyncAndVerdict( in charstring p_syncPoint, + in FncRetCode p_ret) + runs on SelfSyncComp { + if ( self == mtc ) { + // then assume we are running non-conurrent test case + f_selfSyncAndVerdict(p_syncPoint, p_ret); + } else { + f_clientSyncAndVerdict(p_syncPoint, p_ret); + } + } + + /** + * @desc Calls either self synchronization function if + * invoking component is the MTC, otherwise + * calls client synchronization. After that it + * sets a preamble specific verdict based on the + * specified return code. + * This function allows to implement TTCN-3 functions + * in a way that they can be used in both non-concurrent + * as well as concurrent test cases. + * @remark This function should _not_ be called if the MTC + * acts as a client (and not a server) in a concurrent + * test case. In this case f_clientSyncAndVerdictPreamble + * should be used instead. + * @param p_syncPoint Synchronization point name/id + * @param p_ret Current behavior execution status + * @see LibCommon_Sync.f_clientSyncAndVerdict + * @see LibCommon_VerdictControl.f_setVerdictPreamble + */ + function f_selfOrClientSyncAndVerdictPreamble( in charstring p_syncPoint, + in FncRetCode p_ret) + runs on SelfSyncComp { + if ( self == mtc ) { + // then assume we are running non-conurrent test case + f_selfSyncAndVerdictPreamble(p_syncPoint, p_ret); + } else { + f_clientSyncAndVerdictPreamble(p_syncPoint, p_ret); + } + } + + /** + * @desc Calls either self synchronization function if + * invoking component is the MTC, otherwise + * calls client synchronization. After that it + * sets a preamble specific verdict based on the + * specified return code. + * This function allows to implement TTCN-3 functions + * in a way that they can be used in both non-concurrent + * as well as concurrent test cases. + * @remark This function should _not_ be called if the MTC + * acts as a client (and not a server) in a concurrent + * test case. In this case f_clientSyncAndVerdictTestBody + * should be used instead. + * @param p_syncPoint Synchronization point name/id + * @param p_ret Current behavior execution status + * @see LibCommon_Sync.f_clientSyncAndVerdict + * @see LibCommon_VerdictControl.f_setVerdictPreamble + */ + function f_selfOrClientSyncAndVerdictTestBody( in charstring p_syncPoint, + in FncRetCode p_ret) + runs on SelfSyncComp { + if ( self == mtc ) { + // then assume we are running non-conurrent test case + f_selfSyncAndVerdictTestBody(p_syncPoint, p_ret); + } else { + f_clientSyncAndVerdictTestBody(p_syncPoint, p_ret); + } + } + + /** + * @desc Function kept for backward compatibility + * @see f_selfOrClientSyncAndVerdictPreamble + * + */ + function f_selfOrClientSyncAndVerdictPR( in charstring p_syncPoint, + in FncRetCode p_ret) + runs on SelfSyncComp { + f_selfOrClientSyncAndVerdictPreamble(p_syncPoint, p_ret); + } + + } // end group syncFunctions + + group syncCompStateHandling { + + /** + * + * @desc This function updates the state (stack) of a + * sync client or self sync component. This stack is + * key in the shutdown handling of test components. + * It adds the new state name to the top of the + * sync component stack of states. + * The state will only be added in case of a current + * execution status of e_success. + * @param p_newSyncCompState Name of state which was attempted to be reached. + * @param p_ret Current behavior execution status + * @remark If the state of component changes this function must be + * _at least_ called from your test suite prior to f_selfSync + * or f_clientSync which is the only definite place for the + * shutdown default invocation! + * @see LibCommon_Sync.a_dummyShutDown + * @see LibCommon_Sync.f_selfSync + * @see LibCommon_Sync.f_clientSync + */ + function f_addSyncCompState(in charstring p_newSyncCompState, + in FncRetCode p_ret) + runs on ClientSyncComp { + if ( p_ret == e_success ) { + if ( f_isItemOnStringStack(v_stateStack,p_newSyncCompState) ) { + log("**** f_addSyncCompState: WARNING: Attempt to add state which is already on sync state stack! No additition done.****"); + } else { + f_pushStringStack(v_stateStack,p_newSyncCompState); + } + } + } // end function f_addSyncCompState + + /** + * + * @desc This function returns the top state on the sync + * state stack of a sync client or self sync + * component and removes it from the stack + * This function cna be used, e.g., in a while + * statement within a postamble or shutdown + * implementation + * @param p_state State on top of the state stack. + * @return false if state stack is empty, true otherwise + * @see LibCommon_Sync.a_dummyShutDown + */ + function f_getTopSyncCompState( out charstring p_state ) + runs on ClientSyncComp + return boolean { + if ( not f_peekStringStackTop(v_stateStack,p_state) ) { + p_state := "IDLE"; + return false; + } + f_popStringStack(v_stateStack); + return true; + } // end function f_getTopSyncCompState + + /* + * @desc This function removes the last state on the state stack + * of a sync client or self sync component. + * This stack is key in the shutdown handling of test + * components. + * @see LibCommon_Sync.a_dummyShutDown + */ + function f_popSyncCompState() + runs on ClientSyncComp { + f_popStringStack(v_stateStack); + } // end function f_popSyncCompState + + /** + * + * @desc This function returns the top state on the sync state + * stack of a sync client or self sync component. It + * does not remove it from the stack + * This stack is key in the shutdown handling of test + * components. + * @param p_state State on top of the state stack. + * @return false if state stack is empty, true otherwise + * @see LibCommon_Sync.a_dummyShutDown + */ + function f_peekTopSyncCompState(out charstring p_state) + runs on ClientSyncComp + return boolean { + return f_peekStringStackTop(v_stateStack,p_state); + } // end function f_peekTopSyncCompState + + /** + * @desc This function checks if the sync state stack + * of a sync client or self sync component is empty. + * This stack is key in the shutdown handling of test + * components. + * @see LibCommon_Sync.a_dummyShutDown + */ + function f_isSyncCompStateStackEmpty() + runs on ClientSyncComp + return boolean { + return f_isStringStackEmpty(v_stateStack); + } // end function f_isSyncCompStateStackEmpty + + } // end group syncCompStateHandling + + group shutDownAltsteps { + + /** + * @desc This is an example of a shutdown altstep which can be + * used as a "template" for a interface specific shutdown + * altstep or possily as a first temporary solution in + * test case development.

+ * This altstep shall be activated as a default as the + * first statement in each test case function which drives + * an interface, i.e., in MTC behavior of single component + * and in each client behavior of multi component test + * cases.
+ * The required behavior from this altstep is to:

+ * 1) expect the STOP either via the test component + * syncPort

+ * 2) upon its arrival it should shut down the SUT + * gracefully based on the current component state

+ * The current component state should have been + * previously kept uptodate from a test suite via the + * f_addSyncCompState function. This default will then be + * (automatically) invoked either from within f_selfSync + * or f_clientSync.
+ * Note that shutdown defaults can be written as + * _interface specific_ - they do not need to be test case + * or test component specific! See another example of a + * shutdown altstep in the sync module. + * @see LibCommon_Sync.f_addSyncCompState + * @see LibCommon_Sync.f_selfSync + * @see LibCommon_Sync.f_clientSync + * @see LibCommon_SyncExamples.a_exampleShutDown + * @remark Your application specific shutdown altstep + * implementation(s) should _not_ be defined in this + * module but as part of your test suite or application specific + * modules. + */ + altstep a_dummyShutDown() + runs on SelfSyncComp { + [] syncPort.receive(m_syncServerStop){ + var charstring v_state := ""; + tc_sync.stop; + log("**** a_dummyShutDown: Test component received STOP signal from sync server - going to IDLE state ****"); + while ( f_getTopSyncCompState(v_state) ) { + if ( v_state == "x" ) { + // then do something + } else if ( v_state == "y" ) { + // then do something else + } + } // end while + f_disconnect4SelfOrClientSync(); + // unmap/disconnect more if needed + log("**** a_dummyShutDown: -> Test component stopping itself now! ****") ; + stop ; + } + } // end altstep a_dummyShutDown + + /** + * @desc Shutdown alstep in case the sync server is requesting shutdown. + * + * @remark User shall stop the component + */ + altstep a_shutdown() + runs on ClientSyncComp { + [] syncPort.receive(m_syncServerStop){ + tc_sync.stop ; + log("**** a_shutdown: Test component received STOP signal from MTC **** "); + } + } + + } // end group shutDownAltsteps + + } // end group basicUserRelevantDefinitions + + group advancedUserRelevantDefinitions { + + group serverRelated { + + /** + * @desc Implements synchronization of "n" clients from server + * side. If a problem occurs, then server sends STOP to + * all clients. Waits for PX_TSYNC_TIME_LIMIT to let + * clients finish executing their behavior until this + * synchronization point. See f_serverSyncClientsTimed for + * overwriting this later timing constraint! + * This function sets the server component verdict. + * @remark The use of this function requires prior connection of + * the server sync port! + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_Sync.PX_TSYNC_TIME_LIMIT + * @see LibCommon_Sync.f_serverSyncClientsTimed + * @param p_noOfClients number of clients to be synchronized + * @param p_syncId synchronization point name/id + */ + function f_serverSyncClients( in UInt p_noOfClients, in charstring p_syncId ) + runs on ServerSyncComp { + f_serverSyncClientsTimed(p_noOfClients,p_syncId, PX_TSYNC_TIME_LIMIT); + } + + /** + * @desc Implements synchronization of "n" clients from server + * side including intermediate synchronization. + * If a problem occurs, then server sends STOP to + * all clients. Waits for PX_TSYNC_TIME_LIMIT to let + * clients finish executing their behavior until this + * synchronization point. See f_serverSyncClientsTimed for + * overwriting this later timing constraint! + * This function sets the server component verdict. + * @remark The use of this function requires prior connection of + * the server sync port! + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_Sync.PX_TSYNC_TIME_LIMIT + * @see LibCommon_Sync.f_serverSyncClientsTimed + * @param p_noOfClients number of clients to be synchronized + * @param p_syncId synchronization point name/id + */ + function f_serverSyncClientsIntermediateSync( in UInt p_noOfClients, in charstring p_syncId, in UInt p_NoOfClientIntermediate, in template (present) charstring p_syncIdIntermediate ) + runs on ServerSyncComp { + f_serverSyncClientsTimedIntermediateSync(p_noOfClients,p_syncId, p_NoOfClientIntermediate, p_syncIdIntermediate, PX_TSYNC_TIME_LIMIT); + } + + /** + * @desc Handles synchronization of clients from server side. + * If problem occurs, then server sends STOP to all clients. + * This function sets the server verdict. + * @remark The use of this function requires prior connection of + * the server sync ports! + * @param p_NoOfClients number of clients to be synchronized + * @param p_syncId synchronization point name/id + * @param p_execTimeLimit time limit given to all clients to finish the execution + * of their behavior up to this synchronization point + * @see LibCommon_Sync.f_connect4SelfOrClientSync + */ + function f_serverSyncClientsTimed(in UInt p_NoOfClients, + in charstring p_syncId, + float p_execTimeLimit ) + runs on ServerSyncComp { + f_serverSyncClientsTimedIntermediateSync(p_NoOfClients, p_syncId, 0, ?, p_execTimeLimit ) + } // end function f_serverSyncClientsTimed + + /** @desc Handles synchronization of clients from server side including + * intermediate synchronization. + * If problem occurs, then server sends STOP to all clients. + * This function sets the server verdict. + * @remark The use of this function requires prior connection of + * the server sync ports! + * @param p_NoOfClients number of clients to be synchronized + * @param p_syncId synchronization point name/id + * @param p_execTimeLimit time limit given to all clients to finish the execution + * of their behavior up to this synchronization point + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @return execution status + */ + function f_serverSyncClientsTimedIntermediateSync( in UInt p_NoOfClients, + in charstring p_syncId, in UInt p_NoOfClientIntermediate, in template (present) charstring p_syncIdIntermediate, + float p_execTimeLimit ) + runs on ServerSyncComp { + + var integer v_noOfRecvdSyncMsgs := 0, v_noOfRecvdSyncMsgsIntermediate := 0; + var boolean v_stopClients := false; + var ClientSyncCompList v_clientRefs := {}, v_clientRefsIntermediate := {}; + var ClientSyncComp v_clientRef; + + if ( p_syncId == c_prDone ) { + log("**** f_serverSyncClientsTimed: Sync server now starting PREAMBLE synchronization ... ****") ; + } else if ( p_syncId == c_tbDone ) { + log("**** f_serverSyncClientsTimed: Sync server now starting TEST BODY synchronization ... ****") ; + } else if ( p_syncId == c_initDone ) { + log("**** f_serverSyncClientsTimed: Sync server now starting UPPER TESTER synchronization ... ****") ; + } else { + log("**** f_serverSyncClientsTimed: Sync server now starting handling of next synchronization point ... ****") ; + } + tc_sync.start(p_execTimeLimit) ; + alt{ + [v_noOfRecvdSyncMsgsIntermediate != p_NoOfClientIntermediate] syncPort.receive(m_syncClientReady(p_syncIdIntermediate)) -> sender v_clientRef { + if(not f_isPresentInArray(v_clientRef, v_clientRefsIntermediate)) { + v_clientRefsIntermediate[v_noOfRecvdSyncMsgsIntermediate] := v_clientRef; + v_noOfRecvdSyncMsgsIntermediate := v_noOfRecvdSyncMsgsIntermediate + 1; + if (v_noOfRecvdSyncMsgsIntermediate == p_NoOfClientIntermediate) { + f_serverSendToAllClients(v_clientRefsIntermediate, m_syncServerReady(p_syncIdIntermediate)); + } + } + repeat; + } + [] syncPort.receive(m_syncClientReady(p_syncId)) -> sender v_clientRef { + if(not f_isPresentInArray(v_clientRef, v_clientRefs)) { + v_clientRefs[v_noOfRecvdSyncMsgs] := v_clientRef; + v_noOfRecvdSyncMsgs := v_noOfRecvdSyncMsgs + 1; + } + if ( v_noOfRecvdSyncMsgs != p_NoOfClients ) { repeat; } + } + [] syncPort.receive(m_syncClientStop) -> sender v_clientRef { + log("**** f_serverSyncClientsTimed: Sync server received STOP signal from a client - server will wait for all clients to reach their next synchronization point and then stop them! ****") ; + v_stopClients := true; + if(not f_isPresentInArray(v_clientRef, v_clientRefs)) { + v_clientRefs[v_noOfRecvdSyncMsgs] := v_clientRef; + v_noOfRecvdSyncMsgs := v_noOfRecvdSyncMsgs + 1; + } + if ( v_noOfRecvdSyncMsgs != p_NoOfClients ) { repeat; } + + } + [] syncPort.receive(m_syncClientReady(?)) -> sender v_clientRef { + log("**** f_serverSyncClientsTimed: Sync server received client sync message with incorrect synchronization point id which is currently not handled - server will stop all clients! ****") ; + v_stopClients := true; + if(not f_isPresentInArray(v_clientRef, v_clientRefs)) { + v_clientRefs[v_noOfRecvdSyncMsgs] := v_clientRef; + } + } + [] syncPort.receive(SyncCmd :? ) { + log("**** f_serverSyncClientsTimed: Sync server received (invalid) sync message from other sync server - server will stop all clients! ****") ; + v_stopClients := true; } + [] any port.receive { + // leave it to be ok to receive anything else + // in case that the user has added any non-sync ports to + // his/her server component type definition! + repeat; + } + [] tc_sync.timeout{ + log("**** f_serverSyncClientsTimed: A client is not responding within specified time limit - sync server is sending stop to all clients! ****"); + v_stopClients := true; } + } //end alt + if (v_noOfRecvdSyncMsgsIntermediate != p_NoOfClientIntermediate) { + v_stopClients := true; + } + tc_sync.stop ; + if ( v_stopClients ) { + setverdict(inconc); + // then send out STOP sync msg + f_serverSendToAllClients(v_clientRefs, m_syncServerStop); + f_serverWaitForAllClientsToShutDown(); // function will never return! + } else { + setverdict(pass); + // then send out READY sync msg + f_serverSendToAllClients(v_clientRefs, m_syncServerReady(p_syncId)); + if ( p_syncId == c_prDone ) { + log("**** f_serverSyncClientsTimed: Sync server successfully passed PREAMBLE synchronization point. ****") ; + } else if ( p_syncId == c_tbDone ) { + log("**** f_serverSyncClientsTimed: Sync server successfully passed TEST BODY synchronization point. ****") ; + } else { + log("**** f_serverSyncClientsTimed: Sync server successfully passed synchronization point. ****") ; + } + } + } // end function f_serverSyncClientsTimedIntermediateSync + + /** + * @desc This function is intended only for use on the sync + * server component in concurrent TTCN-3 test cases. + * It waits for all components to finish execution within + * the PX_TSYNC_TIME_LIMIT. If a timeout occurs + * the server will stop all clients. + * This function sets the server component verdict. + */ + function f_serverWaitForAllClientsToStop() + runs on ServerSyncComp { + tc_sync.start; + alt { + [] all component.done { + tc_sync.stop; + log("**** f_serverWaitForAllClientsToStop: All sync clients have finished their execution. Sync server now terminating test case. ****") ; + } + [] tc_sync.timeout { + log("**** f_serverWaitForAllClientsToStop: Not all sync clients have finshed execution within the sync time limit. Sync server will stop test case! ****") ; + stop; + } + } // end alt + setverdict(pass); + } // end function f_serverWaitForAllClientsToStop + + } // end group serverRelated + + group clientRelated { + + /** + * @desc This function creates the connection needed to + * execute client synchronization functions + * @see LibCommon_Sync.f_clientSync + * @see LibCommon_Sync.f_clientSendStop + */ + function f_connect4ClientSync() + runs on ClientSyncComp { + connect(self:syncPort, mtc:syncPort); + }// end function f_connect4ClientSync + + /** + * @desc This function removes the connection needed + * to execute client synchronization functions + * @see LibCommon_Sync.f_clientSync + * @see LibCommon_Sync.f_clientSendStop + */ + function f_disconnect4ClientSync() + runs on ClientSyncComp { + disconnect(self:syncPort, mtc:syncPort); + }// end function f_disconnect4ClientSync + + /** + * @desc This function combines client verdict setting with its + * synchronization for use,e.g, after or within a + * test body implementation. + * Note that such premables can _not_ be reused in non- + * concurrent test cases. This can be achieved by using + * the f_selfOrClientSyncAndVerdict function instead. + * This function sets the client component verdict. + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + * @remark The use of this function requires prior connection + * of the client sync port! + * @see LibCommon_Sync.f_connect4ClientSync + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_VerdictControl.f_setVerdict + * @see LibCommon_Sync.f_selfOrClientSyncAndVerdict + */ + function f_clientSyncAndVerdict(in charstring p_syncId, + in FncRetCode p_ret) + runs on ClientSyncComp { + if(vc_testcaseStep == e_preamble) { + f_clientSyncAndVerdictPreamble(p_syncId, p_ret); + } else if(vc_testcaseStep == e_testBody) { + f_clientSyncAndVerdictTestBody(p_syncId, p_ret); + } + else { + f_clientSyncAndVerdictPostamble(p_syncId, p_ret); + } + } + + /** + * @desc This function combines client verdict setting with its + * synchronization for use after or within a preamble + * implementation. + * Note that such preambles can _not_ be reused in non- + * concurrent test cases. + * This function sets the client component verdict. + * @remark The use of this function requires prior connection + * of the client sync port! + * @see LibCommon_Sync.f_connect4ClientSync + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_VerdictControl.f_setVerdictPreamble + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + */ + function f_clientSyncAndVerdictPreamble(in charstring p_syncId , + FncRetCode p_ret) + runs on ClientSyncComp { + f_setVerdictPreamble(p_ret); + f_clientSync(p_syncId,p_ret); + vc_testcaseStep := e_testBody; + } + + /** + * @desc This function combines client verdict setting with its + * synchronization for use,e.g, after or within a + * test body implementation. + * Note that such premables can _not_ be reused in non- + * concurrent test cases. This can be achieved by using + * the f_selfOrClientSyncAndVerdict function instead. + * This function sets the client component verdict. + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + * @remark The use of this function requires prior connection + * of the client sync port! + * @see LibCommon_Sync.f_connect4ClientSync + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_VerdictControl.f_setVerdict + * @see LibCommon_Sync.f_selfOrClientSyncAndVerdict + */ + function f_clientSyncAndVerdictTestBody(in charstring p_syncId, + in FncRetCode p_ret) + runs on ClientSyncComp { + f_setVerdict(p_ret); + f_clientSync(p_syncId,p_ret); + vc_testcaseStep := e_postamble; + } + + /** + * @desc This function combines client verdict setting with its + * synchronization for use after or within a + * postamble implementation. + * Note that such prostambles can _not_ be reused in non- + * concurrent test cases. + * This function sets the client component verdict. + * @remark The use of this function requires prior connection + * of the client sync port! + * @see LibCommon_Sync.f_connect4ClientSync + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_VerdictControl.f_setVerdictPostamble + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + */ + function f_clientSyncAndVerdictPostamble(in charstring p_syncId , + in FncRetCode p_ret) + runs on ClientSyncComp { + f_setVerdictPostamble(p_ret); + f_clientSync(p_syncId,p_ret); + } + + /** + * @desc This function handles synchronization of a sync client + * with the server. In case of successful execution it sends + * a READY message to the server and waits the READY back. + * The time used for waiting is defined by PX_TSYNC_TIME_LIMIT. + * In case of a non successful execution status it + * sends a STOP message to the server. + * In both cases the receipt of a STOP message or no + * response from the server it will trigger the shutdown + * default (if activated). + * This function will set only the client verdict to INCONC + * (and stop its execution) if no STOP response is received + * from the server within the PX_TSYNC_TIME_LIMIT + * or if no shutdown default is activated. In all other + * cases the client verdict is NOT set. + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + * @remark The use of this function requires prior connection + * of the client sync port! + * @see LibCommon_Sync.f_connect4ClientSync + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_Sync.PX_TSYNC_TIME_LIMIT + * @see LibCommon_Sync.a_dummyShutDown + * @see LibCommon_Sync.f_clientSendStop + * @return Updated execution status + */ + function f_clientSync( in charstring p_syncId , + in FncRetCode p_ret ) + runs on ClientSyncComp + return FncRetCode{ + + if (p_ret == e_success){ + syncPort.send(m_syncClientReady(p_syncId)); + tc_sync.start; + alt{ + [] syncPort.receive(m_syncServerReady(p_syncId)){ + tc_sync.stop ; } + [] tc_sync.timeout{ + log("**** f_clientSync: Sync client did not receive message from sync server within the specified time limit - sync client will ask sync server to stop test case! ****") ; + f_clientSendStop(); } // function will not return! + } //end alt + } //end if + else { + log("**** f_clientSync: Execution status indicates that execution of test component behavior was not successful - sync client will ask sync server to stop test case! ****") ; + f_clientSendStop(); // function will not return! + } + if ( p_syncId == c_prDone ) { + log("**** f_clientSync: Sync client successfully passed PREAMBLE synchronization point. ****") ; + } else if ( p_syncId == c_tbDone ) { + log("**** f_clientSync: Sync client successfully passed TEST BODY synchronization point. ****") ; + } else { + log("**** f_clientSync: Sync client successfully passed synchronization point. ****") ; + } + return e_success ; + + } // end function f_clientSync + + /** + * @desc This function can be used to request the shutdown a + * multi component test case _prior_ to reaching a + * synchronization point. It sends a STOP message to + * the sync server and awaits then the STOP from the server + * which will trigger the shutdown default (if activated). + * This function will set the server verdict to INCONC (and + * stop the test case) if no shutdown default is activated. + * This function will set only the client verdict to INCONC + * (and stop its execution) if no STOP response is received + * from the server within the PX_TSYNC_TIME_LIMIT + * or if no shutdown default is activated. In all other + * cases the client verdict is NOT set. + * @remark The use of this function requires prior connection + * of the client sync port! + * @see LibCommon_Sync.f_connect4ClientSync + * @see LibCommon_Sync.f_connect4SelfOrClientSync + * @see LibCommon_Sync.PX_TSYNC_TIME_LIMIT + * @see LibCommon_Sync.a_dummyShutDown + */ + function f_clientSendStop() + runs on ClientSyncComp { + log("**** f_clientSendStop: Sync client requesting from server to stop test case (including itself). ****") ; + syncPort.send(m_syncClientStop) ; + tc_sync.start; + alt{ + [] tc_sync.timeout{ + log("**** f_clientSendStop: Stopping sync client without shutdown - either no shutdown default active or no stop received from server. ****") ; + setverdict(inconc); + stop ; + } + }//end alt + tc_sync.stop; + stop; // stop here if shutdown default does not stop + } + + } // end group clientRelated + + } // end group advancedUserRelevantDefinitions + + group otherSyncModuleDefinitions { + + group syncModuleparams { + /** + * + * @desc Default time limit for a sync client to reach a + * synchronization point + */ + modulepar float PX_TSYNC_TIME_LIMIT := 120.0; + + /* + * @desc Default time limit for a sync client to finish + * its execution of the shutdown default + */ + modulepar float PX_TSHUT_DOWN_TIME_LIMIT := 120.0; + } + + group otherSyncTypes { + + type record of charstring SyncPointList; + + type record of ClientSyncComp ClientSyncCompList; + + } // end group otherSyncTypes + + group otherSelfSyncRelatedDefinitions { + + /** + * @desc This function creates the connection needed to + * execute self sync functions + * @see LibCommon_Sync.f_selfSync + * @see LibCommon_Sync.f_selfSyncStop + */ + function f_connect4SelfSync() + runs on SelfSyncComp { + connect(self:syncSendPort, self:syncPort); + }// end function f_connect4SelfSync + + /** + * @desc This function removes the connection needed + * to execute self sync functions + * @see LibCommon_Sync.f_selfSync + * @see LibCommon_Sync.f_selfSyncStop + */ + function f_disconnect4SelfSync() + runs on SelfSyncComp { + disconnect(self:syncSendPort, self:syncPort); + }// end function f_disconnect4SelfSync + + /** + * @desc This function combines MTC verdict setting with self + * synchronization for use in the preamble / test body / postamble + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + * @see LibCommon_VerdictControl.f_setVerdict + * @see LibCommon_Sync.f_selfSync + * @see LibCommon_Sync.a_dummyShutDown + */ + function f_selfSyncAndVerdict( in charstring p_syncId, + in FncRetCode p_ret ) + runs on SelfSyncComp { + if(vc_testcaseStep == e_preamble) { + f_selfSyncAndVerdictPreamble(p_syncId, p_ret); + } else if(vc_testcaseStep == e_testBody) { + f_selfSyncAndVerdictTestBody(p_syncId, p_ret); + } + else { + f_selfSyncAndVerdictPostamble(p_syncId, p_ret); + } + } + + /** + * @desc This function combines MTC verdict setting with self + * synchronization for use after the preamble. + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + * @see LibCommon_VerdictControl.f_setVerdictPreamble + * @see LibCommon_Sync.f_selfSync + */ + function f_selfSyncAndVerdictPreamble( in charstring p_syncId, + in FncRetCode p_ret ) + runs on SelfSyncComp { + f_setVerdictPreOrPostamble(p_ret); + f_selfSync(p_syncId,p_ret); + vc_testcaseStep := e_testBody; + } + + /** + * @desc This function combines MTC verdict setting with self + * synchronization for use after the test body. + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + * @see LibCommon_VerdictControl.f_setVerdict + * @see LibCommon_Sync.f_selfSync + */ + function f_selfSyncAndVerdictTestBody( in charstring p_syncId, + in FncRetCode p_ret ) + runs on SelfSyncComp { + f_setVerdict(p_ret); + f_selfSync(p_syncId,p_ret); + vc_testcaseStep := e_postamble; + } + + /** + * @desc This function combines MTC verdict setting with self + * synchronization for use after the postamble. + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + * @see LibCommon_VerdictControl.f_setVerdictPostamble + * @see LibCommon_Sync.f_selfSync + */ + function f_selfSyncAndVerdictPostamble( in charstring p_syncId , + in FncRetCode p_ret ) + runs on SelfSyncComp { + f_setVerdictPreOrPostamble(p_ret); + f_selfSync(p_syncId,p_ret); + } + + /** + * @desc This function synchronizes a MTC with itself. In case + * of a non successful execution status it sends a STOP + * message to itself and invokes that way the + * shutdown default (if activated). + * This function will set the server verdict to INCONC (and + * stop the test case) if no shutdown default is activated. + * Otherwise no verdict is set. + * @remark Sync ports should be connected prior to the invocation + * of this function! + * @param p_syncId Synchronization point name/id + * @param p_ret Current behavior execution status + * @return Updated execution status + * @see LibCommon_Sync.f_connect4SelfSync + * @see LibCommon_Sync.a_dummyShutDown + */ + function f_selfSync( in charstring p_syncId , + in FncRetCode p_ret ) + runs on SelfSyncComp + return FncRetCode{ + if (p_ret != e_success){ + f_selfSyncStop() ; // function will not return! + } + if ( p_syncId == c_prDone ) { + log("**** f_selfSync: Successfully passed PREAMBLE synchronization point. ****") ; + } else if ( p_syncId == c_tbDone ) { + log("**** f_selfSync: Successfully passed TEST BODY synchronization point. ****") ; + } else { + log("**** f_selfSync: Successfully passed synchronization point. ****") ; + } + return e_success ; + }// end function f_selfSync + + /** + * @desc This function can be used to shut down a test case _prior_ + * to reaching a synchronization point. it sends a STOP + * message to itself and invokes that way the + * shutdown default (if activated). + * This function will set the server verdict to INCONC (and + * stop the test case) if no shutdown default is activated. + * Otherwise no verdict is set. + * @remark Sync ports should be connected prior to the invocation + * of this function! + * @see LibCommon_Sync.f_connect4SelfSync + */ + function f_selfSyncStop() + runs on SelfSyncComp { + + log("**** f_selfSyncStop: MTC requests to stop test case (itself). ****") ; + syncSendPort.send(m_syncServerStop) ; // this MUST be _server_ for the default to catch! + tc_sync.start(PX_TSYNC_TIME_LIMIT); + alt{ + [] tc_sync.timeout{ + log("**** f_selfSyncStop: Stopping MTC without shutdown - either no shutdown default active or missing syncPort connection ****") ; + setverdict(inconc); + stop ; + } + }//end alt + tc_sync.stop; + stop; // if shutdown default is not activated or if it does not stop + } // end function f_selfSyncStop + + } // end group otherSelfSyncRelatedDefinitions + + /** + * + * @desc The sychronization protocol is conceptually based on + * named synchronization. Each synchronization point + * has it own specific synchronization message. This + * makes each synchronization unique, and allows, e.g., to + * ensure that a server synchronizes only clients which have + * reached the same synchronization point. + */ + group syncProtocolDefinition { + + type union SyncCmd { + ClientReady clientReady, + ServerReady serverReady, + ClientStop clientStop, + ServerStop serverStop + } + + type record ClientReady { + charstring syncPointId + } + + type record ServerReady { + charstring syncPointId + } + + type record ClientStop {} + + type record ServerStop {} + + } // end group syncProtocolDefinition + + group syncMessages { + template SyncCmd m_syncClientReady( template (present) charstring p_syncId ) := { + clientReady := { p_syncId } + } + + template SyncCmd m_syncServerReady( template (present) charstring p_syncId ) := { + serverReady := { p_syncId } + } + + template SyncCmd m_syncClientStop := { + clientStop := {} + } + + template SyncCmd m_syncServerStop := { + serverStop := {} + } + + } // end group syncMessages + + group otherSyncFunctions { + + /** + * @desc Makes server send a sync message to all known clients + * @param p_clientRefs List of client references to which the message is to be send + * @param p_syncCmd The actual synchronization message to be sent out + */ + function f_serverSendToAllClients( in ClientSyncCompList p_clientRefs, + in template (value) SyncCmd p_syncCmd) + runs on ServerSyncComp { + var integer i:=0; + for (i:=0; i< sizeof(p_clientRefs); i:=i+1 ){ + syncPort.send(p_syncCmd) to valueof(p_clientRefs[i]); + } + } // end function f_serverSendToAllClients + + /** + * @desc This function is intended only for use on server in concurrent + * TTCN-3 test cases. It waits for all components to shut down + * within the PX_TSHUT_DOWN_TIME_LIMIT. If a timeout occurs + * it aborts the test case (no matter how far clients got with their + * shutdown). + * This function sets the server verdict. + */ + function f_serverWaitForAllClientsToShutDown() + runs on ServerSyncComp { + + tc_shutDown.start(PX_TSHUT_DOWN_TIME_LIMIT); + alt { + [] syncPort.receive { + // clients may still try to send some sync message + } + [] all component.done { + tc_shutDown.stop; + log("**** f_serverWaitForAllClientsToShutDown: All components have properly shut down. Sync server will now terminate the test case. ****") ; + } + [] tc_shutDown.timeout { + log("**** f_serverWaitForAllClientsToShutDown: Not all clients have properly shutdown within the shut down time limit. Sync server will now terminate test case! ****") ; + } + } // end alt + // cover case that shut down default is NOT activated + setverdict(inconc); + //mtc.stop; + syncPort.send(m_syncServerStop) to self; // this MUST be _server_ for the default to catch! + tc_sync.start(PX_TSYNC_TIME_LIMIT); + alt{ + [] tc_sync.timeout{ + log("**** f_selfSyncStop: Stopping MTC without shutdown - either no shutdown default active or missing syncPort connection ****") ; + setverdict(inconc); + stop ; + } + }//end alt + tc_sync.stop; + stop; // if shutdown default is not activated or if it does not stop + } // end function f_serverWaitForAllClientsToShutDown + + function f_isPresentInArray(in ClientSyncComp p_clientRef, in ClientSyncCompList p_clientRefs) + return boolean { + var integer i; + for(i:=0; i < sizeof(p_clientRefs); i:=i+1) { + if(p_clientRefs[i] == p_clientRef) { + return true; + } + } + return false; + } + } // end group otherSyncFunctions + + } // end group otherSyncDefinitions + +} // end module LibCommon_Sync -- GitLab From c238160d57bbb30d6e915736036dfccda4e08ba2 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 13 Oct 2023 11:12:00 +0200 Subject: [PATCH 009/365] Added LibCommon submodule --- .gitmodules | 3 +++ ttcn/LibCommon | 1 + 2 files changed, 4 insertions(+) create mode 160000 ttcn/LibCommon diff --git a/.gitmodules b/.gitmodules index 00b2836..83f3b28 100644 --- a/.gitmodules +++ b/.gitmodules @@ -5,3 +5,6 @@ [submodule "ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module"] path = ttcn/modules/titan.TestPorts.Common_Components.Abstract_Socket/module url = https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.Common_Components.Abstract_Socket.git +[submodule "ttcn/LibCommon"] + path = ttcn/LibCommon + url = https://forge.etsi.org/rep/LIBS/LibCommon.git diff --git a/ttcn/LibCommon b/ttcn/LibCommon new file mode 160000 index 0000000..21bad7c --- /dev/null +++ b/ttcn/LibCommon @@ -0,0 +1 @@ +Subproject commit 21bad7c51917d19bebdff5b36983e22922421976 -- GitLab From 5c58e113ec679368d9b8e698fad011d0787a31b0 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 13 Oct 2023 11:30:26 +0200 Subject: [PATCH 010/365] Building issues fixed --- libNr5gcAsn1.mk | 10 ++-------- ttcn/AtsNGAP/module.mk | 41 ++++++++++++++++++++++++++--------------- ttcn/LibNGAP/module.mk | 15 +++++++++------ 3 files changed, 37 insertions(+), 29 deletions(-) diff --git a/libNr5gcAsn1.mk b/libNr5gcAsn1.mk index cc1cdac..01dd2ff 100644 --- a/libNr5gcAsn1.mk +++ b/libNr5gcAsn1.mk @@ -17,7 +17,7 @@ ifneq (, $(ASN1C_PATH)) ASN1C:=$(ASN1C_PATH)/asn1c/asn1c -S $(ASN1C_PATH)/skeletons else ASN1C:=asn1c - ASN1C:=asn1_compiler + #ASN1C:=asn1_compiler endif LIB_MAKEFILE=Makefile.am.libasncodec @@ -34,13 +34,7 @@ endif CFLAGS += $(ASN_MODULE_CFLAGS) -DPDU=$(firstword $(ASN_PDU)) $(HAS_PDU_COLLECTION) -fPIC -I. CC = gcc -std=c99 - -ifeq ('asn1c', $(ASN1C)) - ASN1C_OPTIONS += -no-gen-example -fcompound-names -no-gen-XER -no-gen-JER -no-gen-APER -no-gen-print -no-gen-random-fill -else - ASN1C_OPTIONS += -b -O -endif - +ASN1C_OPTIONS += -fno-include-deps -findirect-choice -no-gen-example -fcompound-names -no-gen-XER -no-gen-JER -no-gen-APER -no-gen-print -no-gen-random-fill ifeq (yes,$(DEBUG)) CFLAGS += -g -O0 -DASN_EMIT_DEBUG=1 endif diff --git a/ttcn/AtsNGAP/module.mk b/ttcn/AtsNGAP/module.mk index 4859145..3c58976 100644 --- a/ttcn/AtsNGAP/module.mk +++ b/ttcn/AtsNGAP/module.mk @@ -1,17 +1,28 @@ -sources:= NGAP_TestCases.ttcn NGAP_Pics.ttcn NGAP_Pixits.ttcn NGAP_Steps.ttcn NGAP_TestSystem.ttcn NGAP_TestConfiguration.ttcn NGAP_TestControl.ttcn NGAP_TCFunctions.ttcn -#sources:= S1AP_Pics.ttcn S1AP_Pixits.ttcn S1AP_Steps.ttcn S1AP_TCFunctions.ttcn S1AP_TestCases.ttcn S1AP_TestConfiguration.ttcn S1AP_TestControl.ttcn S1AP_TestSystem.ttcn +suite := AtsNGAP +pdu := NGAP_PDU -modules:= ../NGAP_ \ - ../LibNGAP \ - ../LibCommon \ - ../../ccsrc/Ports/LibNGAP \ - ../../ccsrc/EncDec \ - ../../titan-test-system-framework/ccsrc/Framework \ - ../../titan-test-system-framework/ccsrc/loggers \ - ../../ccsrc/Protocols/NGAP_layer \ - ../../ccsrc/Protocols/NGAP \ - ../../ccsrc/Asn1c - #//../../ccsrc/Protocols/sctp \ - #//../../titan-test-system-framework/ccsrc/Protocols/Tcp \ - #//../modules/titan.TestPorts.Common_Components.Abstract_Socket +sources:= \ + NGAP_TestCases.ttcn \ + NGAP_Pics.ttcn \ + NGAP_Pixits.ttcn \ + NGAP_Steps.ttcn \ + NGAP_TestSystem.ttcn \ + NGAP_TestConfiguration.ttcn \ + NGAP_TestControl.ttcn \ + NGAP_TCFunctions.ttcn +modules := \ + ../LibNGAP \ + ../LibCommon \ + ../../ccsrc/Ports/LibNGAP \ + ../../ccsrc/EncDec \ + ../../titan-test-system-framework/ccsrc/Framework \ + ../../titan-test-system-framework/ccsrc/loggers \ + ../../ccsrc/Protocols/NGAP_layer \ + ../../ccsrc/Protocols/NGAP \ + ../../ccsrc/Asn1c \ + ../modules/titan.TestPorts.Common_Components.Abstract_Socket + + + #//../../ccsrc/Protocols/sctp \ + #//../../titan-test-system-framework/ccsrc/Protocols/Tcp \ diff --git a/ttcn/LibNGAP/module.mk b/ttcn/LibNGAP/module.mk index 5b97534..beb3f85 100644 --- a/ttcn/LibNGAP/module.mk +++ b/ttcn/LibNGAP/module.mk @@ -1,6 +1,9 @@ -sources := LibNGAP_TypesAndValues.ttcn \ - LibNGAP_Interface.ttcn \ - LibNGAP_Pixits.ttcn \ - LibNGAP_Steps.ttcn \ - LibNGAP_Templates.ttcn \ - LibNGAP_EncdecDeclarations.ttcn +sources := \ + lib/LibNGAP_TypesAndValues.ttcn \ + lib/LibNGAP_Pixits.ttcn \ + lib/LibNGAP_Templates.ttcn \ + lib/LibNGAP_EncdecDeclarations.ttcn \ + lib_system/LibNGAP_Interface.ttcn \ + lib_system/LibNGAP_Steps.ttcn + +modules := lib/asn1 -- GitLab From 97c831148df05520aa4a13dbb2cd6d9633fac5e5 Mon Sep 17 00:00:00 2001 From: pintar Date: Sun, 15 Oct 2023 22:49:46 +0200 Subject: [PATCH 011/365] PDU session TPs --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 256 +++++++++++++- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 448 ++++++++++++++++++++++++- 2 files changed, 688 insertions(+), 16 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 684af8f..a4d70f4 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -18,7 +18,261 @@ Package TP_AMF { -//TO BE DONE + Group "8.2 PDU Session Management Procedures" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_PDU_01 + + Test objective "Verify that the IUT can send a PDU SESSION RESOURCE SETUP REQUEST with at least one PDU session resource list to established PDU session." + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.1.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PDU session management procedure + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Request_List containing + PDU_SessionId, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer; + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_PDU_01 + + Test Purpose { + + TP Id TP_NGAP_AMF_PDU_02 + + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_RELEASE_COMMAND to release PDU session." + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.1.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PDU session resource release procedure + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_RELEASE_COMMAND containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_To_Release_List containing + PDU_Session_Resource_To_Release_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Release_Command_Transfer containing + Cause indicating value PX_Cause; //normal_release + ; + ; + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_PDU_02 + + Test Purpose { + + TP Id TP_NGAP_AMF_PDU_03 + + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_REQUEST to modify PDU session." + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.3.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PDU session resource modify procedure + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Modify_Request_List containing + PDU_Session_Resource_Modify_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Request_Transfer containing +// UL_NG_U_UP_TNL_Modify_List containing +// UL_NG_U_UP_TNL_Modify_Item containing +// UL_NG_U_UP_TNL_Information +// DL_NG_U_UP_TNL_Information +// ; +// ;, + QoSFlowAddorModifyRequestList containing + QoSFlowAddorModifyRequestItem containing + QoSFlowIdentifier; + ; + ; + ; + ; + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_PDU_03 + + Test Purpose { + + TP Id TP_NGAP_AMF_PDU_04 + + Test objective "Verify that the AMF node successfully processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for successfully modified PDU session." + + Reference + "ETSI TS 138 413 [1], Clause 8.2.5.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_MODIFY_INDICATION containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Modify_Indication_List containing + PDU_Session_Resource_Modify_Indication_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Indication_Transfer containing + DLQoSFlowperTNLInformation containing + UPTransportLayerInformation, + AssociatedQoSFlowList containing + AssociatedQoSFlowItem containing + QoSFlowIdentifier indicating value PX_QoS_Flow_ID; + ; + ; + ; + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_CONFIRM containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Modify_Confirm_List containing + PDU_Session_Resource_Modify_Confirm_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Confirm_Transfer containing + QoSFlowModifyConfirmList containing + QoSFlowModifyConfirmItem containing + QoSFlowIdentifier; + ; + ;, + UL_NG_U_UP_TNLInformation + ; + ; + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_PDU_04 + + Test Purpose { + + TP Id TP_NGAP_AMF_PDU_05 + + Test objective "Verify that the AMF node processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for not successfully modified PDU session." + + Reference + "ETSI TS 138 413 [1], Clause 8.2.5.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_MODIFY_INDICATION containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Modify_Indication_List containing + PDU_Session_Resource_Modify_Indication_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Indication_Transfer containing + DLQoSFlowperTNLInformation containing + UPTransportLayerInformation, + AssociatedQoSFlowList containing + AssociatedQoSFlowItem containing + QoSFlowIdentifier indicating value PX_QoS_Wrong_Flow_ID; + ; + ; + ; + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_CONFIRM containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Failed_To_Modify_List containing + PDU_Session_Resource_Failed_To_Modify_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Indication_Unsuccessful_Transfer containing + Cause; + ; + ; + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_PDU_05 + + } // end Group 8.2 PDU Session Management Procedures + } // End of Package TP_AMF diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 7b7700b..3756256 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -26,10 +26,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_01 - Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE with successfully established PDU session." + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE for successfully established PDU session." Reference - "ETSI TS 138 413 [1], Clauses 8.2.1.2" + "ETSI TS 138 413 [1], Clause 8.2.1.2" Config Id CFG_GNB_01 @@ -46,9 +46,20 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Request_List containing - PDU_SessionId, + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, - PDU_Session_Resource_Setup_Request_Transfer; + PDU_Session_Resource_Setup_Request_Transfer containing + UL_NG_U_UP_TNL, + PDU_SessionType, + QoSFlowSetupRequestList containing + QoSFlowSetupRequestItem containing + QoSFlowIndicator, + QoSFlowLevelQoSParameters; + ; + ; + ; + ; ; from the AMF entity } @@ -57,23 +68,27 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing - PDU_SessionId, - PDU_Session_Resource_Setup_Response_Transfer; + PDU_Session_Resource_Setup_Response_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Setup_Response_Transfer containing + DL_QoS_Flow_per_TNL_Information; + ; + ; ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_PDU_01 + } // end TP_NGAP_GNB_PDU_01 Test Purpose { TP Id TP_NGAP_GNB_PDU_02 - Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE with failed PDU session." + Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains several PDU Session ID IEs set to the same value." Reference - "ETSI TS 138 413 [1], Clauses 8.2.1.2" + "ETSI TS 138 413 [1], Clause 8.2.1.4" Config Id CFG_GNB_01 @@ -90,9 +105,33 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Request_List containing - PDU_SessionId, + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer containing + UL_NG_U_UP_TNL, + PDU_SessionType, + QoSFlowSetupRequestList containing + QoSFlowSetupRequestItem containing + QoSFlowIndicator, + QoSFlowLevelQoSParameters; + ; + ; + ;, + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, - PDU_Session_Resource_Setup_Request_Transfer; + PDU_Session_Resource_Setup_Request_Transfer containing + UL_NG_U_UP_TNL, + PDU_SessionType, + QoSFlowSetupRequestList containing + QoSFlowSetupRequestItem containing + QoSFlowIndicator, + QoSFlowLevelQoSParameters; + ; + ; + ; + ; ; from the AMF entity } @@ -101,14 +140,393 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Failed_to_Setup_List containing + DU_Session_Resource_Failed_to_Setup_Item containing PDU_SessionId, - PDU_Session_Resource_Setup_Unsuccessful_Transfer; + PDU_Session_Resource_Setup_Unsuccessful_Transfer containing + Cause indicating value MultiplePDUSessionIDInstances; + ; + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_02 + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_03 + + Test objective "Verify that the NG-RAN node reports the establishment of the new PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a PDU Session ID IE set to value that identifies an active PDU Session. NOTE: Run TP_NGAP_GNB_PDU_01 before this TP " + + Reference + "ETSI TS 138 413 [1], Clause 8.2.1.4" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Request_List containing + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer containing + UL_NG_U_UP_TNL, + PDU_SessionType, + QoSFlowSetupRequestList containing + QoSFlowSetupRequestItem containing + QoSFlowIndicator, + QoSFlowLevelQoSParameters; + ; + ; + ; + ; + ; + from the AMF entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Failed_to_Setup_List containing + DU_Session_Resource_Failed_to_Setup_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Setup_Unsuccessful_Transfer containing + Cause indicating value MultiplePDUSessionIDInstances; + ; + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_03 + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_04 + + Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a QoS Flow Setup Request List IE in the PDU Session Resource Setup Request Transfer IE including at least one Non-GBR QoS flow but the PDU Session Aggregate Maximum Bit Rate IE is not present. " + + Reference + "ETSI TS 138 413 [1], Clause 8.2.1.4" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Request_List containing + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer containing + UL_NG_U_UP_TNL, + PDU_SessionType, + QoSFlowSetupRequestList containing + QoSFlowSetupRequestItem containing + QoSFlowIndicator indicating value Non_GBR_QoS, + QoSFlowLevelQoSParameters; + ; + ; + ; + ;, + not UEAggregateMaximumBitRate + ; + from the AMF entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Failed_to_Setup_List containing + DU_Session_Resource_Failed_to_Setup_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Setup_Unsuccessful_Transfer containing + Cause indicating value InvalidQoSCombination; + ; + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_04 + + //TODO:possible to add 2 tests from 8.2.1.4 paragraph 4 + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_05 + + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND contains mandatory IEs and answers with PDU SESSION RESOURCE RELEASE RESPONSE to release PDU session." + + Reference + "ETSI TS 138 413 [1], Clause 8.2.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_RELEASE_COMMAND containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_To_Release_List containing + PDU_Session_Resource_To_Release_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Release_Command_Transfer containing + Cause indicating value PX_Cause; //normal_release + ; + ; + ; + from the AMF entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_RELEASE_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Released_List containing + PDU_Session_Resource_Released_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Release_Response_Transfer; + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_05 + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_06 + + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND containing multiple PDU Session ID IEs set to the same value and ignore the duplication." + + Reference + "ETSI TS 138 413 [1], Clause 8.2.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_RELEASE_COMMAND containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_To_Release_List containing + PDU_Session_Resource_To_Release_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Release_Command_Transfer containing + Cause indicating value PX_Cause; //normal_release + ;, + PDU_Session_Resource_To_Release_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Release_Command_Transfer containing + Cause indicating value PX_Cause; //normal_release + ; + ; + ; + from the AMF entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_RELEASE_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Released_List containing + PDU_Session_Resource_Released_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Release_Response_Transfer; + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_06 + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_07 + + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE MODIFY REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE MODIFY RESPONSE for successfully modified PDU session." + + Reference + "ETSI TS 138 413 [1], Clause 8.2.3.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_MODIFY_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Modify_Request_List containing + PDU_Session_Resource_Modify_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Request_Transfer containing +// UL_NG_U_UP_TNL_Modify_List containing +// UL_NG_U_UP_TNL_Modify_Item containing +// UL_NG_U_UP_TNL_Information +// DL_NG_U_UP_TNL_Information +// ; +// ;, + QoSFlowAddorModifyRequestList containing + QoSFlowAddorModifyRequestItem containing + QoSFlowIdentifier; + ; + ; + ; + ; + ; + from the AMF entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Modify_Response_List containing + PDU_Session_Resource_Modify_Response_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Response_Transfer containing + QoSFlowAddorModifyResponsetList containing + QoSFlowAddorModifyResponsetItem containing + QoSFlowIdentifier; + ; + ; + ; + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_07 + + //TODO:possible to add tests from 8.2.3.4 for failed actions + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_08 + + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_NOTIFY that already established QoS flow or PDU session for given UE are release." + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.4.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PDU session resource notify procedure + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_NOTIFY containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Released_List containing + PDU_Session_Resource_Released_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Notify_Released_Transfer containing + Cause; + ; + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_08 + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_09 + + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_INDICATION to request modification of established PDU session." + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.5.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PDU session resource modify indicationy procedure + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_INDICATION containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Modify_Indication_List containing + PDU_Session_Resource_Modify_Indication_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Indication_Transfer containing + DLQoSFlowperTNLInformation; + ; + ; ; to the AMF entity } } - } // end TP_NGAP_GNB_PDU_02 + } // end TP_NGAP_GNB_PDU_09 } // end Group 8.2 PDU Session Management Procedures -- GitLab From 946e74b7b4525e0d3c602e18172015961fee3009 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Mon, 23 Oct 2023 11:58:36 +0200 Subject: [PATCH 012/365] resolve TODO about TP naming --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 496e0a3..df7743a 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -118,7 +118,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_CMP_01 //TODO: Is CMP the correct abbreviation for Context management Procedure? Correct naming convention? + TP Id TP_NGAP_GNB_CMP_01 Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." @@ -166,7 +166,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_CMP_02 //TODO: Is CMP the correct abbreviation for Context management Procedure? Correct naming convention? + TP Id TP_NGAP_GNB_CMP_02 Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." -- GitLab From 67f10db50c409a05daef0259f62b81303ac625a3 Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 24 Oct 2023 09:23:20 +0200 Subject: [PATCH 013/365] new test purposes --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 360 +++++++++++++++++++------- 1 file changed, 269 insertions(+), 91 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 86e05ee..56b8469 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -533,103 +533,281 @@ Package TP_GNB { Group "8.3 UE Context Management Procedures" { import all from Ngap_Common; + + Group "Initial Context Setup" + { + import all from Ngap_Common; - Test Purpose { + Test Purpose { - TP Id TP_NGAP_GNB_CMP_01 - - Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. - - Initial conditions with { - //TODO: Do we have an initial condition here? - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - GUAMI, - PDU_Session_Resource_Setup_Request_List containing - PDU_SessionId, - S_NSSAI, - PDU_Session_Resource_Setup_Request_Transfer - Allowed_NSSAI, - UE_Security_Capabilities, - Security_Key - ; - from the AMF entity - } - then { - the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Setup_Response_List containing - PDU_SessionId, - PDU_Session_Resource_Setup_Response_Transfer; - ; - to the AMF entity - } - } + TP Id TP_NGAP_GNB_CMP_01 + + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI, + PDU_Session_Resource_Setup_Request_List containing + PDU_SessionId, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer; + , + Allowed_NSSAI, + UE_Security_Capabilities, + Security_Key + ; + from the AMF entity + } + then { + the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Response_List containing + PDU_SessionId, + PDU_Session_Resource_Setup_Response_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_01 - } // end TP_NGAP_GNB_CMP_01 + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_02 + + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + +// Initial conditions with { +// //TODO: Do we have an initial condition here? +// } + + Expected behaviour + ensure that { + when { + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI, + PDU_Session_Resource_Setup_Request_List containing + PDU_SessionId, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer; + , + Allowed_NSSAI, + UE_Security_Capabilities, + Security_Key + ; + from the AMF entity + } + then { + the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Failed_to_Setup_List containing + PDU_SessionId, + PDU_Session_Resource_Setup_Unsuccessful_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_02 + } // end Group Initial Context Setup + + - Test Purpose { + Group "UE Context Modification" + { + import all from Ngap_Common; + + Test Purpose { - TP Id TP_NGAP_GNB_CMP_02 - - Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. - - Initial conditions with { - //TODO: Do we have an initial condition here? - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - GUAMI, - PDU_Session_Resource_Setup_Request_List containing - PDU_SessionId, - S_NSSAI, - PDU_Session_Resource_Setup_Request_Transfer - Allowed_NSSAI, - UE_Security_Capabilities, - Security_Key - ; - from the AMF entity - } - then { - the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Failed_to_Setup_List containing - PDU_SessionId, - PDU_Session_Resource_Setup_Unsuccessful_Transfer; - ; - to the AMF entity - } - } + TP Id TP_NGAP_GNB_CMP_03 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE with failed PDU session." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + +// Initial conditions with { +// //TODO: Do we have an initial condition here? +// } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_MODIFICATION_FAILURE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_CMP_03 + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_04 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.3" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + +// Initial conditions with { +// //TODO: Do we have an initial condition here? +// } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_MODIFICATION_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_CMP_04 + + } // end Group UE Context Modification + + + Group "UE Context Suspend" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_05 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + +// Initial conditions with { +// //TODO: Do we have an initial condition here? +// } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Suspend_List containing + PDU_SessionId, + UE_Context_Suspend_Request_Transfer; + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_SUSPEND_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_CMP_05 + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_06 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.3" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + +// Initial conditions with { +// //TODO: Do we have an initial condition here? +// } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Suspend_List containing + PDU_SessionId, + UE_Context_Suspend_Request_Transfer; + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_SUSPEND_FAILURE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_CMP_06 + + }// end Group UE Context Suspend - } // end TP_NGAP_GNB_CMP_02 - } // end Group 8.3 UE Context Management Procedures Group "8.6 Initial UE message" -- GitLab From c8d52cacd574bae934b2a752a23cad2b8403d0a5 Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 24 Oct 2023 12:16:19 +0200 Subject: [PATCH 014/365] new and updated TPs in section 8.3 UE Context Management Procedures --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 236 ++++++++++++++++++++++++- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 127 +++++++------ 2 files changed, 298 insertions(+), 65 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index a4d70f4..87dd2b3 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -41,7 +41,7 @@ Package TP_AMF { Expected behaviour ensure that { - when { + when { the IUT entity indicate a PDU session management procedure } then { @@ -273,6 +273,240 @@ Package TP_AMF { } // end Group 8.2 PDU Session Management Procedures + Group "UE Context Management Procedures" + { + + Group "Initial Context Setup" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_CMP_01 + + Test objective "Verify that the IUT can send a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PDU initial context setup procedure + } + then { + the IUT entity sends a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI, + PDU_Session_Resource_Setup_Request_List containing + PDU_SessionId, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer; + , + Allowed_NSSAI, + UE_Security_Capabilities, + Security_Key + ; + to the GNB entity + } + + } + + } // end TP_NGAP_AMF_CMP_01 + + } + + Group "UE Context Modification" + { + + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_CMP_02 + + Test objective "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PDU UE context modification procedure + } + then { + the IUT entity sends a UE_CONTEXT_MODIFICATION_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the GNB entity + } + + } + + + } // end TP TP_NGAP_AMF_CMP_02 + + } // End Group UE Context Modification + + Group "UE Context Suspend" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_CMP_05 + + Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Suspend_List containing + PDU_SessionId, + UE_Context_Suspend_Request_Transfer; + ; + from the GNB entity + } + then { + the IUT entity sends a UE_CONTEXT_SUSPEND_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_CMP_05 + + Test Purpose { + + TP Id TP_NGAP_AMF_CMP_06 + + Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.3" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Suspend_List containing + PDU_SessionId, + UE_Context_Suspend_Request_Transfer; + ; + from the GNB entity + } + then { + the IUT entity sends a UE_CONTEXT_SUSPEND_FAILURE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_CMP_06 + + }// end Group UE Context Suspend + + Group "UE Context Resume" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_CMP_07 + + Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.3" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_RESUME_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + RRC_Resume_Cause, + PDU_Session_Resource_Resume_List containing + PDU_SessionId, + UE_Context_Resume_Request_Transfer; + ; + from the GNB entity + } + then { + the IUT entity sends a UE_CONTEXT_RESUME_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Resume_List containing + PDU_SessionId, + UE_Context_Resume_Response_Transfer; + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_CMP_07 + + + } // end Group "UE Context Resume" + + } // End Group UE Context Management Procedures + } // End of Package TP_AMF diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 56b8469..e013e9a 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -600,9 +600,9 @@ Package TP_GNB { PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. -// Initial conditions with { -// //TODO: Do we have an initial condition here? -// } + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO; check initial conditions + } Expected behaviour ensure that { @@ -650,15 +650,15 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE with failed PDU session." Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2" + "ETSI TS 138 413 [1], Clauses 8.3.4.3" Config Id CFG_GNB_01 PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. -// Initial conditions with { -// //TODO: Do we have an initial condition here? -// } + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO; check initial conditions + } Expected behaviour ensure that { @@ -688,15 +688,15 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.3" + "ETSI TS 138 413 [1], Clauses 8.3.4.2" Config Id CFG_GNB_01 PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. -// Initial conditions with { -// //TODO: Do we have an initial condition here? -// } + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } Expected behaviour ensure that { @@ -729,7 +729,7 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_05 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." + Test objective "Verify that the IUT can send a UE CONTEXT SUSPEND REQUEST contains mandatory IEs" Reference "ETSI TS 138 413 [1], Clauses 8.3.11.2" @@ -738,75 +738,74 @@ Package TP_GNB { PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. -// Initial conditions with { -// //TODO: Do we have an initial condition here? -// } - + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO; check initial conditions + } + Expected behaviour ensure that { when { - the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing + the IUT entity indicate a UE context suspend request + } + then { + the IUT entity sends a UE_CONTEXT_SUSPEND_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Suspend_List containing PDU_SessionId, UE_Context_Suspend_Request_Transfer; ; - from the AMF entity - } - then { - the IUT entity sends a UE_CONTEXT_SUSPEND_RESPONSE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - to the AMF entity + to the AMF entity } } } // end TP TP_NGAP_GNB_CMP_05 - Test Purpose { - - TP Id TP_NGAP_GNB_CMP_06 - - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.3" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. - -// Initial conditions with { -// //TODO: Do we have an initial condition here? -// } - - Expected behaviour - ensure that { - when { - the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Suspend_List containing - PDU_SessionId, - UE_Context_Suspend_Request_Transfer; - ; - from the AMF entity - } - then { - the IUT entity sends a UE_CONTEXT_SUSPEND_FAILURE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - Cause - ; - to the AMF entity - } - } + + }// end Group UE Context Suspend + + Group "UE Context Resume" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_06 + + Test objective "Verify that the IUT can send a UE CONTEXT RESUME REQUEST contains mandatory IEs" + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO; check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE context resume request + } + then { + the IUT entity sends a UE_CONTEXT_RESUME_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + RRC_Resume_Cause, + PDU_Session_Resource_Resume_List containing + PDU_SessionId, + UE_Context_Resume_Request_Transfer; + ; + to the AMF entity + } + } } // end TP TP_NGAP_GNB_CMP_06 - }// end Group UE Context Suspend + } // End Group "UE Context Resume" } // end Group 8.3 UE Context Management Procedures -- GitLab From 1f646cd3921a68911194f732cb80eee38948e7a7 Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 24 Oct 2023 16:15:03 +0200 Subject: [PATCH 015/365] new TPs in section 8.3 UE Context Management Procedures --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 226 +++++++++++++++----- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 273 ++++++++++++++++++------- 2 files changed, 377 insertions(+), 122 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 87dd2b3..726b8d5 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -273,7 +273,7 @@ Package TP_AMF { } // end Group 8.2 PDU Session Management Procedures - Group "UE Context Management Procedures" + Group "8.3 UE Context Management Procedures" { Group "Initial Context Setup" @@ -325,6 +325,49 @@ Package TP_AMF { } + Group "UE Context Release (AMF initiated)" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_CMP_08 + + Test objective "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND that contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.3" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO:check Initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE context release command + } + then { + the IUT entity sends a UE_CONTEXT_RELEASE_COMMAND containing + CHOICE_UE_NGAP_IDs containing // TODO: check this list + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + AMF_UE_NGAP_ID + ; + ; + to the GNB entity + } + } + + + } // end TP_NGAP_AMF_CMP_08 + + } // End Group "UE Context Release (AMF initiated)" + Group "UE Context Modification" { @@ -367,64 +410,105 @@ Package TP_AMF { } // End Group UE Context Modification - Group "UE Context Suspend" - { - import all from Ngap_Common; - - Test Purpose { + Group "Connection Establishment Indication" + { + import all from Ngap_Common; + + Test Purpose { - TP Id TP_NGAP_AMF_CMP_05 + TP Id TP_NGAP_AMF_CMP_09 - Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." + Test objective "Verify that the IUT can send a Connection Establishment Indication that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2" + "ETSI TS 138 413 [1], Clauses 8.3.6.2" Config Id CFG_AMF_01 PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. - Initial conditions with { + Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions } Expected behaviour ensure that { - when { - the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing + when { + the IUT entity indicate a PDU UE context modification procedure + } + then { + the IUT entity sends a CONNECTION_ESTABLISHMENT_INDICATION containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Suspend_List containing - PDU_SessionId, - UE_Context_Suspend_Request_Transfer; + RAN_UE_NGAP_ID ; - from the GNB entity + to the GNB entity } + + } + + } // End TP TP_NGAP_AMF_CMP_09 + + } // End Group "Connection Establishment Indication" + + Group "Connection Establishment Indication" + { + + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_CMP_10 + + Test objective "Verify that the IUT can send a AMF CP Relocation Indication that contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.7.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a AMF CP relocation indication procedure + } then { - the IUT entity sends a UE_CONTEXT_SUSPEND_RESPONSE containing + the IUT entity sends a AMF_CP_RELOCATION_INDICATION containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID ; - to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_CMP_05 + to the GNB entity + } + + } + + } // End TP TP_NGAP_AMF_CMP_10 + + } // End Group "Connection Establishment Indication" + + Group "UE Context Suspend" + { + import all from Ngap_Common; Test Purpose { - TP Id TP_NGAP_AMF_CMP_06 + TP Id TP_NGAP_AMF_CMP_05 - Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." + Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.3" + "ETSI TS 138 413 [1], Clauses 8.3.11.2" Config Id CFG_AMF_01 PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. - Initial conditions with { + Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions } @@ -441,28 +525,21 @@ Package TP_AMF { from the GNB entity } then { - the IUT entity sends a UE_CONTEXT_SUSPEND_FAILURE containing + the IUT entity sends a UE_CONTEXT_SUSPEND_RESPONSE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - Cause + RAN_UE_NGAP_ID ; to the GNB entity } } - } // end TP TP_NGAP_AMF_CMP_06 - - }// end Group UE Context Suspend - - Group "UE Context Resume" - { - import all from Ngap_Common; + } // end TP TP_NGAP_AMF_CMP_05 Test Purpose { - TP Id TP_NGAP_AMF_CMP_07 + TP Id TP_NGAP_AMF_CMP_06 - Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." + Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." Reference "ETSI TS 138 413 [1], Clauses 8.3.11.3" @@ -478,34 +555,81 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity receives a UE_CONTEXT_RESUME_REQUEST containing + the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - RRC_Resume_Cause, - PDU_Session_Resource_Resume_List containing + PDU_Session_Resource_Suspend_List containing PDU_SessionId, - UE_Context_Resume_Request_Transfer; + UE_Context_Suspend_Request_Transfer; ; from the GNB entity } then { - the IUT entity sends a UE_CONTEXT_RESUME_RESPONSE containing + the IUT entity sends a UE_CONTEXT_SUSPEND_FAILURE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - PDU_Session_Resource_Resume_List containing - PDU_SessionId, - UE_Context_Resume_Response_Transfer; + Cause ; to the GNB entity } } - } // end TP TP_NGAP_AMF_CMP_07 - + } // end TP TP_NGAP_AMF_CMP_06 - } // end Group "UE Context Resume" + }// end Group UE Context Suspend + + Group "UE Context Resume" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_CMP_07 + + Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.12.3" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_RESUME_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + RRC_Resume_Cause, + PDU_Session_Resource_Resume_List containing + PDU_SessionId, + UE_Context_Resume_Request_Transfer; + ; + from the GNB entity + } + then { + the IUT entity sends a UE_CONTEXT_RESUME_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Resume_List containing + PDU_SessionId, + UE_Context_Resume_Response_Transfer; + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_CMP_07 + + + } // end Group "UE Context Resume" - } // End Group UE Context Management Procedures + } // End Group 8.3 UE Context Management Procedures } // End of Package TP_AMF diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index e013e9a..0fb69c0 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -534,10 +534,10 @@ Package TP_GNB { { import all from Ngap_Common; - Group "Initial Context Setup" - { - import all from Ngap_Common; - + Group "Initial Context Setup" + { + import all from Ngap_Common; + Test Purpose { TP Id TP_NGAP_GNB_CMP_01 @@ -637,58 +637,190 @@ Package TP_GNB { } // end TP_NGAP_GNB_CMP_02 } // end Group Initial Context Setup + Group "UE Context Release (AMF initiated)" + { + import all from Ngap_Common; - - Group "UE Context Modification" - { - import all from Ngap_Common; - - Test Purpose { + Test Purpose { - TP Id TP_NGAP_GNB_CMP_03 - - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE with failed PDU session." + TP Id TP_NGAP_GNB_CMP_07 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND that contains mandatory IEs and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.3" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_RELEASE_COMMAND containing + CHOICE_UE_NGAP_IDs containing // TODO: check this list + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + AMF_UE_NGAP_ID + ; + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_RELEASE_COMPLETE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_List containing + PDU_SessionId, + PDU_Session_Resource_Release_Response_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_07 + + } // End Group "UE Context Release (AMF initiated)" + + Group "UE Context Modification" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_03 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE with failed PDU session." - Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.3" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. - - Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO; check initial conditions - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - from the AMF entity - } - then { - the IUT entity sends a UE_CONTEXT_MODIFICATION_FAILURE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - Cause - ; - to the AMF entity - } - } + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.3" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO; check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_MODIFICATION_FAILURE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_CMP_03 + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_04 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_MODIFICATION_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_CMP_04 + + } // end Group UE Context Modification + + Group "RRC Inactive Transition Report" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_07 + + Test objective "Verify that the IUT can send a RRC INACTIVE TRANSITION REPORT that contains mandatory IEs" + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.5" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a RRC inactive transition report + } + then { + the IUT entity sends a RRC_INACTIVE_TRANSITION_REPORT containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + RRC_State, + User_Location_Information + ; + to the AMF entity + } + } - } // end TP TP_NGAP_GNB_CMP_03 - - Test Purpose { + } // end TP TP_NGAP_GNB_CMP_07 + + } // End Group "RRC Inactive Transition Report" + + Group "RAN CP Relocation Indication" + { + + import all from Ngap_Common; + + Test Purpose { - TP Id TP_NGAP_GNB_CMP_04 + TP Id TP_NGAP_GNB_CMP_08 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + Test objective "Verify that the IUT can send a RAN CP Relocation Indication that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2" + "ETSI TS 138 413 [1], Clauses 8.3.8.2" Config Id CFG_GNB_01 @@ -700,28 +832,27 @@ Package TP_GNB { Expected behaviour ensure that { - when { - the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - from the AMF entity - } + when { + the IUT entity indicate a RAN CP relocation indication procedure + } then { - the IUT entity sends a UE_CONTEXT_MODIFICATION_RESPONSE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID + the IUT entity sends a RAN_CP_RELOCATION_INDICATION containing + RAN_UE_NGAP_ID, + 5G_S_TMSI, + E_ULTRA_CGI, + TAI, + UL_CP_Security_Information ; - to the AMF entity - } - } - - } // end TP TP_NGAP_GNB_CMP_04 - - } // end Group UE Context Modification - - - Group "UE Context Suspend" + to the AMF entity + } + + } + + } // End TP TP_NGAP_GNB_CMP_08 + + } // End Group "RAN CP Relocation Indication" + + Group "UE Context Suspend" { import all from Ngap_Common; @@ -739,7 +870,7 @@ Package TP_GNB { PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO; check initial conditions + the UE entity isRegisteredTo the AMF // TODO: check initial conditions } Expected behaviour @@ -775,14 +906,14 @@ Package TP_GNB { Test objective "Verify that the IUT can send a UE CONTEXT RESUME REQUEST contains mandatory IEs" Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2" + "ETSI TS 138 413 [1], Clauses 8.3.12.2" Config Id CFG_GNB_01 PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO; check initial conditions + the UE entity isRegisteredTo the AMF // TODO: check initial conditions } Expected behaviour -- GitLab From 09e8ed561f57bba5e84568ccd655491c7a6c8afc Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 24 Oct 2023 16:48:46 +0200 Subject: [PATCH 016/365] start of TTF033, added groups,... --- ttcn/AtsNGAP/NGAP_Pics.ttcn | 20 +- ttcn/AtsNGAP/NGAP_Pixits.ttcn | 20 +- ttcn/AtsNGAP/NGAP_Steps.ttcn | 23 +- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 588 +++++++++++++++++++---- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 525 +++++++++++++++++++- ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn | 32 +- ttcn/AtsNGAP/NGAP_TestControl.ttcn | 20 +- ttcn/AtsNGAP/NGAP_TestSystem.ttcn | 23 +- 8 files changed, 1054 insertions(+), 197 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_Pics.ttcn b/ttcn/AtsNGAP/NGAP_Pics.ttcn index 4c4f4fb..46fa084 100644 --- a/ttcn/AtsNGAP/NGAP_Pics.ttcn +++ b/ttcn/AtsNGAP/NGAP_Pics.ttcn @@ -1,14 +1,14 @@ /** - * @author ETSI / - * @version $URL$ - * $Id$ - * @desc This module provides the PICS used for the NGAP 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 - */ +* @author ETSI / TTF033 +* @version $URL$ +* $Id$ +* @desc This module provides PICS for NGAP 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 +*/ module NGAP_Pics { group PICS_A2 { diff --git a/ttcn/AtsNGAP/NGAP_Pixits.ttcn b/ttcn/AtsNGAP/NGAP_Pixits.ttcn index ceb0981..819b6ca 100644 --- a/ttcn/AtsNGAP/NGAP_Pixits.ttcn +++ b/ttcn/AtsNGAP/NGAP_Pixits.ttcn @@ -1,14 +1,14 @@ /** - * @author ETSI / - * @version $URL$ - * $Id$ - * @desc This module provides the PIXIT used for the NGAP 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 / 3GPP TS - */ +* @author ETSI / TTF033 +* @version $URL$ +* $Id$ +* @desc This module provides PIXITs for NGAP 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 +*/ module NGAP_Pixits { // LibNGAP diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index d7f5e21..2725a5b 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -1,14 +1,14 @@ /** - * @author ETSI / - * @version $URL$ - * $Id$ - * @desc This module provides ATS specific steps used by the test cases for NGAP test. - * @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 / 3GPP TS - */ +* @author ETSI / TTF033 +* @version $URL$ +* $Id$ +* @desc This module provides ATS specific steps used by the test cases for NGAP 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 +*/ module NGAP_Steps { // LibNGAP @@ -153,9 +153,6 @@ module NGAP_Steps { } // End of group CheckFunctions - group SendMessage { - } // End of group SendMessage - group DefaultTestStep{ }//end group DefaultTestStep diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 7f36482..2f29975 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1,13 +1,13 @@ /** - * @author ETSI / + * @author ETSI / TTF033 * @version $URL$ * $Id$ - * @desc This module provides RfRo test functions used by the test cases. + * @desc This module provides test functions for NGAP 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 / 3GPP TS + * @see ETSI TS 138 413 / 3GPP TS 38.413 version 16.12 Release 16 */ module NGAP_TCFunctions { @@ -29,112 +29,496 @@ module NGAP_TCFunctions { import from NGAP_Steps all; import from NGAP_Pixits all; - group gNB_Role { - + group TC_function_template{ + /** - * @desc E-RAB management group - * @see ETSI DTS/INT-00135-2 Clause 5.2.2.1.2 E-RAB management group + * @desc Testcase function for TC_NGAP_gNB_or_aMF_functionName_01 */ - group ERAB_management_group { - - /** - * @desc Testcase function for TC_NGAP_eNB_RAB_01 - */ - function f_TC_NGAP_gNB_SetupRequest_01() runs on NGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - /*f_send_E_RABSetupRequest(m_E_RABSetupReqIEs( - vc_MME_UE_ID, - vc_eNB_UE_ID, - {m_E_RABToBeSetupItemBearerSUReq ( - -, - m_e_RABlevelQoSParameters - (5) - )} - )); - - f_recv_E_RABSetupResponse(mw_E_RABSetupResIEs( - vc_MME_UE_ID, - vc_eNB_UE_ID, - { - mw_E_RABSetupItemBearerSURes - } - )); - */ - //if (not (isvalue(m_global_gNB_ID_IE(m_granID) ))) { log (m_global_gNB_ID_IE(m_granID))} - //else{log("template error")} - log(m_global_gNB_ID_IE(m_granID)); - var bitstring m_out:= encvalue(m_global_gNB_ID_IE(m_granID)); - log("Send ...", m_out); - log(m_initiatingMessage(id_NGSetup)); - f_send_NGAP_PDU(m_initiatingMessage(id_NGSetup)); - log("Receive ..."); - f_recv_NGAP_PDU(?); - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + function f_TC_NGAP_gNB_or_aMF_functionName_01() runs on NGAPComponent { + // Local variables - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + // Preamble + f_NGAP_gnb_init(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - } // End of function f_TC_NGAP_eNB_RAB_01 + // Body + f_send_NGAP_PDU(m_initiatingMessage(id_NGSetup)); + f_recv_NGAP_PDU(?); + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - } // End of group Unknown_unforseen_errorneous_group - - } // End of group gNB_Role - - group AMF_Role { - - /** - * @desc E-RAB management group - * @see ETSI DTS/INT-00135-2 Clause 5.2.2.1.2 E-RAB management group - */ - group ERAB_management_group { + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - /** - * @desc Testcase function for TC_NGAP_eNB_RAB_01 - */ - function f_TC_NGAP_MME_RAB_01() runs on NGAPComponent { - // Local variables - - // Preamble - f_NGAP_amf_init(); - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Test body - action("trigger an Initial E-RAB Setup procedure"); - - /*f_recv_E_RABSetupRequest(mw_E_RABSetupReqIEs( - vc_MME_UE_ID, - vc_eNB_UE_ID, - { mw_E_RABToBeSetupItemBearerSUReq(?,?,?,?,?) } - )); - */ - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - - // Postamble - /* f_send_E_RABSetupResponse(m_E_RABSetupResIEs( - vc_MME_UE_ID, - vc_eNB_UE_ID, - {m_E_RABSetupItemBearerSURes} - )); */ - f_postamble_NGAP_AMF(); - - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_MME_RAB_01 - - - } // End of group Unknown_unforseen_errorneous_group - - } // End of group AMF_Role + } // End of function f_TC_NGAP_gNB_or_aMF_functionName_01 + + }//end of group TC_function_template + + group gNB_Role{ + //8.2 + group PDU_Session_Management_Procedures{ + //8.2.1 + group PDU_Session_Resource_Setup{ + }//end of group PDU_Session_Resource_Setup + //8.2.2 + group PDU_Session_Resource_Release{ + }//end of group PDU_Session_Resource_Release + //8.2.3 + group PDU_Session_Resource_Modify{ + }//end of group PDU_Session_Resource_Modify + //8.2.4 + group PDU_Session_Resource_Notify{ + }//end of group PDU_Session_Resource_Notify + //8.2.5 + group PDU_Session_Resource_Modify_Indication{ + }//end of group PDU_Session_Resource_Modify_Indication + }//end of group PDU_Session_Management_Procedures + //8.3 + group UE_Context_Management_Procedures{ + //8.3.1 + group Initial_Context_Setup{ + }//end of group Initial_Context_Setup + //8.3.2 + group UE_Context_Release_Request_NG_RAN_node_initiated{ + }//end of group UE_Context_Release_Request_NG_RAN_node_initiated + //8.3.3 + group UE_Context_Release_AMF_initiated{ + }//end of group UE_Context_Release_AMF_initiated + //8.3.4 + group UE_Context_Modification{ + }//end of group UE_Context_Modification + //8.3.5 + group RRC_Inactive_Transition_Report{ + }//end of group RRC_Inactive_Transition_Report + //8.3.6 + group Connection_Establishment_Indication{ + }//end of group Connection_Establishment_Indication + //8.3.7 + group AMF_CP_Relocation_Indication{ + }//end of group AMF_CP_Relocation_Indication + //8.3.8 + group RAN_CP_Relocation_Indication{ + }//end of group RAN_CP_Relocation_Indication + //8.3.9 + group Retrieve_UE_Information{ + }//end of group Retrieve_UE_Information + //8.3.10 + group UE_Information_Transfer{ + }//end of group UE_Information_Transfer + //8.3.11 + group UE_Context_Suspend{ + }//end of group UE_Context_Suspend + //8.3.12 + group UE_Context_Resume{ + }//end of group UE_Context_Resume + }//end of group UE_Context_Management_Procedures + //8.4 + group UE_Mobility_Management_Procedures{ + //8.4.1 + group Handover_Preparation{ + }//end of group Handover_Preparation + //8.4.2 + group Handover_Resource_Allocation{ + }//end of group Handover_Resource_Allocation + //8.4.3 + group Handover_Notification{ + }//end of group Handover_Notification + //8.4.4 + group Path_Switch_Request{ + }//end of group Path_Switch_Request + //8.4.5 + group Handover_Cancellation{ + }//end of group Handover_Cancellation + //8.4.6 + group Uplink_RAN_Status_Transfer{ + }//end of group Uplink_RAN_Status_Transfer + //8.4.7 + group Downlink_RAN_Status_Transfer{ + }//end of group Downlink_RAN_Status_Transfer + //8.4.8 + group Handover_Success{ + }//end of group Handover_Success + //8.4.9 + group Uplink_RAN_Early_Status_Transfer{ + }//end of group Uplink_RAN_Early_Status_Transfer + //8.4.10 + group Downlink_RAN_Early_Status_Transfer{ + }//end of group Downlink_RAN_Early_Status_Transfer + }//end of group UE_Mobility_Management_Procedures + //8.5 + group Paging_Procedures{ + //8.5.1 + group Paging{ + }//end of group Paging + }//end of group Paging_Procedures + //8.6 + group Transport_of_NAS_Messages_Procedures{ + //8.6.1 + group Initial_UE_Message{ + }//end of group Initial_UE_Message + //8.6.2 + group Downlink_NAS_Transport{ + }//end of group Downlink_NAS_Transport + //8.6.3 + group Uplink_NAS_Transport{ + }//end of group Uplink_NAS_Transport + //8.6.4 + group NAS_Non_Delivery_Indication{ + }//end of group NAS_Non_Delivery_Indication + //8.6.5 + group Rerout_NAS_Request{ + }//end of group Rerout_NAS_Request + }//end of group Transport_of_NAS_Messages_Procedures + //8.7 + group Interface_Management_Procedures{ + //8.7.1 + group NG_Setup{ + }//end of group NG_Setup + //8.7.2 + group RAN_Configuration_Update{ + }//end of group RAN_Configuration_Update + //8.7.3 + group AMF_Configuration_Update{ + }//end of group AMF_Configuration_Update + //8.7.4 + group NG_Reset{ + }//end of group NG_Reset + //8.7.5 + group Error_Indication{ + }//end of group Error_Indication + //8.7.6 + group AMF_Status_Indication{ + }//end of group AMF_Status_Indication + //8.7.7 + group Overload_Start{ + }//end of group Overload_Start + //8.7.8 + group Overload_Stop{ + }//end of group Overload_Stop + }//end of group Interface_Management_Procedures + //8.8 + group Configuration_Transfer_Procedures{ + //8.8.1 + group Uplink_RAN_Configuration_Transfer{ + }//end of group Uplink_RAN_Configuration_Transfer + //8.8.2 + group Downlink_RAN_Configuration_Transfer{ + }//end of group Downlink_RAN_Configuration_Transfer + //8.9 + group Warning_Message_Transmission_Procedures{ + }//end of group Warning_Message_Transmission_Procedures + //8.9.1 + group Write_Replace_Warning{ + }//end of group Write_Replace_Warning + //8.9.2 + group PWS_Cancel{ + }//end of group PWS_Cancel + //8.9.3 + group PWS_Restart_Indication{ + }//end of group PWS_Restart_Indication + //8.9.4 + group PWS_Failure_Indication{ + }//end of group PWS_Failure_Indication + }//end of group Configuration_Transfer_Procedures + //8.10 + group NRPPa_Transport_Procedures{ + }//end of group NRPPa_Transport_Procedures + //8.11 + group Trace_Procedures{ + //8.11.1 + group Trace_Start{ + }//end of group Trace_Start + //8.11.2 + group Trace_Failure_Indication{ + }//end of group Trace_Failure_Indication + //8.11.3 + group Deactivate_Trace{ + }//end of group Deactivate_Trace + //8.11.4 + group Cell_Traffic_Trace{ + }//end of group Cell_Traffic_Trace + }//end of group Trace_Procedures + //8.12 + group Location_Reporting_Procedures{ + //8.12.1 + group Location_Reporting_Control{ + }//end of group Location_Reporting_Control + //8.12.2 + group Location_Reporting_Failure_Indication{ + }//end of group Location_Reporting_Failure_Indication + //8.12.3 + group Location_Report{ + }//end of group Location_Report + }//end of group Location_Reporting_Procedures + //8.13 + group UE_TNLA_Binding_Procedures{ + //8.13.1 + group UE_TNLA_Binding_Release{ + }//end of group UE_TNLA_Binding_Release + }//end of group UE_TNLA_Binding_Procedures + //8.14 + group UE_Radio_Capability_Management_Procedures{ + //8.14.1 + group UE_Radio_Capability_Info_Indication{ + }//end of group UE_Radio_Capability_Info_Indication + //8.14.2 + group UE_Radio_Capability_Check{ + }//end of group UE_Radio_Capability_Check + //8.14.3 + group UE_Radio_Capability_ID_Mapping{ + }//end of group UE_Radio_Capability_ID_Mapping + }//end of group UE_Radio_Capability_Management_Procedures + //8.15 + group Data_Usage_Reporting_Procedures{ + //8.15.1 + group Secondary_RAT_Data_Usage_Report{ + }//end of group Secondary_RAT_Data_Usage_Report + }//end of group Data_Usage_Reporting_Procedures + //8.16 + group RIM_Information_Transfer_Procedures{ + //8.16.1 + group Uplink_RIM_Information_Transfer{ + }//end of group Uplink_RIM_Information_Transfer + //8.16.2 + group Downlink_RIM_Information_Transfer{ + }//end of group Downlink_RIM_Information_Transfer + }//end of group RIM_Information_Transfer_Procedures + }//end of group gNB_Role + + group aMF_Role{ + //8.2 + group PDU_Session_Management_Procedures{ + //8.2.1 + group PDU_Session_Resource_Setup{ + }//end of group PDU_Session_Resource_Setup + //8.2.2 + group PDU_Session_Resource_Release{ + }//end of group PDU_Session_Resource_Release + //8.2.3 + group PDU_Session_Resource_Modify{ + }//end of group PDU_Session_Resource_Modify + //8.2.4 + group PDU_Session_Resource_Notify{ + }//end of group PDU_Session_Resource_Notify + //8.2.5 + group PDU_Session_Resource_Modify_Indication{ + }//end of group PDU_Session_Resource_Modify_Indication + }//end of group PDU_Session_Management_Procedures + //8.3 + group UE_Context_Management_Procedures{ + //8.3.1 + group Initial_Context_Setup{ + }//end of group Initial_Context_Setup + //8.3.2 + group UE_Context_Release_Request_NG_RAN_node_initiated{ + }//end of group UE_Context_Release_Request_NG_RAN_node_initiated + //8.3.3 + group UE_Context_Release_AMF_initiated{ + }//end of group UE_Context_Release_AMF_initiated + //8.3.4 + group UE_Context_Modification{ + }//end of group UE_Context_Modification + //8.3.5 + group RRC_Inactive_Transition_Report{ + }//end of group RRC_Inactive_Transition_Report + //8.3.6 + group Connection_Establishment_Indication{ + }//end of group Connection_Establishment_Indication + //8.3.7 + group AMF_CP_Relocation_Indication{ + }//end of group AMF_CP_Relocation_Indication + //8.3.8 + group RAN_CP_Relocation_Indication{ + }//end of group RAN_CP_Relocation_Indication + //8.3.9 + group Retrieve_UE_Information{ + }//end of group Retrieve_UE_Information + //8.3.10 + group UE_Information_Transfer{ + }//end of group UE_Information_Transfer + //8.3.11 + group UE_Context_Suspend{ + }//end of group UE_Context_Suspend + //8.3.12 + group UE_Context_Resume{ + }//end of group UE_Context_Resume + }//end of group UE_Context_Management_Procedures + //8.4 + group UE_Mobility_Management_Procedures{ + //8.4.1 + group Handover_Preparation{ + }//end of group Handover_Preparation + //8.4.2 + group Handover_Resource_Allocation{ + }//end of group Handover_Resource_Allocation + //8.4.3 + group Handover_Notification{ + }//end of group Handover_Notification + //8.4.4 + group Path_Switch_Request{ + }//end of group Path_Switch_Request + //8.4.5 + group Handover_Cancellation{ + }//end of group Handover_Cancellation + //8.4.6 + group Uplink_RAN_Status_Transfer{ + }//end of group Uplink_RAN_Status_Transfer + //8.4.7 + group Downlink_RAN_Status_Transfer{ + }//end of group Downlink_RAN_Status_Transfer + //8.4.8 + group Handover_Success{ + }//end of group Handover_Success + //8.4.9 + group Uplink_RAN_Early_Status_Transfer{ + }//end of group Uplink_RAN_Early_Status_Transfer + //8.4.10 + group Downlink_RAN_Early_Status_Transfer{ + }//end of group Downlink_RAN_Early_Status_Transfer + }//end of group UE_Mobility_Management_Procedures + //8.5 + group Paging_Procedures{ + //8.5.1 + group Paging{ + }//end of group Paging + }//end of group Paging_Procedures + //8.6 + group Transport_of_NAS_Messages_Procedures{ + //8.6.1 + group Initial_UE_Message{ + }//end of group Initial_UE_Message + //8.6.2 + group Downlink_NAS_Transport{ + }//end of group Downlink_NAS_Transport + //8.6.3 + group Uplink_NAS_Transport{ + }//end of group Uplink_NAS_Transport + //8.6.4 + group NAS_Non_Delivery_Indication{ + }//end of group NAS_Non_Delivery_Indication + //8.6.5 + group Rerout_NAS_Request{ + }//end of group Rerout_NAS_Request + }//end of group Transport_of_NAS_Messages_Procedures + //8.7 + group Interface_Management_Procedures{ + //8.7.1 + group NG_Setup{ + }//end of group NG_Setup + //8.7.2 + group RAN_Configuration_Update{ + }//end of group RAN_Configuration_Update + //8.7.3 + group AMF_Configuration_Update{ + }//end of group AMF_Configuration_Update + //8.7.4 + group NG_Reset{ + }//end of group NG_Reset + //8.7.5 + group Error_Indication{ + }//end of group Error_Indication + //8.7.6 + group AMF_Status_Indication{ + }//end of group AMF_Status_Indication + //8.7.7 + group Overload_Start{ + }//end of group Overload_Start + //8.7.8 + group Overload_Stop{ + }//end of group Overload_Stop + }//end of group Interface_Management_Procedures + //8.8 + group Configuration_Transfer_Procedures{ + //8.8.1 + group Uplink_RAN_Configuration_Transfer{ + }//end of group Uplink_RAN_Configuration_Transfer + //8.8.2 + group Downlink_RAN_Configuration_Transfer{ + }//end of group Downlink_RAN_Configuration_Transfer + //8.9 + group Warning_Message_Transmission_Procedures{ + }//end of group Warning_Message_Transmission_Procedures + //8.9.1 + group Write_Replace_Warning{ + }//end of group Write_Replace_Warning + //8.9.2 + group PWS_Cancel{ + }//end of group PWS_Cancel + //8.9.3 + group PWS_Restart_Indication{ + }//end of group PWS_Restart_Indication + //8.9.4 + group PWS_Failure_Indication{ + }//end of group PWS_Failure_Indication + }//end of group Configuration_Transfer_Procedures + //8.10 + group NRPPa_Transport_Procedures{ + }//end of group NRPPa_Transport_Procedures + //8.11 + group Trace_Procedures{ + //8.11.1 + group Trace_Start{ + }//end of group Trace_Start + //8.11.2 + group Trace_Failure_Indication{ + }//end of group Trace_Failure_Indication + //8.11.3 + group Deactivate_Trace{ + }//end of group Deactivate_Trace + //8.11.4 + group Cell_Traffic_Trace{ + }//end of group Cell_Traffic_Trace + }//end of group Trace_Procedures + //8.12 + group Location_Reporting_Procedures{ + //8.12.1 + group Location_Reporting_Control{ + }//end of group Location_Reporting_Control + //8.12.2 + group Location_Reporting_Failure_Indication{ + }//end of group Location_Reporting_Failure_Indication + //8.12.3 + group Location_Report{ + }//end of group Location_Report + }//end of group Location_Reporting_Procedures + //8.13 + group UE_TNLA_Binding_Procedures{ + //8.13.1 + group UE_TNLA_Binding_Release{ + }//end of group UE_TNLA_Binding_Release + }//end of group UE_TNLA_Binding_Procedures + //8.14 + group UE_Radio_Capability_Management_Procedures{ + //8.14.1 + group UE_Radio_Capability_Info_Indication{ + }//end of group UE_Radio_Capability_Info_Indication + //8.14.2 + group UE_Radio_Capability_Check{ + }//end of group UE_Radio_Capability_Check + //8.14.3 + group UE_Radio_Capability_ID_Mapping{ + }//end of group UE_Radio_Capability_ID_Mapping + }//end of group UE_Radio_Capability_Management_Procedures + //8.15 + group Data_Usage_Reporting_Procedures{ + //8.15.1 + group Secondary_RAT_Data_Usage_Report{ + }//end of group Secondary_RAT_Data_Usage_Report + }//end of group Data_Usage_Reporting_Procedures + //8.16 + group RIM_Information_Transfer_Procedures{ + //8.16.1 + group Uplink_RIM_Information_Transfer{ + }//end of group Uplink_RIM_Information_Transfer + //8.16.2 + group Downlink_RIM_Information_Transfer{ + }//end of group Downlink_RIM_Information_Transfer + }//end of group RIM_Information_Transfer_Procedures + }//end of group aMF_Role } // End of module NGAP_TCFunctions diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 3d5d205..4853464 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1,5 +1,5 @@ /** - * @author ETSI / STF519 + * @author ETSI / TTF033 * @version $URL$ * $Id$ * @desc This module provides test cases for NGAP tests. @@ -7,10 +7,10 @@ * 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 + * @see ETSI TS 138 413 / 3GPP TS 38.413 version 16.12 Release 16 */ module NGAP_TestCases { - + // LibCommon import from LibCommon_Sync all ; @@ -20,32 +20,507 @@ module NGAP_TestCases { import from NGAP_TestSystem all; import from NGAP_TCFunctions all; import from NGAP_Pics all; + + + group TC_testcase_template{ + + /** + * @desc Verify ... + *
+         * Pics Selection: 
+         * Configuration: 
+         *     
+         * 
+ * + * @see ETSI TS + * @reference ETSI TS + */ + testcase TC_NGAP_gNB_or_aMF_testcaseName_01() runs on NGAP system TestAdapter { - type component MTC{ - var integer dummy; - }; - - testcase TC_NGAP_gNB_SetupRequest_01() runs on NGAP system TestAdapter { - - // Local variables - var NGAP v_ngap_gnb; + // Local variables + var NGAP v_ngap_gnb_or_amf; //or v_ngap_amf - // Test control - if (not PICS_NGAP_AMF_IUT) { - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_aMF_IUT' shall be set to true for executing the TC. ***"); - stop; - } + // Test control + if (not PICS_NGAP_AMF_IUT) { + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT' shall be set to true for executing the TC. ***"); + stop; + } - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); + // Test component configuration + f_cf_NGAP_gNB_Up/*aMF_Up*/(v_ngap_gnb_or_amf); - // Start - v_ngap_gnb.start(f_TC_NGAP_gNB_SetupRequest_01()); + // Start + v_ngap_gnb_or_amf.start(f_TC_NGAP_gNB_or_aMF_functionName_01()()); - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - f_cf_Down(); + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_gNB_or_aMF_testcaseName_01 + + }//end of group TC_testcase_template + + group gNB_Role{ + //8.2 + group PDU_Session_Management_Procedures{ + //8.2.1 + group PDU_Session_Resource_Setup{ + }//end of group PDU_Session_Resource_Setup + //8.2.2 + group PDU_Session_Resource_Release{ + }//end of group PDU_Session_Resource_Release + //8.2.3 + group PDU_Session_Resource_Modify{ + }//end of group PDU_Session_Resource_Modify + //8.2.4 + group PDU_Session_Resource_Notify{ + }//end of group PDU_Session_Resource_Notify + //8.2.5 + group PDU_Session_Resource_Modify_Indication{ + }//end of group PDU_Session_Resource_Modify_Indication + }//end of group PDU_Session_Management_Procedures + //8.3 + group UE_Context_Management_Procedures{ + //8.3.1 + group Initial_Context_Setup{ + }//end of group Initial_Context_Setup + //8.3.2 + group UE_Context_Release_Request_NG_RAN_node_initiated{ + }//end of group UE_Context_Release_Request_NG_RAN_node_initiated + //8.3.3 + group UE_Context_Release_AMF_initiated{ + }//end of group UE_Context_Release_AMF_initiated + //8.3.4 + group UE_Context_Modification{ + }//end of group UE_Context_Modification + //8.3.5 + group RRC_Inactive_Transition_Report{ + }//end of group RRC_Inactive_Transition_Report + //8.3.6 + group Connection_Establishment_Indication{ + }//end of group Connection_Establishment_Indication + //8.3.7 + group AMF_CP_Relocation_Indication{ + }//end of group AMF_CP_Relocation_Indication + //8.3.8 + group RAN_CP_Relocation_Indication{ + }//end of group RAN_CP_Relocation_Indication + //8.3.9 + group Retrieve_UE_Information{ + }//end of group Retrieve_UE_Information + //8.3.10 + group UE_Information_Transfer{ + }//end of group UE_Information_Transfer + //8.3.11 + group UE_Context_Suspend{ + }//end of group UE_Context_Suspend + //8.3.12 + group UE_Context_Resume{ + }//end of group UE_Context_Resume + }//end of group UE_Context_Management_Procedures + //8.4 + group UE_Mobility_Management_Procedures{ + //8.4.1 + group Handover_Preparation{ + }//end of group Handover_Preparation + //8.4.2 + group Handover_Resource_Allocation{ + }//end of group Handover_Resource_Allocation + //8.4.3 + group Handover_Notification{ + }//end of group Handover_Notification + //8.4.4 + group Path_Switch_Request{ + }//end of group Path_Switch_Request + //8.4.5 + group Handover_Cancellation{ + }//end of group Handover_Cancellation + //8.4.6 + group Uplink_RAN_Status_Transfer{ + }//end of group Uplink_RAN_Status_Transfer + //8.4.7 + group Downlink_RAN_Status_Transfer{ + }//end of group Downlink_RAN_Status_Transfer + //8.4.8 + group Handover_Success{ + }//end of group Handover_Success + //8.4.9 + group Uplink_RAN_Early_Status_Transfer{ + }//end of group Uplink_RAN_Early_Status_Transfer + //8.4.10 + group Downlink_RAN_Early_Status_Transfer{ + }//end of group Downlink_RAN_Early_Status_Transfer + }//end of group UE_Mobility_Management_Procedures + //8.5 + group Paging_Procedures{ + //8.5.1 + group Paging{ + }//end of group Paging + }//end of group Paging_Procedures + //8.6 + group Transport_of_NAS_Messages_Procedures{ + //8.6.1 + group Initial_UE_Message{ + }//end of group Initial_UE_Message + //8.6.2 + group Downlink_NAS_Transport{ + }//end of group Downlink_NAS_Transport + //8.6.3 + group Uplink_NAS_Transport{ + }//end of group Uplink_NAS_Transport + //8.6.4 + group NAS_Non_Delivery_Indication{ + }//end of group NAS_Non_Delivery_Indication + //8.6.5 + group Rerout_NAS_Request{ + }//end of group Rerout_NAS_Request + }//end of group Transport_of_NAS_Messages_Procedures + //8.7 + group Interface_Management_Procedures{ + //8.7.1 + group NG_Setup{ + }//end of group NG_Setup + //8.7.2 + group RAN_Configuration_Update{ + }//end of group RAN_Configuration_Update + //8.7.3 + group AMF_Configuration_Update{ + }//end of group AMF_Configuration_Update + //8.7.4 + group NG_Reset{ + }//end of group NG_Reset + //8.7.5 + group Error_Indication{ + }//end of group Error_Indication + //8.7.6 + group AMF_Status_Indication{ + }//end of group AMF_Status_Indication + //8.7.7 + group Overload_Start{ + }//end of group Overload_Start + //8.7.8 + group Overload_Stop{ + }//end of group Overload_Stop + }//end of group Interface_Management_Procedures + //8.8 + group Configuration_Transfer_Procedures{ + //8.8.1 + group Uplink_RAN_Configuration_Transfer{ + }//end of group Uplink_RAN_Configuration_Transfer + //8.8.2 + group Downlink_RAN_Configuration_Transfer{ + }//end of group Downlink_RAN_Configuration_Transfer + //8.9 + group Warning_Message_Transmission_Procedures{ + }//end of group Warning_Message_Transmission_Procedures + //8.9.1 + group Write_Replace_Warning{ + }//end of group Write_Replace_Warning + //8.9.2 + group PWS_Cancel{ + }//end of group PWS_Cancel + //8.9.3 + group PWS_Restart_Indication{ + }//end of group PWS_Restart_Indication + //8.9.4 + group PWS_Failure_Indication{ + }//end of group PWS_Failure_Indication + }//end of group Configuration_Transfer_Procedures + //8.10 + group NRPPa_Transport_Procedures{ + }//end of group NRPPa_Transport_Procedures + //8.11 + group Trace_Procedures{ + //8.11.1 + group Trace_Start{ + }//end of group Trace_Start + //8.11.2 + group Trace_Failure_Indication{ + }//end of group Trace_Failure_Indication + //8.11.3 + group Deactivate_Trace{ + }//end of group Deactivate_Trace + //8.11.4 + group Cell_Traffic_Trace{ + }//end of group Cell_Traffic_Trace + }//end of group Trace_Procedures + //8.12 + group Location_Reporting_Procedures{ + //8.12.1 + group Location_Reporting_Control{ + }//end of group Location_Reporting_Control + //8.12.2 + group Location_Reporting_Failure_Indication{ + }//end of group Location_Reporting_Failure_Indication + //8.12.3 + group Location_Report{ + }//end of group Location_Report + }//end of group Location_Reporting_Procedures + //8.13 + group UE_TNLA_Binding_Procedures{ + //8.13.1 + group UE_TNLA_Binding_Release{ + }//end of group UE_TNLA_Binding_Release + }//end of group UE_TNLA_Binding_Procedures + //8.14 + group UE_Radio_Capability_Management_Procedures{ + //8.14.1 + group UE_Radio_Capability_Info_Indication{ + }//end of group UE_Radio_Capability_Info_Indication + //8.14.2 + group UE_Radio_Capability_Check{ + }//end of group UE_Radio_Capability_Check + //8.14.3 + group UE_Radio_Capability_ID_Mapping{ + }//end of group UE_Radio_Capability_ID_Mapping + }//end of group UE_Radio_Capability_Management_Procedures + //8.15 + group Data_Usage_Reporting_Procedures{ + //8.15.1 + group Secondary_RAT_Data_Usage_Report{ + }//end of group Secondary_RAT_Data_Usage_Report + }//end of group Data_Usage_Reporting_Procedures + //8.16 + group RIM_Information_Transfer_Procedures{ + //8.16.1 + group Uplink_RIM_Information_Transfer{ + }//end of group Uplink_RIM_Information_Transfer + //8.16.2 + group Downlink_RIM_Information_Transfer{ + }//end of group Downlink_RIM_Information_Transfer + }//end of group RIM_Information_Transfer_Procedures + }//end of group gNB_Role + + group aMF_Role{ + //8.2 + group PDU_Session_Management_Procedures{ + //8.2.1 + group PDU_Session_Resource_Setup{ + }//end of group PDU_Session_Resource_Setup + //8.2.2 + group PDU_Session_Resource_Release{ + }//end of group PDU_Session_Resource_Release + //8.2.3 + group PDU_Session_Resource_Modify{ + }//end of group PDU_Session_Resource_Modify + //8.2.4 + group PDU_Session_Resource_Notify{ + }//end of group PDU_Session_Resource_Notify + //8.2.5 + group PDU_Session_Resource_Modify_Indication{ + }//end of group PDU_Session_Resource_Modify_Indication + }//end of group PDU_Session_Management_Procedures + //8.3 + group UE_Context_Management_Procedures{ + //8.3.1 + group Initial_Context_Setup{ + }//end of group Initial_Context_Setup + //8.3.2 + group UE_Context_Release_Request_NG_RAN_node_initiated{ + }//end of group UE_Context_Release_Request_NG_RAN_node_initiated + //8.3.3 + group UE_Context_Release_AMF_initiated{ + }//end of group UE_Context_Release_AMF_initiated + //8.3.4 + group UE_Context_Modification{ + }//end of group UE_Context_Modification + //8.3.5 + group RRC_Inactive_Transition_Report{ + }//end of group RRC_Inactive_Transition_Report + //8.3.6 + group Connection_Establishment_Indication{ + }//end of group Connection_Establishment_Indication + //8.3.7 + group AMF_CP_Relocation_Indication{ + }//end of group AMF_CP_Relocation_Indication + //8.3.8 + group RAN_CP_Relocation_Indication{ + }//end of group RAN_CP_Relocation_Indication + //8.3.9 + group Retrieve_UE_Information{ + }//end of group Retrieve_UE_Information + //8.3.10 + group UE_Information_Transfer{ + }//end of group UE_Information_Transfer + //8.3.11 + group UE_Context_Suspend{ + }//end of group UE_Context_Suspend + //8.3.12 + group UE_Context_Resume{ + }//end of group UE_Context_Resume + }//end of group UE_Context_Management_Procedures + //8.4 + group UE_Mobility_Management_Procedures{ + //8.4.1 + group Handover_Preparation{ + }//end of group Handover_Preparation + //8.4.2 + group Handover_Resource_Allocation{ + }//end of group Handover_Resource_Allocation + //8.4.3 + group Handover_Notification{ + }//end of group Handover_Notification + //8.4.4 + group Path_Switch_Request{ + }//end of group Path_Switch_Request + //8.4.5 + group Handover_Cancellation{ + }//end of group Handover_Cancellation + //8.4.6 + group Uplink_RAN_Status_Transfer{ + }//end of group Uplink_RAN_Status_Transfer + //8.4.7 + group Downlink_RAN_Status_Transfer{ + }//end of group Downlink_RAN_Status_Transfer + //8.4.8 + group Handover_Success{ + }//end of group Handover_Success + //8.4.9 + group Uplink_RAN_Early_Status_Transfer{ + }//end of group Uplink_RAN_Early_Status_Transfer + //8.4.10 + group Downlink_RAN_Early_Status_Transfer{ + }//end of group Downlink_RAN_Early_Status_Transfer + }//end of group UE_Mobility_Management_Procedures + //8.5 + group Paging_Procedures{ + //8.5.1 + group Paging{ + }//end of group Paging + }//end of group Paging_Procedures + //8.6 + group Transport_of_NAS_Messages_Procedures{ + //8.6.1 + group Initial_UE_Message{ + }//end of group Initial_UE_Message + //8.6.2 + group Downlink_NAS_Transport{ + }//end of group Downlink_NAS_Transport + //8.6.3 + group Uplink_NAS_Transport{ + }//end of group Uplink_NAS_Transport + //8.6.4 + group NAS_Non_Delivery_Indication{ + }//end of group NAS_Non_Delivery_Indication + //8.6.5 + group Rerout_NAS_Request{ + }//end of group Rerout_NAS_Request + }//end of group Transport_of_NAS_Messages_Procedures + //8.7 + group Interface_Management_Procedures{ + //8.7.1 + group NG_Setup{ + }//end of group NG_Setup + //8.7.2 + group RAN_Configuration_Update{ + }//end of group RAN_Configuration_Update + //8.7.3 + group AMF_Configuration_Update{ + }//end of group AMF_Configuration_Update + //8.7.4 + group NG_Reset{ + }//end of group NG_Reset + //8.7.5 + group Error_Indication{ + }//end of group Error_Indication + //8.7.6 + group AMF_Status_Indication{ + }//end of group AMF_Status_Indication + //8.7.7 + group Overload_Start{ + }//end of group Overload_Start + //8.7.8 + group Overload_Stop{ + }//end of group Overload_Stop + }//end of group Interface_Management_Procedures + //8.8 + group Configuration_Transfer_Procedures{ + //8.8.1 + group Uplink_RAN_Configuration_Transfer{ + }//end of group Uplink_RAN_Configuration_Transfer + //8.8.2 + group Downlink_RAN_Configuration_Transfer{ + }//end of group Downlink_RAN_Configuration_Transfer + //8.9 + group Warning_Message_Transmission_Procedures{ + }//end of group Warning_Message_Transmission_Procedures + //8.9.1 + group Write_Replace_Warning{ + }//end of group Write_Replace_Warning + //8.9.2 + group PWS_Cancel{ + }//end of group PWS_Cancel + //8.9.3 + group PWS_Restart_Indication{ + }//end of group PWS_Restart_Indication + //8.9.4 + group PWS_Failure_Indication{ + }//end of group PWS_Failure_Indication + }//end of group Configuration_Transfer_Procedures + //8.10 + group NRPPa_Transport_Procedures{ + }//end of group NRPPa_Transport_Procedures + //8.11 + group Trace_Procedures{ + //8.11.1 + group Trace_Start{ + }//end of group Trace_Start + //8.11.2 + group Trace_Failure_Indication{ + }//end of group Trace_Failure_Indication + //8.11.3 + group Deactivate_Trace{ + }//end of group Deactivate_Trace + //8.11.4 + group Cell_Traffic_Trace{ + }//end of group Cell_Traffic_Trace + }//end of group Trace_Procedures + //8.12 + group Location_Reporting_Procedures{ + //8.12.1 + group Location_Reporting_Control{ + }//end of group Location_Reporting_Control + //8.12.2 + group Location_Reporting_Failure_Indication{ + }//end of group Location_Reporting_Failure_Indication + //8.12.3 + group Location_Report{ + }//end of group Location_Report + }//end of group Location_Reporting_Procedures + //8.13 + group UE_TNLA_Binding_Procedures{ + //8.13.1 + group UE_TNLA_Binding_Release{ + }//end of group UE_TNLA_Binding_Release + }//end of group UE_TNLA_Binding_Procedures + //8.14 + group UE_Radio_Capability_Management_Procedures{ + //8.14.1 + group UE_Radio_Capability_Info_Indication{ + }//end of group UE_Radio_Capability_Info_Indication + //8.14.2 + group UE_Radio_Capability_Check{ + }//end of group UE_Radio_Capability_Check + //8.14.3 + group UE_Radio_Capability_ID_Mapping{ + }//end of group UE_Radio_Capability_ID_Mapping + }//end of group UE_Radio_Capability_Management_Procedures + //8.15 + group Data_Usage_Reporting_Procedures{ + //8.15.1 + group Secondary_RAT_Data_Usage_Report{ + }//end of group Secondary_RAT_Data_Usage_Report + }//end of group Data_Usage_Reporting_Procedures + //8.16 + group RIM_Information_Transfer_Procedures{ + //8.16.1 + group Uplink_RIM_Information_Transfer{ + }//end of group Uplink_RIM_Information_Transfer + //8.16.2 + group Downlink_RIM_Information_Transfer{ + }//end of group Downlink_RIM_Information_Transfer + }//end of group RIM_Information_Transfer_Procedures + }//end of group aMF_Role - } // End of testcase TC_NGAP_gNB_SetupRequest_01 -} +}//end of module NGAP_TestCases diff --git a/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn index 1dee327..6984ad0 100644 --- a/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn @@ -1,14 +1,14 @@ /** - * @author ETSI / - * @version $URL:$ - * $Id:$ - * @desc This module provides test component configurations for NGAP 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 / 3GPP TS - */ +* @author ETSI / TTF033 +* @version $URL$ +* $Id$ +* @desc This module provides test configuration description for NGAP 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 +*/ module NGAP_TestConfiguration { // LibCommon @@ -25,7 +25,7 @@ module NGAP_TestConfiguration { * @param p_NGAPComponent_mme */ function f_cf_NGAP_AMF_Up( - out NGAP p_NGAPComponent_amf + out NGAP p_NGAPComponent_amf ) runs on NGAP system TestAdapter { //Variables var FncRetCode v_ret := e_success; @@ -38,7 +38,7 @@ module NGAP_TestConfiguration { // Connect client sync port connect(p_NGAPComponent_amf:syncPort, self:syncPort) ; //Map - map(p_NGAPComponent_amf:N2_gNBaMF_P, system:NGAP_AMF);// NGAP Init test Configuration + map(p_NGAPComponent_amf:N2_gNBaMF_P, system:NGAP_AMF); activate(a_mtc_shutdown()); @@ -63,7 +63,7 @@ module NGAP_TestConfiguration { // Connect client sync port connect(p_NGAPComponent_gnb:syncPort, self:syncPort) ; //Map - map(p_NGAPComponent_gnb:N2_gNBaMF_P, system:NGAP_gNB_1);// NGAP Init test Configuration + map(p_NGAPComponent_gnb:N2_gNBaMF_P, system:NGAP_gNB_1); activate(a_mtc_shutdown()); @@ -92,8 +92,8 @@ module NGAP_TestConfiguration { connect(p_NGAPComponent_gnb2:syncPort, self:syncPort) ; //Map - map(p_NGAPComponent_gnb1:N2_gNBaMF_P, system:NGAP_gNB_1);// NGAP Init test Configuration - map(p_NGAPComponent_gnb2:N2_gNBaMF_P, system:NGAP_gNB_2);// NGAP Init test Configuration + map(p_NGAPComponent_gnb1:N2_gNBaMF_P, system:NGAP_gNB_1); + map(p_NGAPComponent_gnb2:N2_gNBaMF_P, system:NGAP_gNB_2); activate(a_mtc_shutdown()); @@ -109,7 +109,7 @@ module NGAP_TestConfiguration { * @param */ function f_cf_Down() runs on NGAP system TestAdapter { - // Deactivte all + // Deactivate all deactivate; // Unmap all //unmap; diff --git a/ttcn/AtsNGAP/NGAP_TestControl.ttcn b/ttcn/AtsNGAP/NGAP_TestControl.ttcn index 962410d..ad98684 100644 --- a/ttcn/AtsNGAP/NGAP_TestControl.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestControl.ttcn @@ -1,14 +1,14 @@ /** - * @author ETSI / - * @version $URL:$ - * $Id:$ - * @desc This module provides execution part for NGAP test cases. - * @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 / 3GPP TS - */ +* @author ETSI / TTF033 +* @version $URL$ +* $Id$ +* @desc This module provides execution part for NGAP 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 +*/ module NGAP_TestControl { // NGAP diff --git a/ttcn/AtsNGAP/NGAP_TestSystem.ttcn b/ttcn/AtsNGAP/NGAP_TestSystem.ttcn index 06e15fe..8b39a53 100644 --- a/ttcn/AtsNGAP/NGAP_TestSystem.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestSystem.ttcn @@ -1,14 +1,14 @@ -/** - * @author ETSI / STF519 - * @version $URL:$ - * $Id:$ - * @desc This module provides the types and ports used by the test component for NGAP 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 / 3GPP TS - */ + /** +* @author ETSI / TTF033 +* @version $URL$ +* $Id$ +* @desc This module provides the types and ports used by the test component for NGAP 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 +*/ module NGAP_TestSystem { // LibCommon @@ -37,6 +37,7 @@ module NGAP_TestSystem { } // End of group TestSystemInterfaces type component NGAP extends ServerSyncComp, NGAPComponent { + //component variables } // End of component NGAP -- GitLab From ff9643d0728cfc845c0738b05eac077c9b480052 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 24 Oct 2023 16:51:15 +0200 Subject: [PATCH 017/365] start of TTF033, added groups,... --- .../lib/LibNGAP_EncdecDeclarations.ttcn | 24 +- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 28 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1065 +++++++++++++---- ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn | 84 +- 4 files changed, 887 insertions(+), 314 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn index a6f82bd..17cc3eb 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -1,13 +1,23 @@ +/** +* @author ETSI / TTF033 +* @version $URL$ +* $Id$ +* @desc This module provides external function declarations. +* @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 +*/ module LibNGAP_EncdecDeclarations { import from LibNGAP_TypesAndValues all; - - external function fx_enc_ProtocolIE (ProtocolIE p) return bitstring - with {extension "prototype(convert) encode(LibNGAP_asn1)"} - - external function fx_dec_ProtocolIE (inout bitstring pdu, out ProtocolIE p) return integer - with {extension "prototype(sliding) decode(LibNGAP_asn1)"} +//TODO: if no additional type in TypesAndvalues remove + //external function fx_enc_ProtocolIE (ProtocolIE p) return bitstring + // with {extension "prototype(convert) encode(LibNGAP_codec)"} + //external function fx_dec_ProtocolIE (inout bitstring pdu, out ProtocolIE p) return integer + // with {extension "prototype(sliding) decode(LibNGAP_codec)"} -} // End of module LibNGAP_EncdecDeclarations +} // End of module LibNGAP_EncdecDeclarations \ No newline at end of file diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 3eda83d..3e7ef84 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -1,14 +1,14 @@ -/** - * @author ETSI / - * @version $URL:$ - * $Id:$ - * @desc This module provides PixitS used by the test component for NGAP 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 / 3GPP TS - */ + /** +* @author ETSI / TTF033 +* @version $URL$ +* $Id$ +* @desc This module provides PIXITS for NGAP protocol. +* @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 +*/ module LibNGAP_Pixits { // LibCommon @@ -30,7 +30,7 @@ module LibNGAP_Pixits { /** * @desc Network transportation layer setting */ - group NGAP_Pixit_Parameters { + group LibNGAP_Pixit_Parameters { /** * @desc boolean (This is an operator option, not a protocol option), True, if IPv6 addresses are used @@ -42,12 +42,12 @@ module LibNGAP_Pixits { */ modulepar TransportProtocol PX_NGAP_TRANSPORT_PROTOCOL := SCTP_E; - } // End of group NGAP_Pixit_Parameters + } // End of group LibNGAP_Pixit_Parameters /** * @desc Network transportation layer timers */ - group NGAP_Timers { + group LibNGAP_Timers { /** @desc float for TWait default value for waiting an operator action */ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 68e95f8..baa42c3 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1,267 +1,838 @@ /** - * @author ETSI / - * @version $URL:$ - * $Id:$ - * @desc This module provides Lib NGAP Templates used by the test component for NGAP tests. + * @author ETSI / TTF033 + * @version $URL$ + * $Id$ + * @desc This module provides templates for NGAP protocol. * @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 + * @see ETSI TS 138 413 / 3GPP TS 38.413 version 16.12 Release 16 */ -module LibNGAP_Templates { - - // LibCommon - import from LibCommon_BasicTypesAndValues all; - import from LibCommon_DataStrings all; - - // LibNGAP - import from NGAP_Constants language "ASN.1:2002" all; - import from NGAP_CommonDataTypes language "ASN.1:2002" all; - import from NGAP_IEs language "ASN.1:2002" all; - import from NGAP_PDU_Contents language "ASN.1:2002" all; - import from NGAP_PDU_Descriptions language "ASN.1:2002" all; - import from NGAP_Containers language "ASN.1:2002" all; - - import from LibNGAP_TypesAndValues all; - import from LibNGAP_Pixits all; - - group g_NGAP { +module LibNGAP_Templates { - group g_NGAP_PDU { - - /** - * @desc Send template for NGAP PDU with InitiatingMessage payload - * @param p_procedureCode Procedure code - * @param p_value Message value according to the Procedure code - * @see ETSI TS + // LibCommon + import from LibCommon_BasicTypesAndValues all; + import from LibCommon_DataStrings all; + + // LibNGAP + import from NGAP_Constants language "ASN.1:2002" all; + import from NGAP_CommonDataTypes language "ASN.1:2002" all; + import from NGAP_IEs language "ASN.1:2002" all; + import from NGAP_PDU_Contents language "ASN.1:2002" all; + import from NGAP_PDU_Descriptions language "ASN.1:2002" all; + import from NGAP_Containers language "ASN.1:2002" all; + + import from LibNGAP_TypesAndValues all; + import from LibNGAP_Pixits all; + + group g_NGAP { + + group g_NGAP_PDU { + + /** + * @desc Send template for NGAP PDU with InitiatingMessage payload + * @param p_procedureCode Procedure code + * @param p_value Message value according to the Procedure code + * @see ETSI TS + */ + template (value) NGAP_PDU m_initiatingMessage( + in ProcedureCode p_procedureCode, + in NGAP_CommonDataTypes.Criticality p_criticality:=reject + //in anytype p_value + ) := { + initiatingMessage := { + procedureCode := p_procedureCode, + criticality := p_criticality, + value_ := omit//p_value + } + } // End of template m_initiatingMessage + + /** + * @desc Send template for NGAP PDU with SuccessfulOutcome payload + * @param p_procedureCode Procedure code + * @param p_value Message value according to the Procedure code + * @see ETSI TS */ - template (value) NGAP_PDU m_initiatingMessage( - in ProcedureCode p_procedureCode//, - //in anytype p_value - ) := { - initiatingMessage := { - procedureCode := p_procedureCode, - criticality := reject, - value_ := omit//p_value - } - } // End of template m_initiatingMessage + template (value) NGAP_PDU m_successfulOutcome( + in ProcedureCode p_procedureCode, + in NGAP_CommonDataTypes.Criticality p_criticality:=reject + //in anytype p_value + ) := { + successfulOutcome := { + procedureCode := p_procedureCode, + criticality := p_criticality, + value_ := omit//p_value + } + } // End of template m_successfulOutcome + + /** + * @desc Send template for NGAP PDU with unsuccessfulOutcome payload + * @param p_procedureCode Procedure code + * @param p_value Message value according to the Procedure code + * @see ETSI TS + */ + template (value) NGAP_PDU m_unsuccessfulOutcome( + in ProcedureCode p_procedureCode, + in NGAP_CommonDataTypes.Criticality p_criticality:=reject + //in anytype p_value + ) := { + unsuccessfulOutcome := { + procedureCode := p_procedureCode, + criticality := p_criticality, + value_ := omit//p_value + } + } // End of template m_unsuccessfulOutcome - } // End of group g_NGAP_PDU + }//end of group g_NGAP_PDU + + //9.2 + group Message_Functional_Definition_and_Content{ + //9.2.1 + group PDU_Session_Management_Messages{ + //9.2.1.1 + group PDU_SESSION_RESOURCE_SETUP_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.1.2 + group PDU_SESSION_RESOURCE_SETUP_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.1.3 + group PDU_SESSION_RESOURCE_RELEASE_COMMAND{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.1.4 + group PDU_SESSION_RESOURCE_RELEASE_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.1.5 + group PDU_SESSION_RESOURCE_MODIFY_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.1.6 + group PDU_SESSION_RESOURCE_MODIFY_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.1.7 + group PDU_SESSION_RESOURCE_NOTIFY{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.1.8 + group PDU_SESSION_RESOURCE_MODIFY_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.1.9 + group PDU_SESSION_RESOURCE_MODIFY_CONFIRM{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end_of_group_PDU_Session_Management_Messages + + //9.2.2 + group UE_Context_Management_Messages{ + //9.2.2.1 + group INITIAL_CONTEXT_SETUP_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.2 + group INITIAL_CONTEXT_SETUP_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.3 + group INITIAL_CONTEXT_SETUP_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.4 + group UE_CONTEXT_RELEASE_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.5 + group UE_CONTEXT_RELEASE_COMMAND{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.6 + group UE_CONTEXT_RELEASE_COMPLETE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.7 + group UE_CONTEXT_MODIFICATION_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.8 + group UE_CONTEXT_MODIFICATION_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.9 + group UE_CONTEXT_MODIFICATION_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.10 + group RRC_INACTIVE_TRANSITION_REPORT{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.11 + group CONNECTION_ESTABLISHMENT_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.12 + group AMF_CP_RELOCATION_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.13 + group RAN_CP_RELOCATION_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.14 + group RETRIEVE_UE_INFORMATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.15 + group UE_INFORMATION_TRANSFER{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.16 + group UE_CONTEXT_SUSPEND_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.17 + group UE_CONTEXT_SUSPEND_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.18 + group UE_CONTEXT_SUSPEND_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.19 + group UE_CONTEXT_RESUME_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.20 + group UE_CONTEXT_RESUME_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.2.21 + group UE_CONTEXT_RESUME_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end_of_group_UE_Context_Management_Messages_ - /** - * @desc Send messages for Management procedures - */ - group Management_group { + //9.2.3 + group UE_Mobility_Management_Messages{ + //9.2.3.1 + group HANDOVER_REQUIRED{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.2 + group HANDOVER_COMMAND{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.3 + group HANDOVER_PREPARATION_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.4 + group HANDOVER_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.5 + group HANDOVER_REQUEST_ACKNOWLEDGE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.6 + group HANDOVER_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.7 + group HANDOVER_NOTIFY{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.8 + group PATH_SWITCH_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.9 + group PATH_SWITCH_REQUEST_ACKNOWLEDGE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.10 + group PATH_SWITCH_REQUEST_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.11 + group HANDOVER_CANCEL{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.12 + group HANDOVER_CANCEL_ACKNOWLEDGE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.13 + group UPLINK_RAN_STATUS_TRANSFER{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.14 + group DOWNLINK_RAN_STATUS_TRANSFER{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.15 + group HANDOVER_SUCCESS{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.16 + group UPLINK_RAN_EARLY_STATUS_TRANSFER{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.3.17 + group DOWNLINK_RAN_EARLY_STATUS_TRANSFER{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group UE_Mobility_Management_Messages - /** - * @desc Send template for InitiatingMessage message with N2_NGSETUP_REQUEST payload - * @param p_value The protocol information elements. - */ - template (value) InitiatingMessage m_n2_NGSetup_Request( - in template (value) GlobalRANNodeID p_globalRANNodeID - //in InitiatingMessage.value_ p_value - ) := { - procedureCode := id_NGSetup, - criticality := reject, - value_ := { - NGSetupRequest := { - protocolIEs := { - { - id := id_GlobalRANNodeID, - criticality := reject, - value_ := { globalRANNodeID := p_globalRANNodeID } - } - } - }} - } // End of template m_N2_NGSetup_Request - - template (value) GlobalRANNodeID m_globalRANNodeID_globalGNB_ID( - in template (value) GlobalGNB_ID p_globalGNB_ID - ) := { - globalGNB_ID := p_globalGNB_ID - } // End of template m_globalRANNodeID_globalGNB_ID - - /*template InitiatingMessage.value_ m_NGSR /*(/*in template (value) GlobalRANNodeID p_global_GNB_ID - ):=*/ //valueof(m_global_gNB_ID_IE(p_global_GNB_ID)) - - - ///* template /*NGAP_PDU_Contents.NGResetIEs*/ /*protocolIEs*/ NGAP_Containers.NGAP_PROTOCOL_IES /*ProtocolIE_Container*/ m_NgsetupReqIEs := { - //id := ?, criticality := ?, Value := ?, presence := ? - //} - - /*template NGSetupRequestIEs testies :=( - { - id := NGAP_Constants.id_GlobalRANNodeID, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.GlobalRANNodeID", - presence := NGAP_CommonDataTypes.mandatory - }, { - id := NGAP_Constants.id_RANNodeName, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.RANNodeName", - presence := NGAP_CommonDataTypes.optional_ - }, { - id := NGAP_Constants.id_SupportedTAList, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.SupportedTAList", - presence := NGAP_CommonDataTypes.mandatory - }, { - id := NGAP_Constants.id_DefaultPagingDRX, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.PagingDRX", - presence := NGAP_CommonDataTypes.mandatory - }, { - id := NGAP_Constants.id_UERetentionInformation, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.UERetentionInformation", - presence := NGAP_CommonDataTypes.optional_ - }, { - id := NGAP_Constants.id_NB_IoT_DefaultPagingDRX, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.NB_IoT_DefaultPagingDRX", - presence := NGAP_CommonDataTypes.optional_ - }, { - id := NGAP_Constants.id_Extended_RANNodeName, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.Extended_RANNodeName", - presence := NGAP_CommonDataTypes.optional_ - }, ?);*/ - -/*template NGAP_PDU_Contents.NGSetupRequest m_ngSetup2Amf := {protocolIEs := omit}*/ + //9.2.4 + group Paging_Messages{ + //9.2.4.1 + group PAGING{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group Paging_Messages + + //9.2.5 + group NAS_Transport_Messages{ + //9.2.5.1 + group INITIAL_UE_MESSAGE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.5.2 + group DOWNLINK_NAS_TRANSPORT{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.5.3 + group UPLINK_NAS_TRANSPORT{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.5.4 + group NAS_NON_DELIVERY_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.5.5 + group REROUTE_NAS_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group NAS_Transport_Messages + //9.2.6 + group Interface_Management_Messages{ + //9.2.6.1 + group NG_SETUP_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.2 + group NG_SETUP_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.3 + group NG_SETUP_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.4 + group RAN_CONFIGURATION_UPDATE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.5 + group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.6 + group RAN_CONFIGURATION_UPDATE_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.7 + group AMF_CONFIGURATION_UPDATE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.8 + group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.9 + group AMF_CONFIGURATION_UPDATE_FAILURE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.10 + group AMF_STATUS_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.11 + group NG_RESET{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.12 + group NG_RESET_ACKNOWLEDGE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.13 + group ERROR_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.14 + group OVERLOAD_START{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.6.15 + group OVERLOAD_STOP{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group Interface_Management_Messages + + //9.2.7 + group Configuration_Transfer_Messages{ + //9.2.7.1 + group UPLINK_RAN_CONFIGURATION_TRANSFER{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.7.2 + group DOWNLINK_RAN_CONFIGURATION_TRANSFER{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group Configuration_Transfer_Messages + + //9.2.8 + group Warning_Message_Transmission_Messages{ + //9.2.8.1 + group WRITE_REPLACE_WARNING_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.8.2 + group WRITE_REPLACE_WARNING_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.8.3 + group PWS_CANCEL_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.8.4 + group PWS_CANCEL_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.8.5 + group PWS_RESTART_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.8.6 + group PWS_FAILURE_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group Warning_Message_Transmission_Messages - template (value) InitiatingMessage m_n2_NGSetup_Request_withIE( - in template (value) GlobalRANNodeID p_global_GNB_ID, - in template (value) SupportedTAList p_supportedTAs, - in template (value) PagingDRX p_pagingDRXs - ) := { - procedureCode := id_NGSetup, - criticality := reject//, - //value_ := ? - //type_:={ - //m_global_gNB_ID_IE(p_global_GNB_ID)//, - //m_supportedTAList_IE(p_supportedTAs), - //m_pagingDRX_IE(p_pagingDRXs) - // } - } // End of template m_N2_NGSetup_Request - /** - * @desc Send template for N2_NGSETUP_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_n2_NGSetup_RequestIEs( - in template (value) GlobalRANNodeID p_global_GNB_ID, - in template (value) SupportedTAList p_supportedTAs, - in template (value) PagingDRX p_pagingDRXs - ) := { - m_global_gNB_ID_IE(p_global_GNB_ID), - m_supportedTAList_IE(p_supportedTAs), - m_pagingDRX_IE(p_pagingDRXs) - } // End of template m_s1_Setup_RequestIEs + //9.2.9 + group NRPPa_Transport_Messages{ + //9.2.9.1 + group DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.9.2 + group UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.9.3 + group DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.9.4 + group UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group NRPPa_Transport_Messages - /** - * @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 + //9.2.10 + group Trace_Messages{ + //9.2.10.1 + group TRACE_START{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.10.2 + group TRACE_FAILURE_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.10.3 + group DEACTIVATE_TRACE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.10.4 + group CELL_TRAFFIC_TRACE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group Trace_Messages - /** - * @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 - } //End of group Management_group - - } // End of group g_NGAP - - group g_NGAP_IEs{ - - /** - * @desc Send template for Global eNB ID protocol IE - * @param p_global_ENB_ID The Global eNB ID value - */ - template (value) ProtocolIE m_global_gNB_ID_IE( - in template (value) GlobalRANNodeID p_value - ) := { - id := NGAP_Constants.id_GlobalRANNodeID, - criticality := reject, - IE:={ value_ :=omit, - globalRANNodeID := /*valueof*/p_value, - globalGNB_ID := omit, - rANNodeName := omit, - supportedTAList := omit, - defaultPagingDRX := omit, - uERetentionInformation := omit, - nB_IoT_DefaultPagingDRX := omit, - extended_RANNodeName := omit - } - //value_ := { GlobalGNB_ID := valueof(p_global_GNB_ID) } - } // End of template m_global_gNB_ID_IE - - template GlobalRANNodeID m_granID := { + //9.2.11 + group Location_Reporting_Messages{ + //9.2.11.1 + group LOCATION_REPORTING_CONTROL{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.11.2 + group LOCATION_REPORTING_FAILURE_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.11.3 + group LOCATION_REPORT{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group Location_Reporting_Messages - globalGNB_ID := { - pLMNIdentity := '010001'O, - gNB_ID :={ gNB_ID:='0000000000000000000000'B}, - iE_Extensions := omit - - } - } //End of template granID - - /** - * @desc Send template for SupportedTAs protocol IE - * @param p_value The SupportedTAs value. - */ - template (value) ProtocolIE m_supportedTAList_IE( - in template (value) SupportedTAList p_value - ) := { - id := NGAP_Constants.id_SupportedTAList, - criticality := reject, - IE:={supportedTAList := valueof(p_value)} - //value_ := {SupportedTAList := valueof(p_value)} - } // End of template m_supportedTAs_IE - - /** - * @desc Send template for PagingDRX protocol IE - * @param p_value The PagingDRX value. - */ - template (value) ProtocolIE m_pagingDRX_IE( - in template (value) PagingDRX p_value - ) := { - id := NGAP_Constants.id_PagingDRX, - criticality := ignore, - IE:={defaultPagingDRX := valueof(p_value)} - //value_ := {PagingDRX := valueof(p_value) } - } // End of template m_pagingDRX_IE + //9.2.12 + group UE_TNLA_Binding_Messages{ + //9.2.12.1 + group UE_TNLA_BINDING_RELEASE_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group UE_TNLA_Binding_Messages + + //9.2.13 + group UE_Radio_Capability_Management_Messages{ + //9.2.13.1 + group UE_RADIO_CAPABILITY_INFO_INDICATION{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.13.2 + group UE_RADIO_CAPABILITY_CHECK_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.13.3 + group UE_RADIO_CAPABILITY_CHECK_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.13.4 + group UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.13.5 + group UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group UE_Radio_Capability_Management_Messages + + //9.2.14 + group Data_Usage_Reporting_Messages{ + //9.2.14.1 + group SECONDARY_RAT_DATA_USAGE_REPORT{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group Data_Usage_Reporting_Messages + + //9.2.15 + group RIM_Information_Transfer_Messages{ + //9.2.15.1 + group UPLINK_RIM_INFORMATION_TRANSFER{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + //9.2.15.2 + group DOWNLINK_RIM_INFORMATION_TRANSFER{ + group Send{/*m_*/ + } + group Receive{/*mw_*/ + } + } + }//end of group RIM_Information_Transfer_Messages + + }//end of group Message_Functional_Definition_and_Content + group Information_elements{ + group Send{/*m_ie_*/ + } + group Receive{/*mw_ie_*/ + } + }//end of group Informtion_elements - } // End of group + }//end of group g_NGAP - /** - * @desc Type functions - */ - group functionsForTemplates { + group Functions_For_Templates{ + }//end of group functionsForTemplates - } // End of group functionsForTemplates - -} // End of module LibNGAP_Templates -with { -extension "anytype NGAP_PROTOCOL_IES" -extension "anytype NGSetupRequestIEs" -extension "anytype RecordOf_ProtocolIE" -} +}// End of module LibNGAP_Templates + diff --git a/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn b/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn index 0ca43fa..d1ddba3 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn @@ -1,63 +1,55 @@ /** - * @author ETSI / STF519 + * @author ETSI / TTF033 * @version $URL$ * $Id$ - * @desc Module containing types and values for S1AP Protocol + * @desc This module provides TypesAndValues for NGAP protocol. * @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 + * @see ETSI TS 138 413 / 3GPP TS 38.413 version 16.12 Release 16 */ module LibNGAP_TypesAndValues { - // LibNGAPAP + // LibNGAP import from NGAP_IEs language "ASN.1:2002" all; import from NGAP_PDU_Contents language "ASN.1:2002" all; import from NGAP_PDU_Descriptions language "ASN.1:2002" all; - - //type /*NGAP_PDU_Descriptions.*/InitiatingMessage InitiatingMessage { - // integer procedureCode , - // enumerated { - // reject, ignore, notify - // } criticality, - // RecordOf_ProtocolIE value_ - //} - - type set NGAPIEs{ - anytype value_ optional, - GlobalRANNodeID globalRANNodeID optional, - GlobalGNB_ID globalGNB_ID optional, - RANNodeName rANNodeName optional, - SupportedTAList supportedTAList optional, - PagingDRX defaultPagingDRX optional, - UERetentionInformation uERetentionInformation optional, - NB_IoT_DefaultPagingDRX nB_IoT_DefaultPagingDRX optional, - Extended_RANNodeName extended_RANNodeName optional - } - - /** - * @desc This data structure redefines ASN.1 ProtocolIE-Field data structure die to parameterization limitation of TTCN-3 tools - * @member id Protocol Information Element identifier - * @member criticality Criticality value attached to this IE - * @member value_ Value of this IE - * @see ETSI TS 136 413 Clause 9.1 Message Functional Definition and Content - */ - type record ProtocolIE { - integer id (0 .. 65535), - enumerated { - reject, ignore, notify - } criticality, - //anytype value_ - NGAPIEs IE - } - - /** - * @desc List of ProtocolIEs - */ - type set of ProtocolIE RecordOf_ProtocolIE; +//TODO: Remove!!! +// type set NGAPIEs{ +// anytype value_ optional, +// GlobalRANNodeID globalRANNodeID optional, +// GlobalGNB_ID globalGNB_ID optional, +// RANNodeName rANNodeName optional, +// SupportedTAList supportedTAList optional, +// PagingDRX defaultPagingDRX optional, +// UERetentionInformation uERetentionInformation optional, +// NB_IoT_DefaultPagingDRX nB_IoT_DefaultPagingDRX optional, +// Extended_RANNodeName extended_RANNodeName optional +// } +// +// /** +// * @desc This data structure redefines ASN.1 ProtocolIE-Field data structure die to parameterization limitation of TTCN-3 tools +// * @member id Protocol Information Element identifier +// * @member criticality Criticality value attached to this IE +// * @member value_ Value of this IE +// * @see ETSI TS 136 413 Clause 9.1 Message Functional Definition and Content +// */ +// type record ProtocolIE { +// integer id (0 .. 65535), +// enumerated { +// reject, ignore, notify +// } criticality, +// //anytype value_ +// NGAPIEs IE +// } +// +// /** +// * @desc List of ProtocolIEs +// */ +// type set of ProtocolIE RecordOf_ProtocolIE; } with { - encode "LibNGAP_asn1" + encode "LibNGAP_codec" } // End of module LibNGAP_TypesAndValues -- GitLab From 6d6b00adee4376f7ab00f57f998aeaf899d8c7f0 Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 24 Oct 2023 17:22:06 +0200 Subject: [PATCH 018/365] new TPs in section 8.4 UE Mobility Management Procedures --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 107 +++++++++++++++++++++++++ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 55 +++++++++++++ 2 files changed, 162 insertions(+) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 726b8d5..a6ec432 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -631,6 +631,113 @@ Package TP_AMF { } // End Group 8.3 UE Context Management Procedures + Group "8.4 UE Mobility Management Procedures" + { + + Group "Handover Preparation" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_01 + + Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER COMMAND with successfully handover." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a HANDOVER_REQUIRED containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Handover_Typ, + Cause, + Target_ID, + PDU_Session_Resource_List containing + PDU_SessionId, + Handover_Required_Transfer, + Source_to_Target_Transparent_Container + ; + ; + from the GNB entity + } + then { + the IUT entity sends a HANDOVER_COMMAND containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Handover_Typ, + PDU_Session_Resource_List containing + PDU_SessionId, + Handover_Command_Transfer + ; + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_MMP_01 + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_02 + + Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with IHANDOVER PREPARATION FAILURE with failed handover." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a HANDOVER_REQUIRED containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Handover_Typ, + Cause, + Target_ID, + PDU_Session_Resource_List containing + PDU_SessionId, + Handover_Required_Transfer, + Source_to_Target_Transparent_Container + ; + ; + from the GNB entity + } + then { + the IUT entity sends a HANDOVER_PREPARATION_FAILURE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_MMP_02 + + } // End Group "Handover Preparation" + + + } // End Group "8.4 UE Mobility Management Procedures" } // End of Package TP_AMF diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 0fb69c0..69d77ef 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -940,6 +940,61 @@ Package TP_GNB { } // end Group 8.3 UE Context Management Procedures + Group "8.4 UE Mobility Management Procedures" + { + + Group "Handover Preparation" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_01 + + Test objective "Verify that the IUT can send a HANDOVER REQUIRED message contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation Handover Required + } + then { + the IUT entity sends a HANDOVER_REQUIRED containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Handover_Typ, + Cause, + Target_ID, + PDU_Session_Resource_List containing + PDU_SessionId, + Handover_Required_Transfer, + Source_to_Target_Transparent_Container + ; + ; + to the AMF entity + } + + } + + } // end TP TP_NGAP_GNB_MMP_01 + + + } // End Group "Handover Preparation" + + + } // End Group "8.4 UE Mobility Management Procedures" + Group "8.6 Initial UE message" { import all from Ngap_Common; -- GitLab From ceeed28ac4c171723e87dbf8dd18cfbeab592f47 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 24 Oct 2023 18:19:28 +0200 Subject: [PATCH 019/365] start of TTF033, added groups,... --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 35 +++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index baa42c3..324f73a 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -824,6 +824,41 @@ module LibNGAP_Templates { group Information_elements{ group Send{/*m_ie_*/ + + template GlobalRANNodeID m_ie_gRanNodeID := { + + globalGNB_ID := { + pLMNIdentity := '010001'O, + gNB_ID := {gNB_ID:='0000000000000000000000'B}, + iE_Extensions := omit + } + }//end of template m_ie_gRanNodeID + + template SupportedTAList m_ie_supportedTAList:= { + { + tAC := '000001'O, + broadcastPLMNList := { + { + pLMNIdentity := '000101'O, + tAISliceSupportList := { + { + s_NSSAI := { + sST := '00'O, + sD := '000000'O, + iE_Extensions := omit + }, + iE_Extensions :=omit + } + }, + iE_Extensions :=omit + } + }, + iE_Extensions :=omit + } + }//end of template m_ie_supportedTAList + + template PagingDRX m_ie_defaultPagingDRX (PagingDRX p_drx:=v256):= p_drx; + } group Receive{/*mw_ie_*/ } -- GitLab From 15b637554174a85ece8a827bf640ad6f46ebc6ce Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 10:17:55 +0200 Subject: [PATCH 020/365] added m_n2_NGSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 33 +++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 324f73a..fd3d834 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -484,6 +484,39 @@ module LibNGAP_Templates { //9.2.6.1 group NG_SETUP_REQUEST{ group Send{/*m_*/ + + template (value) InitiatingMessage m_n2_NGSetupRequest( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) SupportedTAList p_supportedTAs, + in template (value) PagingDRX p_pagingDRX + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupRequest := { + protocolIEs := { + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { globalRANNodeID := p_globalRANNodeID } + }, + { + id := id_SupportedTAList, + criticality := reject, + value_ := { supportedTAList := p_supportedTAs } + + }, + { + id := id_DefaultPagingDRX, + criticality := ignore, + value_ := { pagingDRX := p_pagingDRX + } + } + } + } + } + }//end of template m_n2_NGSetupRequest + } group Receive{/*mw_*/ } -- GitLab From 9a53737de3a2ea9b21dc68f54363cc914022a2d3 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 11:59:15 +0200 Subject: [PATCH 021/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 35 +++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index fd3d834..0cbd00e 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -95,6 +95,41 @@ module LibNGAP_Templates { group Send{/*m_*/ } group Receive{/*mw_*/ + + template (value) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( + //in template (value) GlobalRANNodeID p_globalRANNodeID, + //in template (value) SupportedTAList p_supportedTAs, + //in template (value) PagingDRX p_pagingDRX + ) := { + procedureCode := id_PDUSessionResourceSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetup := { + protocolIEs := { + /*{ + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { globalRANNodeID := p_globalRANNodeID } + }, + { + id := id_SupportedTAList, + criticality := reject, + value_ := { supportedTAList := p_supportedTAs } + + }, + { + id := id_DefaultPagingDRX, + criticality := ignore, + value_ := { pagingDRX := p_pagingDRX + },*/ + ? + } + } + } + } + }//end of template mw_n2_PDUSessionResourceSetupRequest + + } } //9.2.1.2 -- GitLab From 4c87cafc6e840124102caf665f1bc6551d010c16 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 25 Oct 2023 11:59:33 +0200 Subject: [PATCH 022/365] improve TPs concretize PDU session list structure. add TP_NGAP_GNB_CMP_09 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 104 ++++++++++++++++++++------ 1 file changed, 80 insertions(+), 24 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 69d77ef..a762f9d 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -563,10 +563,12 @@ Package TP_GNB { RAN_UE_NGAP_ID, GUAMI, PDU_Session_Resource_Setup_Request_List containing - PDU_SessionId, - S_NSSAI, - PDU_Session_Resource_Setup_Request_Transfer; - , + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer + ; + ;, Allowed_NSSAI, UE_Security_Capabilities, Security_Key @@ -612,10 +614,12 @@ Package TP_GNB { RAN_UE_NGAP_ID, GUAMI, PDU_Session_Resource_Setup_Request_List containing - PDU_SessionId, - S_NSSAI, - PDU_Session_Resource_Setup_Request_Transfer; - , + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer + ; + ;, Allowed_NSSAI, UE_Security_Capabilities, Security_Key @@ -627,7 +631,7 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Failed_to_Setup_List containing - PDU_SessionId, + PDU_SessionId indicating value PX_PDU_ID, PDU_Session_Resource_Setup_Unsuccessful_Transfer; ; to the AMF entity @@ -645,7 +649,7 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_07 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND that contains mandatory IEs and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.3" @@ -662,10 +666,10 @@ Package TP_GNB { ensure that { when { the IUT entity receives a UE_CONTEXT_RELEASE_COMMAND containing - CHOICE_UE_NGAP_IDs containing // TODO: check this list - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - AMF_UE_NGAP_ID + CHOICE_UE_NGAP_IDs containing + UE_NGAP_ID_pair containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID ; ; from the AMF entity @@ -675,8 +679,10 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_List containing - PDU_SessionId, - PDU_Session_Resource_Release_Response_Transfer; + PDU_Session_Resource_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Release_Response_Transfer + ; ; to the AMF entity } @@ -684,6 +690,50 @@ Package TP_GNB { } // end TP_NGAP_GNB_CMP_07 + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_09 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND where both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE are not available and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.3" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_RELEASE_COMMAND containing + CHOICE_UE_NGAP_IDs containing + AMF_UE_NGAP_ID containing + AMF_UE_NGAP_ID + ; + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_RELEASE_COMPLETE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_List containing + PDU_Session_Resource_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Release_Response_Transfer + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_09 + } // End Group "UE Context Release (AMF initiated)" Group "UE Context Modification" @@ -883,8 +933,10 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Suspend_List containing - PDU_SessionId, - UE_Context_Suspend_Request_Transfer; + PDU_Session_Resource_Suspend_Item containing + PDU_SessionId indicating value PX_PDU_ID, + UE_Context_Suspend_Request_Transfer + ; ; to the AMF entity } @@ -927,8 +979,10 @@ Package TP_GNB { RAN_UE_NGAP_ID, RRC_Resume_Cause, PDU_Session_Resource_Resume_List containing - PDU_SessionId, - UE_Context_Resume_Request_Transfer; + PDU_Session_Resource_Suspend_Item containing + PDU_SessionId indicating value PX_PDU_ID, + UE_Context_Resume_Request_Transfer + ; ; to the AMF entity } @@ -977,11 +1031,13 @@ Package TP_GNB { Cause, Target_ID, PDU_Session_Resource_List containing - PDU_SessionId, - Handover_Required_Transfer, - Source_to_Target_Transparent_Container + PDU_Session_Resource_Item containing + PDU_SessionId, + Handover_Required_Transfer ; - ; + ;, + Source_to_Target_Transparent_Container + ; to the AMF entity } -- GitLab From e844d6dc276118bafdc03adaa4aea9cb4d87f066 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 12:01:20 +0200 Subject: [PATCH 023/365] corected error inside testtemplate --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 4853464..f77ada9 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -50,7 +50,7 @@ module NGAP_TestCases { f_cf_NGAP_gNB_Up/*aMF_Up*/(v_ngap_gnb_or_amf); // Start - v_ngap_gnb_or_amf.start(f_TC_NGAP_gNB_or_aMF_functionName_01()()); + v_ngap_gnb_or_amf.start(f_TC_NGAP_gNB_or_aMF_functionName_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); -- GitLab From 77e1de963fa03e2269a66258d9c1871a24f9c20d Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 12:04:49 +0200 Subject: [PATCH 024/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 0cbd00e..dc9dc1a 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -97,7 +97,7 @@ module LibNGAP_Templates { group Receive{/*mw_*/ template (value) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( - //in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) GlobalRANNodeID p_globalRANNodeID, //in template (value) SupportedTAList p_supportedTAs, //in template (value) PagingDRX p_pagingDRX ) := { -- GitLab From 5edda01fc9a41be9dd31cc5392dd2a04a07dc46b Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 12:06:40 +0200 Subject: [PATCH 025/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index dc9dc1a..8f59a58 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -97,7 +97,7 @@ module LibNGAP_Templates { group Receive{/*mw_*/ template (value) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( - in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) GlobalRANNodeID p_globalRANNodeID //in template (value) SupportedTAList p_supportedTAs, //in template (value) PagingDRX p_pagingDRX ) := { -- GitLab From 39e0bb31a9b7d19724c553f1d5fc504bd3c0da3c Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 25 Oct 2023 12:08:23 +0200 Subject: [PATCH 026/365] fix syntax error within TPs --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index a762f9d..f1af073 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -672,6 +672,7 @@ Package TP_GNB { RAN_UE_NGAP_ID ; ; + ; from the AMF entity } then { @@ -684,6 +685,7 @@ Package TP_GNB { PDU_Session_Resource_Release_Response_Transfer ; ; + ; to the AMF entity } } @@ -716,6 +718,7 @@ Package TP_GNB { AMF_UE_NGAP_ID ; ; + ; from the AMF entity } then { @@ -728,6 +731,7 @@ Package TP_GNB { PDU_Session_Resource_Release_Response_Transfer ; ; + ; to the AMF entity } } @@ -938,6 +942,7 @@ Package TP_GNB { UE_Context_Suspend_Request_Transfer ; ; + ; to the AMF entity } } @@ -984,6 +989,7 @@ Package TP_GNB { UE_Context_Resume_Request_Transfer ; ; + ; to the AMF entity } } -- GitLab From 89bf83762231d659a7cb9dae026352c95ea3e819 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 12:21:26 +0200 Subject: [PATCH 027/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 8f59a58..4d7000b 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -126,10 +126,7 @@ module LibNGAP_Templates { } } } - } - }//end of template mw_n2_PDUSessionResourceSetupRequest - - + }//end of template mw_n2_PDUSessionResourceSetupRequest } } //9.2.1.2 @@ -930,7 +927,7 @@ module LibNGAP_Templates { } group Receive{/*mw_ie_*/ } - }//end of group Informtion_elements + }//end of group Information_elements }//end of group g_NGAP -- GitLab From 132b357e056bbd3b14202545802341301fbadeec Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 25 Oct 2023 12:24:38 +0200 Subject: [PATCH 028/365] concretize PDU session list structure in several TPs --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 68 +++++++++++++++++--------- 1 file changed, 44 insertions(+), 24 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index a6ec432..82d4e3e 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -308,10 +308,12 @@ Package TP_AMF { RAN_UE_NGAP_ID, GUAMI, PDU_Session_Resource_Setup_Request_List containing - PDU_SessionId, - S_NSSAI, - PDU_Session_Resource_Setup_Request_Transfer; - , + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer + ; + ;, Allowed_NSSAI, UE_Security_Capabilities, Security_Key @@ -519,9 +521,12 @@ Package TP_AMF { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Suspend_List containing - PDU_SessionId, - UE_Context_Suspend_Request_Transfer; + PDU_Session_Resource_Suspend_Item containing + PDU_SessionId, + UE_Context_Suspend_Request_Transfer + ; ; + ; from the GNB entity } then { @@ -559,9 +564,12 @@ Package TP_AMF { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Suspend_List containing - PDU_SessionId, - UE_Context_Suspend_Request_Transfer; + PDU_Session_Resource_Suspend_Item containing + PDU_SessionId indicating value PX_PDU_ID, + UE_Context_Suspend_Request_Transfer + ; ; + ; from the GNB entity } then { @@ -607,9 +615,12 @@ Package TP_AMF { RAN_UE_NGAP_ID, RRC_Resume_Cause, PDU_Session_Resource_Resume_List containing - PDU_SessionId, - UE_Context_Resume_Request_Transfer; + PDU_Session_Resource_Resume_Item containing + PDU_SessionId indicating value PX_PDU_ID, + UE_Context_Resume_Request_Transfer + ; ; + ; from the GNB entity } then { @@ -617,9 +628,12 @@ Package TP_AMF { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Resume_List containing - PDU_SessionId, - UE_Context_Resume_Response_Transfer; + PDU_Session_Resource_Resume_Item containing + PDU_SessionId indicating value PX_PDU_ID, + UE_Context_Resume_Response_Transfer + ; ; + ; to the GNB entity } } @@ -665,23 +679,27 @@ Package TP_AMF { Cause, Target_ID, PDU_Session_Resource_List containing - PDU_SessionId, - Handover_Required_Transfer, - Source_to_Target_Transparent_Container + PDU_Session_Resource_Item containing + PDU_SessionId indicating value PX_PDU_ID, + Handover_Required_Transfer ; - ; + ;, + Source_to_Target_Transparent_Container + ; from the GNB entity } then { the IUT entity sends a HANDOVER_COMMAND containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Handover_Typ, - PDU_Session_Resource_List containing - PDU_SessionId, - Handover_Command_Transfer + Handover_Type, + PDU_Session_Resource_Handover_List containing + PDU_Session_Resource_Handover_Item containing + PDU_SessionId indicating value PX_PDU_ID, + Handover_Command_Transfer ; ; + ; to the GNB entity } } @@ -715,11 +733,13 @@ Package TP_AMF { Cause, Target_ID, PDU_Session_Resource_List containing - PDU_SessionId, - Handover_Required_Transfer, - Source_to_Target_Transparent_Container + PDU_Session_Resource_Item containing + PDU_SessionId, + Handover_Required_Transfer ; - ; + ;, + Source_to_Target_Transparent_Container + ; from the GNB entity } then { -- GitLab From b50ae59a8733f150dfaea2bc816d3868bc9b51c6 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 12:26:35 +0200 Subject: [PATCH 029/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 4d7000b..8a6528d 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -62,7 +62,7 @@ module LibNGAP_Templates { successfulOutcome := { procedureCode := p_procedureCode, criticality := p_criticality, - value_ := omit//p_value + value_ := ?//omit//p_value } } // End of template m_successfulOutcome @@ -80,7 +80,7 @@ module LibNGAP_Templates { unsuccessfulOutcome := { procedureCode := p_procedureCode, criticality := p_criticality, - value_ := omit//p_value + value_ := ?//omit//p_value } } // End of template m_unsuccessfulOutcome @@ -104,7 +104,7 @@ module LibNGAP_Templates { procedureCode := id_PDUSessionResourceSetup, criticality := reject, value_ := { - PDUSessionResourceSetup := { + PDUSessionResourceSetupRequest := { protocolIEs := { /*{ id := id_GlobalRANNodeID, -- GitLab From b5d3f6c71baf290dcfe3a49685ab0bfdbdc44a3d Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 25 Oct 2023 12:32:18 +0200 Subject: [PATCH 030/365] new TP in 8.4 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 65 ++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index a6ec432..6c6f49e 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -734,8 +734,73 @@ Package TP_AMF { } // end TP TP_NGAP_AMF_MMP_02 + + } // End Group "Handover Preparation" + Group "Handover Resource Allocation" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_03 + + Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with IHANDOVER PREPARATION FAILURE with failed handover." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a HANDOVER_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Handover_Typ, + Cause, + UE_Aggregate_Maximum_Bit_Rate, + UE_Security_Capabilitues + PDU_Session_Setup_Resource_List containing + PDU_Session_Setup_Resource_Item containing + PDU_SessionId, + S_NSSAI, + Handover_Request_Transfer + ; + ;, + Allowed_NSSAI, + Source_to_Target_Transparent_Container, + GUAMI + ; + from the GNB entity + } + then { + the IUT entity sends a HANDOVER_REQUEST_ACKNOWLEDGE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Admitted_List containing + PDU_Session_Resource_Admitted_Item containing + PDU_SessionId, + Handover_Request_Acknowledge_Transfer + ; + ;, + Target_to_Source_Transparent_Container + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_MMP_03 + } // End Group "Handover Resource Allocation" + } // End Group "8.4 UE Mobility Management Procedures" -- GitLab From a6d2dde9f00bb6560788f0afb251040ff636491f Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 12:36:10 +0200 Subject: [PATCH 031/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 8a6528d..48b145e 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -97,7 +97,7 @@ module LibNGAP_Templates { group Receive{/*mw_*/ template (value) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( - in template (value) GlobalRANNodeID p_globalRANNodeID + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID //in template (value) SupportedTAList p_supportedTAs, //in template (value) PagingDRX p_pagingDRX ) := { @@ -106,11 +106,11 @@ module LibNGAP_Templates { value_ := { PDUSessionResourceSetupRequest := { protocolIEs := { - /*{ - id := id_GlobalRANNodeID, + { + id := id_AMF_UE_NGAP_ID, criticality := reject, - value_ := { globalRANNodeID := p_globalRANNodeID } - }, + value_ := { amf_UE_NGAP_ID := p_amfUeNgapID } + }/*, { id := id_SupportedTAList, criticality := reject, @@ -122,7 +122,7 @@ module LibNGAP_Templates { criticality := ignore, value_ := { pagingDRX := p_pagingDRX },*/ - ? + } } } -- GitLab From 7152179848a49caa5f2e9776a9199daafae3a738 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 12:43:01 +0200 Subject: [PATCH 032/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 48b145e..e67c8f7 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -109,7 +109,7 @@ module LibNGAP_Templates { { id := id_AMF_UE_NGAP_ID, criticality := reject, - value_ := { amf_UE_NGAP_ID := p_amfUeNgapID } + value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } }/*, { id := id_SupportedTAList, -- GitLab From 874c21de819a9a8c90a8854b22d78d9a694ca567 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 12:45:41 +0200 Subject: [PATCH 033/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 73 +++++++++++++------------ 1 file changed, 37 insertions(+), 36 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index e67c8f7..3de826e 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -47,42 +47,43 @@ module LibNGAP_Templates { value_ := omit//p_value } } // End of template m_initiatingMessage - - /** - * @desc Send template for NGAP PDU with SuccessfulOutcome payload - * @param p_procedureCode Procedure code - * @param p_value Message value according to the Procedure code - * @see ETSI TS - */ - template (value) NGAP_PDU m_successfulOutcome( - in ProcedureCode p_procedureCode, - in NGAP_CommonDataTypes.Criticality p_criticality:=reject - //in anytype p_value - ) := { - successfulOutcome := { - procedureCode := p_procedureCode, - criticality := p_criticality, - value_ := ?//omit//p_value - } - } // End of template m_successfulOutcome - - /** - * @desc Send template for NGAP PDU with unsuccessfulOutcome payload - * @param p_procedureCode Procedure code - * @param p_value Message value according to the Procedure code - * @see ETSI TS - */ - template (value) NGAP_PDU m_unsuccessfulOutcome( - in ProcedureCode p_procedureCode, - in NGAP_CommonDataTypes.Criticality p_criticality:=reject - //in anytype p_value - ) := { - unsuccessfulOutcome := { - procedureCode := p_procedureCode, - criticality := p_criticality, - value_ := ?//omit//p_value - } - } // End of template m_unsuccessfulOutcome + +//TODO: check value_ not allowed anytype +// /** +// * @desc Send template for NGAP PDU with SuccessfulOutcome payload +// * @param p_procedureCode Procedure code +// * @param p_value Message value according to the Procedure code +// * @see ETSI TS +// */ +// template (value) NGAP_PDU m_successfulOutcome( +// in ProcedureCode p_procedureCode, +// in NGAP_CommonDataTypes.Criticality p_criticality:=reject +// //in anytype p_value +// ) := { +// successfulOutcome := { +// procedureCode := p_procedureCode, +// criticality := p_criticality, +// value_ := ?//omit//p_value +// } +// } // End of template m_successfulOutcome +// +// /** +// * @desc Send template for NGAP PDU with unsuccessfulOutcome payload +// * @param p_procedureCode Procedure code +// * @param p_value Message value according to the Procedure code +// * @see ETSI TS +// */ +// template (value) NGAP_PDU m_unsuccessfulOutcome( +// in ProcedureCode p_procedureCode, +// in NGAP_CommonDataTypes.Criticality p_criticality:=reject +// //in anytype p_value +// ) := { +// unsuccessfulOutcome := { +// procedureCode := p_procedureCode, +// criticality := p_criticality, +// value_ := ?//omit//p_value +// } +// } // End of template m_unsuccessfulOutcome }//end of group g_NGAP_PDU -- GitLab From 4fb3e70bcd4eb8a360fed21dad0559a515372d4f Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 25 Oct 2023 12:54:33 +0200 Subject: [PATCH 034/365] add TP for clause 8.3.3 fix TP_NGAP_AMF_CMP_08 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 48 +++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 5 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 82d4e3e..3e5bff4 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -335,7 +335,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_CMP_08 - Test objective "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND that contains mandatory IEs." + Test objective "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE." Reference "ETSI TS 138 413 [1], Clauses 8.3.3" @@ -355,12 +355,13 @@ Package TP_AMF { } then { the IUT entity sends a UE_CONTEXT_RELEASE_COMMAND containing - CHOICE_UE_NGAP_IDs containing // TODO: check this list - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - AMF_UE_NGAP_ID + CHOICE_UE_NGAP_IDs containing + UE_NGAP_ID_pair containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID ; ; + ; to the GNB entity } } @@ -368,6 +369,43 @@ Package TP_AMF { } // end TP_NGAP_AMF_CMP_08 + Test Purpose { + + TP Id TP_NGAP_AMF_CMP_11 + + Test objective "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND where both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE are not available." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.3" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO:check Initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE context release command + } + then { + the IUT entity sends a UE_CONTEXT_RELEASE_COMMAND containing + CHOICE_UE_NGAP_IDs containing + AMF_UE_NGAP_ID containing + AMF_UE_NGAP_ID + ; + ; + ; + to the GNB entity + } + } + + + } // end TP_NGAP_AMF_CMP_11 + } // End Group "UE Context Release (AMF initiated)" Group "UE Context Modification" -- GitLab From 5b1fc1169e51414acdcb4f496445148d1c25941d Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 14:08:57 +0200 Subject: [PATCH 035/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 3de826e..783d4e8 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -98,9 +98,9 @@ module LibNGAP_Templates { group Receive{/*mw_*/ template (value) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID - //in template (value) SupportedTAList p_supportedTAs, - //in template (value) PagingDRX p_pagingDRX + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, + in template (value) PDUSessionResourceSetupListSUReq p_pduSessResSetL ) := { procedureCode := id_PDUSessionResourceSetup, criticality := reject, @@ -110,19 +110,19 @@ module LibNGAP_Templates { { id := id_AMF_UE_NGAP_ID, criticality := reject, - value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } - }/*, + value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } + }, { - id := id_SupportedTAList, + id := id_RAN_UE_NGAP_ID, criticality := reject, - value_ := { supportedTAList := p_supportedTAs } + value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } }, { - id := id_DefaultPagingDRX, + id := id_PDUSessionResourceSetupListSUReq, criticality := ignore, - value_ := { pagingDRX := p_pagingDRX - },*/ + value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL + } } } -- GitLab From e01f960f8c0c9b7b86f2cbdf6cfa228ebe777ec4 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 14:11:06 +0200 Subject: [PATCH 036/365] added m_n2_PDUSessionResourceSetupRequest template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 783d4e8..7fa1c25 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -121,7 +121,7 @@ module LibNGAP_Templates { { id := id_PDUSessionResourceSetupListSUReq, criticality := ignore, - value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL + value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL} } } -- GitLab From 5cdb5edf73972d6fad1931f20712dae3fb5d7a4d Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 14:22:57 +0200 Subject: [PATCH 037/365] added m_n2_PDUSessionResourceSetupResponse template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 32 +++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 7fa1c25..7ea7258 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -133,6 +133,38 @@ module LibNGAP_Templates { //9.2.1.2 group PDU_SESSION_RESOURCE_SETUP_RESPONSE{ group Send{/*m_*/ + + template (value) SuccessfulOutcome m_n2_PDUSessionResourceSetupResponse( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, + in template (value) PDUSessionResourceSetupListSURes p_pduSessResSetL + ) := { + procedureCode := id_PDUSessionResourceSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } + + }, + { + id := id_PDUSessionResourceSetupListSUReq, + criticality := ignore, + value_ := { pDUSessionResourceSetupListSURes := p_pduSessResSetL} + } + + } + } + } + }//end of template mw_n2_PDUSessionResourceSetupResponse } group Receive{/*mw_*/ } -- GitLab From 57885f3f4b8c691802c70989a663a4b3e1bacd4b Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 25 Oct 2023 16:28:35 +0200 Subject: [PATCH 038/365] new TPs in section 8.4 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 122 ++++++++++++++++++++++++- 1 file changed, 118 insertions(+), 4 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index b36d23d..fc7a4ee 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -659,7 +659,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER COMMAND with successfully handover." Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2" + "ETSI TS 138 413 [1], Clauses 8.4.1.2" Config Id CFG_AMF_01 @@ -713,7 +713,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with IHANDOVER PREPARATION FAILURE with failed handover." Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2" + "ETSI TS 138 413 [1], Clauses 8.4.1.3" Config Id CFG_AMF_01 @@ -766,10 +766,10 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_03 - Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with IHANDOVER PREPARATION FAILURE with failed handover." + Test objective "Verify that the AMF node successfully processes a HANDOVER_REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2" + "ETSI TS 138 413 [1], Clauses 8.4.2.2" Config Id CFG_AMF_01 @@ -822,6 +822,120 @@ Package TP_AMF { } // End Group "Handover Resource Allocation" + Group "Path Switch Request" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_03 + + Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and answers with PATH SWITCH REQUEST ACKNOWLEDGE to acknowledge the path switch." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.4.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PATH_SWITCH_REQUEST containing + RAN_UE_NGAP_ID, + Source_AMF_UE_NGAP_ID, + User_Location_Information, + UE_Security_Capabilities, + PDU_Session_Resources_to_be_Switched_in_Downlink_List containing + PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing + PDU_SessionId, + Path_Switch_Request_Transfer + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a PATH_SWITCH_REQUEST_ACKNOWLEDGE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Security_Context + PDU_Session_Resource_Switched_List containing + PDU_Session_Resource_Switched_Item containing + PDU_SessionId, + Path_Switch_Request_Acknowledge_Transfer + ; + ; + ; + to the GNB entity + } + } + + } // End TP_NGAP_AMF_MMP_03 + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_04 + + Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with sam ID and answers with PATH SWITCH REQUEST FAILURE." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.4.4" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PATH_SWITCH_REQUEST containing + RAN_UE_NGAP_ID, + Source_AMF_UE_NGAP_ID, + User_Location_Information, + UE_Security_Capabilities, + PDU_Session_Resources_to_be_Switched_in_Downlink_List containing + PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing + PDU_SessionId, + Path_Switch_Request_Transfer + ;, + PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing + PDU_SessionId, + Path_Switch_Request_Transfer + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a PATH_SWITCH_REQUEST_FAILURE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Released_List containing + PDU_Session_Resource_Released_Item containing + PDU_SessionId, + Path_Switch_Request_Unsuccessful_Transfer + ; + ; + ; + to the GNB entity + } + } + + } // End TP_NGAP_AMF_MMP_04 + + } // End Group "Path Switch Request" + + } // End Group "8.4 UE Mobility Management Procedures" } // End of Package TP_AMF -- GitLab From 0b9c60409891fbb87adf5227a5ca7f7ccdf5fcfd Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 25 Oct 2023 16:33:32 +0200 Subject: [PATCH 039/365] add TP TP_NGAP_AMF_CMP_12 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 56 +++++++++++++++++++++++++- 1 file changed, 54 insertions(+), 2 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 3e5bff4..2b86f30 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -490,7 +490,7 @@ Package TP_AMF { } // End Group "Connection Establishment Indication" - Group "Connection Establishment Indication" + Group "AMF CP Relocation Indication" { import all from Ngap_Common; @@ -529,7 +529,59 @@ Package TP_AMF { } // End TP TP_NGAP_AMF_CMP_10 - } // End Group "Connection Establishment Indication" + } // End Group "AMF CP Relocation Indication" + + Group "Retrieve UE information" + { + + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_12 + + Test objective "Verify that the IUT can successfully request UE information from the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.9.2", + "ETSI TS 138 413 [1], Clauses 8.3.10.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a RETRIEVE_UE_INFORMATION containing + 5G_S_TMSI containing + AMF_Set_ID, + AMF_Pointer, + 5G_TMSI + ; + ; + from the GNB entity + } + then { + the IUT entity sends a UE_INFORMATION_TRANSFER containing + 5G_S_TMSI containing + AMF_Set_ID, + AMF_Pointer, + 5G_TMSI + ; + ; + to the GNB entity + } + + } + + } // End TP TP_NGAP_GNB_CMP_12 + + } // End Group "Retrieve UE information" Group "UE Context Suspend" { -- GitLab From ed644d5ba81accb5b139d85d585040fd934998df Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 17:10:03 +0200 Subject: [PATCH 040/365] added IE lists, IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 3241 +++++++++++++++++++++-- 1 file changed, 3039 insertions(+), 202 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 7ea7258..2500dd8 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -93,11 +93,9 @@ module LibNGAP_Templates { group PDU_Session_Management_Messages{ //9.2.1.1 group PDU_SESSION_RESOURCE_SETUP_REQUEST{ - group Send{/*m_*/ - } - group Receive{/*mw_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ - template (value) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( + template (value) InitiatingMessage m_n2_PDUSessionResourceSetupRequest( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, in template (value) PDUSessionResourceSetupListSUReq p_pduSessResSetL @@ -123,6 +121,40 @@ module LibNGAP_Templates { criticality := ignore, value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL} } + + } + } + } + }//end of template mw_n2_PDUSessionResourceSetupRequest + } + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + + template (present) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( + in template (present) AMF_UE_NGAP_ID p_amfUeNgapID, + in template (present) RAN_UE_NGAP_ID p_ranUeNgapID, + in template (present) PDUSessionResourceSetupListSUReq p_pduSessResSetL + ) := { + procedureCode := id_PDUSessionResourceSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } + + }, + { + id := id_PDUSessionResourceSetupListSUReq, + criticality := ignore, + value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL} + } } } @@ -132,7 +164,7 @@ module LibNGAP_Templates { } //9.2.1.2 group PDU_SESSION_RESOURCE_SETUP_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ template (value) SuccessfulOutcome m_n2_PDUSessionResourceSetupResponse( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, @@ -166,56 +198,88 @@ module LibNGAP_Templates { } }//end of template mw_n2_PDUSessionResourceSetupResponse } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + + template (present) SuccessfulOutcome mw_n2_PDUSessionResourceSetupResponse( + in template (present) AMF_UE_NGAP_ID p_amfUeNgapID, + in template (present) RAN_UE_NGAP_ID p_ranUeNgapID, + in template (present) PDUSessionResourceSetupListSURes p_pduSessResSetL + ) := { + procedureCode := id_PDUSessionResourceSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } + + }, + { + id := id_PDUSessionResourceSetupListSUReq, + criticality := ignore, + value_ := { pDUSessionResourceSetupListSURes := p_pduSessResSetL} + } + + } + } + } + }//end of template mw_n2_PDUSessionResourceSetupResponse } } //9.2.1.3 group PDU_SESSION_RESOURCE_RELEASE_COMMAND{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.1.4 group PDU_SESSION_RESOURCE_RELEASE_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.1.5 group PDU_SESSION_RESOURCE_MODIFY_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.1.6 group PDU_SESSION_RESOURCE_MODIFY_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.1.7 group PDU_SESSION_RESOURCE_NOTIFY{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.1.8 group PDU_SESSION_RESOURCE_MODIFY_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.1.9 group PDU_SESSION_RESOURCE_MODIFY_CONFIRM{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end_of_group_PDU_Session_Management_Messages @@ -224,149 +288,149 @@ module LibNGAP_Templates { group UE_Context_Management_Messages{ //9.2.2.1 group INITIAL_CONTEXT_SETUP_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.2 group INITIAL_CONTEXT_SETUP_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.3 group INITIAL_CONTEXT_SETUP_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.4 group UE_CONTEXT_RELEASE_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.5 group UE_CONTEXT_RELEASE_COMMAND{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.6 group UE_CONTEXT_RELEASE_COMPLETE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.7 group UE_CONTEXT_MODIFICATION_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.8 group UE_CONTEXT_MODIFICATION_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.9 group UE_CONTEXT_MODIFICATION_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.10 group RRC_INACTIVE_TRANSITION_REPORT{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.11 group CONNECTION_ESTABLISHMENT_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.12 group AMF_CP_RELOCATION_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.13 group RAN_CP_RELOCATION_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.14 group RETRIEVE_UE_INFORMATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.15 group UE_INFORMATION_TRANSFER{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.16 group UE_CONTEXT_SUSPEND_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.17 group UE_CONTEXT_SUSPEND_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.18 group UE_CONTEXT_SUSPEND_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.19 group UE_CONTEXT_RESUME_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.20 group UE_CONTEXT_RESUME_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.2.21 group UE_CONTEXT_RESUME_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end_of_group_UE_Context_Management_Messages_ @@ -375,121 +439,121 @@ module LibNGAP_Templates { group UE_Mobility_Management_Messages{ //9.2.3.1 group HANDOVER_REQUIRED{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.2 group HANDOVER_COMMAND{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.3 group HANDOVER_PREPARATION_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.4 group HANDOVER_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.5 group HANDOVER_REQUEST_ACKNOWLEDGE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.6 group HANDOVER_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.7 group HANDOVER_NOTIFY{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.8 group PATH_SWITCH_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.9 group PATH_SWITCH_REQUEST_ACKNOWLEDGE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.10 group PATH_SWITCH_REQUEST_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.11 group HANDOVER_CANCEL{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.12 group HANDOVER_CANCEL_ACKNOWLEDGE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.13 group UPLINK_RAN_STATUS_TRANSFER{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.14 group DOWNLINK_RAN_STATUS_TRANSFER{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.15 group HANDOVER_SUCCESS{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.16 group UPLINK_RAN_EARLY_STATUS_TRANSFER{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.3.17 group DOWNLINK_RAN_EARLY_STATUS_TRANSFER{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group UE_Mobility_Management_Messages @@ -498,9 +562,9 @@ module LibNGAP_Templates { group Paging_Messages{ //9.2.4.1 group PAGING{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group Paging_Messages @@ -509,37 +573,37 @@ module LibNGAP_Templates { group NAS_Transport_Messages{ //9.2.5.1 group INITIAL_UE_MESSAGE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.5.2 group DOWNLINK_NAS_TRANSPORT{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.5.3 group UPLINK_NAS_TRANSPORT{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.5.4 group NAS_NON_DELIVERY_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.5.5 group REROUTE_NAS_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group NAS_Transport_Messages @@ -548,7 +612,7 @@ module LibNGAP_Templates { group Interface_Management_Messages{ //9.2.6.1 group NG_SETUP_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ template (value) InitiatingMessage m_n2_NGSetupRequest( in template (value) GlobalRANNodeID p_globalRANNodeID, @@ -583,105 +647,105 @@ module LibNGAP_Templates { }//end of template m_n2_NGSetupRequest } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.2 group NG_SETUP_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.3 group NG_SETUP_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.4 group RAN_CONFIGURATION_UPDATE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.5 group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.6 group RAN_CONFIGURATION_UPDATE_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.7 group AMF_CONFIGURATION_UPDATE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.8 group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.9 group AMF_CONFIGURATION_UPDATE_FAILURE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.10 group AMF_STATUS_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.11 group NG_RESET{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.12 group NG_RESET_ACKNOWLEDGE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.13 group ERROR_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.14 group OVERLOAD_START{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.6.15 group OVERLOAD_STOP{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group Interface_Management_Messages @@ -690,16 +754,16 @@ module LibNGAP_Templates { group Configuration_Transfer_Messages{ //9.2.7.1 group UPLINK_RAN_CONFIGURATION_TRANSFER{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.7.2 group DOWNLINK_RAN_CONFIGURATION_TRANSFER{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group Configuration_Transfer_Messages @@ -708,44 +772,44 @@ module LibNGAP_Templates { group Warning_Message_Transmission_Messages{ //9.2.8.1 group WRITE_REPLACE_WARNING_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.8.2 group WRITE_REPLACE_WARNING_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.8.3 group PWS_CANCEL_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.8.4 group PWS_CANCEL_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.8.5 group PWS_RESTART_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.8.6 group PWS_FAILURE_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group Warning_Message_Transmission_Messages @@ -754,30 +818,30 @@ module LibNGAP_Templates { group NRPPa_Transport_Messages{ //9.2.9.1 group DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.9.2 group UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.9.3 group DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.9.4 group UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group NRPPa_Transport_Messages @@ -786,30 +850,30 @@ module LibNGAP_Templates { group Trace_Messages{ //9.2.10.1 group TRACE_START{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.10.2 group TRACE_FAILURE_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.10.3 group DEACTIVATE_TRACE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.10.4 group CELL_TRAFFIC_TRACE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group Trace_Messages @@ -818,23 +882,23 @@ module LibNGAP_Templates { group Location_Reporting_Messages{ //9.2.11.1 group LOCATION_REPORTING_CONTROL{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.11.2 group LOCATION_REPORTING_FAILURE_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.11.3 group LOCATION_REPORT{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group Location_Reporting_Messages @@ -843,9 +907,9 @@ module LibNGAP_Templates { group UE_TNLA_Binding_Messages{ //9.2.12.1 group UE_TNLA_BINDING_RELEASE_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group UE_TNLA_Binding_Messages @@ -854,37 +918,37 @@ module LibNGAP_Templates { group UE_Radio_Capability_Management_Messages{ //9.2.13.1 group UE_RADIO_CAPABILITY_INFO_INDICATION{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.13.2 group UE_RADIO_CAPABILITY_CHECK_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.13.3 group UE_RADIO_CAPABILITY_CHECK_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.13.4 group UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.13.5 group UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group UE_Radio_Capability_Management_Messages @@ -893,9 +957,9 @@ module LibNGAP_Templates { group Data_Usage_Reporting_Messages{ //9.2.14.1 group SECONDARY_RAT_DATA_USAGE_REPORT{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group Data_Usage_Reporting_Messages @@ -904,16 +968,16 @@ module LibNGAP_Templates { group RIM_Information_Transfer_Messages{ //9.2.15.1 group UPLINK_RIM_INFORMATION_TRANSFER{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } //9.2.15.2 group DOWNLINK_RIM_INFORMATION_TRANSFER{ - group Send{/*m_*/ + group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } - group Receive{/*mw_*/ + group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } } }//end of group RIM_Information_Transfer_Messages @@ -923,15 +987,1194 @@ module LibNGAP_Templates { group Information_elements{ group Send{/*m_ie_*/ + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of AdditionalDLUPTNLInformationForHOItem AdditionalDLUPTNLInformationForHOList; + // type record AdditionalDLUPTNLInformationForHOItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AdditionalDLUPTNLInformationForHOItem_ExtIEs ( + // type enumerated AdditionalQosFlowInformation { + // type record AllocationAndRetentionPriority { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllocationAndRetentionPriority_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; + // type record AllowedNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; + // type record Allowed_PNI_NPN_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; + // type integer AlternativeQoSParaSetIndex ( + // type integer AlternativeQoSParaSetNotifyIndex ( + // type record length (1 .. NGAP_Constants.maxnoofQosParaSets) of AlternativeQoSParaSetItem AlternativeQoSParaSetList; + // type record AlternativeQoSParaSetItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AlternativeQoSParaSetItem_ExtIEs (?); + // type ASNAUX.PrintableString AMFName length ( + // type ASNAUX.VisibleString AMFNameVisibleString length ( + // type ASNAUX.UTF8String AMFNameUTF8String length ( + // type union AMFPagingTarget { + // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); + // type bitstring AMFPointer length (6); + // type bitstring AMFRegionID length (8); + // type bitstring AMFSetID length (10); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationSetupItem AMF_TNLAssociationSetupList; + // type record AMF_TNLAssociationSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationSetupItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToAddItem AMF_TNLAssociationToAddList; + // type record AMF_TNLAssociationToAddItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToAddItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToRemoveItem AMF_TNLAssociationToRemoveList; + // type record AMF_TNLAssociationToRemoveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToRemoveItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; + // type record AMF_TNLAssociationToUpdateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); + + // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); + template AMF_UE_NGAP_ID m_ie_aMFUeNgapId(integer p_val:=1) := p_val; + + // type record AreaOfInterest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterest_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinAoI) of AreaOfInterestCellItem AreaOfInterestCellList; + // type record AreaOfInterestCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestCellItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAoI) of AreaOfInterestItem AreaOfInterestList; + // type record AreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRANNodeinAoI) of AreaOfInterestRANNodeItem AreaOfInterestRANNodeList; + // type record AreaOfInterestRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestRANNodeItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIinAoI) of AreaOfInterestTAIItem AreaOfInterestTAIList; + // type record AreaOfInterestTAIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestTAIItem_ExtIEs (?); + // type record AssistanceDataForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForPaging_ExtIEs ( + // type record AssistanceDataForRecommendedCells { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForRecommendedCells_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetupRequestItem AssociatedMBSQosFlowSetupRequestList; + // type record AssociatedMBSQosFlowSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetupRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetuporModifyRequestItem AssociatedMBSQosFlowSetuporModifyRequestList; + // type record AssociatedMBSQosFlowSetuporModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetuporModifyRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of AssociatedQosFlowItem AssociatedQosFlowList; + // type record AssociatedQosFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedQosFlowItem_ExtIEs ( + // type enumerated AuthenticatedIndication { + // type integer AveragingWindow ( + // type union AreaScopeOfMDT_NR { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); + // type union AreaScopeOfMDT_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofFreqforMDT) of AreaScopeOfNeighCellsItem AreaScopeOfNeighCellsList; + // type record AreaScopeOfNeighCellsItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaScopeOfNeighCellsItem_ExtIEs (?); + // type union AreaScopeOfQMC { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfQMC_ExtIEs (?); + // type record AvailableRANVisibleQoEMetrics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AvailableRANVisibleQoEMetrics_ExtIEs (?); + // type record BeamMeasurementsReportConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportConfiguration_ExtIEs (?); + // type record BeamMeasurementsReportQuantity { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportQuantity_ExtIEs (?); + // type integer BitRate ( + // type union BroadcastCancelledAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); + // type union BroadcastCompletedAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; + // type record BroadcastPLMNItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( + // type record BluetoothMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofBluetoothName) of BluetoothMeasConfigNameItem BluetoothMeasConfigNameList; + // type record BluetoothMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasConfigNameItem_ExtIEs (?); + // type enumerated BluetoothMeasConfig { + // type octetstring BluetoothName length (1 .. 248); + // type octetstring BurstArrivalTime; + // type bitstring CAG_ID length (32); + // type enumerated CancelAllWarningMessages { + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_EUTRA_Item CancelledCellsInEAI_EUTRA; + // type record CancelledCellsInEAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_NR_Item CancelledCellsInEAI_NR; + // type record CancelledCellsInEAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_EUTRA_Item CancelledCellsInTAI_EUTRA; + // type record CancelledCellsInTAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_NR_Item CancelledCellsInTAI_NR; + // type record CancelledCellsInTAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCandidateCells) of CandidateCellItem CandidateCellList; + // type record CandidateCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellItem_ExtIEs (?); + // type union CandidateCell { + // type NGAP_Containers.NGAP_PROTOCOL_IES CandidateCell_ExtIEs (?); + // type record CandidateCellID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellID_ExtIEs (?); + // type record CandidatePCI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidatePCI_ExtIEs (?); + // type union Cause { + // type NGAP_Containers.NGAP_PROTOCOL_IES Cause_ExtIEs (?); + // type enumerated CauseMisc { + // type enumerated CauseNas { + // type enumerated CauseProtocol { + // type enumerated CauseRadioNetwork { + // type enumerated CauseTransport { + // type record Cell_CAGInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Cell_CAGInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCAGSperCell) of CAG_ID CellCAGList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastEUTRA_Item CellIDBroadcastEUTRA; + // type record CellIDBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastNR_Item CellIDBroadcastNR; + // type record CellIDBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledEUTRA_Item CellIDCancelledEUTRA; + // type record CellIDCancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledNR_Item CellIDCancelledNR; + // type record CellIDCancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledNR_Item_ExtIEs (?); + // type union CellIDListForRestart { + // type NGAP_Containers.NGAP_PROTOCOL_IES CellIDListForRestart_ExtIEs (?); + // type enumerated CellSize { + // type record CellType { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellType_ExtIEs (?); + // type enumerated CEmodeBSupport_Indicator { + // type enumerated CEmodeBrestricted { + // type record CNAssistedRANTuning { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNAssistedRANTuning_ExtIEs (?); + // type integer CNsubgroupID ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of CNTypeRestrictionsForEquivalentItem CNTypeRestrictionsForEquivalent; + // type record CNTypeRestrictionsForEquivalentItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNTypeRestrictionsForEquivalentItem_ExtIEs (?); + // type enumerated CNTypeRestrictionsForServing { + // type octetstring CommonNetworkInstance; + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_EUTRA_Item CompletedCellsInEAI_EUTRA; + // type record CompletedCellsInEAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_NR_Item CompletedCellsInEAI_NR; + // type record CompletedCellsInEAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_EUTRA_Item CompletedCellsInTAI_EUTRA; + // type record CompletedCellsInTAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; + // type record CompletedCellsInTAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_NR_Item_ExtIEs (?); + // type enumerated ConcurrentWarningMessageInd { + // type enumerated ConfidentialityProtectionIndication { + // type enumerated ConfidentialityProtectionResult { + // type enumerated ConfiguredTACIndication { + // type record CoreNetworkAssistanceInformationForInactive { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CoreNetworkAssistanceInformationForInactive_ExtIEs ( + // type record COUNTValueForPDCP_SN12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); + // type record COUNTValueForPDCP_SN18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN18_ExtIEs (?); + // type octetstring CoverageEnhancementLevel; + // type union CPTransportLayerInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES CPTransportLayerInformation_ExtIEs ( + // type record CriticalityDiagnostics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofErrors) of CriticalityDiagnostics_IE_Item CriticalityDiagnostics_IE_List; + // type record CriticalityDiagnostics_IE_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_IE_Item_ExtIEs (?); + // type record CellBasedMDT_NR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_NR_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of NR_CGI CellIdListforMDT_NR; + // type record CellBasedMDT_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_EUTRA_ExtIEs (?); + // type record CellBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforQMC) of NGRAN_CGI CellIdListforQMC; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; + // type bitstring DataCodingScheme length (8); + // type enumerated DataForwardingAccepted { + // type enumerated DataForwardingNotPossible { + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; + // type record DataForwardingResponseDRBItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseDRBItem_ExtIEs (?); + // type record DAPSRequestInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSRequestInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DAPSResponseInfoItem DAPSResponseInfoList; + // type record DAPSResponseInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfoItem_ExtIEs (?); + // type record DAPSResponseInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of DataForwardingResponseERABListItem DataForwardingResponseERABList; + // type record DataForwardingResponseERABListItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseERABListItem_ExtIEs (?); + // type enumerated DelayCritical { + // type record DL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DL_CP_SecurityInformation_ExtIEs (?); + // type bitstring DL_NAS_MAC length (16); + // type enumerated DLForwarding { + // type enumerated DL_NGU_TNLInformationReused { + // type enumerated DirectForwardingPathAvailability { + // type integer DRB_ID ( + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToStatusTransferItem DRBsSubjectToStatusTransferList; + // type record DRBsSubjectToStatusTransferItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToStatusTransferItem_ExtIEs ( + // type union DRBStatusDL { + // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); + // type record DRBStatusDL12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL12_ExtIEs (?); + // type record DRBStatusDL18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL18_ExtIEs (?); + // type union DRBStatusUL { + // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusUL_ExtIEs (?); + // type record DRBStatusUL12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL12_ExtIEs (?); + // type record DRBStatusUL18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL18_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsToQosFlowsMappingItem DRBsToQosFlowsMappingList; + // type record DRBsToQosFlowsMappingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsToQosFlowsMappingItem_ExtIEs ( + // type record Dynamic5QIDescriptor { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Dynamic5QIDescriptor_ExtIEs ( + // type enumerated EarlyMeasurement { + // type record EarlyStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EarlyStatusTransfer_TransparentContainer_ExtIEs (?); + // type union ProcedureStageChoice { + // type NGAP_Containers.NGAP_PROTOCOL_IES ProcedureStageChoice_ExtIEs (?); + // type record FirstDLCount { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FirstDLCount_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToEarlyStatusTransfer_Item DRBsSubjectToEarlyStatusTransfer_List; + // type record DRBsSubjectToEarlyStatusTransfer_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToEarlyStatusTransfer_Item_ExtIEs (?); + // type enumerated EDT_Session { + // type octetstring EmergencyAreaID length (3); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; + // type record EmergencyAreaIDBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastNR_Item EmergencyAreaIDBroadcastNR; + // type record EmergencyAreaIDBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledEUTRA_Item EmergencyAreaIDCancelledEUTRA; + // type record EmergencyAreaIDCancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledNR_Item EmergencyAreaIDCancelledNR; + // type record EmergencyAreaIDCancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaID EmergencyAreaIDList; + // type record length (1 .. NGAP_Constants.maxnoofEAIforRestart) of EmergencyAreaID EmergencyAreaIDListForRestart; + // type record EmergencyFallbackIndicator { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyFallbackIndicator_ExtIEs (?); + // type enumerated EmergencyFallbackRequestIndicator { + // type enumerated EmergencyServiceTargetCN { + // type union ENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES ENB_ID_ExtIEs (?); + // type enumerated Enhanced_CoverageRestriction { + // type integer Extended_ConnectedTime (0 .. 255); + // type octetstring EN_DCSONConfigurationTransfer; + // type record EndpointIPAddressAndPort { + // type enumerated EndIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EndpointIPAddressAndPort_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of PLMNIdentity EquivalentPLMNs; + // type octetstring EPS_TAC length (2); + // type record EPS_TAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EPS_TAI_ExtIEs (?); + // type integer E_RAB_ID ( + // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of E_RABInformationItem E_RABInformationList; + // type record E_RABInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION E_RABInformationItem_ExtIEs ( + // type bitstring EUTRACellIdentity length (28); + // type record EUTRA_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinngeNB) of EUTRA_CGI EUTRA_CGIList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of EUTRA_CGI EUTRA_CGIListForWarning; + // type record EUTRA_PagingeDRXInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_PagingeDRXInformation_ExtIEs (?); + // type enumerated EUTRA_Paging_eDRX_Cycle { + // type enumerated EUTRA_Paging_Time_Window { + // type bitstring EUTRAencryptionAlgorithms length ( + // type bitstring EUTRAintegrityProtectionAlgorithms length ( + // type enumerated EventType { + // type record length (1 .. NGAP_Constants.maxnoofThresholdsForExcessPacketDelay) of ExcessPacketDelayThresholdItem ExcessPacketDelayThresholdConfiguration; + // type record ExcessPacketDelayThresholdItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExcessPacketDelayThresholdItem_ExtIEs (?); + // type enumerated ExcessPacketDelayThresholdValue { + // type integer ExpectedActivityPeriod ( + // type enumerated ExpectedHOInterval { + // type integer ExpectedIdlePeriod ( + // type record ExpectedUEActivityBehaviour { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEActivityBehaviour_ExtIEs (?); + // type record ExpectedUEBehaviour { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEBehaviour_ExtIEs (?); + // type enumerated ExpectedUEMobility { + // type record length (1 .. NGAP_Constants.maxnoofCellsUEMovingTrajectory) of ExpectedUEMovingTrajectoryItem ExpectedUEMovingTrajectory; + // type record ExpectedUEMovingTrajectoryItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEMovingTrajectoryItem_ExtIEs (?); + // type record Extended_AMFName { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_AMFName_ExtIEs (?); + // type integer ExtendedPacketDelayBudget ( + // type record Extended_RANNodeName { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_RANNodeName_ExtIEs (?); + // type record ExtendedRATRestrictionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExtendedRATRestrictionInformation_ExtIEs (?); + // type integer ExtendedRNC_ID (4096 .. 65535); + // type record length (1 .. NGAP_Constants.maxnoofExtSliceItems) of SliceSupportItem ExtendedSliceSupportList; + // type bitstring ExtendedUEIdentityIndexValue length (16); + // type union EventTrigger { + // type NGAP_Containers.NGAP_PROTOCOL_IES EventTrigger_ExtIEs (?); + // type record EventL1LoggedMDTConfig { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventL1LoggedMDTConfig_ExtIEs (?); + // type union MeasurementThresholdL1LoggedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_IES MeasurementThresholdL1LoggedMDT_ExtIEs (?); + // type record FailureIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FailureIndication_ExtIEs (?); + // type record FiveG_ProSeAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSeAuthorized_ExtIEs (?); + // type enumerated FiveGProSeDirectDiscovery { + // type enumerated FiveGProSeDirectCommunication { + // type enumerated FiveGProSeLayer2UEtoNetworkRelay { + // type enumerated FiveGProSeLayer3UEtoNetworkRelay { + // type enumerated FiveGProSeLayer2RemoteUE { + // type record FiveG_ProSePC5QoSParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSePC5QoSParameters_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of FiveGProSePC5QoSFlowItem FiveGProSePC5QoSFlowList; + // type record FiveGProSePC5QoSFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5QoSFlowItem_ExtIEs (?); + // type record FiveGProSePC5FlowBitRates { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5FlowBitRates_ExtIEs (?); + // type record FiveG_S_TMSI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_S_TMSI_ExtIEs (?); + // type octetstring FiveG_TMSI length (4); + // type integer FiveQI ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ForbiddenAreaInformation_Item ForbiddenAreaInformation; + // type record ForbiddenAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ForbiddenAreaInformation_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofForbTACs) of TAC ForbiddenTACs; + // type record FromEUTRANtoNGRAN { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromEUTRANtoNGRAN_ExtIEs (?); + // type record FromNGRANtoEUTRAN { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromNGRANtoEUTRAN_ExtIEs (?); + // type record GBR_QosInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GBR_QosInformation_ExtIEs ( + // type octetstring GlobalCable_ID; + // type record GlobalCable_ID_new { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); + // type record GlobalENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); + // type record GlobalGNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); + // type record GlobalN3IWF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); + // type record GlobalLine_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalLine_ID_ExtIEs ( + // type octetstring GlobalLineIdentity; + // type record GlobalNgENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); + + // type union GlobalRANNodeID { template GlobalRANNodeID m_ie_gRanNodeID := { - - globalGNB_ID := { - pLMNIdentity := '010001'O, - gNB_ID := {gNB_ID:='0000000000000000000000'B}, - iE_Extensions := omit + globalGNB_ID := { + pLMNIdentity := '010001'O, + gNB_ID := {gNB_ID:='0000000000000000000000'B}, + iE_Extensions := omit } }//end of template m_ie_gRanNodeID + // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( + // type record GlobalTNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTNGF_ID_ExtIEs (?); + // type record GlobalTWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTWIF_ID_ExtIEs (?); + // type record GlobalW_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); + // type union GNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); + // type octetstring GTP_TEID length (4); + // type record GTPTunnel { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); + // type record GUAMI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); + // type enumerated GUAMIType { + // type record HandoverCommandTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( + // type enumerated HandoverFlag { + // type record HandoverPreparationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverPreparationUnsuccessfulTransfer_ExtIEs (?); + // type record HandoverRequestAcknowledgeTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequestAcknowledgeTransfer_ExtIEs ( + // type record HandoverRequiredTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequiredTransfer_ExtIEs (?); + // type record HandoverResourceAllocationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverResourceAllocationUnsuccessfulTransfer_ExtIEs (?); + // type enumerated HandoverType { + // type bitstring HashedUEIdentityIndexValue length ( + // type octetstring HFCNode_ID; + // type record HFCNode_ID_new { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HFCNode_ID_new_ExtIEs (?); + // type record HOReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HOReport_ExtIEs (?); + // type integer Hysteresis (0 .. 30); + // type enumerated IAB_Authorized { + // type enumerated IAB_Supported { + // type enumerated IABNodeIndication { + // type enumerated IMSVoiceSupportIndicator { + // type integer IndexToRFSP ( + // type record InfoOnRecommendedCellsAndRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InfoOnRecommendedCellsAndRANNodesForPaging_ExtIEs (?); + // type enumerated IntegrityProtectionIndication { + // type enumerated IntegrityProtectionResult { + // type integer IntendedNumberOfPagingAttempts ( + // type bitstring InterfacesToTrace length (8); + // type record ImmediateMDTNr { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ImmediateMDTNr_ExtIEs (?); + // type record InterSystemFailureIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemFailureIndication_ExtIEs (?); + // type record IntersystemSONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONConfigurationTransfer_ExtIEs (?); + // type union IntersystemSONTransferType { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONTransferType_ExtIEs (?); + // type record IntersystemSONeNBID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONeNBID_ExtIEs (?); + // type record IntersystemSONNGRANnodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONNGRANnodeID_ExtIEs (?); + // type union IntersystemSONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformation_ExtIEs ( + // type union IntersystemSONInformationRequest { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationRequest_ExtIEs (?); + // type record IntersystemCellActivationRequest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationRequest_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI CellsToActivateList; + // type record IntersystemResourceStatusRequest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusRequest_ExtIEs (?); + // type union ReportingSystem { + // type NGAP_Containers.NGAP_PROTOCOL_IES ReportingSystem_ExtIEs (?); + // type record EUTRAN_ReportingSystemIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingSystemIEs_ExtIEs (?); + // type record NGRAN_ReportingSystemIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingSystemIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellToReportItem EUTRAN_CellToReportList; + // type record EUTRAN_CellToReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellToReportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellToReportItem NGRAN_CellToReportList; + // type record NGRAN_CellToReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellToReportItem_ExtIEs (?); + // type bitstring ReportCharacteristics length (32); + // type union ReportType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ReportType_ExtIEs (?); + // type record EventBasedReportingIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventBasedReportingIEs_ExtIEs (?); + // type integer IntersystemResourceThreshold (0 .. 100); + // type enumerated NumberOfMeasurementReportingLevels { + // type record PeriodicReportingIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PeriodicReportingIEs_ExtIEs (?); + // type enumerated ReportingPeriodicity { + // type union IntersystemSONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReply_ExtIEs (?); + // type record IntersystemCellActivationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationReply_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI ActivatedCellList; + // type record IntersystemResourceStatusReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReply_ExtIEs (?); + // type union IntersystemSONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReport_ExtIEs ( + // type record IntersystemCellStateIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellStateIndication_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NotificationCell_Item NotificationCellList; + // type record NotificationCell_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NotificationCell_Item_ExtIEs (?); + // type record IntersystemResourceStatusReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReport_ExtIEs (?); + // type union ResourceStatusReportingSystem { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResourceStatusReportingSystem_ExtIEs (?); + // type record EUTRAN_ReportingStatusIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingStatusIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellReportItem EUTRAN_CellReportList; + // type record EUTRAN_CellReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellReportItem_ExtIEs (?); + // type record EUTRAN_CompositeAvailableCapacityGroup { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CompositeAvailableCapacityGroup_ExtIEs (?); + // type record CompositeAvailableCapacity { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompositeAvailableCapacity_ExtIEs (?); + // type integer EUTRAN_NumberOfActiveUEs ( + // type record EUTRAN_RadioResourceStatus { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_RadioResourceStatus_ExtIEs (?); + // type record NGRAN_ReportingStatusIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingStatusIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellReportItem NGRAN_CellReportList; + // type record NGRAN_CellReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellReportItem_ExtIEs (?); + // type integer NGRAN_NumberOfActiveUEs ( + // type integer NGRAN_NoofRRCConnections ( + // type record NGRAN_RadioResourceStatus { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_RadioResourceStatus_ExtIEs (?); + // type record InterSystemHOReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemHOReport_ExtIEs (?); + // type union InterSystemHandoverReportType { + // type NGAP_Containers.NGAP_PROTOCOL_IES InterSystemHandoverReportType_ExtIEs (?); + // type record IntersystemUnnecessaryHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemUnnecessaryHO_ExtIEs (?); + // type octetstring LAC length (2); + // type record LAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); + // type union LastVisitedCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES LastVisitedCellInformation_ExtIEs (?); + // type record LastVisitedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedCellItem_ExtIEs (?); + // type octetstring LastVisitedEUTRANCellInformation; + // type octetstring LastVisitedGERANCellInformation; + // type record LastVisitedNGRANCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedNGRANCellInformation_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPSCellsPerPrimaryCellinUEHistoryInfo) of LastVisitedPSCellInformation LastVisitedPSCellList; + // type record LastVisitedPSCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedPSCellInformation_ExtIEs (?); + // type octetstring LastVisitedUTRANCellInformation; + // type enumerated LineType { + // type enumerated LocationReportingAdditionalInfo { + // type integer LocationReportingReferenceID ( + // type record LocationReportingRequestType { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LocationReportingRequestType_ExtIEs ( + // type record LoggedMDTNr { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LoggedMDTNr_ExtIEs ( + // type enumerated LoggingInterval { + // type enumerated LoggingDuration { + // type enumerated Links_to_log { + // type union LoggedMDTTrigger { + // type NGAP_Containers.NGAP_PROTOCOL_IES LoggedMDTTrigger_ExtIEs (?); + // type enumerated LTEM_Indication { + // type octetstring LTEUERLFReportContainer; + // type record LTEV2XServicesAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEV2XServicesAuthorized_ExtIEs (?); + // type record LTEUESidelinkAggregateMaximumBitrate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEUE_Sidelink_Aggregate_MaximumBitrates_ExtIEs (?); + // type bitstring MaskedIMEISV length (64); + // type integer MaximumDataBurstVolume ( + // type bitstring MessageIdentifier length (16); + // type enumerated MaximumIntegrityProtectedDataRate { + // type integer MBS_AreaSessionID ( + // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_DataForwardingResponseMRBItem MBS_DataForwardingResponseMRBList; + // type record MBS_DataForwardingResponseMRBItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DataForwardingResponseMRBItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_MappingandDataForwardingRequestItem MBS_MappingandDataForwardingRequestList; + // type record MBS_MappingandDataForwardingRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_MappingandDataForwardingRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of QosFlowIdentifier MBS_QoSFlowList; + // type union MRB_ProgressInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES MRB_ProgressInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of MBS_QoSFlowsToBeSetupItem MBS_QoSFlowsToBeSetupList; + // type record MBS_QoSFlowsToBeSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_QoSFlowsToBeSetupItem_ExtIEs (?); + // type union MBS_ServiceArea { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_ServiceArea_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_ServiceAreaInformationItem MBS_ServiceAreaInformationList; + // type record MBS_ServiceAreaInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformationItem_ExtIEs (?); + // type record MBS_ServiceAreaInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsforMBS) of NR_CGI MBS_ServiceAreaCellList; + // type record length (1 .. NGAP_Constants.maxnoofTAIforMBS) of TAI MBS_ServiceAreaTAIList; + // type record MBS_SessionID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionID_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionFailedtoSetupItem MBSSessionFailedtoSetupList; + // type record MBSSessionFailedtoSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionFailedtoSetupItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_SourcetoTargetItem MBS_ActiveSessionInformation_SourcetoTargetList; + // type record MBS_ActiveSessionInformation_SourcetoTargetItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_SourcetoTargetItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_TargettoSourceItem MBS_ActiveSessionInformation_TargettoSourceList; + // type record MBS_ActiveSessionInformation_TargettoSourceItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_TargettoSourceItem_ExtIEs (?); + // type record MBSSessionSetupOrModFailureTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModFailureTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupResponseItem MBSSessionSetupResponseList; + // type record MBSSessionSetupResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupResponseItem_ExtIEs (?); + // type record MBSSessionSetupOrModRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBSSessionSetupOrModRequestTransferIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMBSFSAs) of MBS_SessionFSAID MBS_SessionFSAIDList; + // type octetstring MBS_SessionFSAID length (3); + // type record MBSSessionReleaseResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionReleaseResponseTransfer_ExtIEs (?); + // type record MBSSessionSetupOrModResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModResponseTransfer_ExtIEs (?); + // type enumerated MBS_SupportIndicator { + // type union MBS_SessionTNLInfo5GC { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfo5GC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfo5GCItem MBS_SessionTNLInfo5GCList; + // type record MBS_SessionTNLInfo5GCItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfo5GCItem_ExtIEs (?); + // type union MBS_SessionTNLInfoNGRAN { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfoNGRAN_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfoNGRANItem MBS_SessionTNLInfoNGRANList; + // type record MBS_SessionTNLInfoNGRANItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfoNGRANItem_ExtIEs (?); + // type record MBS_DistributionReleaseRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionReleaseRequesTransfer_ExtIEs (?); + // type record MBS_DistributionSetupRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupRequestTransfer_ExtIEs (?); + // type record MBS_DistributionSetupResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupResponseTransfer_ExtIEs (?); + // type record MBS_DistributionSetupUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupRequestItem MBSSessionSetupRequestList; + // type record MBSSessionSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetuporModifyRequestItem MBSSessionSetuporModifyRequestList; + // type record MBSSessionSetuporModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetuporModifyRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionToReleaseItem MBSSessionToReleaseList; + // type record MBSSessionToReleaseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionToReleaseItem_ExtIEs (?); + // type enumerated MBSSessionStatus { + // type enumerated MicoAllPLMN { + // type enumerated MICOModeIndication { + // type bitstring MobilityInformation length (16); + // type record MobilityRestrictionList { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MobilityRestrictionList_ExtIEs ( + // type union MDT_AlignmentInfo { + // type NGAP_Containers.NGAP_PROTOCOL_IES MDT_AlignmentInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNList; + // type record length (0 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNModificationList; + // type record MDT_Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_ExtIEs (?); + // type record MDT_Configuration_NR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_NR_ExtIEs (?); + // type record MDT_Configuration_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_EUTRA_ExtIEs (?); + // type enumerated MDT_Activation { + // type union MDTModeNr { + // type NGAP_Containers.NGAP_PROTOCOL_IES MDTModeNr_ExtIEs (?); + // type octetstring MDTModeEutra; + // type bitstring MeasurementsToActivate length (8); + // type integer MRB_ID ( + // type record MulticastSessionActivationRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionActivationRequestTransfer_ExtIEs (?); + // type record MulticastSessionDeactivationRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionDeactivationRequestTransfer_ExtIEs (?); + // type record MulticastSessionUpdateRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES MulticastSessionUpdateRequestTransferIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPagingAreas) of MulticastGroupPagingAreaItem MulticastGroupPagingAreaList; + // type record MulticastGroupPagingAreaItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingAreaItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAI MBS_AreaTAIList; + // type record MulticastGroupPagingArea { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingArea_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEsforPaging) of UE_PagingItem UE_PagingList; + // type record UE_PagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_PagingItem_ExtIEs (?); + // type record M1Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1Configuration_ExtIEs ( + // type enumerated IncludeBeamMeasurementsIndication { + // type integer MaxNrofRS_IndexesToReport ( + // type enumerated M1ReportingTrigger { + // type record M1ThresholdEventA2 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1ThresholdEventA2_ExtIEs (?); + // type union M1ThresholdType { + // type NGAP_Containers.NGAP_PROTOCOL_IES M1ThresholdType_ExtIEs (?); + // type record M1PeriodicReporting { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1PeriodicReporting_ExtIEs ( + // type record M4Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M4Configuration_ExtIEs ( + // type enumerated M4ReportAmountMDT { + // type enumerated M4period { + // type record M5Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M5Configuration_ExtIEs ( + // type enumerated M5ReportAmountMDT { + // type enumerated M5period { + // type record M6Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M6Configuration_ExtIEs ( + // type enumerated M6ReportAmountMDT { + // type enumerated M6report_Interval { + // type record M7Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M7Configuration_ExtIEs ( + // type enumerated M7ReportAmountMDT { + // type integer M7period ( + // type record MDT_Location_Info { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Location_Info_ExtIEs (?); + // type bitstring MDT_Location_Information length (8); + // type union N3IWF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); + // type octetstring NAS_PDU; + // type octetstring NASSecurityParametersFromNGRAN; + // type enumerated NB_IoT_DefaultPagingDRX { + // type enumerated NB_IoT_PagingDRX { + // type enumerated NB_IoT_Paging_eDRXCycle { + // type enumerated NB_IoT_Paging_TimeWindow { + // type record NB_IoT_Paging_eDRXInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); + // type integer NB_IoT_UEPriority ( + // type integer NetworkInstance ( + // type enumerated NewSecurityContextInd { + // type integer NextHopChainingCount (0 .. 7); + // type enumerated NextPagingAreaScope { + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; + // type record NGAPIESupportInformationRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; + // type record NGAPIESupportInformationResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); + // type union NgENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); + // type enumerated NotifySourceNGRANNode { + // type union NGRAN_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; + // type record NGRAN_TNLAssociationToRemoveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); + // type octetstring NGRANTraceID length (8); + // type bitstring NID length (44); + // type record NonDynamic5QIDescriptor { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; + // type enumerated NotificationCause { + // type enumerated NotificationControl { + // type union NPN_AccessInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); + // type union NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); + // type union NPN_PagingAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); + // type union NPN_Support { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); + // type bitstring NRCellIdentity length (36); + // type record NR_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; + // type record NR_PagingeDRXInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); + // type enumerated NR_Paging_eDRX_Cycle { + // type enumerated NR_Paging_Time_Window { + // type bitstring NRencryptionAlgorithms length ( + // type bitstring NRintegrityProtectionAlgorithms length ( + // type octetstring NRMobilityHistoryReport; + // type octetstring NRPPa_PDU; + // type octetstring NRUERLFReportContainer; + // type record NRNTNTAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); + // type integer NumberOfBroadcasts (0 .. 65535); + // type integer NumberOfBroadcastsRequested (0 .. 65535); + // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); + // type integer NRFrequencyBand ( + // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; + // type record NRFrequencyBandItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); + // type record NRFrequencyInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); + // type integer NR_PCI ( + // type record NRV2XServicesAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); + // type enumerated VehicleUE { + // type enumerated PedestrianUE { + // type record NRUESidelinkAggregateMaximumBitrate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); + // type integer NSAG_ID ( + // type enumerated OnboardingSupport { + // type enumerated OverloadAction { + // type union OverloadResponse { + // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; + // type record OverloadStartNSSAIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); + // type integer PacketDelayBudget ( + // type record PacketErrorRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); + // type integer PacketLossRate ( + // type record PagingAssisDataforCEcapabUE { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); + // type record PagingAttemptInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); + // type integer PagingAttemptCount ( + // type enumerated PagingCause { + // type enumerated PagingCauseIndicationForVoiceService { + + // type enumerated PagingDRX { + template PagingDRX m_ie_defaultPagingDRX (PagingDRX p_drx:=v256):= p_drx; + + // type enumerated PagingOrigin { + // type enumerated PagingPriority { + // type enumerated PagingProbabilityInformation { + // type record PathSwitchRequestAcknowledgeTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( + // type record PathSwitchRequestSetupFailedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); + // type record PathSwitchRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( + // type record PathSwitchRequestUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); + // type record PC5QoSParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; + // type record PC5QoSFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); + // type record PC5FlowBitRates { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; + // type enumerated PrivacyIndicator { + // type record PDUSessionAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); + // type integer PDUSessionID (0 .. 255); + // type integer PDUSessionPairID ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; + // type record PDUSessionResourceAdmittedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; + // type record PDUSessionResourceFailedToModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; + // type record PDUSessionResourceFailedToModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; + // type record PDUSessionResourceFailedToResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; + // type record PDUSessionResourceFailedToResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; + // type record PDUSessionResourceFailedToSetupItemCxtFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; + // type record PDUSessionResourceFailedToSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; + // type record PDUSessionResourceFailedToSetupItemHOAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; + // type record PDUSessionResourceFailedToSetupItemPSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; + // type record PDUSessionResourceFailedToSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; + // type record PDUSessionResourceHandoverItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; + // type record PDUSessionResourceInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; + // type record PDUSessionResourceItemCxtRelCpl { + // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; + // type record PDUSessionResourceItemCxtRelReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; + // type record PDUSessionResourceItemHORqd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); + // type record PDUSessionResourceModifyConfirmTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); + // type record PDUSessionResourceModifyRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( + // type record PDUSessionResourceModifyResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; + // type record PDUSessionResourceModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; + // type record PDUSessionResourceModifyItemModInd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; + // type record PDUSessionResourceModifyItemModReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; + // type record PDUSessionResourceModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); + // type record PDUSessionResourceModifyUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; + // type record PDUSessionResourceNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); + // type record PDUSessionResourceNotifyReleasedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( + // type record PDUSessionResourceNotifyTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( + // type record PDUSessionResourceReleaseCommandTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; + // type record PDUSessionResourceReleasedItemNot { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; + // type record PDUSessionResourceReleasedItemPSAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; + // type record PDUSessionResourceReleasedItemPSFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; + // type record PDUSessionResourceReleasedItemRelRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); + // type record PDUSessionResourceReleaseResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; + // type record PDUSessionResourceResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; + // type record PDUSessionResourceResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; + // type record PDUSessionResourceSecondaryRATUsageItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; + // type record PDUSessionResourceSetupItemCxtReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; + // type record PDUSessionResourceSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; + // type record PDUSessionResourceSetupItemHOReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( + + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; + template PDUSessionResourceSetupListSUReq m_ie_pDUSessionResourceSetupListSUReq(in template PDUSessionResourceSetupListSUReq p_list):= p_list; + + // type record PDUSessionResourceSetupItemSUReq { + template PDUSessionResourceSetupItemSUReq m_ie_pDUSessionResourceSetupItemSUReq( + in template PDUSessionID p_pDUSessId, + in template NAS_PDU p_nASPdu:=omit, + in template S_NSSAI p_sNSSAI, + in template octetstring p_pduSessResSetReqTra + ):= { + pDUSessionID := p_pDUSessId, + pDUSessionNAS_PDU :=p_nASPdu, + s_NSSAI := p_sNSSAI, + pDUSessionResourceSetupRequestTransfer := p_pduSessResSetReqTra, + iE_Extensions:=omit + }//end of template m_ie_pDUSessionResourceSetupItemSUReq + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; + // type record PDUSessionResourceSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); + // type record PDUSessionResourceSetupRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( + // type record PDUSessionResourceSetupResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( + // type record PDUSessionResourceSetupUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; + // type record PDUSessionResourceSuspendItemSUSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; + // type record PDUSessionResourceSwitchedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; + // type record PDUSessionResourceToBeSwitchedDLItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; + // type record PDUSessionResourceToReleaseItemHOCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; + // type record PDUSessionResourceToReleaseItemRelCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); + // type enumerated PDUSessionType { + // type record PDUSessionUsageReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); + // type record PEIPSassistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); + // type integer Periodicity ( + // type bitstring PeriodicRegistrationUpdateTimer length (8); + // type octetstring PLMNIdentity length (3); + // type record PLMNAreaBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; + // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; + // type record PLMNSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( + // type record PNI_NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); + // type octetstring PortNumber length (2); + // type enumerated Pre_emptionCapability { + // type enumerated Pre_emptionVulnerability { + // type integer PriorityLevelARP (1 .. 15); + // type integer PriorityLevelQos ( + // type union PWSFailedCellIDList { + // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); + // type record QMCConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); + // type record QMCDeactivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; + // type octetstring QoEReference length (6); + // type union QosCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; + // type record QosFlowAcceptedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; + // type record QosFlowAddOrModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; + // type record QosFlowAddOrModifyResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; + // type record QosFlowFeedbackItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); + // type integer QosFlowIdentifier ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; + // type record QosFlowInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( + // type record QosFlowLevelQosParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( + // type enumerated QosMonitoringRequest { + // type integer QosMonitoringReportingFrequency ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; + // type record QosFlowWithCauseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; + // type record QosFlowModifyConfirmItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; + // type record QosFlowNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; + // type record QosFlowParametersItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( + // type record QosFlowPerTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; + // type record QosFlowPerTNLInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; + // type record QosFlowSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; + // type record QosFlowItemWithDataForwarding { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; + // type record QosFlowToBeForwardedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; + // type record QoSFlowsUsageReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); + // type enumerated Range { + // type ASNAUX.PrintableString RANNodeName length ( + // type ASNAUX.VisibleString RANNodeNameVisibleString length ( + // type ASNAUX.UTF8String RANNodeNameUTF8String length ( + // type integer RANPagingPriority (1 .. 256); + // type record RANStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); + + // type integer RAN_UE_NGAP_ID (0 .. 4294967295); + template RAN_UE_NGAP_ID m_ie_rANUeNgapId(integer p_val:=1) := p_val; + + // type enumerated RAT_Information { + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; + // type record RATRestrictions_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( + // type bitstring RATRestrictionInformation length ( + // type record RecommendedCellsForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; + // type record RecommendedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); + // type record RecommendedRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; + // type record RecommendedRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); + // type enumerated RedCapIndication { + // type enumerated RedirectionVoiceFallback { + // type record RedundantPDUSessionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( + // type enumerated RedundantQosFlowIndicator { + // type enumerated ReflectiveQosAttribute { + // type integer RelativeAMFCapacity (0 .. 255); + // type enumerated ReportArea { + // type integer RepetitionPeriod (0 .. 131071); + // type enumerated ResetAll { + // type enumerated ReportAmountMDT { + // type enumerated ReportIntervalMDT { + // type enumerated ExtendedReportIntervalMDT { + // type union ResetType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); + // type octetstring RGLevelWirelineAccessCharacteristics; + // type integer RNC_ID (0 .. 4095); + // type octetstring RoutingID; + // type octetstring RRCContainer; + // type enumerated RRCEstablishmentCause { + // type enumerated RRCInactiveTransitionReportRequest { + // type enumerated RRCState { + // type enumerated RSN { + // type record RIMInformationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); + // type record RIMInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); + // type bitstring GNBSetID length (22); + // type record ScheduledCommunicationTime { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; + // type octetstring SD length (3); + // type record SecondaryRATUsageInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); + // type record SecondaryRATDataUsageReportTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); + // type record SecurityContext { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); + // type record SecurityIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( + // type bitstring SecurityKey length (256); + // type record SecurityResult { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); + // type record SensorMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; + // type record SensorMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); + // type enumerated SensorMeasConfig { + // type union SensorNameConfig { + // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); + // type bitstring SerialNumber length (16); + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; + // type record ServedGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; + // type record ServiceAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); + // type enumerated ServiceType { + // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); + // type record SharedNGU_MulticastTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; + // type record SliceOverloadItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; + // type record SliceSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; + // type record SliceSupportQMC_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); + // type record SNPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); + // type record S_NSSAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); + // type record SONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); + // type union SONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( + // type record SONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); + // type union SONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; + // type record SuccessfulHandoverReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); + // type enumerated SONInformationRequest { + // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( + // type union SourceNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); + // type enumerated SourceOfUEActivityBehaviourInformation { + // type record SourceRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); + // type octetstring SourceToTarget_TransparentContainer; + // type record SourceToTarget_AMFInformationReroute { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); + // type enumerated SRVCCOperationPossible { + // type octetstring ConfiguredNSSAI length (128); + // type octetstring RejectedNSSAIinPLMN length (32); + // type octetstring RejectedNSSAIinTA length (32); + // type octetstring SST length (1); + + // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; template SupportedTAList m_ie_supportedTAList:= { { tAC := '000001'O, @@ -953,12 +2196,1606 @@ module LibNGAP_Templates { }, iE_Extensions :=omit } - }//end of template m_ie_supportedTAList - - template PagingDRX m_ie_defaultPagingDRX (PagingDRX p_drx:=v256):= p_drx; + }//end of template m_ie_supportedTAList + + // type record SupportedTAItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( + + // type enumerated SuspendIndicator { + // type enumerated Suspend_Request_Indication { + // type enumerated Suspend_Response_Indication { + // type integer SurvivalTime ( + // type octetstring TAC length (3); + // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; + // type record TAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; + // type record TAIBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; + // type record TAIBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; + // type record TAICancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; + // type record TAICancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; + // type record TAIListForInactiveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; + // type record TAIListForPagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; + // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; + // type record TAINSAGSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); + // type record TargeteNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); + // type record TargetHomeENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); + // type union TargetID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; + // type record TargetNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); + // type record TargetNSSAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); + // type record TargetRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); + // type record TargetRANNodeID_RIM { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); + // type record TargetRANNodeID_SON { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( + // type record TargetRNC_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); + // type octetstring TargetToSource_TransparentContainer; + // type octetstring TargettoSource_Failure_TransparentContainer; + // type enumerated TimerApproachForGUAMIRemoval { + // type octetstring TimeStamp length (4); + // type record TimeSyncAssistanceInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); + // type enumerated TimeToWait { + // type integer TimeUEStayedInCell (0 .. 4095); + // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); + // type octetstring TMGI length (6); + // type octetstring TNAP_ID; + // type union TNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); + // type integer TNLAddressWeightFactor (0 .. 255); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; + // type record TNLAssociationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); + // type enumerated TNLAssociationUsage { + // type record TooearlyIntersystemHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); + // type record TraceActivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( + // type enumerated TraceDepth { + // type integer TrafficLoadReductionIndication (1 .. 99); + // type bitstring TransportLayerAddress length ( + // type enumerated TypeOfError { + // type record TAIBasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; + // type record TAIBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; + // type record TABasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; + // type record TABasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; + // type integer Threshold_RSRP (0 .. 127); + // type integer Threshold_RSRQ (0 .. 127); + // type integer Threshold_SINR (0 .. 127); + // type enumerated TimeToTrigger { + // type octetstring TWAP_ID; + // type union TWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); + // type record TSCAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( + // type record TSCTrafficCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); + // type record UEAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; + // type record UEAppLayerMeasInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); + // type record UEAppLayerMeasConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; + // type record UE_associatedLogicalNG_connectionItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); + // type enumerated UECapabilityInfoRequest { + // type enumerated UEContextRequest { + // type record UEContextResumeRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); + // type record UEContextResumeResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); + // type record UEContextSuspendRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); + // type record UE_DifferentiationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; + // type union UEHistoryInformationFromTheUE { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); + // type union UEIdentityIndexValue { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); + // type union UE_NGAP_IDs { + // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); + // type record UE_NGAP_ID_pair { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); + // type union UEPagingIdentity { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); + // type enumerated UEPresence { + // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; + // type record UEPresenceInAreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); + // type octetstring UERadioCapability; + // type record UERadioCapabilityForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( + // type octetstring UERadioCapabilityForPagingOfNB_IoT; + // type octetstring UERadioCapabilityForPagingOfNR; + // type octetstring UERadioCapabilityForPagingOfEUTRA; + // type octetstring UERadioCapabilityID; + // type enumerated UERetentionInformation { + // type union UERLFReportContainer { + // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); + // type record UESecurityCapabilities { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; + // type record UESliceMaximumBitRateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); + // type enumerated UE_UP_CIoT_Support { + // type record UL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); + // type bitstring UL_NAS_MAC length (16); + // type bitstring UL_NAS_Count length (5); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; + // type record UL_NGU_UP_TNLModifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; + // type record UnavailableGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); + // type enumerated ULForwarding { + // type bitstring UpdateFeedback length ( + // type union UPTransportLayerInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; + // type record UPTransportLayerInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; + // type record UPTransportLayerInformationPairItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); + // type ASNAUX.VisibleString URI_address; + // type union UserLocationInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( + // type record UserLocationInformationEUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( + // type record UserLocationInformationN3IWF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( + // type record UserLocationInformationTNGF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( + // type record UserLocationInformationTWIF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( + // type union UserLocationInformationW_AGF { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( + // type record UserLocationInformationNR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( + // type record UserPlaneSecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; + // type record VolumeTimedReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); + // type union W_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); + // type octetstring WarningAreaCoordinates length (1 .. 1024); + // type union WarningAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); + // type octetstring WarningMessageContents length (1 .. 9600); + // type octetstring WarningSecurityInfo length (50); + // type octetstring WarningType length (2); + // type record WLANMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; + // type record WLANMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); + // type enumerated WLANMeasConfig { + // type octetstring WLANName length (1 .. 32); + // type record WUS_Assistance_Information { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; + // type record XnExtTLA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; + // type record XnTNLConfigurationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); } group Receive{/*mw_ie_*/ + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of AdditionalDLUPTNLInformationForHOItem AdditionalDLUPTNLInformationForHOList; + // type record AdditionalDLUPTNLInformationForHOItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AdditionalDLUPTNLInformationForHOItem_ExtIEs ( + // type enumerated AdditionalQosFlowInformation { + // type record AllocationAndRetentionPriority { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllocationAndRetentionPriority_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; + // type record AllowedNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; + // type record Allowed_PNI_NPN_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; + // type integer AlternativeQoSParaSetIndex ( + // type integer AlternativeQoSParaSetNotifyIndex ( + // type record length (1 .. NGAP_Constants.maxnoofQosParaSets) of AlternativeQoSParaSetItem AlternativeQoSParaSetList; + // type record AlternativeQoSParaSetItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AlternativeQoSParaSetItem_ExtIEs (?); + // type ASNAUX.PrintableString AMFName length ( + // type ASNAUX.VisibleString AMFNameVisibleString length ( + // type ASNAUX.UTF8String AMFNameUTF8String length ( + // type union AMFPagingTarget { + // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); + // type bitstring AMFPointer length (6); + // type bitstring AMFRegionID length (8); + // type bitstring AMFSetID length (10); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationSetupItem AMF_TNLAssociationSetupList; + // type record AMF_TNLAssociationSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationSetupItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToAddItem AMF_TNLAssociationToAddList; + // type record AMF_TNLAssociationToAddItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToAddItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToRemoveItem AMF_TNLAssociationToRemoveList; + // type record AMF_TNLAssociationToRemoveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToRemoveItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; + // type record AMF_TNLAssociationToUpdateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); + // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); + // type record AreaOfInterest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterest_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinAoI) of AreaOfInterestCellItem AreaOfInterestCellList; + // type record AreaOfInterestCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestCellItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAoI) of AreaOfInterestItem AreaOfInterestList; + // type record AreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRANNodeinAoI) of AreaOfInterestRANNodeItem AreaOfInterestRANNodeList; + // type record AreaOfInterestRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestRANNodeItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIinAoI) of AreaOfInterestTAIItem AreaOfInterestTAIList; + // type record AreaOfInterestTAIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestTAIItem_ExtIEs (?); + // type record AssistanceDataForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForPaging_ExtIEs ( + // type record AssistanceDataForRecommendedCells { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForRecommendedCells_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetupRequestItem AssociatedMBSQosFlowSetupRequestList; + // type record AssociatedMBSQosFlowSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetupRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetuporModifyRequestItem AssociatedMBSQosFlowSetuporModifyRequestList; + // type record AssociatedMBSQosFlowSetuporModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetuporModifyRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of AssociatedQosFlowItem AssociatedQosFlowList; + // type record AssociatedQosFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedQosFlowItem_ExtIEs ( + // type enumerated AuthenticatedIndication { + // type integer AveragingWindow ( + // type union AreaScopeOfMDT_NR { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); + // type union AreaScopeOfMDT_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofFreqforMDT) of AreaScopeOfNeighCellsItem AreaScopeOfNeighCellsList; + // type record AreaScopeOfNeighCellsItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaScopeOfNeighCellsItem_ExtIEs (?); + // type union AreaScopeOfQMC { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfQMC_ExtIEs (?); + // type record AvailableRANVisibleQoEMetrics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AvailableRANVisibleQoEMetrics_ExtIEs (?); + // type record BeamMeasurementsReportConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportConfiguration_ExtIEs (?); + // type record BeamMeasurementsReportQuantity { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportQuantity_ExtIEs (?); + // type integer BitRate ( + // type union BroadcastCancelledAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); + // type union BroadcastCompletedAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; + // type record BroadcastPLMNItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( + // type record BluetoothMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofBluetoothName) of BluetoothMeasConfigNameItem BluetoothMeasConfigNameList; + // type record BluetoothMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasConfigNameItem_ExtIEs (?); + // type enumerated BluetoothMeasConfig { + // type octetstring BluetoothName length (1 .. 248); + // type octetstring BurstArrivalTime; + // type bitstring CAG_ID length (32); + // type enumerated CancelAllWarningMessages { + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_EUTRA_Item CancelledCellsInEAI_EUTRA; + // type record CancelledCellsInEAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_NR_Item CancelledCellsInEAI_NR; + // type record CancelledCellsInEAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_EUTRA_Item CancelledCellsInTAI_EUTRA; + // type record CancelledCellsInTAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_NR_Item CancelledCellsInTAI_NR; + // type record CancelledCellsInTAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCandidateCells) of CandidateCellItem CandidateCellList; + // type record CandidateCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellItem_ExtIEs (?); + // type union CandidateCell { + // type NGAP_Containers.NGAP_PROTOCOL_IES CandidateCell_ExtIEs (?); + // type record CandidateCellID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellID_ExtIEs (?); + // type record CandidatePCI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidatePCI_ExtIEs (?); + // type union Cause { + // type NGAP_Containers.NGAP_PROTOCOL_IES Cause_ExtIEs (?); + // type enumerated CauseMisc { + // type enumerated CauseNas { + // type enumerated CauseProtocol { + // type enumerated CauseRadioNetwork { + // type enumerated CauseTransport { + // type record Cell_CAGInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Cell_CAGInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCAGSperCell) of CAG_ID CellCAGList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastEUTRA_Item CellIDBroadcastEUTRA; + // type record CellIDBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastNR_Item CellIDBroadcastNR; + // type record CellIDBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledEUTRA_Item CellIDCancelledEUTRA; + // type record CellIDCancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledNR_Item CellIDCancelledNR; + // type record CellIDCancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledNR_Item_ExtIEs (?); + // type union CellIDListForRestart { + // type NGAP_Containers.NGAP_PROTOCOL_IES CellIDListForRestart_ExtIEs (?); + // type enumerated CellSize { + // type record CellType { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellType_ExtIEs (?); + // type enumerated CEmodeBSupport_Indicator { + // type enumerated CEmodeBrestricted { + // type record CNAssistedRANTuning { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNAssistedRANTuning_ExtIEs (?); + // type integer CNsubgroupID ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of CNTypeRestrictionsForEquivalentItem CNTypeRestrictionsForEquivalent; + // type record CNTypeRestrictionsForEquivalentItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNTypeRestrictionsForEquivalentItem_ExtIEs (?); + // type enumerated CNTypeRestrictionsForServing { + // type octetstring CommonNetworkInstance; + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_EUTRA_Item CompletedCellsInEAI_EUTRA; + // type record CompletedCellsInEAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_NR_Item CompletedCellsInEAI_NR; + // type record CompletedCellsInEAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_EUTRA_Item CompletedCellsInTAI_EUTRA; + // type record CompletedCellsInTAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; + // type record CompletedCellsInTAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_NR_Item_ExtIEs (?); + // type enumerated ConcurrentWarningMessageInd { + // type enumerated ConfidentialityProtectionIndication { + // type enumerated ConfidentialityProtectionResult { + // type enumerated ConfiguredTACIndication { + // type record CoreNetworkAssistanceInformationForInactive { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CoreNetworkAssistanceInformationForInactive_ExtIEs ( + // type record COUNTValueForPDCP_SN12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); + // type record COUNTValueForPDCP_SN18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN18_ExtIEs (?); + // type octetstring CoverageEnhancementLevel; + // type union CPTransportLayerInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES CPTransportLayerInformation_ExtIEs ( + // type record CriticalityDiagnostics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofErrors) of CriticalityDiagnostics_IE_Item CriticalityDiagnostics_IE_List; + // type record CriticalityDiagnostics_IE_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_IE_Item_ExtIEs (?); + // type record CellBasedMDT_NR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_NR_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of NR_CGI CellIdListforMDT_NR; + // type record CellBasedMDT_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_EUTRA_ExtIEs (?); + // type record CellBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforQMC) of NGRAN_CGI CellIdListforQMC; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; + // type bitstring DataCodingScheme length (8); + // type enumerated DataForwardingAccepted { + // type enumerated DataForwardingNotPossible { + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; + // type record DataForwardingResponseDRBItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseDRBItem_ExtIEs (?); + // type record DAPSRequestInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSRequestInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DAPSResponseInfoItem DAPSResponseInfoList; + // type record DAPSResponseInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfoItem_ExtIEs (?); + // type record DAPSResponseInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of DataForwardingResponseERABListItem DataForwardingResponseERABList; + // type record DataForwardingResponseERABListItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseERABListItem_ExtIEs (?); + // type enumerated DelayCritical { + // type record DL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DL_CP_SecurityInformation_ExtIEs (?); + // type bitstring DL_NAS_MAC length (16); + // type enumerated DLForwarding { + // type enumerated DL_NGU_TNLInformationReused { + // type enumerated DirectForwardingPathAvailability { + // type integer DRB_ID ( + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToStatusTransferItem DRBsSubjectToStatusTransferList; + // type record DRBsSubjectToStatusTransferItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToStatusTransferItem_ExtIEs ( + // type union DRBStatusDL { + // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); + // type record DRBStatusDL12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL12_ExtIEs (?); + // type record DRBStatusDL18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL18_ExtIEs (?); + // type union DRBStatusUL { + // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusUL_ExtIEs (?); + // type record DRBStatusUL12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL12_ExtIEs (?); + // type record DRBStatusUL18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL18_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsToQosFlowsMappingItem DRBsToQosFlowsMappingList; + // type record DRBsToQosFlowsMappingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsToQosFlowsMappingItem_ExtIEs ( + // type record Dynamic5QIDescriptor { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Dynamic5QIDescriptor_ExtIEs ( + // type enumerated EarlyMeasurement { + // type record EarlyStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EarlyStatusTransfer_TransparentContainer_ExtIEs (?); + // type union ProcedureStageChoice { + // type NGAP_Containers.NGAP_PROTOCOL_IES ProcedureStageChoice_ExtIEs (?); + // type record FirstDLCount { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FirstDLCount_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToEarlyStatusTransfer_Item DRBsSubjectToEarlyStatusTransfer_List; + // type record DRBsSubjectToEarlyStatusTransfer_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToEarlyStatusTransfer_Item_ExtIEs (?); + // type enumerated EDT_Session { + // type octetstring EmergencyAreaID length (3); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; + // type record EmergencyAreaIDBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastNR_Item EmergencyAreaIDBroadcastNR; + // type record EmergencyAreaIDBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledEUTRA_Item EmergencyAreaIDCancelledEUTRA; + // type record EmergencyAreaIDCancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledNR_Item EmergencyAreaIDCancelledNR; + // type record EmergencyAreaIDCancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaID EmergencyAreaIDList; + // type record length (1 .. NGAP_Constants.maxnoofEAIforRestart) of EmergencyAreaID EmergencyAreaIDListForRestart; + // type record EmergencyFallbackIndicator { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyFallbackIndicator_ExtIEs (?); + // type enumerated EmergencyFallbackRequestIndicator { + // type enumerated EmergencyServiceTargetCN { + // type union ENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES ENB_ID_ExtIEs (?); + // type enumerated Enhanced_CoverageRestriction { + // type integer Extended_ConnectedTime (0 .. 255); + // type octetstring EN_DCSONConfigurationTransfer; + // type record EndpointIPAddressAndPort { + // type enumerated EndIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EndpointIPAddressAndPort_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of PLMNIdentity EquivalentPLMNs; + // type octetstring EPS_TAC length (2); + // type record EPS_TAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EPS_TAI_ExtIEs (?); + // type integer E_RAB_ID ( + // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of E_RABInformationItem E_RABInformationList; + // type record E_RABInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION E_RABInformationItem_ExtIEs ( + // type bitstring EUTRACellIdentity length (28); + // type record EUTRA_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinngeNB) of EUTRA_CGI EUTRA_CGIList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of EUTRA_CGI EUTRA_CGIListForWarning; + // type record EUTRA_PagingeDRXInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_PagingeDRXInformation_ExtIEs (?); + // type enumerated EUTRA_Paging_eDRX_Cycle { + // type enumerated EUTRA_Paging_Time_Window { + // type bitstring EUTRAencryptionAlgorithms length ( + // type bitstring EUTRAintegrityProtectionAlgorithms length ( + // type enumerated EventType { + // type record length (1 .. NGAP_Constants.maxnoofThresholdsForExcessPacketDelay) of ExcessPacketDelayThresholdItem ExcessPacketDelayThresholdConfiguration; + // type record ExcessPacketDelayThresholdItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExcessPacketDelayThresholdItem_ExtIEs (?); + // type enumerated ExcessPacketDelayThresholdValue { + // type integer ExpectedActivityPeriod ( + // type enumerated ExpectedHOInterval { + // type integer ExpectedIdlePeriod ( + // type record ExpectedUEActivityBehaviour { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEActivityBehaviour_ExtIEs (?); + // type record ExpectedUEBehaviour { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEBehaviour_ExtIEs (?); + // type enumerated ExpectedUEMobility { + // type record length (1 .. NGAP_Constants.maxnoofCellsUEMovingTrajectory) of ExpectedUEMovingTrajectoryItem ExpectedUEMovingTrajectory; + // type record ExpectedUEMovingTrajectoryItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEMovingTrajectoryItem_ExtIEs (?); + // type record Extended_AMFName { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_AMFName_ExtIEs (?); + // type integer ExtendedPacketDelayBudget ( + // type record Extended_RANNodeName { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_RANNodeName_ExtIEs (?); + // type record ExtendedRATRestrictionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExtendedRATRestrictionInformation_ExtIEs (?); + // type integer ExtendedRNC_ID (4096 .. 65535); + // type record length (1 .. NGAP_Constants.maxnoofExtSliceItems) of SliceSupportItem ExtendedSliceSupportList; + // type bitstring ExtendedUEIdentityIndexValue length (16); + // type union EventTrigger { + // type NGAP_Containers.NGAP_PROTOCOL_IES EventTrigger_ExtIEs (?); + // type record EventL1LoggedMDTConfig { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventL1LoggedMDTConfig_ExtIEs (?); + // type union MeasurementThresholdL1LoggedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_IES MeasurementThresholdL1LoggedMDT_ExtIEs (?); + // type record FailureIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FailureIndication_ExtIEs (?); + // type record FiveG_ProSeAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSeAuthorized_ExtIEs (?); + // type enumerated FiveGProSeDirectDiscovery { + // type enumerated FiveGProSeDirectCommunication { + // type enumerated FiveGProSeLayer2UEtoNetworkRelay { + // type enumerated FiveGProSeLayer3UEtoNetworkRelay { + // type enumerated FiveGProSeLayer2RemoteUE { + // type record FiveG_ProSePC5QoSParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSePC5QoSParameters_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of FiveGProSePC5QoSFlowItem FiveGProSePC5QoSFlowList; + // type record FiveGProSePC5QoSFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5QoSFlowItem_ExtIEs (?); + // type record FiveGProSePC5FlowBitRates { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5FlowBitRates_ExtIEs (?); + // type record FiveG_S_TMSI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_S_TMSI_ExtIEs (?); + // type octetstring FiveG_TMSI length (4); + // type integer FiveQI ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ForbiddenAreaInformation_Item ForbiddenAreaInformation; + // type record ForbiddenAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ForbiddenAreaInformation_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofForbTACs) of TAC ForbiddenTACs; + // type record FromEUTRANtoNGRAN { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromEUTRANtoNGRAN_ExtIEs (?); + // type record FromNGRANtoEUTRAN { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromNGRANtoEUTRAN_ExtIEs (?); + // type record GBR_QosInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GBR_QosInformation_ExtIEs ( + // type octetstring GlobalCable_ID; + // type record GlobalCable_ID_new { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); + // type record GlobalENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); + // type record GlobalGNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); + // type record GlobalN3IWF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); + // type record GlobalLine_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalLine_ID_ExtIEs ( + // type octetstring GlobalLineIdentity; + // type record GlobalNgENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); + // type union GlobalRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( + // type record GlobalTNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTNGF_ID_ExtIEs (?); + // type record GlobalTWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTWIF_ID_ExtIEs (?); + // type record GlobalW_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); + // type union GNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); + // type octetstring GTP_TEID length (4); + // type record GTPTunnel { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); + // type record GUAMI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); + // type enumerated GUAMIType { + // type record HandoverCommandTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( + // type enumerated HandoverFlag { + // type record HandoverPreparationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverPreparationUnsuccessfulTransfer_ExtIEs (?); + // type record HandoverRequestAcknowledgeTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequestAcknowledgeTransfer_ExtIEs ( + // type record HandoverRequiredTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequiredTransfer_ExtIEs (?); + // type record HandoverResourceAllocationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverResourceAllocationUnsuccessfulTransfer_ExtIEs (?); + // type enumerated HandoverType { + // type bitstring HashedUEIdentityIndexValue length ( + // type octetstring HFCNode_ID; + // type record HFCNode_ID_new { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HFCNode_ID_new_ExtIEs (?); + // type record HOReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HOReport_ExtIEs (?); + // type integer Hysteresis (0 .. 30); + // type enumerated IAB_Authorized { + // type enumerated IAB_Supported { + // type enumerated IABNodeIndication { + // type enumerated IMSVoiceSupportIndicator { + // type integer IndexToRFSP ( + // type record InfoOnRecommendedCellsAndRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InfoOnRecommendedCellsAndRANNodesForPaging_ExtIEs (?); + // type enumerated IntegrityProtectionIndication { + // type enumerated IntegrityProtectionResult { + // type integer IntendedNumberOfPagingAttempts ( + // type bitstring InterfacesToTrace length (8); + // type record ImmediateMDTNr { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ImmediateMDTNr_ExtIEs (?); + // type record InterSystemFailureIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemFailureIndication_ExtIEs (?); + // type record IntersystemSONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONConfigurationTransfer_ExtIEs (?); + // type union IntersystemSONTransferType { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONTransferType_ExtIEs (?); + // type record IntersystemSONeNBID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONeNBID_ExtIEs (?); + // type record IntersystemSONNGRANnodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONNGRANnodeID_ExtIEs (?); + // type union IntersystemSONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformation_ExtIEs ( + // type union IntersystemSONInformationRequest { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationRequest_ExtIEs (?); + // type record IntersystemCellActivationRequest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationRequest_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI CellsToActivateList; + // type record IntersystemResourceStatusRequest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusRequest_ExtIEs (?); + // type union ReportingSystem { + // type NGAP_Containers.NGAP_PROTOCOL_IES ReportingSystem_ExtIEs (?); + // type record EUTRAN_ReportingSystemIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingSystemIEs_ExtIEs (?); + // type record NGRAN_ReportingSystemIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingSystemIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellToReportItem EUTRAN_CellToReportList; + // type record EUTRAN_CellToReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellToReportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellToReportItem NGRAN_CellToReportList; + // type record NGRAN_CellToReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellToReportItem_ExtIEs (?); + // type bitstring ReportCharacteristics length (32); + // type union ReportType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ReportType_ExtIEs (?); + // type record EventBasedReportingIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventBasedReportingIEs_ExtIEs (?); + // type integer IntersystemResourceThreshold (0 .. 100); + // type enumerated NumberOfMeasurementReportingLevels { + // type record PeriodicReportingIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PeriodicReportingIEs_ExtIEs (?); + // type enumerated ReportingPeriodicity { + // type union IntersystemSONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReply_ExtIEs (?); + // type record IntersystemCellActivationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationReply_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI ActivatedCellList; + // type record IntersystemResourceStatusReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReply_ExtIEs (?); + // type union IntersystemSONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReport_ExtIEs ( + // type record IntersystemCellStateIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellStateIndication_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NotificationCell_Item NotificationCellList; + // type record NotificationCell_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NotificationCell_Item_ExtIEs (?); + // type record IntersystemResourceStatusReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReport_ExtIEs (?); + // type union ResourceStatusReportingSystem { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResourceStatusReportingSystem_ExtIEs (?); + // type record EUTRAN_ReportingStatusIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingStatusIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellReportItem EUTRAN_CellReportList; + // type record EUTRAN_CellReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellReportItem_ExtIEs (?); + // type record EUTRAN_CompositeAvailableCapacityGroup { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CompositeAvailableCapacityGroup_ExtIEs (?); + // type record CompositeAvailableCapacity { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompositeAvailableCapacity_ExtIEs (?); + // type integer EUTRAN_NumberOfActiveUEs ( + // type record EUTRAN_RadioResourceStatus { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_RadioResourceStatus_ExtIEs (?); + // type record NGRAN_ReportingStatusIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingStatusIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellReportItem NGRAN_CellReportList; + // type record NGRAN_CellReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellReportItem_ExtIEs (?); + // type integer NGRAN_NumberOfActiveUEs ( + // type integer NGRAN_NoofRRCConnections ( + // type record NGRAN_RadioResourceStatus { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_RadioResourceStatus_ExtIEs (?); + // type record InterSystemHOReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemHOReport_ExtIEs (?); + // type union InterSystemHandoverReportType { + // type NGAP_Containers.NGAP_PROTOCOL_IES InterSystemHandoverReportType_ExtIEs (?); + // type record IntersystemUnnecessaryHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemUnnecessaryHO_ExtIEs (?); + // type octetstring LAC length (2); + // type record LAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); + // type union LastVisitedCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES LastVisitedCellInformation_ExtIEs (?); + // type record LastVisitedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedCellItem_ExtIEs (?); + // type octetstring LastVisitedEUTRANCellInformation; + // type octetstring LastVisitedGERANCellInformation; + // type record LastVisitedNGRANCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedNGRANCellInformation_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPSCellsPerPrimaryCellinUEHistoryInfo) of LastVisitedPSCellInformation LastVisitedPSCellList; + // type record LastVisitedPSCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedPSCellInformation_ExtIEs (?); + // type octetstring LastVisitedUTRANCellInformation; + // type enumerated LineType { + // type enumerated LocationReportingAdditionalInfo { + // type integer LocationReportingReferenceID ( + // type record LocationReportingRequestType { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LocationReportingRequestType_ExtIEs ( + // type record LoggedMDTNr { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LoggedMDTNr_ExtIEs ( + // type enumerated LoggingInterval { + // type enumerated LoggingDuration { + // type enumerated Links_to_log { + // type union LoggedMDTTrigger { + // type NGAP_Containers.NGAP_PROTOCOL_IES LoggedMDTTrigger_ExtIEs (?); + // type enumerated LTEM_Indication { + // type octetstring LTEUERLFReportContainer; + // type record LTEV2XServicesAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEV2XServicesAuthorized_ExtIEs (?); + // type record LTEUESidelinkAggregateMaximumBitrate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEUE_Sidelink_Aggregate_MaximumBitrates_ExtIEs (?); + // type bitstring MaskedIMEISV length (64); + // type integer MaximumDataBurstVolume ( + // type bitstring MessageIdentifier length (16); + // type enumerated MaximumIntegrityProtectedDataRate { + // type integer MBS_AreaSessionID ( + // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_DataForwardingResponseMRBItem MBS_DataForwardingResponseMRBList; + // type record MBS_DataForwardingResponseMRBItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DataForwardingResponseMRBItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_MappingandDataForwardingRequestItem MBS_MappingandDataForwardingRequestList; + // type record MBS_MappingandDataForwardingRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_MappingandDataForwardingRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of QosFlowIdentifier MBS_QoSFlowList; + // type union MRB_ProgressInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES MRB_ProgressInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of MBS_QoSFlowsToBeSetupItem MBS_QoSFlowsToBeSetupList; + // type record MBS_QoSFlowsToBeSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_QoSFlowsToBeSetupItem_ExtIEs (?); + // type union MBS_ServiceArea { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_ServiceArea_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_ServiceAreaInformationItem MBS_ServiceAreaInformationList; + // type record MBS_ServiceAreaInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformationItem_ExtIEs (?); + // type record MBS_ServiceAreaInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsforMBS) of NR_CGI MBS_ServiceAreaCellList; + // type record length (1 .. NGAP_Constants.maxnoofTAIforMBS) of TAI MBS_ServiceAreaTAIList; + // type record MBS_SessionID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionID_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionFailedtoSetupItem MBSSessionFailedtoSetupList; + // type record MBSSessionFailedtoSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionFailedtoSetupItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_SourcetoTargetItem MBS_ActiveSessionInformation_SourcetoTargetList; + // type record MBS_ActiveSessionInformation_SourcetoTargetItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_SourcetoTargetItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_TargettoSourceItem MBS_ActiveSessionInformation_TargettoSourceList; + // type record MBS_ActiveSessionInformation_TargettoSourceItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_TargettoSourceItem_ExtIEs (?); + // type record MBSSessionSetupOrModFailureTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModFailureTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupResponseItem MBSSessionSetupResponseList; + // type record MBSSessionSetupResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupResponseItem_ExtIEs (?); + // type record MBSSessionSetupOrModRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBSSessionSetupOrModRequestTransferIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMBSFSAs) of MBS_SessionFSAID MBS_SessionFSAIDList; + // type octetstring MBS_SessionFSAID length (3); + // type record MBSSessionReleaseResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionReleaseResponseTransfer_ExtIEs (?); + // type record MBSSessionSetupOrModResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModResponseTransfer_ExtIEs (?); + // type enumerated MBS_SupportIndicator { + // type union MBS_SessionTNLInfo5GC { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfo5GC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfo5GCItem MBS_SessionTNLInfo5GCList; + // type record MBS_SessionTNLInfo5GCItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfo5GCItem_ExtIEs (?); + // type union MBS_SessionTNLInfoNGRAN { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfoNGRAN_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfoNGRANItem MBS_SessionTNLInfoNGRANList; + // type record MBS_SessionTNLInfoNGRANItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfoNGRANItem_ExtIEs (?); + // type record MBS_DistributionReleaseRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionReleaseRequesTransfer_ExtIEs (?); + // type record MBS_DistributionSetupRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupRequestTransfer_ExtIEs (?); + // type record MBS_DistributionSetupResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupResponseTransfer_ExtIEs (?); + // type record MBS_DistributionSetupUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupRequestItem MBSSessionSetupRequestList; + // type record MBSSessionSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetuporModifyRequestItem MBSSessionSetuporModifyRequestList; + // type record MBSSessionSetuporModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetuporModifyRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionToReleaseItem MBSSessionToReleaseList; + // type record MBSSessionToReleaseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionToReleaseItem_ExtIEs (?); + // type enumerated MBSSessionStatus { + // type enumerated MicoAllPLMN { + // type enumerated MICOModeIndication { + // type bitstring MobilityInformation length (16); + // type record MobilityRestrictionList { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MobilityRestrictionList_ExtIEs ( + // type union MDT_AlignmentInfo { + // type NGAP_Containers.NGAP_PROTOCOL_IES MDT_AlignmentInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNList; + // type record length (0 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNModificationList; + // type record MDT_Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_ExtIEs (?); + // type record MDT_Configuration_NR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_NR_ExtIEs (?); + // type record MDT_Configuration_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_EUTRA_ExtIEs (?); + // type enumerated MDT_Activation { + // type union MDTModeNr { + // type NGAP_Containers.NGAP_PROTOCOL_IES MDTModeNr_ExtIEs (?); + // type octetstring MDTModeEutra; + // type bitstring MeasurementsToActivate length (8); + // type integer MRB_ID ( + // type record MulticastSessionActivationRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionActivationRequestTransfer_ExtIEs (?); + // type record MulticastSessionDeactivationRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionDeactivationRequestTransfer_ExtIEs (?); + // type record MulticastSessionUpdateRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES MulticastSessionUpdateRequestTransferIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPagingAreas) of MulticastGroupPagingAreaItem MulticastGroupPagingAreaList; + // type record MulticastGroupPagingAreaItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingAreaItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAI MBS_AreaTAIList; + // type record MulticastGroupPagingArea { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingArea_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEsforPaging) of UE_PagingItem UE_PagingList; + // type record UE_PagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_PagingItem_ExtIEs (?); + // type record M1Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1Configuration_ExtIEs ( + // type enumerated IncludeBeamMeasurementsIndication { + // type integer MaxNrofRS_IndexesToReport ( + // type enumerated M1ReportingTrigger { + // type record M1ThresholdEventA2 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1ThresholdEventA2_ExtIEs (?); + // type union M1ThresholdType { + // type NGAP_Containers.NGAP_PROTOCOL_IES M1ThresholdType_ExtIEs (?); + // type record M1PeriodicReporting { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1PeriodicReporting_ExtIEs ( + // type record M4Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M4Configuration_ExtIEs ( + // type enumerated M4ReportAmountMDT { + // type enumerated M4period { + // type record M5Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M5Configuration_ExtIEs ( + // type enumerated M5ReportAmountMDT { + // type enumerated M5period { + // type record M6Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M6Configuration_ExtIEs ( + // type enumerated M6ReportAmountMDT { + // type enumerated M6report_Interval { + // type record M7Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M7Configuration_ExtIEs ( + // type enumerated M7ReportAmountMDT { + // type integer M7period ( + // type record MDT_Location_Info { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Location_Info_ExtIEs (?); + // type bitstring MDT_Location_Information length (8); + // type union N3IWF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); + // type octetstring NAS_PDU; + // type octetstring NASSecurityParametersFromNGRAN; + // type enumerated NB_IoT_DefaultPagingDRX { + // type enumerated NB_IoT_PagingDRX { + // type enumerated NB_IoT_Paging_eDRXCycle { + // type enumerated NB_IoT_Paging_TimeWindow { + // type record NB_IoT_Paging_eDRXInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); + // type integer NB_IoT_UEPriority ( + // type integer NetworkInstance ( + // type enumerated NewSecurityContextInd { + // type integer NextHopChainingCount (0 .. 7); + // type enumerated NextPagingAreaScope { + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; + // type record NGAPIESupportInformationRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; + // type record NGAPIESupportInformationResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); + // type union NgENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); + // type enumerated NotifySourceNGRANNode { + // type union NGRAN_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; + // type record NGRAN_TNLAssociationToRemoveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); + // type octetstring NGRANTraceID length (8); + // type bitstring NID length (44); + // type record NonDynamic5QIDescriptor { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; + // type enumerated NotificationCause { + // type enumerated NotificationControl { + // type union NPN_AccessInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); + // type union NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); + // type union NPN_PagingAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); + // type union NPN_Support { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); + // type bitstring NRCellIdentity length (36); + // type record NR_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; + // type record NR_PagingeDRXInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); + // type enumerated NR_Paging_eDRX_Cycle { + // type enumerated NR_Paging_Time_Window { + // type bitstring NRencryptionAlgorithms length ( + // type bitstring NRintegrityProtectionAlgorithms length ( + // type octetstring NRMobilityHistoryReport; + // type octetstring NRPPa_PDU; + // type octetstring NRUERLFReportContainer; + // type record NRNTNTAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); + // type integer NumberOfBroadcasts (0 .. 65535); + // type integer NumberOfBroadcastsRequested (0 .. 65535); + // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); + // type integer NRFrequencyBand ( + // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; + // type record NRFrequencyBandItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); + // type record NRFrequencyInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); + // type integer NR_PCI ( + // type record NRV2XServicesAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); + // type enumerated VehicleUE { + // type enumerated PedestrianUE { + // type record NRUESidelinkAggregateMaximumBitrate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); + // type integer NSAG_ID ( + // type enumerated OnboardingSupport { + // type enumerated OverloadAction { + // type union OverloadResponse { + // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; + // type record OverloadStartNSSAIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); + // type integer PacketDelayBudget ( + // type record PacketErrorRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); + // type integer PacketLossRate ( + // type record PagingAssisDataforCEcapabUE { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); + // type record PagingAttemptInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); + // type integer PagingAttemptCount ( + // type enumerated PagingCause { + // type enumerated PagingCauseIndicationForVoiceService { + // type enumerated PagingDRX { + // type enumerated PagingOrigin { + // type enumerated PagingPriority { + // type enumerated PagingProbabilityInformation { + // type record PathSwitchRequestAcknowledgeTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( + // type record PathSwitchRequestSetupFailedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); + // type record PathSwitchRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( + // type record PathSwitchRequestUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); + // type record PC5QoSParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; + // type record PC5QoSFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); + // type record PC5FlowBitRates { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; + // type enumerated PrivacyIndicator { + // type record PDUSessionAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); + // type integer PDUSessionID (0 .. 255); + // type integer PDUSessionPairID ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; + // type record PDUSessionResourceAdmittedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; + // type record PDUSessionResourceFailedToModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; + // type record PDUSessionResourceFailedToModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; + // type record PDUSessionResourceFailedToResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; + // type record PDUSessionResourceFailedToResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; + // type record PDUSessionResourceFailedToSetupItemCxtFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; + // type record PDUSessionResourceFailedToSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; + // type record PDUSessionResourceFailedToSetupItemHOAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; + // type record PDUSessionResourceFailedToSetupItemPSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; + // type record PDUSessionResourceFailedToSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; + // type record PDUSessionResourceHandoverItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; + // type record PDUSessionResourceInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; + // type record PDUSessionResourceItemCxtRelCpl { + // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; + // type record PDUSessionResourceItemCxtRelReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; + // type record PDUSessionResourceItemHORqd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); + // type record PDUSessionResourceModifyConfirmTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); + // type record PDUSessionResourceModifyRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( + // type record PDUSessionResourceModifyResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; + // type record PDUSessionResourceModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; + // type record PDUSessionResourceModifyItemModInd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; + // type record PDUSessionResourceModifyItemModReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; + // type record PDUSessionResourceModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); + // type record PDUSessionResourceModifyUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; + // type record PDUSessionResourceNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); + // type record PDUSessionResourceNotifyReleasedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( + // type record PDUSessionResourceNotifyTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( + // type record PDUSessionResourceReleaseCommandTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; + // type record PDUSessionResourceReleasedItemNot { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; + // type record PDUSessionResourceReleasedItemPSAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; + // type record PDUSessionResourceReleasedItemPSFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; + // type record PDUSessionResourceReleasedItemRelRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); + // type record PDUSessionResourceReleaseResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; + // type record PDUSessionResourceResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; + // type record PDUSessionResourceResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; + // type record PDUSessionResourceSecondaryRATUsageItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; + // type record PDUSessionResourceSetupItemCxtReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; + // type record PDUSessionResourceSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; + // type record PDUSessionResourceSetupItemHOReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; + // type record PDUSessionResourceSetupItemSUReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; + // type record PDUSessionResourceSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); + // type record PDUSessionResourceSetupRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( + // type record PDUSessionResourceSetupResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( + // type record PDUSessionResourceSetupUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; + // type record PDUSessionResourceSuspendItemSUSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; + // type record PDUSessionResourceSwitchedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; + // type record PDUSessionResourceToBeSwitchedDLItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; + // type record PDUSessionResourceToReleaseItemHOCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; + // type record PDUSessionResourceToReleaseItemRelCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); + // type enumerated PDUSessionType { + // type record PDUSessionUsageReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); + // type record PEIPSassistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); + // type integer Periodicity ( + // type bitstring PeriodicRegistrationUpdateTimer length (8); + // type octetstring PLMNIdentity length (3); + // type record PLMNAreaBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; + // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; + // type record PLMNSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( + // type record PNI_NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); + // type octetstring PortNumber length (2); + // type enumerated Pre_emptionCapability { + // type enumerated Pre_emptionVulnerability { + // type integer PriorityLevelARP (1 .. 15); + // type integer PriorityLevelQos ( + // type union PWSFailedCellIDList { + // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); + // type record QMCConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); + // type record QMCDeactivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; + // type octetstring QoEReference length (6); + // type union QosCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; + // type record QosFlowAcceptedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; + // type record QosFlowAddOrModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; + // type record QosFlowAddOrModifyResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; + // type record QosFlowFeedbackItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); + // type integer QosFlowIdentifier ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; + // type record QosFlowInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( + // type record QosFlowLevelQosParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( + // type enumerated QosMonitoringRequest { + // type integer QosMonitoringReportingFrequency ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; + // type record QosFlowWithCauseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; + // type record QosFlowModifyConfirmItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; + // type record QosFlowNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; + // type record QosFlowParametersItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( + // type record QosFlowPerTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; + // type record QosFlowPerTNLInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; + // type record QosFlowSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; + // type record QosFlowItemWithDataForwarding { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; + // type record QosFlowToBeForwardedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; + // type record QoSFlowsUsageReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); + // type enumerated Range { + // type ASNAUX.PrintableString RANNodeName length ( + // type ASNAUX.VisibleString RANNodeNameVisibleString length ( + // type ASNAUX.UTF8String RANNodeNameUTF8String length ( + // type integer RANPagingPriority (1 .. 256); + // type record RANStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); + // type integer RAN_UE_NGAP_ID (0 .. 4294967295); + // type enumerated RAT_Information { + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; + // type record RATRestrictions_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( + // type bitstring RATRestrictionInformation length ( + // type record RecommendedCellsForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; + // type record RecommendedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); + // type record RecommendedRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; + // type record RecommendedRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); + // type enumerated RedCapIndication { + // type enumerated RedirectionVoiceFallback { + // type record RedundantPDUSessionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( + // type enumerated RedundantQosFlowIndicator { + // type enumerated ReflectiveQosAttribute { + // type integer RelativeAMFCapacity (0 .. 255); + // type enumerated ReportArea { + // type integer RepetitionPeriod (0 .. 131071); + // type enumerated ResetAll { + // type enumerated ReportAmountMDT { + // type enumerated ReportIntervalMDT { + // type enumerated ExtendedReportIntervalMDT { + // type union ResetType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); + // type octetstring RGLevelWirelineAccessCharacteristics; + // type integer RNC_ID (0 .. 4095); + // type octetstring RoutingID; + // type octetstring RRCContainer; + // type enumerated RRCEstablishmentCause { + // type enumerated RRCInactiveTransitionReportRequest { + // type enumerated RRCState { + // type enumerated RSN { + // type record RIMInformationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); + // type record RIMInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); + // type bitstring GNBSetID length (22); + // type record ScheduledCommunicationTime { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; + // type octetstring SD length (3); + // type record SecondaryRATUsageInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); + // type record SecondaryRATDataUsageReportTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); + // type record SecurityContext { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); + // type record SecurityIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( + // type bitstring SecurityKey length (256); + // type record SecurityResult { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); + // type record SensorMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; + // type record SensorMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); + // type enumerated SensorMeasConfig { + // type union SensorNameConfig { + // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); + // type bitstring SerialNumber length (16); + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; + // type record ServedGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; + // type record ServiceAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); + // type enumerated ServiceType { + // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); + // type record SharedNGU_MulticastTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; + // type record SliceOverloadItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; + // type record SliceSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; + // type record SliceSupportQMC_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); + // type record SNPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); + // type record S_NSSAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); + // type record SONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); + // type union SONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( + // type record SONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); + // type union SONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; + // type record SuccessfulHandoverReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); + // type enumerated SONInformationRequest { + // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( + // type union SourceNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); + // type enumerated SourceOfUEActivityBehaviourInformation { + // type record SourceRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); + // type octetstring SourceToTarget_TransparentContainer; + // type record SourceToTarget_AMFInformationReroute { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); + // type enumerated SRVCCOperationPossible { + // type octetstring ConfiguredNSSAI length (128); + // type octetstring RejectedNSSAIinPLMN length (32); + // type octetstring RejectedNSSAIinTA length (32); + // type octetstring SST length (1); + // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; + // type record SupportedTAItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( + // type enumerated SuspendIndicator { + // type enumerated Suspend_Request_Indication { + // type enumerated Suspend_Response_Indication { + // type integer SurvivalTime ( + // type octetstring TAC length (3); + // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; + // type record TAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; + // type record TAIBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; + // type record TAIBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; + // type record TAICancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; + // type record TAICancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; + // type record TAIListForInactiveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; + // type record TAIListForPagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; + // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; + // type record TAINSAGSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); + // type record TargeteNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); + // type record TargetHomeENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); + // type union TargetID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; + // type record TargetNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); + // type record TargetNSSAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); + // type record TargetRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); + // type record TargetRANNodeID_RIM { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); + // type record TargetRANNodeID_SON { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( + // type record TargetRNC_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); + // type octetstring TargetToSource_TransparentContainer; + // type octetstring TargettoSource_Failure_TransparentContainer; + // type enumerated TimerApproachForGUAMIRemoval { + // type octetstring TimeStamp length (4); + // type record TimeSyncAssistanceInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); + // type enumerated TimeToWait { + // type integer TimeUEStayedInCell (0 .. 4095); + // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); + // type octetstring TMGI length (6); + // type octetstring TNAP_ID; + // type union TNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); + // type integer TNLAddressWeightFactor (0 .. 255); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; + // type record TNLAssociationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); + // type enumerated TNLAssociationUsage { + // type record TooearlyIntersystemHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); + // type record TraceActivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( + // type enumerated TraceDepth { + // type integer TrafficLoadReductionIndication (1 .. 99); + // type bitstring TransportLayerAddress length ( + // type enumerated TypeOfError { + // type record TAIBasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; + // type record TAIBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; + // type record TABasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; + // type record TABasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; + // type integer Threshold_RSRP (0 .. 127); + // type integer Threshold_RSRQ (0 .. 127); + // type integer Threshold_SINR (0 .. 127); + // type enumerated TimeToTrigger { + // type octetstring TWAP_ID; + // type union TWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); + // type record TSCAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( + // type record TSCTrafficCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); + // type record UEAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; + // type record UEAppLayerMeasInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); + // type record UEAppLayerMeasConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; + // type record UE_associatedLogicalNG_connectionItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); + // type enumerated UECapabilityInfoRequest { + // type enumerated UEContextRequest { + // type record UEContextResumeRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); + // type record UEContextResumeResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); + // type record UEContextSuspendRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); + // type record UE_DifferentiationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; + // type union UEHistoryInformationFromTheUE { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); + // type union UEIdentityIndexValue { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); + // type union UE_NGAP_IDs { + // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); + // type record UE_NGAP_ID_pair { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); + // type union UEPagingIdentity { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); + // type enumerated UEPresence { + // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; + // type record UEPresenceInAreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); + // type octetstring UERadioCapability; + // type record UERadioCapabilityForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( + // type octetstring UERadioCapabilityForPagingOfNB_IoT; + // type octetstring UERadioCapabilityForPagingOfNR; + // type octetstring UERadioCapabilityForPagingOfEUTRA; + // type octetstring UERadioCapabilityID; + // type enumerated UERetentionInformation { + // type union UERLFReportContainer { + // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); + // type record UESecurityCapabilities { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; + // type record UESliceMaximumBitRateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); + // type enumerated UE_UP_CIoT_Support { + // type record UL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); + // type bitstring UL_NAS_MAC length (16); + // type bitstring UL_NAS_Count length (5); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; + // type record UL_NGU_UP_TNLModifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; + // type record UnavailableGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); + // type enumerated ULForwarding { + // type bitstring UpdateFeedback length ( + // type union UPTransportLayerInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; + // type record UPTransportLayerInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; + // type record UPTransportLayerInformationPairItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); + // type ASNAUX.VisibleString URI_address; + // type union UserLocationInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( + // type record UserLocationInformationEUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( + // type record UserLocationInformationN3IWF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( + // type record UserLocationInformationTNGF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( + // type record UserLocationInformationTWIF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( + // type union UserLocationInformationW_AGF { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( + // type record UserLocationInformationNR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( + // type record UserPlaneSecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; + // type record VolumeTimedReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); + // type union W_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); + // type octetstring WarningAreaCoordinates length (1 .. 1024); + // type union WarningAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); + // type octetstring WarningMessageContents length (1 .. 9600); + // type octetstring WarningSecurityInfo length (50); + // type octetstring WarningType length (2); + // type record WLANMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; + // type record WLANMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); + // type enumerated WLANMeasConfig { + // type octetstring WLANName length (1 .. 32); + // type record WUS_Assistance_Information { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; + // type record XnExtTLA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; + // type record XnTNLConfigurationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); + } }//end of group Information_elements -- GitLab From 30b4fb190bc16eeb1ed41fbcbd2e88c28591f943 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 25 Oct 2023 17:51:23 +0200 Subject: [PATCH 041/365] add TP_NGAP_GNB_CMP_10 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 47 +++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index f1af073..d217642 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -640,6 +640,53 @@ Package TP_GNB { } // end TP_NGAP_GNB_CMP_02 } // end Group Initial Context Setup + + Group "UE Context Release (NG-RAN node initiated)" + { + + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_10 + + Test objective "Verify that the NG-RAN node successfully requests the AMF to release the UE-associated logical NG-connection." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE context release request + } + then { + the IUT entity sends a UE_CONTEXT_RELEASE_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + PDU_Session_Resource_List containing + PDS_Session_Resource_Item containing + PDU_Session_ID indicating value PX_PDU_ID + ; + ;, + Cause + ; + to the AMF entity + } + + } + + } // End TP TP_NGAP_GNB_CMP_10 + + } // End Group "UE Context Release (NG-RAN node initiated)" Group "UE Context Release (AMF initiated)" { -- GitLab From bf9dc71b05e259a50168c20ca3d626565529b36f Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 25 Oct 2023 17:52:04 +0200 Subject: [PATCH 042/365] new TPs section 8.4 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 133 ++++++++++++++++++++++++- 1 file changed, 128 insertions(+), 5 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 4510ce8..85d4046 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -918,7 +918,7 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_MMP_03 + TP Id TP_NGAP_AMF_MMP_04 Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and answers with PATH SWITCH REQUEST ACKNOWLEDGE to acknowledge the path switch." @@ -966,13 +966,13 @@ Package TP_AMF { } } - } // End TP_NGAP_AMF_MMP_03 + } // End TP_NGAP_AMF_MMP_04 Test Purpose { - TP Id TP_NGAP_AMF_MMP_04 + TP Id TP_NGAP_AMF_MMP_05 - Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with sam ID and answers with PATH SWITCH REQUEST FAILURE." + Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with same ID and answers with PATH SWITCH REQUEST FAILURE." Reference "ETSI TS 138 413 [1], Clauses 8.4.4.4" @@ -1021,11 +1021,134 @@ Package TP_AMF { } } - } // End TP_NGAP_AMF_MMP_04 + } // End TP_NGAP_AMF_MMP_05 } // End Group "Path Switch Request" + Group "Handover Cancellation" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_06 + + Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and answers with PATH SWITCH REQUEST FAILURE to confirm that the ongoing handover was cancelled." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.5.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a HANDOVER_CANCEL containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause + ; + from the GNB entity + } + then { + the IUT entity sends a HANDOVER_CANCEL_ACKNOWLEDGE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the GNB entity + } + } + + } // End TP_NGAP_AMF_MMP_05 + + } // End Group "Handover Cancellation" + Group "Downlink RAN Status Transfer" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_07 + + Test objective "Verify that the AMF node successfully sends a UPLINK RAN STATUS TRANSFER message that contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.5.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a Uplink RAN Status Transfer procedure + } + then { + the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + RAN_Status_Transfer_Transparent_Container + ; + to the GNB entity + } + } + + } // End TP_NGAP_AMF_MMP_07 + + } // End Group "Downlink RAN Status Transfer" + + Group "Downlink RAN Status Transfer" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_08 + + Test objective "Verify that the AMF node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.7.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a Uplink RAN Early Status Transfer procedure + } + then { + the IUT entity sends a UPLINK_RAN_EARLY_STATUS_TRANSFER containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Early_Status_Transfer_Transparent_Container + ; + to the GNB entity + } + } + + } // End TP_NGAP_AMF_MMP_08 + + } // End Group "Downlink RAN Status Transfer" + } // End Group "8.4 UE Mobility Management Procedures" } // End of Package TP_AMF -- GitLab From aa86a36bfa182f2815e6236c694dfddafa0a11b3 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 25 Oct 2023 18:05:26 +0200 Subject: [PATCH 043/365] added IE lists, IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 63 ++++++++++++++++--------- 1 file changed, 41 insertions(+), 22 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 2500dd8..372cc07 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1079,8 +1079,20 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); // type union BroadcastCompletedAreaList { // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; + template BroadcastPLMNList m_ie_broadcastPLMNList(in template BroadcastPLMNList p_list):=p_list; + // type record BroadcastPLMNItem { + template BroadcastPLMNItem m_ie_broadcastPLMNItem( + in template PLMNIdentity p_plmnId, + in template SliceSupportList p_ssl + ):={ + pLMNIdentity := p_plmnId, + tAISliceSupportList := p_ssl, + iE_Extensions :=omit + }//end of template m_ie_broadcastPLMNItem + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( // type record BluetoothMeasurementConfiguration { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); @@ -1971,7 +1983,10 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); // type integer Periodicity ( // type bitstring PeriodicRegistrationUpdateTimer length (8); + // type octetstring PLMNIdentity length (3); + template PLMNIdentity m_ie_pLMNIdentity(PLMNIdentity p_val):=p_val; + // type record PLMNAreaBasedQMC { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; @@ -2136,8 +2151,18 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; // type record SliceOverloadItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; + template SliceSupportList m_ie_sliceSupportList(in template SliceSupportList p_list):=p_list; + // type record SliceSupportItem { + template SliceSupportItem m_ie_sliceSupportItem( + in template S_NSSAI p_S_NSSAI + ):={ + s_NSSAI := p_S_NSSAI, + iE_Extensions :=omit + }//end of template m_ie_sliceSupportItem + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; // type record SliceSupportQMC_Item { @@ -2145,6 +2170,12 @@ module LibNGAP_Templates { // type record SNPN_MobilityInformation { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); // type record S_NSSAI { + template S_NSSAI m_ie_sNSSAI:={ + sST := '00'O, + sD := '000000'O, + iE_Extensions := omit + }//end of template m_ie_sNSSAI + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); // type record SONConfigurationTransfer { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); @@ -2175,30 +2206,18 @@ module LibNGAP_Templates { // type octetstring SST length (1); // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; - template SupportedTAList m_ie_supportedTAList:= { - { - tAC := '000001'O, - broadcastPLMNList := { - { - pLMNIdentity := '000101'O, - tAISliceSupportList := { - { - s_NSSAI := { - sST := '00'O, - sD := '000000'O, - iE_Extensions := omit - }, - iE_Extensions :=omit - } - }, - iE_Extensions :=omit - } - }, - iE_Extensions :=omit - } - }//end of template m_ie_supportedTAList + template SupportedTAList m_ie_supportedTAList(in template SupportedTAList p_list):= p_list; // type record SupportedTAItem { + template SupportedTAItem m_ie_supportedTAItem( + in template TAC p_tAC, + in template BroadcastPLMNList p_broadcastPLMNList + ):={ + tAC := '000001'O, + broadcastPLMNList := p_broadcastPLMNList, + iE_Extensions :=omit + }//end of template m_ie_supportedTAItem + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( // type enumerated SuspendIndicator { -- GitLab From 3816f65ef2ee9a85279a81224ed4169cad06e092 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 10:30:06 +0200 Subject: [PATCH 044/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 5692 ++++++++++++----------- 1 file changed, 2907 insertions(+), 2785 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 372cc07..3539163 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -29,7 +29,7 @@ module LibNGAP_Templates { group g_NGAP { group g_NGAP_PDU { - + /** * @desc Send template for NGAP PDU with InitiatingMessage payload * @param p_procedureCode Procedure code @@ -94,7 +94,7 @@ module LibNGAP_Templates { //9.2.1.1 group PDU_SESSION_RESOURCE_SETUP_REQUEST{ group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ - + template (value) InitiatingMessage m_n2_PDUSessionResourceSetupRequest( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, @@ -121,14 +121,14 @@ module LibNGAP_Templates { criticality := ignore, value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL} } - + } } } }//end of template mw_n2_PDUSessionResourceSetupRequest } group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ - + template (present) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( in template (present) AMF_UE_NGAP_ID p_amfUeNgapID, in template (present) RAN_UE_NGAP_ID p_ranUeNgapID, @@ -155,7 +155,7 @@ module LibNGAP_Templates { criticality := ignore, value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL} } - + } } } @@ -165,7 +165,7 @@ module LibNGAP_Templates { //9.2.1.2 group PDU_SESSION_RESOURCE_SETUP_RESPONSE{ group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ - + template (value) SuccessfulOutcome m_n2_PDUSessionResourceSetupResponse( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, @@ -192,14 +192,14 @@ module LibNGAP_Templates { criticality := ignore, value_ := { pDUSessionResourceSetupListSURes := p_pduSessResSetL} } - + } } } }//end of template mw_n2_PDUSessionResourceSetupResponse } group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ - + template (present) SuccessfulOutcome mw_n2_PDUSessionResourceSetupResponse( in template (present) AMF_UE_NGAP_ID p_amfUeNgapID, in template (present) RAN_UE_NGAP_ID p_ranUeNgapID, @@ -226,7 +226,7 @@ module LibNGAP_Templates { criticality := ignore, value_ := { pDUSessionResourceSetupListSURes := p_pduSessResSetL} } - + } } } @@ -283,7 +283,7 @@ module LibNGAP_Templates { } } }//end_of_group_PDU_Session_Management_Messages - + //9.2.2 group UE_Context_Management_Messages{ //9.2.2.1 @@ -434,7 +434,7 @@ module LibNGAP_Templates { } } }//end_of_group_UE_Context_Management_Messages_ - + //9.2.3 group UE_Mobility_Management_Messages{ //9.2.3.1 @@ -613,7 +613,7 @@ module LibNGAP_Templates { //9.2.6.1 group NG_SETUP_REQUEST{ group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ - + template (value) InitiatingMessage m_n2_NGSetupRequest( in template (value) GlobalRANNodeID p_globalRANNodeID, in template (value) SupportedTAList p_supportedTAs, @@ -645,7 +645,7 @@ module LibNGAP_Templates { } } }//end of template m_n2_NGSetupRequest - + } group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } @@ -986,104 +986,104 @@ module LibNGAP_Templates { group Information_elements{ group Send{/*m_ie_*/ - - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of AdditionalDLUPTNLInformationForHOItem AdditionalDLUPTNLInformationForHOList; - // type record AdditionalDLUPTNLInformationForHOItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AdditionalDLUPTNLInformationForHOItem_ExtIEs ( - // type enumerated AdditionalQosFlowInformation { - // type record AllocationAndRetentionPriority { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllocationAndRetentionPriority_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; - // type record AllowedNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; - // type record Allowed_PNI_NPN_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; - // type integer AlternativeQoSParaSetIndex ( - // type integer AlternativeQoSParaSetNotifyIndex ( - // type record length (1 .. NGAP_Constants.maxnoofQosParaSets) of AlternativeQoSParaSetItem AlternativeQoSParaSetList; - // type record AlternativeQoSParaSetItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AlternativeQoSParaSetItem_ExtIEs (?); - // type ASNAUX.PrintableString AMFName length ( - // type ASNAUX.VisibleString AMFNameVisibleString length ( - // type ASNAUX.UTF8String AMFNameUTF8String length ( - // type union AMFPagingTarget { - // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); - // type bitstring AMFPointer length (6); - // type bitstring AMFRegionID length (8); - // type bitstring AMFSetID length (10); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationSetupItem AMF_TNLAssociationSetupList; - // type record AMF_TNLAssociationSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationSetupItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToAddItem AMF_TNLAssociationToAddList; - // type record AMF_TNLAssociationToAddItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToAddItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToRemoveItem AMF_TNLAssociationToRemoveList; - // type record AMF_TNLAssociationToRemoveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToRemoveItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; - // type record AMF_TNLAssociationToUpdateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); - - // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); + + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of AdditionalDLUPTNLInformationForHOItem AdditionalDLUPTNLInformationForHOList; + // type record AdditionalDLUPTNLInformationForHOItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AdditionalDLUPTNLInformationForHOItem_ExtIEs ( + // type enumerated AdditionalQosFlowInformation { + // type record AllocationAndRetentionPriority { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllocationAndRetentionPriority_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; + // type record AllowedNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; + // type record Allowed_PNI_NPN_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; + // type integer AlternativeQoSParaSetIndex ( + // type integer AlternativeQoSParaSetNotifyIndex ( + // type record length (1 .. NGAP_Constants.maxnoofQosParaSets) of AlternativeQoSParaSetItem AlternativeQoSParaSetList; + // type record AlternativeQoSParaSetItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AlternativeQoSParaSetItem_ExtIEs (?); + // type ASNAUX.PrintableString AMFName length ( + // type ASNAUX.VisibleString AMFNameVisibleString length ( + // type ASNAUX.UTF8String AMFNameUTF8String length ( + // type union AMFPagingTarget { + // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); + // type bitstring AMFPointer length (6); + // type bitstring AMFRegionID length (8); + // type bitstring AMFSetID length (10); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationSetupItem AMF_TNLAssociationSetupList; + // type record AMF_TNLAssociationSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationSetupItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToAddItem AMF_TNLAssociationToAddList; + // type record AMF_TNLAssociationToAddItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToAddItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToRemoveItem AMF_TNLAssociationToRemoveList; + // type record AMF_TNLAssociationToRemoveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToRemoveItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; + // type record AMF_TNLAssociationToUpdateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); + + // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); template AMF_UE_NGAP_ID m_ie_aMFUeNgapId(integer p_val:=1) := p_val; - - // type record AreaOfInterest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterest_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinAoI) of AreaOfInterestCellItem AreaOfInterestCellList; - // type record AreaOfInterestCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestCellItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAoI) of AreaOfInterestItem AreaOfInterestList; - // type record AreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRANNodeinAoI) of AreaOfInterestRANNodeItem AreaOfInterestRANNodeList; - // type record AreaOfInterestRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestRANNodeItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIinAoI) of AreaOfInterestTAIItem AreaOfInterestTAIList; - // type record AreaOfInterestTAIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestTAIItem_ExtIEs (?); - // type record AssistanceDataForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForPaging_ExtIEs ( - // type record AssistanceDataForRecommendedCells { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForRecommendedCells_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetupRequestItem AssociatedMBSQosFlowSetupRequestList; - // type record AssociatedMBSQosFlowSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetupRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetuporModifyRequestItem AssociatedMBSQosFlowSetuporModifyRequestList; - // type record AssociatedMBSQosFlowSetuporModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetuporModifyRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of AssociatedQosFlowItem AssociatedQosFlowList; - // type record AssociatedQosFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedQosFlowItem_ExtIEs ( - // type enumerated AuthenticatedIndication { - // type integer AveragingWindow ( - // type union AreaScopeOfMDT_NR { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); - // type union AreaScopeOfMDT_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofFreqforMDT) of AreaScopeOfNeighCellsItem AreaScopeOfNeighCellsList; - // type record AreaScopeOfNeighCellsItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaScopeOfNeighCellsItem_ExtIEs (?); - // type union AreaScopeOfQMC { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfQMC_ExtIEs (?); - // type record AvailableRANVisibleQoEMetrics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AvailableRANVisibleQoEMetrics_ExtIEs (?); - // type record BeamMeasurementsReportConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportConfiguration_ExtIEs (?); - // type record BeamMeasurementsReportQuantity { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportQuantity_ExtIEs (?); - // type integer BitRate ( - // type union BroadcastCancelledAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); - // type union BroadcastCompletedAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); - - // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; + + // type record AreaOfInterest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterest_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinAoI) of AreaOfInterestCellItem AreaOfInterestCellList; + // type record AreaOfInterestCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestCellItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAoI) of AreaOfInterestItem AreaOfInterestList; + // type record AreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRANNodeinAoI) of AreaOfInterestRANNodeItem AreaOfInterestRANNodeList; + // type record AreaOfInterestRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestRANNodeItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIinAoI) of AreaOfInterestTAIItem AreaOfInterestTAIList; + // type record AreaOfInterestTAIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestTAIItem_ExtIEs (?); + // type record AssistanceDataForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForPaging_ExtIEs ( + // type record AssistanceDataForRecommendedCells { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForRecommendedCells_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetupRequestItem AssociatedMBSQosFlowSetupRequestList; + // type record AssociatedMBSQosFlowSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetupRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetuporModifyRequestItem AssociatedMBSQosFlowSetuporModifyRequestList; + // type record AssociatedMBSQosFlowSetuporModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetuporModifyRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of AssociatedQosFlowItem AssociatedQosFlowList; + // type record AssociatedQosFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedQosFlowItem_ExtIEs ( + // type enumerated AuthenticatedIndication { + // type integer AveragingWindow ( + // type union AreaScopeOfMDT_NR { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); + // type union AreaScopeOfMDT_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofFreqforMDT) of AreaScopeOfNeighCellsItem AreaScopeOfNeighCellsList; + // type record AreaScopeOfNeighCellsItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaScopeOfNeighCellsItem_ExtIEs (?); + // type union AreaScopeOfQMC { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfQMC_ExtIEs (?); + // type record AvailableRANVisibleQoEMetrics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AvailableRANVisibleQoEMetrics_ExtIEs (?); + // type record BeamMeasurementsReportConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportConfiguration_ExtIEs (?); + // type record BeamMeasurementsReportQuantity { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportQuantity_ExtIEs (?); + // type integer BitRate ( + // type union BroadcastCancelledAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); + // type union BroadcastCompletedAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); + + // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; template BroadcastPLMNList m_ie_broadcastPLMNList(in template BroadcastPLMNList p_list):=p_list; - - // type record BroadcastPLMNItem { + + // type record BroadcastPLMNItem { template BroadcastPLMNItem m_ie_broadcastPLMNItem( in template PLMNIdentity p_plmnId, in template SliceSupportList p_ssl @@ -1092,294 +1092,294 @@ module LibNGAP_Templates { tAISliceSupportList := p_ssl, iE_Extensions :=omit }//end of template m_ie_broadcastPLMNItem - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( - // type record BluetoothMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofBluetoothName) of BluetoothMeasConfigNameItem BluetoothMeasConfigNameList; - // type record BluetoothMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasConfigNameItem_ExtIEs (?); - // type enumerated BluetoothMeasConfig { - // type octetstring BluetoothName length (1 .. 248); - // type octetstring BurstArrivalTime; - // type bitstring CAG_ID length (32); - // type enumerated CancelAllWarningMessages { - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_EUTRA_Item CancelledCellsInEAI_EUTRA; - // type record CancelledCellsInEAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_NR_Item CancelledCellsInEAI_NR; - // type record CancelledCellsInEAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_EUTRA_Item CancelledCellsInTAI_EUTRA; - // type record CancelledCellsInTAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_NR_Item CancelledCellsInTAI_NR; - // type record CancelledCellsInTAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCandidateCells) of CandidateCellItem CandidateCellList; - // type record CandidateCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellItem_ExtIEs (?); - // type union CandidateCell { - // type NGAP_Containers.NGAP_PROTOCOL_IES CandidateCell_ExtIEs (?); - // type record CandidateCellID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellID_ExtIEs (?); - // type record CandidatePCI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidatePCI_ExtIEs (?); - // type union Cause { - // type NGAP_Containers.NGAP_PROTOCOL_IES Cause_ExtIEs (?); - // type enumerated CauseMisc { - // type enumerated CauseNas { - // type enumerated CauseProtocol { - // type enumerated CauseRadioNetwork { - // type enumerated CauseTransport { - // type record Cell_CAGInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Cell_CAGInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCAGSperCell) of CAG_ID CellCAGList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastEUTRA_Item CellIDBroadcastEUTRA; - // type record CellIDBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastNR_Item CellIDBroadcastNR; - // type record CellIDBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledEUTRA_Item CellIDCancelledEUTRA; - // type record CellIDCancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledNR_Item CellIDCancelledNR; - // type record CellIDCancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledNR_Item_ExtIEs (?); - // type union CellIDListForRestart { - // type NGAP_Containers.NGAP_PROTOCOL_IES CellIDListForRestart_ExtIEs (?); - // type enumerated CellSize { - // type record CellType { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellType_ExtIEs (?); - // type enumerated CEmodeBSupport_Indicator { - // type enumerated CEmodeBrestricted { - // type record CNAssistedRANTuning { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNAssistedRANTuning_ExtIEs (?); - // type integer CNsubgroupID ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of CNTypeRestrictionsForEquivalentItem CNTypeRestrictionsForEquivalent; - // type record CNTypeRestrictionsForEquivalentItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNTypeRestrictionsForEquivalentItem_ExtIEs (?); - // type enumerated CNTypeRestrictionsForServing { - // type octetstring CommonNetworkInstance; - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_EUTRA_Item CompletedCellsInEAI_EUTRA; - // type record CompletedCellsInEAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_NR_Item CompletedCellsInEAI_NR; - // type record CompletedCellsInEAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_EUTRA_Item CompletedCellsInTAI_EUTRA; - // type record CompletedCellsInTAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; - // type record CompletedCellsInTAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_NR_Item_ExtIEs (?); - // type enumerated ConcurrentWarningMessageInd { - // type enumerated ConfidentialityProtectionIndication { - // type enumerated ConfidentialityProtectionResult { - // type enumerated ConfiguredTACIndication { - // type record CoreNetworkAssistanceInformationForInactive { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CoreNetworkAssistanceInformationForInactive_ExtIEs ( - // type record COUNTValueForPDCP_SN12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); - // type record COUNTValueForPDCP_SN18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN18_ExtIEs (?); - // type octetstring CoverageEnhancementLevel; - // type union CPTransportLayerInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES CPTransportLayerInformation_ExtIEs ( - // type record CriticalityDiagnostics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofErrors) of CriticalityDiagnostics_IE_Item CriticalityDiagnostics_IE_List; - // type record CriticalityDiagnostics_IE_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_IE_Item_ExtIEs (?); - // type record CellBasedMDT_NR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_NR_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of NR_CGI CellIdListforMDT_NR; - // type record CellBasedMDT_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_EUTRA_ExtIEs (?); - // type record CellBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforQMC) of NGRAN_CGI CellIdListforQMC; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; - // type bitstring DataCodingScheme length (8); - // type enumerated DataForwardingAccepted { - // type enumerated DataForwardingNotPossible { - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; - // type record DataForwardingResponseDRBItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseDRBItem_ExtIEs (?); - // type record DAPSRequestInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSRequestInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DAPSResponseInfoItem DAPSResponseInfoList; - // type record DAPSResponseInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfoItem_ExtIEs (?); - // type record DAPSResponseInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of DataForwardingResponseERABListItem DataForwardingResponseERABList; - // type record DataForwardingResponseERABListItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseERABListItem_ExtIEs (?); - // type enumerated DelayCritical { - // type record DL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DL_CP_SecurityInformation_ExtIEs (?); - // type bitstring DL_NAS_MAC length (16); - // type enumerated DLForwarding { - // type enumerated DL_NGU_TNLInformationReused { - // type enumerated DirectForwardingPathAvailability { - // type integer DRB_ID ( - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToStatusTransferItem DRBsSubjectToStatusTransferList; - // type record DRBsSubjectToStatusTransferItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToStatusTransferItem_ExtIEs ( - // type union DRBStatusDL { - // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); - // type record DRBStatusDL12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL12_ExtIEs (?); - // type record DRBStatusDL18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL18_ExtIEs (?); - // type union DRBStatusUL { - // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusUL_ExtIEs (?); - // type record DRBStatusUL12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL12_ExtIEs (?); - // type record DRBStatusUL18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL18_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsToQosFlowsMappingItem DRBsToQosFlowsMappingList; - // type record DRBsToQosFlowsMappingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsToQosFlowsMappingItem_ExtIEs ( - // type record Dynamic5QIDescriptor { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Dynamic5QIDescriptor_ExtIEs ( - // type enumerated EarlyMeasurement { - // type record EarlyStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EarlyStatusTransfer_TransparentContainer_ExtIEs (?); - // type union ProcedureStageChoice { - // type NGAP_Containers.NGAP_PROTOCOL_IES ProcedureStageChoice_ExtIEs (?); - // type record FirstDLCount { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FirstDLCount_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToEarlyStatusTransfer_Item DRBsSubjectToEarlyStatusTransfer_List; - // type record DRBsSubjectToEarlyStatusTransfer_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToEarlyStatusTransfer_Item_ExtIEs (?); - // type enumerated EDT_Session { - // type octetstring EmergencyAreaID length (3); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; - // type record EmergencyAreaIDBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastNR_Item EmergencyAreaIDBroadcastNR; - // type record EmergencyAreaIDBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledEUTRA_Item EmergencyAreaIDCancelledEUTRA; - // type record EmergencyAreaIDCancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledNR_Item EmergencyAreaIDCancelledNR; - // type record EmergencyAreaIDCancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaID EmergencyAreaIDList; - // type record length (1 .. NGAP_Constants.maxnoofEAIforRestart) of EmergencyAreaID EmergencyAreaIDListForRestart; - // type record EmergencyFallbackIndicator { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyFallbackIndicator_ExtIEs (?); - // type enumerated EmergencyFallbackRequestIndicator { - // type enumerated EmergencyServiceTargetCN { - // type union ENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES ENB_ID_ExtIEs (?); - // type enumerated Enhanced_CoverageRestriction { - // type integer Extended_ConnectedTime (0 .. 255); - // type octetstring EN_DCSONConfigurationTransfer; - // type record EndpointIPAddressAndPort { - // type enumerated EndIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EndpointIPAddressAndPort_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of PLMNIdentity EquivalentPLMNs; - // type octetstring EPS_TAC length (2); - // type record EPS_TAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EPS_TAI_ExtIEs (?); - // type integer E_RAB_ID ( - // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of E_RABInformationItem E_RABInformationList; - // type record E_RABInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION E_RABInformationItem_ExtIEs ( - // type bitstring EUTRACellIdentity length (28); - // type record EUTRA_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinngeNB) of EUTRA_CGI EUTRA_CGIList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of EUTRA_CGI EUTRA_CGIListForWarning; - // type record EUTRA_PagingeDRXInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_PagingeDRXInformation_ExtIEs (?); - // type enumerated EUTRA_Paging_eDRX_Cycle { - // type enumerated EUTRA_Paging_Time_Window { - // type bitstring EUTRAencryptionAlgorithms length ( - // type bitstring EUTRAintegrityProtectionAlgorithms length ( - // type enumerated EventType { - // type record length (1 .. NGAP_Constants.maxnoofThresholdsForExcessPacketDelay) of ExcessPacketDelayThresholdItem ExcessPacketDelayThresholdConfiguration; - // type record ExcessPacketDelayThresholdItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExcessPacketDelayThresholdItem_ExtIEs (?); - // type enumerated ExcessPacketDelayThresholdValue { - // type integer ExpectedActivityPeriod ( - // type enumerated ExpectedHOInterval { - // type integer ExpectedIdlePeriod ( - // type record ExpectedUEActivityBehaviour { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEActivityBehaviour_ExtIEs (?); - // type record ExpectedUEBehaviour { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEBehaviour_ExtIEs (?); - // type enumerated ExpectedUEMobility { - // type record length (1 .. NGAP_Constants.maxnoofCellsUEMovingTrajectory) of ExpectedUEMovingTrajectoryItem ExpectedUEMovingTrajectory; - // type record ExpectedUEMovingTrajectoryItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEMovingTrajectoryItem_ExtIEs (?); - // type record Extended_AMFName { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_AMFName_ExtIEs (?); - // type integer ExtendedPacketDelayBudget ( - // type record Extended_RANNodeName { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_RANNodeName_ExtIEs (?); - // type record ExtendedRATRestrictionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExtendedRATRestrictionInformation_ExtIEs (?); - // type integer ExtendedRNC_ID (4096 .. 65535); - // type record length (1 .. NGAP_Constants.maxnoofExtSliceItems) of SliceSupportItem ExtendedSliceSupportList; - // type bitstring ExtendedUEIdentityIndexValue length (16); - // type union EventTrigger { - // type NGAP_Containers.NGAP_PROTOCOL_IES EventTrigger_ExtIEs (?); - // type record EventL1LoggedMDTConfig { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventL1LoggedMDTConfig_ExtIEs (?); - // type union MeasurementThresholdL1LoggedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_IES MeasurementThresholdL1LoggedMDT_ExtIEs (?); - // type record FailureIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FailureIndication_ExtIEs (?); - // type record FiveG_ProSeAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSeAuthorized_ExtIEs (?); - // type enumerated FiveGProSeDirectDiscovery { - // type enumerated FiveGProSeDirectCommunication { - // type enumerated FiveGProSeLayer2UEtoNetworkRelay { - // type enumerated FiveGProSeLayer3UEtoNetworkRelay { - // type enumerated FiveGProSeLayer2RemoteUE { - // type record FiveG_ProSePC5QoSParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSePC5QoSParameters_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of FiveGProSePC5QoSFlowItem FiveGProSePC5QoSFlowList; - // type record FiveGProSePC5QoSFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5QoSFlowItem_ExtIEs (?); - // type record FiveGProSePC5FlowBitRates { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5FlowBitRates_ExtIEs (?); - // type record FiveG_S_TMSI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_S_TMSI_ExtIEs (?); - // type octetstring FiveG_TMSI length (4); - // type integer FiveQI ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ForbiddenAreaInformation_Item ForbiddenAreaInformation; - // type record ForbiddenAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ForbiddenAreaInformation_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofForbTACs) of TAC ForbiddenTACs; - // type record FromEUTRANtoNGRAN { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromEUTRANtoNGRAN_ExtIEs (?); - // type record FromNGRANtoEUTRAN { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromNGRANtoEUTRAN_ExtIEs (?); - // type record GBR_QosInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GBR_QosInformation_ExtIEs ( - // type octetstring GlobalCable_ID; - // type record GlobalCable_ID_new { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); - // type record GlobalENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); - // type record GlobalGNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); - // type record GlobalN3IWF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); - // type record GlobalLine_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalLine_ID_ExtIEs ( - // type octetstring GlobalLineIdentity; - // type record GlobalNgENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); - - // type union GlobalRANNodeID { + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( + // type record BluetoothMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofBluetoothName) of BluetoothMeasConfigNameItem BluetoothMeasConfigNameList; + // type record BluetoothMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasConfigNameItem_ExtIEs (?); + // type enumerated BluetoothMeasConfig { + // type octetstring BluetoothName length (1 .. 248); + // type octetstring BurstArrivalTime; + // type bitstring CAG_ID length (32); + // type enumerated CancelAllWarningMessages { + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_EUTRA_Item CancelledCellsInEAI_EUTRA; + // type record CancelledCellsInEAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_NR_Item CancelledCellsInEAI_NR; + // type record CancelledCellsInEAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_EUTRA_Item CancelledCellsInTAI_EUTRA; + // type record CancelledCellsInTAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_NR_Item CancelledCellsInTAI_NR; + // type record CancelledCellsInTAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCandidateCells) of CandidateCellItem CandidateCellList; + // type record CandidateCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellItem_ExtIEs (?); + // type union CandidateCell { + // type NGAP_Containers.NGAP_PROTOCOL_IES CandidateCell_ExtIEs (?); + // type record CandidateCellID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellID_ExtIEs (?); + // type record CandidatePCI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidatePCI_ExtIEs (?); + // type union Cause { + // type NGAP_Containers.NGAP_PROTOCOL_IES Cause_ExtIEs (?); + // type enumerated CauseMisc { + // type enumerated CauseNas { + // type enumerated CauseProtocol { + // type enumerated CauseRadioNetwork { + // type enumerated CauseTransport { + // type record Cell_CAGInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Cell_CAGInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCAGSperCell) of CAG_ID CellCAGList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastEUTRA_Item CellIDBroadcastEUTRA; + // type record CellIDBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastNR_Item CellIDBroadcastNR; + // type record CellIDBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledEUTRA_Item CellIDCancelledEUTRA; + // type record CellIDCancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledNR_Item CellIDCancelledNR; + // type record CellIDCancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledNR_Item_ExtIEs (?); + // type union CellIDListForRestart { + // type NGAP_Containers.NGAP_PROTOCOL_IES CellIDListForRestart_ExtIEs (?); + // type enumerated CellSize { + // type record CellType { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellType_ExtIEs (?); + // type enumerated CEmodeBSupport_Indicator { + // type enumerated CEmodeBrestricted { + // type record CNAssistedRANTuning { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNAssistedRANTuning_ExtIEs (?); + // type integer CNsubgroupID ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of CNTypeRestrictionsForEquivalentItem CNTypeRestrictionsForEquivalent; + // type record CNTypeRestrictionsForEquivalentItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNTypeRestrictionsForEquivalentItem_ExtIEs (?); + // type enumerated CNTypeRestrictionsForServing { + // type octetstring CommonNetworkInstance; + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_EUTRA_Item CompletedCellsInEAI_EUTRA; + // type record CompletedCellsInEAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_NR_Item CompletedCellsInEAI_NR; + // type record CompletedCellsInEAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_EUTRA_Item CompletedCellsInTAI_EUTRA; + // type record CompletedCellsInTAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; + // type record CompletedCellsInTAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_NR_Item_ExtIEs (?); + // type enumerated ConcurrentWarningMessageInd { + // type enumerated ConfidentialityProtectionIndication { + // type enumerated ConfidentialityProtectionResult { + // type enumerated ConfiguredTACIndication { + // type record CoreNetworkAssistanceInformationForInactive { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CoreNetworkAssistanceInformationForInactive_ExtIEs ( + // type record COUNTValueForPDCP_SN12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); + // type record COUNTValueForPDCP_SN18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN18_ExtIEs (?); + // type octetstring CoverageEnhancementLevel; + // type union CPTransportLayerInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES CPTransportLayerInformation_ExtIEs ( + // type record CriticalityDiagnostics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofErrors) of CriticalityDiagnostics_IE_Item CriticalityDiagnostics_IE_List; + // type record CriticalityDiagnostics_IE_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_IE_Item_ExtIEs (?); + // type record CellBasedMDT_NR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_NR_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of NR_CGI CellIdListforMDT_NR; + // type record CellBasedMDT_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_EUTRA_ExtIEs (?); + // type record CellBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforQMC) of NGRAN_CGI CellIdListforQMC; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; + // type bitstring DataCodingScheme length (8); + // type enumerated DataForwardingAccepted { + // type enumerated DataForwardingNotPossible { + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; + // type record DataForwardingResponseDRBItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseDRBItem_ExtIEs (?); + // type record DAPSRequestInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSRequestInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DAPSResponseInfoItem DAPSResponseInfoList; + // type record DAPSResponseInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfoItem_ExtIEs (?); + // type record DAPSResponseInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of DataForwardingResponseERABListItem DataForwardingResponseERABList; + // type record DataForwardingResponseERABListItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseERABListItem_ExtIEs (?); + // type enumerated DelayCritical { + // type record DL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DL_CP_SecurityInformation_ExtIEs (?); + // type bitstring DL_NAS_MAC length (16); + // type enumerated DLForwarding { + // type enumerated DL_NGU_TNLInformationReused { + // type enumerated DirectForwardingPathAvailability { + // type integer DRB_ID ( + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToStatusTransferItem DRBsSubjectToStatusTransferList; + // type record DRBsSubjectToStatusTransferItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToStatusTransferItem_ExtIEs ( + // type union DRBStatusDL { + // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); + // type record DRBStatusDL12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL12_ExtIEs (?); + // type record DRBStatusDL18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL18_ExtIEs (?); + // type union DRBStatusUL { + // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusUL_ExtIEs (?); + // type record DRBStatusUL12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL12_ExtIEs (?); + // type record DRBStatusUL18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL18_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsToQosFlowsMappingItem DRBsToQosFlowsMappingList; + // type record DRBsToQosFlowsMappingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsToQosFlowsMappingItem_ExtIEs ( + // type record Dynamic5QIDescriptor { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Dynamic5QIDescriptor_ExtIEs ( + // type enumerated EarlyMeasurement { + // type record EarlyStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EarlyStatusTransfer_TransparentContainer_ExtIEs (?); + // type union ProcedureStageChoice { + // type NGAP_Containers.NGAP_PROTOCOL_IES ProcedureStageChoice_ExtIEs (?); + // type record FirstDLCount { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FirstDLCount_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToEarlyStatusTransfer_Item DRBsSubjectToEarlyStatusTransfer_List; + // type record DRBsSubjectToEarlyStatusTransfer_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToEarlyStatusTransfer_Item_ExtIEs (?); + // type enumerated EDT_Session { + // type octetstring EmergencyAreaID length (3); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; + // type record EmergencyAreaIDBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastNR_Item EmergencyAreaIDBroadcastNR; + // type record EmergencyAreaIDBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledEUTRA_Item EmergencyAreaIDCancelledEUTRA; + // type record EmergencyAreaIDCancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledNR_Item EmergencyAreaIDCancelledNR; + // type record EmergencyAreaIDCancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaID EmergencyAreaIDList; + // type record length (1 .. NGAP_Constants.maxnoofEAIforRestart) of EmergencyAreaID EmergencyAreaIDListForRestart; + // type record EmergencyFallbackIndicator { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyFallbackIndicator_ExtIEs (?); + // type enumerated EmergencyFallbackRequestIndicator { + // type enumerated EmergencyServiceTargetCN { + // type union ENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES ENB_ID_ExtIEs (?); + // type enumerated Enhanced_CoverageRestriction { + // type integer Extended_ConnectedTime (0 .. 255); + // type octetstring EN_DCSONConfigurationTransfer; + // type record EndpointIPAddressAndPort { + // type enumerated EndIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EndpointIPAddressAndPort_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of PLMNIdentity EquivalentPLMNs; + // type octetstring EPS_TAC length (2); + // type record EPS_TAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EPS_TAI_ExtIEs (?); + // type integer E_RAB_ID ( + // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of E_RABInformationItem E_RABInformationList; + // type record E_RABInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION E_RABInformationItem_ExtIEs ( + // type bitstring EUTRACellIdentity length (28); + // type record EUTRA_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinngeNB) of EUTRA_CGI EUTRA_CGIList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of EUTRA_CGI EUTRA_CGIListForWarning; + // type record EUTRA_PagingeDRXInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_PagingeDRXInformation_ExtIEs (?); + // type enumerated EUTRA_Paging_eDRX_Cycle { + // type enumerated EUTRA_Paging_Time_Window { + // type bitstring EUTRAencryptionAlgorithms length ( + // type bitstring EUTRAintegrityProtectionAlgorithms length ( + // type enumerated EventType { + // type record length (1 .. NGAP_Constants.maxnoofThresholdsForExcessPacketDelay) of ExcessPacketDelayThresholdItem ExcessPacketDelayThresholdConfiguration; + // type record ExcessPacketDelayThresholdItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExcessPacketDelayThresholdItem_ExtIEs (?); + // type enumerated ExcessPacketDelayThresholdValue { + // type integer ExpectedActivityPeriod ( + // type enumerated ExpectedHOInterval { + // type integer ExpectedIdlePeriod ( + // type record ExpectedUEActivityBehaviour { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEActivityBehaviour_ExtIEs (?); + // type record ExpectedUEBehaviour { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEBehaviour_ExtIEs (?); + // type enumerated ExpectedUEMobility { + // type record length (1 .. NGAP_Constants.maxnoofCellsUEMovingTrajectory) of ExpectedUEMovingTrajectoryItem ExpectedUEMovingTrajectory; + // type record ExpectedUEMovingTrajectoryItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEMovingTrajectoryItem_ExtIEs (?); + // type record Extended_AMFName { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_AMFName_ExtIEs (?); + // type integer ExtendedPacketDelayBudget ( + // type record Extended_RANNodeName { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_RANNodeName_ExtIEs (?); + // type record ExtendedRATRestrictionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExtendedRATRestrictionInformation_ExtIEs (?); + // type integer ExtendedRNC_ID (4096 .. 65535); + // type record length (1 .. NGAP_Constants.maxnoofExtSliceItems) of SliceSupportItem ExtendedSliceSupportList; + // type bitstring ExtendedUEIdentityIndexValue length (16); + // type union EventTrigger { + // type NGAP_Containers.NGAP_PROTOCOL_IES EventTrigger_ExtIEs (?); + // type record EventL1LoggedMDTConfig { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventL1LoggedMDTConfig_ExtIEs (?); + // type union MeasurementThresholdL1LoggedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_IES MeasurementThresholdL1LoggedMDT_ExtIEs (?); + // type record FailureIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FailureIndication_ExtIEs (?); + // type record FiveG_ProSeAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSeAuthorized_ExtIEs (?); + // type enumerated FiveGProSeDirectDiscovery { + // type enumerated FiveGProSeDirectCommunication { + // type enumerated FiveGProSeLayer2UEtoNetworkRelay { + // type enumerated FiveGProSeLayer3UEtoNetworkRelay { + // type enumerated FiveGProSeLayer2RemoteUE { + // type record FiveG_ProSePC5QoSParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSePC5QoSParameters_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of FiveGProSePC5QoSFlowItem FiveGProSePC5QoSFlowList; + // type record FiveGProSePC5QoSFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5QoSFlowItem_ExtIEs (?); + // type record FiveGProSePC5FlowBitRates { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5FlowBitRates_ExtIEs (?); + // type record FiveG_S_TMSI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_S_TMSI_ExtIEs (?); + // type octetstring FiveG_TMSI length (4); + // type integer FiveQI ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ForbiddenAreaInformation_Item ForbiddenAreaInformation; + // type record ForbiddenAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ForbiddenAreaInformation_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofForbTACs) of TAC ForbiddenTACs; + // type record FromEUTRANtoNGRAN { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromEUTRANtoNGRAN_ExtIEs (?); + // type record FromNGRANtoEUTRAN { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromNGRANtoEUTRAN_ExtIEs (?); + // type record GBR_QosInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GBR_QosInformation_ExtIEs ( + // type octetstring GlobalCable_ID; + // type record GlobalCable_ID_new { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); + // type record GlobalENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); + // type record GlobalGNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); + // type record GlobalN3IWF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); + // type record GlobalLine_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalLine_ID_ExtIEs ( + // type octetstring GlobalLineIdentity; + // type record GlobalNgENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); + + // type union GlobalRANNodeID { template GlobalRANNodeID m_ie_gRanNodeID := { globalGNB_ID := { pLMNIdentity := '010001'O, @@ -1387,557 +1387,557 @@ module LibNGAP_Templates { iE_Extensions := omit } }//end of template m_ie_gRanNodeID - - // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( - // type record GlobalTNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTNGF_ID_ExtIEs (?); - // type record GlobalTWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTWIF_ID_ExtIEs (?); - // type record GlobalW_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); - // type union GNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); - // type octetstring GTP_TEID length (4); - // type record GTPTunnel { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); - // type record GUAMI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); - // type enumerated GUAMIType { - // type record HandoverCommandTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( - // type enumerated HandoverFlag { - // type record HandoverPreparationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverPreparationUnsuccessfulTransfer_ExtIEs (?); - // type record HandoverRequestAcknowledgeTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequestAcknowledgeTransfer_ExtIEs ( - // type record HandoverRequiredTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequiredTransfer_ExtIEs (?); - // type record HandoverResourceAllocationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverResourceAllocationUnsuccessfulTransfer_ExtIEs (?); - // type enumerated HandoverType { - // type bitstring HashedUEIdentityIndexValue length ( - // type octetstring HFCNode_ID; - // type record HFCNode_ID_new { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HFCNode_ID_new_ExtIEs (?); - // type record HOReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HOReport_ExtIEs (?); - // type integer Hysteresis (0 .. 30); - // type enumerated IAB_Authorized { - // type enumerated IAB_Supported { - // type enumerated IABNodeIndication { - // type enumerated IMSVoiceSupportIndicator { - // type integer IndexToRFSP ( - // type record InfoOnRecommendedCellsAndRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InfoOnRecommendedCellsAndRANNodesForPaging_ExtIEs (?); - // type enumerated IntegrityProtectionIndication { - // type enumerated IntegrityProtectionResult { - // type integer IntendedNumberOfPagingAttempts ( - // type bitstring InterfacesToTrace length (8); - // type record ImmediateMDTNr { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ImmediateMDTNr_ExtIEs (?); - // type record InterSystemFailureIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemFailureIndication_ExtIEs (?); - // type record IntersystemSONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONConfigurationTransfer_ExtIEs (?); - // type union IntersystemSONTransferType { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONTransferType_ExtIEs (?); - // type record IntersystemSONeNBID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONeNBID_ExtIEs (?); - // type record IntersystemSONNGRANnodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONNGRANnodeID_ExtIEs (?); - // type union IntersystemSONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformation_ExtIEs ( - // type union IntersystemSONInformationRequest { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationRequest_ExtIEs (?); - // type record IntersystemCellActivationRequest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationRequest_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI CellsToActivateList; - // type record IntersystemResourceStatusRequest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusRequest_ExtIEs (?); - // type union ReportingSystem { - // type NGAP_Containers.NGAP_PROTOCOL_IES ReportingSystem_ExtIEs (?); - // type record EUTRAN_ReportingSystemIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingSystemIEs_ExtIEs (?); - // type record NGRAN_ReportingSystemIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingSystemIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellToReportItem EUTRAN_CellToReportList; - // type record EUTRAN_CellToReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellToReportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellToReportItem NGRAN_CellToReportList; - // type record NGRAN_CellToReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellToReportItem_ExtIEs (?); - // type bitstring ReportCharacteristics length (32); - // type union ReportType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ReportType_ExtIEs (?); - // type record EventBasedReportingIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventBasedReportingIEs_ExtIEs (?); - // type integer IntersystemResourceThreshold (0 .. 100); - // type enumerated NumberOfMeasurementReportingLevels { - // type record PeriodicReportingIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PeriodicReportingIEs_ExtIEs (?); - // type enumerated ReportingPeriodicity { - // type union IntersystemSONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReply_ExtIEs (?); - // type record IntersystemCellActivationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationReply_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI ActivatedCellList; - // type record IntersystemResourceStatusReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReply_ExtIEs (?); - // type union IntersystemSONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReport_ExtIEs ( - // type record IntersystemCellStateIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellStateIndication_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NotificationCell_Item NotificationCellList; - // type record NotificationCell_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NotificationCell_Item_ExtIEs (?); - // type record IntersystemResourceStatusReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReport_ExtIEs (?); - // type union ResourceStatusReportingSystem { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResourceStatusReportingSystem_ExtIEs (?); - // type record EUTRAN_ReportingStatusIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingStatusIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellReportItem EUTRAN_CellReportList; - // type record EUTRAN_CellReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellReportItem_ExtIEs (?); - // type record EUTRAN_CompositeAvailableCapacityGroup { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CompositeAvailableCapacityGroup_ExtIEs (?); - // type record CompositeAvailableCapacity { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompositeAvailableCapacity_ExtIEs (?); - // type integer EUTRAN_NumberOfActiveUEs ( - // type record EUTRAN_RadioResourceStatus { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_RadioResourceStatus_ExtIEs (?); - // type record NGRAN_ReportingStatusIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingStatusIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellReportItem NGRAN_CellReportList; - // type record NGRAN_CellReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellReportItem_ExtIEs (?); - // type integer NGRAN_NumberOfActiveUEs ( - // type integer NGRAN_NoofRRCConnections ( - // type record NGRAN_RadioResourceStatus { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_RadioResourceStatus_ExtIEs (?); - // type record InterSystemHOReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemHOReport_ExtIEs (?); - // type union InterSystemHandoverReportType { - // type NGAP_Containers.NGAP_PROTOCOL_IES InterSystemHandoverReportType_ExtIEs (?); - // type record IntersystemUnnecessaryHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemUnnecessaryHO_ExtIEs (?); - // type octetstring LAC length (2); - // type record LAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); - // type union LastVisitedCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES LastVisitedCellInformation_ExtIEs (?); - // type record LastVisitedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedCellItem_ExtIEs (?); - // type octetstring LastVisitedEUTRANCellInformation; - // type octetstring LastVisitedGERANCellInformation; - // type record LastVisitedNGRANCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedNGRANCellInformation_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPSCellsPerPrimaryCellinUEHistoryInfo) of LastVisitedPSCellInformation LastVisitedPSCellList; - // type record LastVisitedPSCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedPSCellInformation_ExtIEs (?); - // type octetstring LastVisitedUTRANCellInformation; - // type enumerated LineType { - // type enumerated LocationReportingAdditionalInfo { - // type integer LocationReportingReferenceID ( - // type record LocationReportingRequestType { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LocationReportingRequestType_ExtIEs ( - // type record LoggedMDTNr { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LoggedMDTNr_ExtIEs ( - // type enumerated LoggingInterval { - // type enumerated LoggingDuration { - // type enumerated Links_to_log { - // type union LoggedMDTTrigger { - // type NGAP_Containers.NGAP_PROTOCOL_IES LoggedMDTTrigger_ExtIEs (?); - // type enumerated LTEM_Indication { - // type octetstring LTEUERLFReportContainer; - // type record LTEV2XServicesAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEV2XServicesAuthorized_ExtIEs (?); - // type record LTEUESidelinkAggregateMaximumBitrate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEUE_Sidelink_Aggregate_MaximumBitrates_ExtIEs (?); - // type bitstring MaskedIMEISV length (64); - // type integer MaximumDataBurstVolume ( - // type bitstring MessageIdentifier length (16); - // type enumerated MaximumIntegrityProtectedDataRate { - // type integer MBS_AreaSessionID ( - // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_DataForwardingResponseMRBItem MBS_DataForwardingResponseMRBList; - // type record MBS_DataForwardingResponseMRBItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DataForwardingResponseMRBItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_MappingandDataForwardingRequestItem MBS_MappingandDataForwardingRequestList; - // type record MBS_MappingandDataForwardingRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_MappingandDataForwardingRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of QosFlowIdentifier MBS_QoSFlowList; - // type union MRB_ProgressInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES MRB_ProgressInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of MBS_QoSFlowsToBeSetupItem MBS_QoSFlowsToBeSetupList; - // type record MBS_QoSFlowsToBeSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_QoSFlowsToBeSetupItem_ExtIEs (?); - // type union MBS_ServiceArea { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_ServiceArea_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_ServiceAreaInformationItem MBS_ServiceAreaInformationList; - // type record MBS_ServiceAreaInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformationItem_ExtIEs (?); - // type record MBS_ServiceAreaInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsforMBS) of NR_CGI MBS_ServiceAreaCellList; - // type record length (1 .. NGAP_Constants.maxnoofTAIforMBS) of TAI MBS_ServiceAreaTAIList; - // type record MBS_SessionID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionID_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionFailedtoSetupItem MBSSessionFailedtoSetupList; - // type record MBSSessionFailedtoSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionFailedtoSetupItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_SourcetoTargetItem MBS_ActiveSessionInformation_SourcetoTargetList; - // type record MBS_ActiveSessionInformation_SourcetoTargetItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_SourcetoTargetItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_TargettoSourceItem MBS_ActiveSessionInformation_TargettoSourceList; - // type record MBS_ActiveSessionInformation_TargettoSourceItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_TargettoSourceItem_ExtIEs (?); - // type record MBSSessionSetupOrModFailureTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModFailureTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupResponseItem MBSSessionSetupResponseList; - // type record MBSSessionSetupResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupResponseItem_ExtIEs (?); - // type record MBSSessionSetupOrModRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBSSessionSetupOrModRequestTransferIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMBSFSAs) of MBS_SessionFSAID MBS_SessionFSAIDList; - // type octetstring MBS_SessionFSAID length (3); - // type record MBSSessionReleaseResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionReleaseResponseTransfer_ExtIEs (?); - // type record MBSSessionSetupOrModResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModResponseTransfer_ExtIEs (?); - // type enumerated MBS_SupportIndicator { - // type union MBS_SessionTNLInfo5GC { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfo5GC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfo5GCItem MBS_SessionTNLInfo5GCList; - // type record MBS_SessionTNLInfo5GCItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfo5GCItem_ExtIEs (?); - // type union MBS_SessionTNLInfoNGRAN { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfoNGRAN_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfoNGRANItem MBS_SessionTNLInfoNGRANList; - // type record MBS_SessionTNLInfoNGRANItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfoNGRANItem_ExtIEs (?); - // type record MBS_DistributionReleaseRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionReleaseRequesTransfer_ExtIEs (?); - // type record MBS_DistributionSetupRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupRequestTransfer_ExtIEs (?); - // type record MBS_DistributionSetupResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupResponseTransfer_ExtIEs (?); - // type record MBS_DistributionSetupUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupRequestItem MBSSessionSetupRequestList; - // type record MBSSessionSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetuporModifyRequestItem MBSSessionSetuporModifyRequestList; - // type record MBSSessionSetuporModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetuporModifyRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionToReleaseItem MBSSessionToReleaseList; - // type record MBSSessionToReleaseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionToReleaseItem_ExtIEs (?); - // type enumerated MBSSessionStatus { - // type enumerated MicoAllPLMN { - // type enumerated MICOModeIndication { - // type bitstring MobilityInformation length (16); - // type record MobilityRestrictionList { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MobilityRestrictionList_ExtIEs ( - // type union MDT_AlignmentInfo { - // type NGAP_Containers.NGAP_PROTOCOL_IES MDT_AlignmentInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNList; - // type record length (0 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNModificationList; - // type record MDT_Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_ExtIEs (?); - // type record MDT_Configuration_NR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_NR_ExtIEs (?); - // type record MDT_Configuration_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_EUTRA_ExtIEs (?); - // type enumerated MDT_Activation { - // type union MDTModeNr { - // type NGAP_Containers.NGAP_PROTOCOL_IES MDTModeNr_ExtIEs (?); - // type octetstring MDTModeEutra; - // type bitstring MeasurementsToActivate length (8); - // type integer MRB_ID ( - // type record MulticastSessionActivationRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionActivationRequestTransfer_ExtIEs (?); - // type record MulticastSessionDeactivationRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionDeactivationRequestTransfer_ExtIEs (?); - // type record MulticastSessionUpdateRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES MulticastSessionUpdateRequestTransferIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPagingAreas) of MulticastGroupPagingAreaItem MulticastGroupPagingAreaList; - // type record MulticastGroupPagingAreaItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingAreaItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAI MBS_AreaTAIList; - // type record MulticastGroupPagingArea { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingArea_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEsforPaging) of UE_PagingItem UE_PagingList; - // type record UE_PagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_PagingItem_ExtIEs (?); - // type record M1Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1Configuration_ExtIEs ( - // type enumerated IncludeBeamMeasurementsIndication { - // type integer MaxNrofRS_IndexesToReport ( - // type enumerated M1ReportingTrigger { - // type record M1ThresholdEventA2 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1ThresholdEventA2_ExtIEs (?); - // type union M1ThresholdType { - // type NGAP_Containers.NGAP_PROTOCOL_IES M1ThresholdType_ExtIEs (?); - // type record M1PeriodicReporting { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1PeriodicReporting_ExtIEs ( - // type record M4Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M4Configuration_ExtIEs ( - // type enumerated M4ReportAmountMDT { - // type enumerated M4period { - // type record M5Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M5Configuration_ExtIEs ( - // type enumerated M5ReportAmountMDT { - // type enumerated M5period { - // type record M6Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M6Configuration_ExtIEs ( - // type enumerated M6ReportAmountMDT { - // type enumerated M6report_Interval { - // type record M7Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M7Configuration_ExtIEs ( - // type enumerated M7ReportAmountMDT { - // type integer M7period ( - // type record MDT_Location_Info { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Location_Info_ExtIEs (?); - // type bitstring MDT_Location_Information length (8); - // type union N3IWF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); - // type octetstring NAS_PDU; - // type octetstring NASSecurityParametersFromNGRAN; - // type enumerated NB_IoT_DefaultPagingDRX { - // type enumerated NB_IoT_PagingDRX { - // type enumerated NB_IoT_Paging_eDRXCycle { - // type enumerated NB_IoT_Paging_TimeWindow { - // type record NB_IoT_Paging_eDRXInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); - // type integer NB_IoT_UEPriority ( - // type integer NetworkInstance ( - // type enumerated NewSecurityContextInd { - // type integer NextHopChainingCount (0 .. 7); - // type enumerated NextPagingAreaScope { - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; - // type record NGAPIESupportInformationRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; - // type record NGAPIESupportInformationResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); - // type union NgENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); - // type enumerated NotifySourceNGRANNode { - // type union NGRAN_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; - // type record NGRAN_TNLAssociationToRemoveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); - // type octetstring NGRANTraceID length (8); - // type bitstring NID length (44); - // type record NonDynamic5QIDescriptor { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; - // type enumerated NotificationCause { - // type enumerated NotificationControl { - // type union NPN_AccessInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); - // type union NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); - // type union NPN_PagingAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); - // type union NPN_Support { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); - // type bitstring NRCellIdentity length (36); - // type record NR_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; - // type record NR_PagingeDRXInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); - // type enumerated NR_Paging_eDRX_Cycle { - // type enumerated NR_Paging_Time_Window { - // type bitstring NRencryptionAlgorithms length ( - // type bitstring NRintegrityProtectionAlgorithms length ( - // type octetstring NRMobilityHistoryReport; - // type octetstring NRPPa_PDU; - // type octetstring NRUERLFReportContainer; - // type record NRNTNTAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); - // type integer NumberOfBroadcasts (0 .. 65535); - // type integer NumberOfBroadcastsRequested (0 .. 65535); - // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); - // type integer NRFrequencyBand ( - // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; - // type record NRFrequencyBandItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); - // type record NRFrequencyInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); - // type integer NR_PCI ( - // type record NRV2XServicesAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); - // type enumerated VehicleUE { - // type enumerated PedestrianUE { - // type record NRUESidelinkAggregateMaximumBitrate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); - // type integer NSAG_ID ( - // type enumerated OnboardingSupport { - // type enumerated OverloadAction { - // type union OverloadResponse { - // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; - // type record OverloadStartNSSAIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); - // type integer PacketDelayBudget ( - // type record PacketErrorRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); - // type integer PacketLossRate ( - // type record PagingAssisDataforCEcapabUE { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); - // type record PagingAttemptInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); - // type integer PagingAttemptCount ( - // type enumerated PagingCause { - // type enumerated PagingCauseIndicationForVoiceService { - - // type enumerated PagingDRX { + + // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( + // type record GlobalTNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTNGF_ID_ExtIEs (?); + // type record GlobalTWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTWIF_ID_ExtIEs (?); + // type record GlobalW_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); + // type union GNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); + // type octetstring GTP_TEID length (4); + // type record GTPTunnel { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); + // type record GUAMI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); + // type enumerated GUAMIType { + // type record HandoverCommandTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( + // type enumerated HandoverFlag { + // type record HandoverPreparationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverPreparationUnsuccessfulTransfer_ExtIEs (?); + // type record HandoverRequestAcknowledgeTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequestAcknowledgeTransfer_ExtIEs ( + // type record HandoverRequiredTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequiredTransfer_ExtIEs (?); + // type record HandoverResourceAllocationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverResourceAllocationUnsuccessfulTransfer_ExtIEs (?); + // type enumerated HandoverType { + // type bitstring HashedUEIdentityIndexValue length ( + // type octetstring HFCNode_ID; + // type record HFCNode_ID_new { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HFCNode_ID_new_ExtIEs (?); + // type record HOReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HOReport_ExtIEs (?); + // type integer Hysteresis (0 .. 30); + // type enumerated IAB_Authorized { + // type enumerated IAB_Supported { + // type enumerated IABNodeIndication { + // type enumerated IMSVoiceSupportIndicator { + // type integer IndexToRFSP ( + // type record InfoOnRecommendedCellsAndRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InfoOnRecommendedCellsAndRANNodesForPaging_ExtIEs (?); + // type enumerated IntegrityProtectionIndication { + // type enumerated IntegrityProtectionResult { + // type integer IntendedNumberOfPagingAttempts ( + // type bitstring InterfacesToTrace length (8); + // type record ImmediateMDTNr { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ImmediateMDTNr_ExtIEs (?); + // type record InterSystemFailureIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemFailureIndication_ExtIEs (?); + // type record IntersystemSONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONConfigurationTransfer_ExtIEs (?); + // type union IntersystemSONTransferType { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONTransferType_ExtIEs (?); + // type record IntersystemSONeNBID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONeNBID_ExtIEs (?); + // type record IntersystemSONNGRANnodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONNGRANnodeID_ExtIEs (?); + // type union IntersystemSONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformation_ExtIEs ( + // type union IntersystemSONInformationRequest { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationRequest_ExtIEs (?); + // type record IntersystemCellActivationRequest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationRequest_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI CellsToActivateList; + // type record IntersystemResourceStatusRequest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusRequest_ExtIEs (?); + // type union ReportingSystem { + // type NGAP_Containers.NGAP_PROTOCOL_IES ReportingSystem_ExtIEs (?); + // type record EUTRAN_ReportingSystemIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingSystemIEs_ExtIEs (?); + // type record NGRAN_ReportingSystemIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingSystemIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellToReportItem EUTRAN_CellToReportList; + // type record EUTRAN_CellToReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellToReportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellToReportItem NGRAN_CellToReportList; + // type record NGRAN_CellToReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellToReportItem_ExtIEs (?); + // type bitstring ReportCharacteristics length (32); + // type union ReportType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ReportType_ExtIEs (?); + // type record EventBasedReportingIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventBasedReportingIEs_ExtIEs (?); + // type integer IntersystemResourceThreshold (0 .. 100); + // type enumerated NumberOfMeasurementReportingLevels { + // type record PeriodicReportingIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PeriodicReportingIEs_ExtIEs (?); + // type enumerated ReportingPeriodicity { + // type union IntersystemSONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReply_ExtIEs (?); + // type record IntersystemCellActivationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationReply_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI ActivatedCellList; + // type record IntersystemResourceStatusReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReply_ExtIEs (?); + // type union IntersystemSONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReport_ExtIEs ( + // type record IntersystemCellStateIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellStateIndication_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NotificationCell_Item NotificationCellList; + // type record NotificationCell_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NotificationCell_Item_ExtIEs (?); + // type record IntersystemResourceStatusReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReport_ExtIEs (?); + // type union ResourceStatusReportingSystem { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResourceStatusReportingSystem_ExtIEs (?); + // type record EUTRAN_ReportingStatusIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingStatusIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellReportItem EUTRAN_CellReportList; + // type record EUTRAN_CellReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellReportItem_ExtIEs (?); + // type record EUTRAN_CompositeAvailableCapacityGroup { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CompositeAvailableCapacityGroup_ExtIEs (?); + // type record CompositeAvailableCapacity { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompositeAvailableCapacity_ExtIEs (?); + // type integer EUTRAN_NumberOfActiveUEs ( + // type record EUTRAN_RadioResourceStatus { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_RadioResourceStatus_ExtIEs (?); + // type record NGRAN_ReportingStatusIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingStatusIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellReportItem NGRAN_CellReportList; + // type record NGRAN_CellReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellReportItem_ExtIEs (?); + // type integer NGRAN_NumberOfActiveUEs ( + // type integer NGRAN_NoofRRCConnections ( + // type record NGRAN_RadioResourceStatus { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_RadioResourceStatus_ExtIEs (?); + // type record InterSystemHOReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemHOReport_ExtIEs (?); + // type union InterSystemHandoverReportType { + // type NGAP_Containers.NGAP_PROTOCOL_IES InterSystemHandoverReportType_ExtIEs (?); + // type record IntersystemUnnecessaryHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemUnnecessaryHO_ExtIEs (?); + // type octetstring LAC length (2); + // type record LAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); + // type union LastVisitedCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES LastVisitedCellInformation_ExtIEs (?); + // type record LastVisitedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedCellItem_ExtIEs (?); + // type octetstring LastVisitedEUTRANCellInformation; + // type octetstring LastVisitedGERANCellInformation; + // type record LastVisitedNGRANCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedNGRANCellInformation_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPSCellsPerPrimaryCellinUEHistoryInfo) of LastVisitedPSCellInformation LastVisitedPSCellList; + // type record LastVisitedPSCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedPSCellInformation_ExtIEs (?); + // type octetstring LastVisitedUTRANCellInformation; + // type enumerated LineType { + // type enumerated LocationReportingAdditionalInfo { + // type integer LocationReportingReferenceID ( + // type record LocationReportingRequestType { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LocationReportingRequestType_ExtIEs ( + // type record LoggedMDTNr { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LoggedMDTNr_ExtIEs ( + // type enumerated LoggingInterval { + // type enumerated LoggingDuration { + // type enumerated Links_to_log { + // type union LoggedMDTTrigger { + // type NGAP_Containers.NGAP_PROTOCOL_IES LoggedMDTTrigger_ExtIEs (?); + // type enumerated LTEM_Indication { + // type octetstring LTEUERLFReportContainer; + // type record LTEV2XServicesAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEV2XServicesAuthorized_ExtIEs (?); + // type record LTEUESidelinkAggregateMaximumBitrate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEUE_Sidelink_Aggregate_MaximumBitrates_ExtIEs (?); + // type bitstring MaskedIMEISV length (64); + // type integer MaximumDataBurstVolume ( + // type bitstring MessageIdentifier length (16); + // type enumerated MaximumIntegrityProtectedDataRate { + // type integer MBS_AreaSessionID ( + // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_DataForwardingResponseMRBItem MBS_DataForwardingResponseMRBList; + // type record MBS_DataForwardingResponseMRBItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DataForwardingResponseMRBItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_MappingandDataForwardingRequestItem MBS_MappingandDataForwardingRequestList; + // type record MBS_MappingandDataForwardingRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_MappingandDataForwardingRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of QosFlowIdentifier MBS_QoSFlowList; + // type union MRB_ProgressInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES MRB_ProgressInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of MBS_QoSFlowsToBeSetupItem MBS_QoSFlowsToBeSetupList; + // type record MBS_QoSFlowsToBeSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_QoSFlowsToBeSetupItem_ExtIEs (?); + // type union MBS_ServiceArea { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_ServiceArea_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_ServiceAreaInformationItem MBS_ServiceAreaInformationList; + // type record MBS_ServiceAreaInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformationItem_ExtIEs (?); + // type record MBS_ServiceAreaInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsforMBS) of NR_CGI MBS_ServiceAreaCellList; + // type record length (1 .. NGAP_Constants.maxnoofTAIforMBS) of TAI MBS_ServiceAreaTAIList; + // type record MBS_SessionID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionID_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionFailedtoSetupItem MBSSessionFailedtoSetupList; + // type record MBSSessionFailedtoSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionFailedtoSetupItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_SourcetoTargetItem MBS_ActiveSessionInformation_SourcetoTargetList; + // type record MBS_ActiveSessionInformation_SourcetoTargetItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_SourcetoTargetItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_TargettoSourceItem MBS_ActiveSessionInformation_TargettoSourceList; + // type record MBS_ActiveSessionInformation_TargettoSourceItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_TargettoSourceItem_ExtIEs (?); + // type record MBSSessionSetupOrModFailureTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModFailureTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupResponseItem MBSSessionSetupResponseList; + // type record MBSSessionSetupResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupResponseItem_ExtIEs (?); + // type record MBSSessionSetupOrModRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBSSessionSetupOrModRequestTransferIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMBSFSAs) of MBS_SessionFSAID MBS_SessionFSAIDList; + // type octetstring MBS_SessionFSAID length (3); + // type record MBSSessionReleaseResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionReleaseResponseTransfer_ExtIEs (?); + // type record MBSSessionSetupOrModResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModResponseTransfer_ExtIEs (?); + // type enumerated MBS_SupportIndicator { + // type union MBS_SessionTNLInfo5GC { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfo5GC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfo5GCItem MBS_SessionTNLInfo5GCList; + // type record MBS_SessionTNLInfo5GCItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfo5GCItem_ExtIEs (?); + // type union MBS_SessionTNLInfoNGRAN { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfoNGRAN_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfoNGRANItem MBS_SessionTNLInfoNGRANList; + // type record MBS_SessionTNLInfoNGRANItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfoNGRANItem_ExtIEs (?); + // type record MBS_DistributionReleaseRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionReleaseRequesTransfer_ExtIEs (?); + // type record MBS_DistributionSetupRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupRequestTransfer_ExtIEs (?); + // type record MBS_DistributionSetupResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupResponseTransfer_ExtIEs (?); + // type record MBS_DistributionSetupUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupRequestItem MBSSessionSetupRequestList; + // type record MBSSessionSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetuporModifyRequestItem MBSSessionSetuporModifyRequestList; + // type record MBSSessionSetuporModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetuporModifyRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionToReleaseItem MBSSessionToReleaseList; + // type record MBSSessionToReleaseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionToReleaseItem_ExtIEs (?); + // type enumerated MBSSessionStatus { + // type enumerated MicoAllPLMN { + // type enumerated MICOModeIndication { + // type bitstring MobilityInformation length (16); + // type record MobilityRestrictionList { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MobilityRestrictionList_ExtIEs ( + // type union MDT_AlignmentInfo { + // type NGAP_Containers.NGAP_PROTOCOL_IES MDT_AlignmentInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNList; + // type record length (0 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNModificationList; + // type record MDT_Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_ExtIEs (?); + // type record MDT_Configuration_NR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_NR_ExtIEs (?); + // type record MDT_Configuration_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_EUTRA_ExtIEs (?); + // type enumerated MDT_Activation { + // type union MDTModeNr { + // type NGAP_Containers.NGAP_PROTOCOL_IES MDTModeNr_ExtIEs (?); + // type octetstring MDTModeEutra; + // type bitstring MeasurementsToActivate length (8); + // type integer MRB_ID ( + // type record MulticastSessionActivationRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionActivationRequestTransfer_ExtIEs (?); + // type record MulticastSessionDeactivationRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionDeactivationRequestTransfer_ExtIEs (?); + // type record MulticastSessionUpdateRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES MulticastSessionUpdateRequestTransferIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPagingAreas) of MulticastGroupPagingAreaItem MulticastGroupPagingAreaList; + // type record MulticastGroupPagingAreaItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingAreaItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAI MBS_AreaTAIList; + // type record MulticastGroupPagingArea { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingArea_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEsforPaging) of UE_PagingItem UE_PagingList; + // type record UE_PagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_PagingItem_ExtIEs (?); + // type record M1Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1Configuration_ExtIEs ( + // type enumerated IncludeBeamMeasurementsIndication { + // type integer MaxNrofRS_IndexesToReport ( + // type enumerated M1ReportingTrigger { + // type record M1ThresholdEventA2 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1ThresholdEventA2_ExtIEs (?); + // type union M1ThresholdType { + // type NGAP_Containers.NGAP_PROTOCOL_IES M1ThresholdType_ExtIEs (?); + // type record M1PeriodicReporting { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1PeriodicReporting_ExtIEs ( + // type record M4Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M4Configuration_ExtIEs ( + // type enumerated M4ReportAmountMDT { + // type enumerated M4period { + // type record M5Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M5Configuration_ExtIEs ( + // type enumerated M5ReportAmountMDT { + // type enumerated M5period { + // type record M6Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M6Configuration_ExtIEs ( + // type enumerated M6ReportAmountMDT { + // type enumerated M6report_Interval { + // type record M7Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M7Configuration_ExtIEs ( + // type enumerated M7ReportAmountMDT { + // type integer M7period ( + // type record MDT_Location_Info { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Location_Info_ExtIEs (?); + // type bitstring MDT_Location_Information length (8); + // type union N3IWF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); + // type octetstring NAS_PDU; + // type octetstring NASSecurityParametersFromNGRAN; + // type enumerated NB_IoT_DefaultPagingDRX { + // type enumerated NB_IoT_PagingDRX { + // type enumerated NB_IoT_Paging_eDRXCycle { + // type enumerated NB_IoT_Paging_TimeWindow { + // type record NB_IoT_Paging_eDRXInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); + // type integer NB_IoT_UEPriority ( + // type integer NetworkInstance ( + // type enumerated NewSecurityContextInd { + // type integer NextHopChainingCount (0 .. 7); + // type enumerated NextPagingAreaScope { + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; + // type record NGAPIESupportInformationRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; + // type record NGAPIESupportInformationResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); + // type union NgENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); + // type enumerated NotifySourceNGRANNode { + // type union NGRAN_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; + // type record NGRAN_TNLAssociationToRemoveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); + // type octetstring NGRANTraceID length (8); + // type bitstring NID length (44); + // type record NonDynamic5QIDescriptor { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; + // type enumerated NotificationCause { + // type enumerated NotificationControl { + // type union NPN_AccessInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); + // type union NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); + // type union NPN_PagingAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); + // type union NPN_Support { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); + // type bitstring NRCellIdentity length (36); + // type record NR_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; + // type record NR_PagingeDRXInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); + // type enumerated NR_Paging_eDRX_Cycle { + // type enumerated NR_Paging_Time_Window { + // type bitstring NRencryptionAlgorithms length ( + // type bitstring NRintegrityProtectionAlgorithms length ( + // type octetstring NRMobilityHistoryReport; + // type octetstring NRPPa_PDU; + // type octetstring NRUERLFReportContainer; + // type record NRNTNTAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); + // type integer NumberOfBroadcasts (0 .. 65535); + // type integer NumberOfBroadcastsRequested (0 .. 65535); + // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); + // type integer NRFrequencyBand ( + // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; + // type record NRFrequencyBandItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); + // type record NRFrequencyInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); + // type integer NR_PCI ( + // type record NRV2XServicesAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); + // type enumerated VehicleUE { + // type enumerated PedestrianUE { + // type record NRUESidelinkAggregateMaximumBitrate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); + // type integer NSAG_ID ( + // type enumerated OnboardingSupport { + // type enumerated OverloadAction { + // type union OverloadResponse { + // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; + // type record OverloadStartNSSAIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); + // type integer PacketDelayBudget ( + // type record PacketErrorRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); + // type integer PacketLossRate ( + // type record PagingAssisDataforCEcapabUE { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); + // type record PagingAttemptInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); + // type integer PagingAttemptCount ( + // type enumerated PagingCause { + // type enumerated PagingCauseIndicationForVoiceService { + + // type enumerated PagingDRX { template PagingDRX m_ie_defaultPagingDRX (PagingDRX p_drx:=v256):= p_drx; - - // type enumerated PagingOrigin { - // type enumerated PagingPriority { - // type enumerated PagingProbabilityInformation { - // type record PathSwitchRequestAcknowledgeTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( - // type record PathSwitchRequestSetupFailedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); - // type record PathSwitchRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( - // type record PathSwitchRequestUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); - // type record PC5QoSParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; - // type record PC5QoSFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); - // type record PC5FlowBitRates { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; - // type enumerated PrivacyIndicator { - // type record PDUSessionAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); - // type integer PDUSessionID (0 .. 255); - // type integer PDUSessionPairID ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; - // type record PDUSessionResourceAdmittedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; - // type record PDUSessionResourceFailedToModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; - // type record PDUSessionResourceFailedToModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; - // type record PDUSessionResourceFailedToResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; - // type record PDUSessionResourceFailedToResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; - // type record PDUSessionResourceFailedToSetupItemCxtFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; - // type record PDUSessionResourceFailedToSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; - // type record PDUSessionResourceFailedToSetupItemHOAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; - // type record PDUSessionResourceFailedToSetupItemPSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; - // type record PDUSessionResourceFailedToSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; - // type record PDUSessionResourceHandoverItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; - // type record PDUSessionResourceInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; - // type record PDUSessionResourceItemCxtRelCpl { - // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; - // type record PDUSessionResourceItemCxtRelReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; - // type record PDUSessionResourceItemHORqd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); - // type record PDUSessionResourceModifyConfirmTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); - // type record PDUSessionResourceModifyRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( - // type record PDUSessionResourceModifyResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; - // type record PDUSessionResourceModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; - // type record PDUSessionResourceModifyItemModInd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; - // type record PDUSessionResourceModifyItemModReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; - // type record PDUSessionResourceModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); - // type record PDUSessionResourceModifyUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; - // type record PDUSessionResourceNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); - // type record PDUSessionResourceNotifyReleasedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( - // type record PDUSessionResourceNotifyTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( - // type record PDUSessionResourceReleaseCommandTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; - // type record PDUSessionResourceReleasedItemNot { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; - // type record PDUSessionResourceReleasedItemPSAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; - // type record PDUSessionResourceReleasedItemPSFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; - // type record PDUSessionResourceReleasedItemRelRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); - // type record PDUSessionResourceReleaseResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; - // type record PDUSessionResourceResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; - // type record PDUSessionResourceResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; - // type record PDUSessionResourceSecondaryRATUsageItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; - // type record PDUSessionResourceSetupItemCxtReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; - // type record PDUSessionResourceSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; - // type record PDUSessionResourceSetupItemHOReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( - - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; + + // type enumerated PagingOrigin { + // type enumerated PagingPriority { + // type enumerated PagingProbabilityInformation { + // type record PathSwitchRequestAcknowledgeTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( + // type record PathSwitchRequestSetupFailedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); + // type record PathSwitchRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( + // type record PathSwitchRequestUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); + // type record PC5QoSParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; + // type record PC5QoSFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); + // type record PC5FlowBitRates { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; + // type enumerated PrivacyIndicator { + // type record PDUSessionAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); + // type integer PDUSessionID (0 .. 255); + // type integer PDUSessionPairID ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; + // type record PDUSessionResourceAdmittedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; + // type record PDUSessionResourceFailedToModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; + // type record PDUSessionResourceFailedToModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; + // type record PDUSessionResourceFailedToResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; + // type record PDUSessionResourceFailedToResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; + // type record PDUSessionResourceFailedToSetupItemCxtFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; + // type record PDUSessionResourceFailedToSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; + // type record PDUSessionResourceFailedToSetupItemHOAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; + // type record PDUSessionResourceFailedToSetupItemPSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; + // type record PDUSessionResourceFailedToSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; + // type record PDUSessionResourceHandoverItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; + // type record PDUSessionResourceInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; + // type record PDUSessionResourceItemCxtRelCpl { + // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; + // type record PDUSessionResourceItemCxtRelReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; + // type record PDUSessionResourceItemHORqd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); + // type record PDUSessionResourceModifyConfirmTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); + // type record PDUSessionResourceModifyRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( + // type record PDUSessionResourceModifyResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; + // type record PDUSessionResourceModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; + // type record PDUSessionResourceModifyItemModInd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; + // type record PDUSessionResourceModifyItemModReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; + // type record PDUSessionResourceModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); + // type record PDUSessionResourceModifyUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; + // type record PDUSessionResourceNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); + // type record PDUSessionResourceNotifyReleasedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( + // type record PDUSessionResourceNotifyTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( + // type record PDUSessionResourceReleaseCommandTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; + // type record PDUSessionResourceReleasedItemNot { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; + // type record PDUSessionResourceReleasedItemPSAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; + // type record PDUSessionResourceReleasedItemPSFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; + // type record PDUSessionResourceReleasedItemRelRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); + // type record PDUSessionResourceReleaseResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; + // type record PDUSessionResourceResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; + // type record PDUSessionResourceResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; + // type record PDUSessionResourceSecondaryRATUsageItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; + // type record PDUSessionResourceSetupItemCxtReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; + // type record PDUSessionResourceSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; + // type record PDUSessionResourceSetupItemHOReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( + + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; template PDUSessionResourceSetupListSUReq m_ie_pDUSessionResourceSetupListSUReq(in template PDUSessionResourceSetupListSUReq p_list):= p_list; - - // type record PDUSessionResourceSetupItemSUReq { + + // type record PDUSessionResourceSetupItemSUReq { template PDUSessionResourceSetupItemSUReq m_ie_pDUSessionResourceSetupItemSUReq( in template PDUSessionID p_pDUSessId, in template NAS_PDU p_nASPdu:=omit, @@ -1950,1870 +1950,1992 @@ module LibNGAP_Templates { pDUSessionResourceSetupRequestTransfer := p_pduSessResSetReqTra, iE_Extensions:=omit }//end of template m_ie_pDUSessionResourceSetupItemSUReq + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; + // type record PDUSessionResourceSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; - // type record PDUSessionResourceSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); - // type record PDUSessionResourceSetupRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( - // type record PDUSessionResourceSetupResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( - // type record PDUSessionResourceSetupUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; - // type record PDUSessionResourceSuspendItemSUSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; - // type record PDUSessionResourceSwitchedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; - // type record PDUSessionResourceToBeSwitchedDLItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; - // type record PDUSessionResourceToReleaseItemHOCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; - // type record PDUSessionResourceToReleaseItemRelCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); - // type enumerated PDUSessionType { - // type record PDUSessionUsageReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); - // type record PEIPSassistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); - // type integer Periodicity ( - // type bitstring PeriodicRegistrationUpdateTimer length (8); - - // type octetstring PLMNIdentity length (3); - template PLMNIdentity m_ie_pLMNIdentity(PLMNIdentity p_val):=p_val; + // type record PDUSessionResourceSetupRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( + template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTr( + in template UPTransportLayerInformation p_utli, + in template PDUSessionType p_pst, + in template QosFlowSetupRequestList p_qfsrl + ):={ + PDUSessionResourceSetupRequestTransferIEs:={ + protocolIEs:={ + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + Value := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", + //presence := NGAP_CommonDataTypes.optional_ + } + }}} + //protocolIEs := { pDUSessionResourceSetupRequestTransferIEs:={}}}} +// { +// id := NGAP_Constants.id_PDUSessionAggregateMaximumBitRate, +// criticality := NGAP_CommonDataTypes.reject, +// Value := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_UL_NGU_UP_TNLInformation, +// criticality := NGAP_CommonDataTypes.reject, +// Value := { uPTransportLayerInformation := p_utli} +// //presence := NGAP_CommonDataTypes.mandatory +// }, +// { +// id := NGAP_Constants.id_AdditionalUL_NGU_UP_TNLInformation, +// criticality := NGAP_CommonDataTypes.reject, +// Value := omit //"NGAP_IEs.UPTransportLayerInformationList", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_DataForwardingNotPossible, +// criticality := NGAP_CommonDataTypes.reject, +// Value := omit //"NGAP_IEs.DataForwardingNotPossible", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_PDUSessionType, +// criticality := NGAP_CommonDataTypes.reject, +// Value := { pDUSessionType := p_pst} +// //presence := NGAP_CommonDataTypes.mandatory +// }, +// { +// id := NGAP_Constants.id_SecurityIndication, +// criticality := NGAP_CommonDataTypes.reject, +// Value := omit //"NGAP_IEs.SecurityIndication", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_NetworkInstance, +// criticality := NGAP_CommonDataTypes.reject, +// Value := omit //"NGAP_IEs.NetworkInstance", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_QosFlowSetupRequestList, +// criticality := NGAP_CommonDataTypes.reject, +// Value := { qosFlowSetupRequestList := p_qfsrl} +// //presence := NGAP_CommonDataTypes.mandatory +// }, +// { +// id := NGAP_Constants.id_CommonNetworkInstance, +// criticality := NGAP_CommonDataTypes.ignore, +// Value := omit //"NGAP_IEs.CommonNetworkInstance", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_DirectForwardingPathAvailability, +// criticality := NGAP_CommonDataTypes.ignore, +// Value := omit //"NGAP_IEs.DirectForwardingPathAvailability", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_RedundantUL_NGU_UP_TNLInformation, +// criticality := NGAP_CommonDataTypes.ignore, +// Value := omit //"NGAP_IEs.UPTransportLayerInformation", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_AdditionalRedundantUL_NGU_UP_TNLInformation, +// criticality := NGAP_CommonDataTypes.ignore, +// Value := omit //"NGAP_IEs.UPTransportLayerInformationList", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_RedundantCommonNetworkInstance, +// criticality := NGAP_CommonDataTypes.ignore, +// Value := omit //"NGAP_IEs.CommonNetworkInstance", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_RedundantPDUSessionInformation, +// criticality := NGAP_CommonDataTypes.ignore, +// Value := omit //"NGAP_IEs.RedundantPDUSessionInformation", +// //presence := NGAP_CommonDataTypes.optional_ +// }, +// { +// id := NGAP_Constants.id_MBSSessionSetupRequestList, +// criticality := NGAP_CommonDataTypes.ignore, +// Value := omit //"NGAP_IEs.MBSSessionSetupRequestList", +// //presence := NGAP_CommonDataTypes.optional_ +// } +// } +// +// } +// }//end of template m_ie_pDUSessResSetReqTr - // type record PLMNAreaBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; - // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; - // type record PLMNSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( - // type record PNI_NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); - // type octetstring PortNumber length (2); - // type enumerated Pre_emptionCapability { - // type enumerated Pre_emptionVulnerability { - // type integer PriorityLevelARP (1 .. 15); - // type integer PriorityLevelQos ( - // type union PWSFailedCellIDList { - // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); - // type record QMCConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); - // type record QMCDeactivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; - // type octetstring QoEReference length (6); - // type union QosCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; - // type record QosFlowAcceptedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; - // type record QosFlowAddOrModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; - // type record QosFlowAddOrModifyResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; - // type record QosFlowFeedbackItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); - // type integer QosFlowIdentifier ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; - // type record QosFlowInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( - // type record QosFlowLevelQosParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( - // type enumerated QosMonitoringRequest { - // type integer QosMonitoringReportingFrequency ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; - // type record QosFlowWithCauseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; - // type record QosFlowModifyConfirmItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; - // type record QosFlowNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; - // type record QosFlowParametersItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( - // type record QosFlowPerTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; - // type record QosFlowPerTNLInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; - // type record QosFlowSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; - // type record QosFlowItemWithDataForwarding { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; - // type record QosFlowToBeForwardedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; - // type record QoSFlowsUsageReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); - // type enumerated Range { - // type ASNAUX.PrintableString RANNodeName length ( - // type ASNAUX.VisibleString RANNodeNameVisibleString length ( - // type ASNAUX.UTF8String RANNodeNameUTF8String length ( - // type integer RANPagingPriority (1 .. 256); - // type record RANStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); + // type record PDUSessionResourceSetupResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( + // type record PDUSessionResourceSetupUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; + // type record PDUSessionResourceSuspendItemSUSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; + // type record PDUSessionResourceSwitchedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; + // type record PDUSessionResourceToBeSwitchedDLItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; + // type record PDUSessionResourceToReleaseItemHOCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; + // type record PDUSessionResourceToReleaseItemRelCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); + // type enumerated PDUSessionType { + // type record PDUSessionUsageReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); + // type record PEIPSassistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); + // type integer Periodicity ( + // type bitstring PeriodicRegistrationUpdateTimer length (8); + + // type octetstring PLMNIdentity length (3); + template PLMNIdentity m_ie_pLMNIdentity(PLMNIdentity p_val):=p_val; + + // type record PLMNAreaBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; + // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; + // type record PLMNSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( + // type record PNI_NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); + // type octetstring PortNumber length (2); + // type enumerated Pre_emptionCapability { + // type enumerated Pre_emptionVulnerability { + // type integer PriorityLevelARP (1 .. 15); + // type integer PriorityLevelQos ( + // type union PWSFailedCellIDList { + // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); + // type record QMCConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); + // type record QMCDeactivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; + // type octetstring QoEReference length (6); + // type union QosCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; + // type record QosFlowAcceptedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; + // type record QosFlowAddOrModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; + // type record QosFlowAddOrModifyResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; + // type record QosFlowFeedbackItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); + // type integer QosFlowIdentifier ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; + // type record QosFlowInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( + // type record QosFlowLevelQosParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( + // type enumerated QosMonitoringRequest { + // type integer QosMonitoringReportingFrequency ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; + // type record QosFlowWithCauseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; + // type record QosFlowModifyConfirmItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; + // type record QosFlowNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; + // type record QosFlowParametersItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( + // type record QosFlowPerTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; + // type record QosFlowPerTNLInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; + // type record QosFlowSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; + // type record QosFlowItemWithDataForwarding { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; + // type record QosFlowToBeForwardedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; + // type record QoSFlowsUsageReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); + // type enumerated Range { + // type ASNAUX.PrintableString RANNodeName length ( + // type ASNAUX.VisibleString RANNodeNameVisibleString length ( + // type ASNAUX.UTF8String RANNodeNameUTF8String length ( + // type integer RANPagingPriority (1 .. 256); + // type record RANStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); + // type integer RAN_UE_NGAP_ID (0 .. 4294967295); template RAN_UE_NGAP_ID m_ie_rANUeNgapId(integer p_val:=1) := p_val; - - // type enumerated RAT_Information { - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; - // type record RATRestrictions_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( - // type bitstring RATRestrictionInformation length ( - // type record RecommendedCellsForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; - // type record RecommendedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); - // type record RecommendedRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; - // type record RecommendedRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); - // type enumerated RedCapIndication { - // type enumerated RedirectionVoiceFallback { - // type record RedundantPDUSessionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( - // type enumerated RedundantQosFlowIndicator { - // type enumerated ReflectiveQosAttribute { - // type integer RelativeAMFCapacity (0 .. 255); - // type enumerated ReportArea { - // type integer RepetitionPeriod (0 .. 131071); - // type enumerated ResetAll { - // type enumerated ReportAmountMDT { - // type enumerated ReportIntervalMDT { - // type enumerated ExtendedReportIntervalMDT { - // type union ResetType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); - // type octetstring RGLevelWirelineAccessCharacteristics; - // type integer RNC_ID (0 .. 4095); - // type octetstring RoutingID; - // type octetstring RRCContainer; - // type enumerated RRCEstablishmentCause { - // type enumerated RRCInactiveTransitionReportRequest { - // type enumerated RRCState { - // type enumerated RSN { - // type record RIMInformationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); - // type record RIMInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); - // type bitstring GNBSetID length (22); - // type record ScheduledCommunicationTime { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; - // type octetstring SD length (3); - // type record SecondaryRATUsageInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); - // type record SecondaryRATDataUsageReportTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); - // type record SecurityContext { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); - // type record SecurityIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( - // type bitstring SecurityKey length (256); - // type record SecurityResult { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); - // type record SensorMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; - // type record SensorMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); - // type enumerated SensorMeasConfig { - // type union SensorNameConfig { - // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); - // type bitstring SerialNumber length (16); - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; - // type record ServedGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; - // type record ServiceAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); - // type enumerated ServiceType { - // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); - // type record SharedNGU_MulticastTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; - // type record SliceOverloadItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); - - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; + + // type enumerated RAT_Information { + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; + // type record RATRestrictions_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( + // type bitstring RATRestrictionInformation length ( + // type record RecommendedCellsForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; + // type record RecommendedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); + // type record RecommendedRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; + // type record RecommendedRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); + // type enumerated RedCapIndication { + // type enumerated RedirectionVoiceFallback { + // type record RedundantPDUSessionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( + // type enumerated RedundantQosFlowIndicator { + // type enumerated ReflectiveQosAttribute { + // type integer RelativeAMFCapacity (0 .. 255); + // type enumerated ReportArea { + // type integer RepetitionPeriod (0 .. 131071); + // type enumerated ResetAll { + // type enumerated ReportAmountMDT { + // type enumerated ReportIntervalMDT { + // type enumerated ExtendedReportIntervalMDT { + // type union ResetType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); + // type octetstring RGLevelWirelineAccessCharacteristics; + // type integer RNC_ID (0 .. 4095); + // type octetstring RoutingID; + // type octetstring RRCContainer; + // type enumerated RRCEstablishmentCause { + // type enumerated RRCInactiveTransitionReportRequest { + // type enumerated RRCState { + // type enumerated RSN { + // type record RIMInformationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); + // type record RIMInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); + // type bitstring GNBSetID length (22); + // type record ScheduledCommunicationTime { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; + + // type octetstring SD length (3); + template SD m_ie_sD(SD p_val) := p_val; + + // type record SecondaryRATUsageInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); + // type record SecondaryRATDataUsageReportTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); + // type record SecurityContext { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); + // type record SecurityIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( + // type bitstring SecurityKey length (256); + // type record SecurityResult { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); + // type record SensorMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; + // type record SensorMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); + // type enumerated SensorMeasConfig { + // type union SensorNameConfig { + // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); + // type bitstring SerialNumber length (16); + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; + // type record ServedGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; + // type record ServiceAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); + // type enumerated ServiceType { + // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); + // type record SharedNGU_MulticastTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; + // type record SliceOverloadItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); + + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; template SliceSupportList m_ie_sliceSupportList(in template SliceSupportList p_list):=p_list; - - // type record SliceSupportItem { + + // type record SliceSupportItem { template SliceSupportItem m_ie_sliceSupportItem( in template S_NSSAI p_S_NSSAI ):={ s_NSSAI := p_S_NSSAI, iE_Extensions :=omit }//end of template m_ie_sliceSupportItem - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; - // type record SliceSupportQMC_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); - // type record SNPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); - // type record S_NSSAI { - template S_NSSAI m_ie_sNSSAI:={ - sST := '00'O, - sD := '000000'O, + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; + // type record SliceSupportQMC_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); + // type record SNPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); + // type record S_NSSAI { + template S_NSSAI m_ie_sNSSAI( + in template SST p_sST, + in template SD p_sD + ):={ + sST := p_sST,//'00'O, + sD := p_sD,//'000000'O, iE_Extensions := omit }//end of template m_ie_sNSSAI - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); - // type record SONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); - // type union SONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( - // type record SONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); - // type union SONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; - // type record SuccessfulHandoverReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); - // type enumerated SONInformationRequest { - // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( - // type union SourceNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); - // type enumerated SourceOfUEActivityBehaviourInformation { - // type record SourceRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); - // type octetstring SourceToTarget_TransparentContainer; - // type record SourceToTarget_AMFInformationReroute { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); - // type enumerated SRVCCOperationPossible { - // type octetstring ConfiguredNSSAI length (128); - // type octetstring RejectedNSSAIinPLMN length (32); - // type octetstring RejectedNSSAIinTA length (32); - // type octetstring SST length (1); - + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); + // type record SONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); + // type union SONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( + // type record SONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); + // type union SONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; + // type record SuccessfulHandoverReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); + // type enumerated SONInformationRequest { + // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( + // type union SourceNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); + // type enumerated SourceOfUEActivityBehaviourInformation { + // type record SourceRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); + // type octetstring SourceToTarget_TransparentContainer; + // type record SourceToTarget_AMFInformationReroute { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); + // type enumerated SRVCCOperationPossible { + // type octetstring ConfiguredNSSAI length (128); + // type octetstring RejectedNSSAIinPLMN length (32); + // type octetstring RejectedNSSAIinTA length (32); + // type octetstring SST length (1); + template SST m_ie_sST(SST p_val):=p_val; + // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; template SupportedTAList m_ie_supportedTAList(in template SupportedTAList p_list):= p_list; - - // type record SupportedTAItem { + + // type record SupportedTAItem { template SupportedTAItem m_ie_supportedTAItem( in template TAC p_tAC, in template BroadcastPLMNList p_broadcastPLMNList ):={ - tAC := '000001'O, + tAC := p_tAC, broadcastPLMNList := p_broadcastPLMNList, iE_Extensions :=omit - }//end of template m_ie_supportedTAItem - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( - - // type enumerated SuspendIndicator { - // type enumerated Suspend_Request_Indication { - // type enumerated Suspend_Response_Indication { - // type integer SurvivalTime ( - // type octetstring TAC length (3); - // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; - // type record TAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; - // type record TAIBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; - // type record TAIBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; - // type record TAICancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; - // type record TAICancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; - // type record TAIListForInactiveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; - // type record TAIListForPagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; - // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; - // type record TAINSAGSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); - // type record TargeteNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); - // type record TargetHomeENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); - // type union TargetID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; - // type record TargetNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); - // type record TargetNSSAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); - // type record TargetRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); - // type record TargetRANNodeID_RIM { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); - // type record TargetRANNodeID_SON { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( - // type record TargetRNC_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); - // type octetstring TargetToSource_TransparentContainer; - // type octetstring TargettoSource_Failure_TransparentContainer; - // type enumerated TimerApproachForGUAMIRemoval { - // type octetstring TimeStamp length (4); - // type record TimeSyncAssistanceInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); - // type enumerated TimeToWait { - // type integer TimeUEStayedInCell (0 .. 4095); - // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); - // type octetstring TMGI length (6); - // type octetstring TNAP_ID; - // type union TNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); - // type integer TNLAddressWeightFactor (0 .. 255); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; - // type record TNLAssociationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); - // type enumerated TNLAssociationUsage { - // type record TooearlyIntersystemHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); - // type record TraceActivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( - // type enumerated TraceDepth { - // type integer TrafficLoadReductionIndication (1 .. 99); - // type bitstring TransportLayerAddress length ( - // type enumerated TypeOfError { - // type record TAIBasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; - // type record TAIBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; - // type record TABasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; - // type record TABasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; - // type integer Threshold_RSRP (0 .. 127); - // type integer Threshold_RSRQ (0 .. 127); - // type integer Threshold_SINR (0 .. 127); - // type enumerated TimeToTrigger { - // type octetstring TWAP_ID; - // type union TWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); - // type record TSCAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( - // type record TSCTrafficCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); - // type record UEAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; - // type record UEAppLayerMeasInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); - // type record UEAppLayerMeasConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; - // type record UE_associatedLogicalNG_connectionItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); - // type enumerated UECapabilityInfoRequest { - // type enumerated UEContextRequest { - // type record UEContextResumeRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); - // type record UEContextResumeResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); - // type record UEContextSuspendRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); - // type record UE_DifferentiationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; - // type union UEHistoryInformationFromTheUE { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); - // type union UEIdentityIndexValue { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); - // type union UE_NGAP_IDs { - // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); - // type record UE_NGAP_ID_pair { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); - // type union UEPagingIdentity { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); - // type enumerated UEPresence { - // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; - // type record UEPresenceInAreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); - // type octetstring UERadioCapability; - // type record UERadioCapabilityForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( - // type octetstring UERadioCapabilityForPagingOfNB_IoT; - // type octetstring UERadioCapabilityForPagingOfNR; - // type octetstring UERadioCapabilityForPagingOfEUTRA; - // type octetstring UERadioCapabilityID; - // type enumerated UERetentionInformation { - // type union UERLFReportContainer { - // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); - // type record UESecurityCapabilities { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; - // type record UESliceMaximumBitRateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); - // type enumerated UE_UP_CIoT_Support { - // type record UL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); - // type bitstring UL_NAS_MAC length (16); - // type bitstring UL_NAS_Count length (5); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; - // type record UL_NGU_UP_TNLModifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; - // type record UnavailableGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); - // type enumerated ULForwarding { - // type bitstring UpdateFeedback length ( - // type union UPTransportLayerInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; - // type record UPTransportLayerInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; - // type record UPTransportLayerInformationPairItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); - // type ASNAUX.VisibleString URI_address; - // type union UserLocationInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( - // type record UserLocationInformationEUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( - // type record UserLocationInformationN3IWF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( - // type record UserLocationInformationTNGF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( - // type record UserLocationInformationTWIF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( - // type union UserLocationInformationW_AGF { - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( - // type record UserLocationInformationNR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( - // type record UserPlaneSecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; - // type record VolumeTimedReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); - // type union W_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); - // type octetstring WarningAreaCoordinates length (1 .. 1024); - // type union WarningAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); - // type octetstring WarningMessageContents length (1 .. 9600); - // type octetstring WarningSecurityInfo length (50); - // type octetstring WarningType length (2); - // type record WLANMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; - // type record WLANMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); - // type enumerated WLANMeasConfig { - // type octetstring WLANName length (1 .. 32); - // type record WUS_Assistance_Information { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; - // type record XnExtTLA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; - // type record XnTNLConfigurationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); + }//end of template m_ie_supportedTAItem + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( + + // type enumerated SuspendIndicator { + // type enumerated Suspend_Request_Indication { + // type enumerated Suspend_Response_Indication { + // type integer SurvivalTime ( + + // type octetstring TAC length (3); + template TAC m_ie_tAC(TAC p_val):=p_val; + + // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; + // type record TAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; + // type record TAIBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; + // type record TAIBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; + // type record TAICancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; + // type record TAICancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; + // type record TAIListForInactiveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; + // type record TAIListForPagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; + // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; + // type record TAINSAGSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); + // type record TargeteNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); + // type record TargetHomeENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); + // type union TargetID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; + // type record TargetNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); + // type record TargetNSSAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); + // type record TargetRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); + // type record TargetRANNodeID_RIM { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); + // type record TargetRANNodeID_SON { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( + // type record TargetRNC_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); + // type octetstring TargetToSource_TransparentContainer; + // type octetstring TargettoSource_Failure_TransparentContainer; + // type enumerated TimerApproachForGUAMIRemoval { + // type octetstring TimeStamp length (4); + // type record TimeSyncAssistanceInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); + // type enumerated TimeToWait { + // type integer TimeUEStayedInCell (0 .. 4095); + // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); + // type octetstring TMGI length (6); + // type octetstring TNAP_ID; + // type union TNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); + // type integer TNLAddressWeightFactor (0 .. 255); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; + // type record TNLAssociationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); + // type enumerated TNLAssociationUsage { + // type record TooearlyIntersystemHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); + // type record TraceActivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( + // type enumerated TraceDepth { + // type integer TrafficLoadReductionIndication (1 .. 99); + // type bitstring TransportLayerAddress length ( + // type enumerated TypeOfError { + // type record TAIBasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; + // type record TAIBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; + // type record TABasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; + // type record TABasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; + // type integer Threshold_RSRP (0 .. 127); + // type integer Threshold_RSRQ (0 .. 127); + // type integer Threshold_SINR (0 .. 127); + // type enumerated TimeToTrigger { + // type octetstring TWAP_ID; + // type union TWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); + // type record TSCAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( + // type record TSCTrafficCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); + // type record UEAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; + // type record UEAppLayerMeasInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); + // type record UEAppLayerMeasConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; + // type record UE_associatedLogicalNG_connectionItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); + // type enumerated UECapabilityInfoRequest { + // type enumerated UEContextRequest { + // type record UEContextResumeRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); + // type record UEContextResumeResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); + // type record UEContextSuspendRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); + // type record UE_DifferentiationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; + // type union UEHistoryInformationFromTheUE { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); + // type union UEIdentityIndexValue { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); + // type union UE_NGAP_IDs { + // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); + // type record UE_NGAP_ID_pair { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); + // type union UEPagingIdentity { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); + // type enumerated UEPresence { + // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; + // type record UEPresenceInAreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); + // type octetstring UERadioCapability; + // type record UERadioCapabilityForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( + // type octetstring UERadioCapabilityForPagingOfNB_IoT; + // type octetstring UERadioCapabilityForPagingOfNR; + // type octetstring UERadioCapabilityForPagingOfEUTRA; + // type octetstring UERadioCapabilityID; + // type enumerated UERetentionInformation { + // type union UERLFReportContainer { + // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); + // type record UESecurityCapabilities { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; + // type record UESliceMaximumBitRateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); + // type enumerated UE_UP_CIoT_Support { + // type record UL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); + // type bitstring UL_NAS_MAC length (16); + // type bitstring UL_NAS_Count length (5); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; + // type record UL_NGU_UP_TNLModifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; + // type record UnavailableGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); + // type enumerated ULForwarding { + // type bitstring UpdateFeedback length ( + // type union UPTransportLayerInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; + // type record UPTransportLayerInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; + // type record UPTransportLayerInformationPairItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); + // type ASNAUX.VisibleString URI_address; + // type union UserLocationInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( + // type record UserLocationInformationEUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( + // type record UserLocationInformationN3IWF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( + // type record UserLocationInformationTNGF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( + // type record UserLocationInformationTWIF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( + // type union UserLocationInformationW_AGF { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( + // type record UserLocationInformationNR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( + // type record UserPlaneSecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; + // type record VolumeTimedReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); + // type union W_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); + // type octetstring WarningAreaCoordinates length (1 .. 1024); + // type union WarningAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); + // type octetstring WarningMessageContents length (1 .. 9600); + // type octetstring WarningSecurityInfo length (50); + // type octetstring WarningType length (2); + // type record WLANMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; + // type record WLANMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); + // type enumerated WLANMeasConfig { + // type octetstring WLANName length (1 .. 32); + // type record WUS_Assistance_Information { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; + // type record XnExtTLA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; + // type record XnTNLConfigurationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); } group Receive{/*mw_ie_*/ - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of AdditionalDLUPTNLInformationForHOItem AdditionalDLUPTNLInformationForHOList; - // type record AdditionalDLUPTNLInformationForHOItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AdditionalDLUPTNLInformationForHOItem_ExtIEs ( - // type enumerated AdditionalQosFlowInformation { - // type record AllocationAndRetentionPriority { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllocationAndRetentionPriority_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; - // type record AllowedNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; - // type record Allowed_PNI_NPN_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; - // type integer AlternativeQoSParaSetIndex ( - // type integer AlternativeQoSParaSetNotifyIndex ( - // type record length (1 .. NGAP_Constants.maxnoofQosParaSets) of AlternativeQoSParaSetItem AlternativeQoSParaSetList; - // type record AlternativeQoSParaSetItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AlternativeQoSParaSetItem_ExtIEs (?); - // type ASNAUX.PrintableString AMFName length ( - // type ASNAUX.VisibleString AMFNameVisibleString length ( - // type ASNAUX.UTF8String AMFNameUTF8String length ( - // type union AMFPagingTarget { - // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); - // type bitstring AMFPointer length (6); - // type bitstring AMFRegionID length (8); - // type bitstring AMFSetID length (10); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationSetupItem AMF_TNLAssociationSetupList; - // type record AMF_TNLAssociationSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationSetupItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToAddItem AMF_TNLAssociationToAddList; - // type record AMF_TNLAssociationToAddItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToAddItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToRemoveItem AMF_TNLAssociationToRemoveList; - // type record AMF_TNLAssociationToRemoveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToRemoveItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; - // type record AMF_TNLAssociationToUpdateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); - // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); - // type record AreaOfInterest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterest_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinAoI) of AreaOfInterestCellItem AreaOfInterestCellList; - // type record AreaOfInterestCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestCellItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAoI) of AreaOfInterestItem AreaOfInterestList; - // type record AreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRANNodeinAoI) of AreaOfInterestRANNodeItem AreaOfInterestRANNodeList; - // type record AreaOfInterestRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestRANNodeItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIinAoI) of AreaOfInterestTAIItem AreaOfInterestTAIList; - // type record AreaOfInterestTAIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestTAIItem_ExtIEs (?); - // type record AssistanceDataForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForPaging_ExtIEs ( - // type record AssistanceDataForRecommendedCells { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForRecommendedCells_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetupRequestItem AssociatedMBSQosFlowSetupRequestList; - // type record AssociatedMBSQosFlowSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetupRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetuporModifyRequestItem AssociatedMBSQosFlowSetuporModifyRequestList; - // type record AssociatedMBSQosFlowSetuporModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetuporModifyRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of AssociatedQosFlowItem AssociatedQosFlowList; - // type record AssociatedQosFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedQosFlowItem_ExtIEs ( - // type enumerated AuthenticatedIndication { - // type integer AveragingWindow ( - // type union AreaScopeOfMDT_NR { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); - // type union AreaScopeOfMDT_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofFreqforMDT) of AreaScopeOfNeighCellsItem AreaScopeOfNeighCellsList; - // type record AreaScopeOfNeighCellsItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaScopeOfNeighCellsItem_ExtIEs (?); - // type union AreaScopeOfQMC { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfQMC_ExtIEs (?); - // type record AvailableRANVisibleQoEMetrics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AvailableRANVisibleQoEMetrics_ExtIEs (?); - // type record BeamMeasurementsReportConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportConfiguration_ExtIEs (?); - // type record BeamMeasurementsReportQuantity { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportQuantity_ExtIEs (?); - // type integer BitRate ( - // type union BroadcastCancelledAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); - // type union BroadcastCompletedAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; - // type record BroadcastPLMNItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( - // type record BluetoothMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofBluetoothName) of BluetoothMeasConfigNameItem BluetoothMeasConfigNameList; - // type record BluetoothMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasConfigNameItem_ExtIEs (?); - // type enumerated BluetoothMeasConfig { - // type octetstring BluetoothName length (1 .. 248); - // type octetstring BurstArrivalTime; - // type bitstring CAG_ID length (32); - // type enumerated CancelAllWarningMessages { - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_EUTRA_Item CancelledCellsInEAI_EUTRA; - // type record CancelledCellsInEAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_NR_Item CancelledCellsInEAI_NR; - // type record CancelledCellsInEAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_EUTRA_Item CancelledCellsInTAI_EUTRA; - // type record CancelledCellsInTAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_NR_Item CancelledCellsInTAI_NR; - // type record CancelledCellsInTAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCandidateCells) of CandidateCellItem CandidateCellList; - // type record CandidateCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellItem_ExtIEs (?); - // type union CandidateCell { - // type NGAP_Containers.NGAP_PROTOCOL_IES CandidateCell_ExtIEs (?); - // type record CandidateCellID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellID_ExtIEs (?); - // type record CandidatePCI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidatePCI_ExtIEs (?); - // type union Cause { - // type NGAP_Containers.NGAP_PROTOCOL_IES Cause_ExtIEs (?); - // type enumerated CauseMisc { - // type enumerated CauseNas { - // type enumerated CauseProtocol { - // type enumerated CauseRadioNetwork { - // type enumerated CauseTransport { - // type record Cell_CAGInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Cell_CAGInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCAGSperCell) of CAG_ID CellCAGList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastEUTRA_Item CellIDBroadcastEUTRA; - // type record CellIDBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastNR_Item CellIDBroadcastNR; - // type record CellIDBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledEUTRA_Item CellIDCancelledEUTRA; - // type record CellIDCancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledNR_Item CellIDCancelledNR; - // type record CellIDCancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledNR_Item_ExtIEs (?); - // type union CellIDListForRestart { - // type NGAP_Containers.NGAP_PROTOCOL_IES CellIDListForRestart_ExtIEs (?); - // type enumerated CellSize { - // type record CellType { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellType_ExtIEs (?); - // type enumerated CEmodeBSupport_Indicator { - // type enumerated CEmodeBrestricted { - // type record CNAssistedRANTuning { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNAssistedRANTuning_ExtIEs (?); - // type integer CNsubgroupID ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of CNTypeRestrictionsForEquivalentItem CNTypeRestrictionsForEquivalent; - // type record CNTypeRestrictionsForEquivalentItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNTypeRestrictionsForEquivalentItem_ExtIEs (?); - // type enumerated CNTypeRestrictionsForServing { - // type octetstring CommonNetworkInstance; - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_EUTRA_Item CompletedCellsInEAI_EUTRA; - // type record CompletedCellsInEAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_NR_Item CompletedCellsInEAI_NR; - // type record CompletedCellsInEAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_EUTRA_Item CompletedCellsInTAI_EUTRA; - // type record CompletedCellsInTAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; - // type record CompletedCellsInTAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_NR_Item_ExtIEs (?); - // type enumerated ConcurrentWarningMessageInd { - // type enumerated ConfidentialityProtectionIndication { - // type enumerated ConfidentialityProtectionResult { - // type enumerated ConfiguredTACIndication { - // type record CoreNetworkAssistanceInformationForInactive { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CoreNetworkAssistanceInformationForInactive_ExtIEs ( - // type record COUNTValueForPDCP_SN12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); - // type record COUNTValueForPDCP_SN18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN18_ExtIEs (?); - // type octetstring CoverageEnhancementLevel; - // type union CPTransportLayerInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES CPTransportLayerInformation_ExtIEs ( - // type record CriticalityDiagnostics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofErrors) of CriticalityDiagnostics_IE_Item CriticalityDiagnostics_IE_List; - // type record CriticalityDiagnostics_IE_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_IE_Item_ExtIEs (?); - // type record CellBasedMDT_NR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_NR_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of NR_CGI CellIdListforMDT_NR; - // type record CellBasedMDT_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_EUTRA_ExtIEs (?); - // type record CellBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforQMC) of NGRAN_CGI CellIdListforQMC; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; - // type bitstring DataCodingScheme length (8); - // type enumerated DataForwardingAccepted { - // type enumerated DataForwardingNotPossible { - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; - // type record DataForwardingResponseDRBItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseDRBItem_ExtIEs (?); - // type record DAPSRequestInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSRequestInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DAPSResponseInfoItem DAPSResponseInfoList; - // type record DAPSResponseInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfoItem_ExtIEs (?); - // type record DAPSResponseInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of DataForwardingResponseERABListItem DataForwardingResponseERABList; - // type record DataForwardingResponseERABListItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseERABListItem_ExtIEs (?); - // type enumerated DelayCritical { - // type record DL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DL_CP_SecurityInformation_ExtIEs (?); - // type bitstring DL_NAS_MAC length (16); - // type enumerated DLForwarding { - // type enumerated DL_NGU_TNLInformationReused { - // type enumerated DirectForwardingPathAvailability { - // type integer DRB_ID ( - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToStatusTransferItem DRBsSubjectToStatusTransferList; - // type record DRBsSubjectToStatusTransferItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToStatusTransferItem_ExtIEs ( - // type union DRBStatusDL { - // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); - // type record DRBStatusDL12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL12_ExtIEs (?); - // type record DRBStatusDL18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL18_ExtIEs (?); - // type union DRBStatusUL { - // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusUL_ExtIEs (?); - // type record DRBStatusUL12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL12_ExtIEs (?); - // type record DRBStatusUL18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL18_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsToQosFlowsMappingItem DRBsToQosFlowsMappingList; - // type record DRBsToQosFlowsMappingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsToQosFlowsMappingItem_ExtIEs ( - // type record Dynamic5QIDescriptor { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Dynamic5QIDescriptor_ExtIEs ( - // type enumerated EarlyMeasurement { - // type record EarlyStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EarlyStatusTransfer_TransparentContainer_ExtIEs (?); - // type union ProcedureStageChoice { - // type NGAP_Containers.NGAP_PROTOCOL_IES ProcedureStageChoice_ExtIEs (?); - // type record FirstDLCount { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FirstDLCount_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToEarlyStatusTransfer_Item DRBsSubjectToEarlyStatusTransfer_List; - // type record DRBsSubjectToEarlyStatusTransfer_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToEarlyStatusTransfer_Item_ExtIEs (?); - // type enumerated EDT_Session { - // type octetstring EmergencyAreaID length (3); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; - // type record EmergencyAreaIDBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastNR_Item EmergencyAreaIDBroadcastNR; - // type record EmergencyAreaIDBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledEUTRA_Item EmergencyAreaIDCancelledEUTRA; - // type record EmergencyAreaIDCancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledNR_Item EmergencyAreaIDCancelledNR; - // type record EmergencyAreaIDCancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaID EmergencyAreaIDList; - // type record length (1 .. NGAP_Constants.maxnoofEAIforRestart) of EmergencyAreaID EmergencyAreaIDListForRestart; - // type record EmergencyFallbackIndicator { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyFallbackIndicator_ExtIEs (?); - // type enumerated EmergencyFallbackRequestIndicator { - // type enumerated EmergencyServiceTargetCN { - // type union ENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES ENB_ID_ExtIEs (?); - // type enumerated Enhanced_CoverageRestriction { - // type integer Extended_ConnectedTime (0 .. 255); - // type octetstring EN_DCSONConfigurationTransfer; - // type record EndpointIPAddressAndPort { - // type enumerated EndIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EndpointIPAddressAndPort_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of PLMNIdentity EquivalentPLMNs; - // type octetstring EPS_TAC length (2); - // type record EPS_TAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EPS_TAI_ExtIEs (?); - // type integer E_RAB_ID ( - // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of E_RABInformationItem E_RABInformationList; - // type record E_RABInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION E_RABInformationItem_ExtIEs ( - // type bitstring EUTRACellIdentity length (28); - // type record EUTRA_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinngeNB) of EUTRA_CGI EUTRA_CGIList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of EUTRA_CGI EUTRA_CGIListForWarning; - // type record EUTRA_PagingeDRXInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_PagingeDRXInformation_ExtIEs (?); - // type enumerated EUTRA_Paging_eDRX_Cycle { - // type enumerated EUTRA_Paging_Time_Window { - // type bitstring EUTRAencryptionAlgorithms length ( - // type bitstring EUTRAintegrityProtectionAlgorithms length ( - // type enumerated EventType { - // type record length (1 .. NGAP_Constants.maxnoofThresholdsForExcessPacketDelay) of ExcessPacketDelayThresholdItem ExcessPacketDelayThresholdConfiguration; - // type record ExcessPacketDelayThresholdItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExcessPacketDelayThresholdItem_ExtIEs (?); - // type enumerated ExcessPacketDelayThresholdValue { - // type integer ExpectedActivityPeriod ( - // type enumerated ExpectedHOInterval { - // type integer ExpectedIdlePeriod ( - // type record ExpectedUEActivityBehaviour { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEActivityBehaviour_ExtIEs (?); - // type record ExpectedUEBehaviour { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEBehaviour_ExtIEs (?); - // type enumerated ExpectedUEMobility { - // type record length (1 .. NGAP_Constants.maxnoofCellsUEMovingTrajectory) of ExpectedUEMovingTrajectoryItem ExpectedUEMovingTrajectory; - // type record ExpectedUEMovingTrajectoryItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEMovingTrajectoryItem_ExtIEs (?); - // type record Extended_AMFName { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_AMFName_ExtIEs (?); - // type integer ExtendedPacketDelayBudget ( - // type record Extended_RANNodeName { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_RANNodeName_ExtIEs (?); - // type record ExtendedRATRestrictionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExtendedRATRestrictionInformation_ExtIEs (?); - // type integer ExtendedRNC_ID (4096 .. 65535); - // type record length (1 .. NGAP_Constants.maxnoofExtSliceItems) of SliceSupportItem ExtendedSliceSupportList; - // type bitstring ExtendedUEIdentityIndexValue length (16); - // type union EventTrigger { - // type NGAP_Containers.NGAP_PROTOCOL_IES EventTrigger_ExtIEs (?); - // type record EventL1LoggedMDTConfig { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventL1LoggedMDTConfig_ExtIEs (?); - // type union MeasurementThresholdL1LoggedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_IES MeasurementThresholdL1LoggedMDT_ExtIEs (?); - // type record FailureIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FailureIndication_ExtIEs (?); - // type record FiveG_ProSeAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSeAuthorized_ExtIEs (?); - // type enumerated FiveGProSeDirectDiscovery { - // type enumerated FiveGProSeDirectCommunication { - // type enumerated FiveGProSeLayer2UEtoNetworkRelay { - // type enumerated FiveGProSeLayer3UEtoNetworkRelay { - // type enumerated FiveGProSeLayer2RemoteUE { - // type record FiveG_ProSePC5QoSParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSePC5QoSParameters_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of FiveGProSePC5QoSFlowItem FiveGProSePC5QoSFlowList; - // type record FiveGProSePC5QoSFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5QoSFlowItem_ExtIEs (?); - // type record FiveGProSePC5FlowBitRates { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5FlowBitRates_ExtIEs (?); - // type record FiveG_S_TMSI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_S_TMSI_ExtIEs (?); - // type octetstring FiveG_TMSI length (4); - // type integer FiveQI ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ForbiddenAreaInformation_Item ForbiddenAreaInformation; - // type record ForbiddenAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ForbiddenAreaInformation_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofForbTACs) of TAC ForbiddenTACs; - // type record FromEUTRANtoNGRAN { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromEUTRANtoNGRAN_ExtIEs (?); - // type record FromNGRANtoEUTRAN { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromNGRANtoEUTRAN_ExtIEs (?); - // type record GBR_QosInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GBR_QosInformation_ExtIEs ( - // type octetstring GlobalCable_ID; - // type record GlobalCable_ID_new { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); - // type record GlobalENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); - // type record GlobalGNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); - // type record GlobalN3IWF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); - // type record GlobalLine_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalLine_ID_ExtIEs ( - // type octetstring GlobalLineIdentity; - // type record GlobalNgENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); - // type union GlobalRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( - // type record GlobalTNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTNGF_ID_ExtIEs (?); - // type record GlobalTWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTWIF_ID_ExtIEs (?); - // type record GlobalW_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); - // type union GNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); - // type octetstring GTP_TEID length (4); - // type record GTPTunnel { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); - // type record GUAMI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); - // type enumerated GUAMIType { - // type record HandoverCommandTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( - // type enumerated HandoverFlag { - // type record HandoverPreparationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverPreparationUnsuccessfulTransfer_ExtIEs (?); - // type record HandoverRequestAcknowledgeTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequestAcknowledgeTransfer_ExtIEs ( - // type record HandoverRequiredTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequiredTransfer_ExtIEs (?); - // type record HandoverResourceAllocationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverResourceAllocationUnsuccessfulTransfer_ExtIEs (?); - // type enumerated HandoverType { - // type bitstring HashedUEIdentityIndexValue length ( - // type octetstring HFCNode_ID; - // type record HFCNode_ID_new { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HFCNode_ID_new_ExtIEs (?); - // type record HOReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HOReport_ExtIEs (?); - // type integer Hysteresis (0 .. 30); - // type enumerated IAB_Authorized { - // type enumerated IAB_Supported { - // type enumerated IABNodeIndication { - // type enumerated IMSVoiceSupportIndicator { - // type integer IndexToRFSP ( - // type record InfoOnRecommendedCellsAndRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InfoOnRecommendedCellsAndRANNodesForPaging_ExtIEs (?); - // type enumerated IntegrityProtectionIndication { - // type enumerated IntegrityProtectionResult { - // type integer IntendedNumberOfPagingAttempts ( - // type bitstring InterfacesToTrace length (8); - // type record ImmediateMDTNr { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ImmediateMDTNr_ExtIEs (?); - // type record InterSystemFailureIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemFailureIndication_ExtIEs (?); - // type record IntersystemSONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONConfigurationTransfer_ExtIEs (?); - // type union IntersystemSONTransferType { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONTransferType_ExtIEs (?); - // type record IntersystemSONeNBID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONeNBID_ExtIEs (?); - // type record IntersystemSONNGRANnodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONNGRANnodeID_ExtIEs (?); - // type union IntersystemSONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformation_ExtIEs ( - // type union IntersystemSONInformationRequest { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationRequest_ExtIEs (?); - // type record IntersystemCellActivationRequest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationRequest_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI CellsToActivateList; - // type record IntersystemResourceStatusRequest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusRequest_ExtIEs (?); - // type union ReportingSystem { - // type NGAP_Containers.NGAP_PROTOCOL_IES ReportingSystem_ExtIEs (?); - // type record EUTRAN_ReportingSystemIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingSystemIEs_ExtIEs (?); - // type record NGRAN_ReportingSystemIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingSystemIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellToReportItem EUTRAN_CellToReportList; - // type record EUTRAN_CellToReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellToReportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellToReportItem NGRAN_CellToReportList; - // type record NGRAN_CellToReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellToReportItem_ExtIEs (?); - // type bitstring ReportCharacteristics length (32); - // type union ReportType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ReportType_ExtIEs (?); - // type record EventBasedReportingIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventBasedReportingIEs_ExtIEs (?); - // type integer IntersystemResourceThreshold (0 .. 100); - // type enumerated NumberOfMeasurementReportingLevels { - // type record PeriodicReportingIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PeriodicReportingIEs_ExtIEs (?); - // type enumerated ReportingPeriodicity { - // type union IntersystemSONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReply_ExtIEs (?); - // type record IntersystemCellActivationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationReply_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI ActivatedCellList; - // type record IntersystemResourceStatusReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReply_ExtIEs (?); - // type union IntersystemSONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReport_ExtIEs ( - // type record IntersystemCellStateIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellStateIndication_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NotificationCell_Item NotificationCellList; - // type record NotificationCell_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NotificationCell_Item_ExtIEs (?); - // type record IntersystemResourceStatusReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReport_ExtIEs (?); - // type union ResourceStatusReportingSystem { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResourceStatusReportingSystem_ExtIEs (?); - // type record EUTRAN_ReportingStatusIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingStatusIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellReportItem EUTRAN_CellReportList; - // type record EUTRAN_CellReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellReportItem_ExtIEs (?); - // type record EUTRAN_CompositeAvailableCapacityGroup { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CompositeAvailableCapacityGroup_ExtIEs (?); - // type record CompositeAvailableCapacity { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompositeAvailableCapacity_ExtIEs (?); - // type integer EUTRAN_NumberOfActiveUEs ( - // type record EUTRAN_RadioResourceStatus { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_RadioResourceStatus_ExtIEs (?); - // type record NGRAN_ReportingStatusIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingStatusIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellReportItem NGRAN_CellReportList; - // type record NGRAN_CellReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellReportItem_ExtIEs (?); - // type integer NGRAN_NumberOfActiveUEs ( - // type integer NGRAN_NoofRRCConnections ( - // type record NGRAN_RadioResourceStatus { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_RadioResourceStatus_ExtIEs (?); - // type record InterSystemHOReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemHOReport_ExtIEs (?); - // type union InterSystemHandoverReportType { - // type NGAP_Containers.NGAP_PROTOCOL_IES InterSystemHandoverReportType_ExtIEs (?); - // type record IntersystemUnnecessaryHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemUnnecessaryHO_ExtIEs (?); - // type octetstring LAC length (2); - // type record LAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); - // type union LastVisitedCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES LastVisitedCellInformation_ExtIEs (?); - // type record LastVisitedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedCellItem_ExtIEs (?); - // type octetstring LastVisitedEUTRANCellInformation; - // type octetstring LastVisitedGERANCellInformation; - // type record LastVisitedNGRANCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedNGRANCellInformation_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPSCellsPerPrimaryCellinUEHistoryInfo) of LastVisitedPSCellInformation LastVisitedPSCellList; - // type record LastVisitedPSCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedPSCellInformation_ExtIEs (?); - // type octetstring LastVisitedUTRANCellInformation; - // type enumerated LineType { - // type enumerated LocationReportingAdditionalInfo { - // type integer LocationReportingReferenceID ( - // type record LocationReportingRequestType { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LocationReportingRequestType_ExtIEs ( - // type record LoggedMDTNr { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LoggedMDTNr_ExtIEs ( - // type enumerated LoggingInterval { - // type enumerated LoggingDuration { - // type enumerated Links_to_log { - // type union LoggedMDTTrigger { - // type NGAP_Containers.NGAP_PROTOCOL_IES LoggedMDTTrigger_ExtIEs (?); - // type enumerated LTEM_Indication { - // type octetstring LTEUERLFReportContainer; - // type record LTEV2XServicesAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEV2XServicesAuthorized_ExtIEs (?); - // type record LTEUESidelinkAggregateMaximumBitrate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEUE_Sidelink_Aggregate_MaximumBitrates_ExtIEs (?); - // type bitstring MaskedIMEISV length (64); - // type integer MaximumDataBurstVolume ( - // type bitstring MessageIdentifier length (16); - // type enumerated MaximumIntegrityProtectedDataRate { - // type integer MBS_AreaSessionID ( - // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_DataForwardingResponseMRBItem MBS_DataForwardingResponseMRBList; - // type record MBS_DataForwardingResponseMRBItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DataForwardingResponseMRBItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_MappingandDataForwardingRequestItem MBS_MappingandDataForwardingRequestList; - // type record MBS_MappingandDataForwardingRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_MappingandDataForwardingRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of QosFlowIdentifier MBS_QoSFlowList; - // type union MRB_ProgressInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES MRB_ProgressInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of MBS_QoSFlowsToBeSetupItem MBS_QoSFlowsToBeSetupList; - // type record MBS_QoSFlowsToBeSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_QoSFlowsToBeSetupItem_ExtIEs (?); - // type union MBS_ServiceArea { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_ServiceArea_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_ServiceAreaInformationItem MBS_ServiceAreaInformationList; - // type record MBS_ServiceAreaInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformationItem_ExtIEs (?); - // type record MBS_ServiceAreaInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsforMBS) of NR_CGI MBS_ServiceAreaCellList; - // type record length (1 .. NGAP_Constants.maxnoofTAIforMBS) of TAI MBS_ServiceAreaTAIList; - // type record MBS_SessionID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionID_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionFailedtoSetupItem MBSSessionFailedtoSetupList; - // type record MBSSessionFailedtoSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionFailedtoSetupItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_SourcetoTargetItem MBS_ActiveSessionInformation_SourcetoTargetList; - // type record MBS_ActiveSessionInformation_SourcetoTargetItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_SourcetoTargetItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_TargettoSourceItem MBS_ActiveSessionInformation_TargettoSourceList; - // type record MBS_ActiveSessionInformation_TargettoSourceItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_TargettoSourceItem_ExtIEs (?); - // type record MBSSessionSetupOrModFailureTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModFailureTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupResponseItem MBSSessionSetupResponseList; - // type record MBSSessionSetupResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupResponseItem_ExtIEs (?); - // type record MBSSessionSetupOrModRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBSSessionSetupOrModRequestTransferIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMBSFSAs) of MBS_SessionFSAID MBS_SessionFSAIDList; - // type octetstring MBS_SessionFSAID length (3); - // type record MBSSessionReleaseResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionReleaseResponseTransfer_ExtIEs (?); - // type record MBSSessionSetupOrModResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModResponseTransfer_ExtIEs (?); - // type enumerated MBS_SupportIndicator { - // type union MBS_SessionTNLInfo5GC { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfo5GC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfo5GCItem MBS_SessionTNLInfo5GCList; - // type record MBS_SessionTNLInfo5GCItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfo5GCItem_ExtIEs (?); - // type union MBS_SessionTNLInfoNGRAN { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfoNGRAN_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfoNGRANItem MBS_SessionTNLInfoNGRANList; - // type record MBS_SessionTNLInfoNGRANItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfoNGRANItem_ExtIEs (?); - // type record MBS_DistributionReleaseRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionReleaseRequesTransfer_ExtIEs (?); - // type record MBS_DistributionSetupRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupRequestTransfer_ExtIEs (?); - // type record MBS_DistributionSetupResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupResponseTransfer_ExtIEs (?); - // type record MBS_DistributionSetupUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupRequestItem MBSSessionSetupRequestList; - // type record MBSSessionSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetuporModifyRequestItem MBSSessionSetuporModifyRequestList; - // type record MBSSessionSetuporModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetuporModifyRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionToReleaseItem MBSSessionToReleaseList; - // type record MBSSessionToReleaseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionToReleaseItem_ExtIEs (?); - // type enumerated MBSSessionStatus { - // type enumerated MicoAllPLMN { - // type enumerated MICOModeIndication { - // type bitstring MobilityInformation length (16); - // type record MobilityRestrictionList { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MobilityRestrictionList_ExtIEs ( - // type union MDT_AlignmentInfo { - // type NGAP_Containers.NGAP_PROTOCOL_IES MDT_AlignmentInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNList; - // type record length (0 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNModificationList; - // type record MDT_Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_ExtIEs (?); - // type record MDT_Configuration_NR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_NR_ExtIEs (?); - // type record MDT_Configuration_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_EUTRA_ExtIEs (?); - // type enumerated MDT_Activation { - // type union MDTModeNr { - // type NGAP_Containers.NGAP_PROTOCOL_IES MDTModeNr_ExtIEs (?); - // type octetstring MDTModeEutra; - // type bitstring MeasurementsToActivate length (8); - // type integer MRB_ID ( - // type record MulticastSessionActivationRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionActivationRequestTransfer_ExtIEs (?); - // type record MulticastSessionDeactivationRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionDeactivationRequestTransfer_ExtIEs (?); - // type record MulticastSessionUpdateRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES MulticastSessionUpdateRequestTransferIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPagingAreas) of MulticastGroupPagingAreaItem MulticastGroupPagingAreaList; - // type record MulticastGroupPagingAreaItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingAreaItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAI MBS_AreaTAIList; - // type record MulticastGroupPagingArea { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingArea_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEsforPaging) of UE_PagingItem UE_PagingList; - // type record UE_PagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_PagingItem_ExtIEs (?); - // type record M1Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1Configuration_ExtIEs ( - // type enumerated IncludeBeamMeasurementsIndication { - // type integer MaxNrofRS_IndexesToReport ( - // type enumerated M1ReportingTrigger { - // type record M1ThresholdEventA2 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1ThresholdEventA2_ExtIEs (?); - // type union M1ThresholdType { - // type NGAP_Containers.NGAP_PROTOCOL_IES M1ThresholdType_ExtIEs (?); - // type record M1PeriodicReporting { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1PeriodicReporting_ExtIEs ( - // type record M4Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M4Configuration_ExtIEs ( - // type enumerated M4ReportAmountMDT { - // type enumerated M4period { - // type record M5Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M5Configuration_ExtIEs ( - // type enumerated M5ReportAmountMDT { - // type enumerated M5period { - // type record M6Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M6Configuration_ExtIEs ( - // type enumerated M6ReportAmountMDT { - // type enumerated M6report_Interval { - // type record M7Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M7Configuration_ExtIEs ( - // type enumerated M7ReportAmountMDT { - // type integer M7period ( - // type record MDT_Location_Info { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Location_Info_ExtIEs (?); - // type bitstring MDT_Location_Information length (8); - // type union N3IWF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); - // type octetstring NAS_PDU; - // type octetstring NASSecurityParametersFromNGRAN; - // type enumerated NB_IoT_DefaultPagingDRX { - // type enumerated NB_IoT_PagingDRX { - // type enumerated NB_IoT_Paging_eDRXCycle { - // type enumerated NB_IoT_Paging_TimeWindow { - // type record NB_IoT_Paging_eDRXInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); - // type integer NB_IoT_UEPriority ( - // type integer NetworkInstance ( - // type enumerated NewSecurityContextInd { - // type integer NextHopChainingCount (0 .. 7); - // type enumerated NextPagingAreaScope { - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; - // type record NGAPIESupportInformationRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; - // type record NGAPIESupportInformationResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); - // type union NgENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); - // type enumerated NotifySourceNGRANNode { - // type union NGRAN_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; - // type record NGRAN_TNLAssociationToRemoveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); - // type octetstring NGRANTraceID length (8); - // type bitstring NID length (44); - // type record NonDynamic5QIDescriptor { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; - // type enumerated NotificationCause { - // type enumerated NotificationControl { - // type union NPN_AccessInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); - // type union NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); - // type union NPN_PagingAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); - // type union NPN_Support { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); - // type bitstring NRCellIdentity length (36); - // type record NR_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; - // type record NR_PagingeDRXInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); - // type enumerated NR_Paging_eDRX_Cycle { - // type enumerated NR_Paging_Time_Window { - // type bitstring NRencryptionAlgorithms length ( - // type bitstring NRintegrityProtectionAlgorithms length ( - // type octetstring NRMobilityHistoryReport; - // type octetstring NRPPa_PDU; - // type octetstring NRUERLFReportContainer; - // type record NRNTNTAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); - // type integer NumberOfBroadcasts (0 .. 65535); - // type integer NumberOfBroadcastsRequested (0 .. 65535); - // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); - // type integer NRFrequencyBand ( - // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; - // type record NRFrequencyBandItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); - // type record NRFrequencyInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); - // type integer NR_PCI ( - // type record NRV2XServicesAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); - // type enumerated VehicleUE { - // type enumerated PedestrianUE { - // type record NRUESidelinkAggregateMaximumBitrate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); - // type integer NSAG_ID ( - // type enumerated OnboardingSupport { - // type enumerated OverloadAction { - // type union OverloadResponse { - // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; - // type record OverloadStartNSSAIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); - // type integer PacketDelayBudget ( - // type record PacketErrorRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); - // type integer PacketLossRate ( - // type record PagingAssisDataforCEcapabUE { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); - // type record PagingAttemptInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); - // type integer PagingAttemptCount ( - // type enumerated PagingCause { - // type enumerated PagingCauseIndicationForVoiceService { - // type enumerated PagingDRX { - // type enumerated PagingOrigin { - // type enumerated PagingPriority { - // type enumerated PagingProbabilityInformation { - // type record PathSwitchRequestAcknowledgeTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( - // type record PathSwitchRequestSetupFailedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); - // type record PathSwitchRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( - // type record PathSwitchRequestUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); - // type record PC5QoSParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; - // type record PC5QoSFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); - // type record PC5FlowBitRates { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; - // type enumerated PrivacyIndicator { - // type record PDUSessionAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); - // type integer PDUSessionID (0 .. 255); - // type integer PDUSessionPairID ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; - // type record PDUSessionResourceAdmittedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; - // type record PDUSessionResourceFailedToModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; - // type record PDUSessionResourceFailedToModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; - // type record PDUSessionResourceFailedToResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; - // type record PDUSessionResourceFailedToResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; - // type record PDUSessionResourceFailedToSetupItemCxtFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; - // type record PDUSessionResourceFailedToSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; - // type record PDUSessionResourceFailedToSetupItemHOAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; - // type record PDUSessionResourceFailedToSetupItemPSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; - // type record PDUSessionResourceFailedToSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; - // type record PDUSessionResourceHandoverItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; - // type record PDUSessionResourceInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; - // type record PDUSessionResourceItemCxtRelCpl { - // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; - // type record PDUSessionResourceItemCxtRelReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; - // type record PDUSessionResourceItemHORqd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); - // type record PDUSessionResourceModifyConfirmTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); - // type record PDUSessionResourceModifyRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( - // type record PDUSessionResourceModifyResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; - // type record PDUSessionResourceModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; - // type record PDUSessionResourceModifyItemModInd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; - // type record PDUSessionResourceModifyItemModReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; - // type record PDUSessionResourceModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); - // type record PDUSessionResourceModifyUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; - // type record PDUSessionResourceNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); - // type record PDUSessionResourceNotifyReleasedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( - // type record PDUSessionResourceNotifyTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( - // type record PDUSessionResourceReleaseCommandTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; - // type record PDUSessionResourceReleasedItemNot { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; - // type record PDUSessionResourceReleasedItemPSAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; - // type record PDUSessionResourceReleasedItemPSFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; - // type record PDUSessionResourceReleasedItemRelRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); - // type record PDUSessionResourceReleaseResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; - // type record PDUSessionResourceResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; - // type record PDUSessionResourceResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; - // type record PDUSessionResourceSecondaryRATUsageItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; - // type record PDUSessionResourceSetupItemCxtReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; - // type record PDUSessionResourceSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; - // type record PDUSessionResourceSetupItemHOReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; - // type record PDUSessionResourceSetupItemSUReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; - // type record PDUSessionResourceSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); - // type record PDUSessionResourceSetupRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( - // type record PDUSessionResourceSetupResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( - // type record PDUSessionResourceSetupUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; - // type record PDUSessionResourceSuspendItemSUSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; - // type record PDUSessionResourceSwitchedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; - // type record PDUSessionResourceToBeSwitchedDLItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; - // type record PDUSessionResourceToReleaseItemHOCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; - // type record PDUSessionResourceToReleaseItemRelCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); - // type enumerated PDUSessionType { - // type record PDUSessionUsageReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); - // type record PEIPSassistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); - // type integer Periodicity ( - // type bitstring PeriodicRegistrationUpdateTimer length (8); - // type octetstring PLMNIdentity length (3); - // type record PLMNAreaBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; - // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; - // type record PLMNSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( - // type record PNI_NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); - // type octetstring PortNumber length (2); - // type enumerated Pre_emptionCapability { - // type enumerated Pre_emptionVulnerability { - // type integer PriorityLevelARP (1 .. 15); - // type integer PriorityLevelQos ( - // type union PWSFailedCellIDList { - // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); - // type record QMCConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); - // type record QMCDeactivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; - // type octetstring QoEReference length (6); - // type union QosCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; - // type record QosFlowAcceptedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; - // type record QosFlowAddOrModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; - // type record QosFlowAddOrModifyResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; - // type record QosFlowFeedbackItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); - // type integer QosFlowIdentifier ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; - // type record QosFlowInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( - // type record QosFlowLevelQosParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( - // type enumerated QosMonitoringRequest { - // type integer QosMonitoringReportingFrequency ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; - // type record QosFlowWithCauseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; - // type record QosFlowModifyConfirmItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; - // type record QosFlowNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; - // type record QosFlowParametersItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( - // type record QosFlowPerTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; - // type record QosFlowPerTNLInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; - // type record QosFlowSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; - // type record QosFlowItemWithDataForwarding { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; - // type record QosFlowToBeForwardedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; - // type record QoSFlowsUsageReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); - // type enumerated Range { - // type ASNAUX.PrintableString RANNodeName length ( - // type ASNAUX.VisibleString RANNodeNameVisibleString length ( - // type ASNAUX.UTF8String RANNodeNameUTF8String length ( - // type integer RANPagingPriority (1 .. 256); - // type record RANStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); - // type integer RAN_UE_NGAP_ID (0 .. 4294967295); - // type enumerated RAT_Information { - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; - // type record RATRestrictions_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( - // type bitstring RATRestrictionInformation length ( - // type record RecommendedCellsForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; - // type record RecommendedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); - // type record RecommendedRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; - // type record RecommendedRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); - // type enumerated RedCapIndication { - // type enumerated RedirectionVoiceFallback { - // type record RedundantPDUSessionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( - // type enumerated RedundantQosFlowIndicator { - // type enumerated ReflectiveQosAttribute { - // type integer RelativeAMFCapacity (0 .. 255); - // type enumerated ReportArea { - // type integer RepetitionPeriod (0 .. 131071); - // type enumerated ResetAll { - // type enumerated ReportAmountMDT { - // type enumerated ReportIntervalMDT { - // type enumerated ExtendedReportIntervalMDT { - // type union ResetType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); - // type octetstring RGLevelWirelineAccessCharacteristics; - // type integer RNC_ID (0 .. 4095); - // type octetstring RoutingID; - // type octetstring RRCContainer; - // type enumerated RRCEstablishmentCause { - // type enumerated RRCInactiveTransitionReportRequest { - // type enumerated RRCState { - // type enumerated RSN { - // type record RIMInformationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); - // type record RIMInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); - // type bitstring GNBSetID length (22); - // type record ScheduledCommunicationTime { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; - // type octetstring SD length (3); - // type record SecondaryRATUsageInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); - // type record SecondaryRATDataUsageReportTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); - // type record SecurityContext { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); - // type record SecurityIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( - // type bitstring SecurityKey length (256); - // type record SecurityResult { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); - // type record SensorMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; - // type record SensorMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); - // type enumerated SensorMeasConfig { - // type union SensorNameConfig { - // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); - // type bitstring SerialNumber length (16); - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; - // type record ServedGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; - // type record ServiceAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); - // type enumerated ServiceType { - // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); - // type record SharedNGU_MulticastTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; - // type record SliceOverloadItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; - // type record SliceSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; - // type record SliceSupportQMC_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); - // type record SNPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); - // type record S_NSSAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); - // type record SONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); - // type union SONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( - // type record SONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); - // type union SONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; - // type record SuccessfulHandoverReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); - // type enumerated SONInformationRequest { - // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( - // type union SourceNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); - // type enumerated SourceOfUEActivityBehaviourInformation { - // type record SourceRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); - // type octetstring SourceToTarget_TransparentContainer; - // type record SourceToTarget_AMFInformationReroute { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); - // type enumerated SRVCCOperationPossible { - // type octetstring ConfiguredNSSAI length (128); - // type octetstring RejectedNSSAIinPLMN length (32); - // type octetstring RejectedNSSAIinTA length (32); - // type octetstring SST length (1); - // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; - // type record SupportedTAItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( - // type enumerated SuspendIndicator { - // type enumerated Suspend_Request_Indication { - // type enumerated Suspend_Response_Indication { - // type integer SurvivalTime ( - // type octetstring TAC length (3); - // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; - // type record TAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; - // type record TAIBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; - // type record TAIBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; - // type record TAICancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; - // type record TAICancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; - // type record TAIListForInactiveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; - // type record TAIListForPagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; - // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; - // type record TAINSAGSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); - // type record TargeteNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); - // type record TargetHomeENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); - // type union TargetID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; - // type record TargetNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); - // type record TargetNSSAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); - // type record TargetRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); - // type record TargetRANNodeID_RIM { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); - // type record TargetRANNodeID_SON { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( - // type record TargetRNC_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); - // type octetstring TargetToSource_TransparentContainer; - // type octetstring TargettoSource_Failure_TransparentContainer; - // type enumerated TimerApproachForGUAMIRemoval { - // type octetstring TimeStamp length (4); - // type record TimeSyncAssistanceInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); - // type enumerated TimeToWait { - // type integer TimeUEStayedInCell (0 .. 4095); - // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); - // type octetstring TMGI length (6); - // type octetstring TNAP_ID; - // type union TNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); - // type integer TNLAddressWeightFactor (0 .. 255); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; - // type record TNLAssociationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); - // type enumerated TNLAssociationUsage { - // type record TooearlyIntersystemHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); - // type record TraceActivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( - // type enumerated TraceDepth { - // type integer TrafficLoadReductionIndication (1 .. 99); - // type bitstring TransportLayerAddress length ( - // type enumerated TypeOfError { - // type record TAIBasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; - // type record TAIBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; - // type record TABasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; - // type record TABasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; - // type integer Threshold_RSRP (0 .. 127); - // type integer Threshold_RSRQ (0 .. 127); - // type integer Threshold_SINR (0 .. 127); - // type enumerated TimeToTrigger { - // type octetstring TWAP_ID; - // type union TWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); - // type record TSCAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( - // type record TSCTrafficCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); - // type record UEAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; - // type record UEAppLayerMeasInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); - // type record UEAppLayerMeasConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; - // type record UE_associatedLogicalNG_connectionItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); - // type enumerated UECapabilityInfoRequest { - // type enumerated UEContextRequest { - // type record UEContextResumeRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); - // type record UEContextResumeResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); - // type record UEContextSuspendRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); - // type record UE_DifferentiationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; - // type union UEHistoryInformationFromTheUE { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); - // type union UEIdentityIndexValue { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); - // type union UE_NGAP_IDs { - // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); - // type record UE_NGAP_ID_pair { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); - // type union UEPagingIdentity { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); - // type enumerated UEPresence { - // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; - // type record UEPresenceInAreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); - // type octetstring UERadioCapability; - // type record UERadioCapabilityForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( - // type octetstring UERadioCapabilityForPagingOfNB_IoT; - // type octetstring UERadioCapabilityForPagingOfNR; - // type octetstring UERadioCapabilityForPagingOfEUTRA; - // type octetstring UERadioCapabilityID; - // type enumerated UERetentionInformation { - // type union UERLFReportContainer { - // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); - // type record UESecurityCapabilities { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; - // type record UESliceMaximumBitRateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); - // type enumerated UE_UP_CIoT_Support { - // type record UL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); - // type bitstring UL_NAS_MAC length (16); - // type bitstring UL_NAS_Count length (5); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; - // type record UL_NGU_UP_TNLModifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; - // type record UnavailableGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); - // type enumerated ULForwarding { - // type bitstring UpdateFeedback length ( - // type union UPTransportLayerInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; - // type record UPTransportLayerInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; - // type record UPTransportLayerInformationPairItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); - // type ASNAUX.VisibleString URI_address; - // type union UserLocationInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( - // type record UserLocationInformationEUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( - // type record UserLocationInformationN3IWF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( - // type record UserLocationInformationTNGF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( - // type record UserLocationInformationTWIF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( - // type union UserLocationInformationW_AGF { - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( - // type record UserLocationInformationNR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( - // type record UserPlaneSecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; - // type record VolumeTimedReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); - // type union W_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); - // type octetstring WarningAreaCoordinates length (1 .. 1024); - // type union WarningAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); - // type octetstring WarningMessageContents length (1 .. 9600); - // type octetstring WarningSecurityInfo length (50); - // type octetstring WarningType length (2); - // type record WLANMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; - // type record WLANMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); - // type enumerated WLANMeasConfig { - // type octetstring WLANName length (1 .. 32); - // type record WUS_Assistance_Information { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; - // type record XnExtTLA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; - // type record XnTNLConfigurationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of AdditionalDLUPTNLInformationForHOItem AdditionalDLUPTNLInformationForHOList; + // type record AdditionalDLUPTNLInformationForHOItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AdditionalDLUPTNLInformationForHOItem_ExtIEs ( + // type enumerated AdditionalQosFlowInformation { + // type record AllocationAndRetentionPriority { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllocationAndRetentionPriority_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; + // type record AllowedNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; + // type record Allowed_PNI_NPN_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; + // type integer AlternativeQoSParaSetIndex ( + // type integer AlternativeQoSParaSetNotifyIndex ( + // type record length (1 .. NGAP_Constants.maxnoofQosParaSets) of AlternativeQoSParaSetItem AlternativeQoSParaSetList; + // type record AlternativeQoSParaSetItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AlternativeQoSParaSetItem_ExtIEs (?); + // type ASNAUX.PrintableString AMFName length ( + // type ASNAUX.VisibleString AMFNameVisibleString length ( + // type ASNAUX.UTF8String AMFNameUTF8String length ( + // type union AMFPagingTarget { + // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); + // type bitstring AMFPointer length (6); + // type bitstring AMFRegionID length (8); + // type bitstring AMFSetID length (10); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationSetupItem AMF_TNLAssociationSetupList; + // type record AMF_TNLAssociationSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationSetupItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToAddItem AMF_TNLAssociationToAddList; + // type record AMF_TNLAssociationToAddItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToAddItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToRemoveItem AMF_TNLAssociationToRemoveList; + // type record AMF_TNLAssociationToRemoveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToRemoveItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; + // type record AMF_TNLAssociationToUpdateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); + // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); + // type record AreaOfInterest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterest_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinAoI) of AreaOfInterestCellItem AreaOfInterestCellList; + // type record AreaOfInterestCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestCellItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAoI) of AreaOfInterestItem AreaOfInterestList; + // type record AreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRANNodeinAoI) of AreaOfInterestRANNodeItem AreaOfInterestRANNodeList; + // type record AreaOfInterestRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestRANNodeItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIinAoI) of AreaOfInterestTAIItem AreaOfInterestTAIList; + // type record AreaOfInterestTAIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestTAIItem_ExtIEs (?); + // type record AssistanceDataForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForPaging_ExtIEs ( + // type record AssistanceDataForRecommendedCells { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForRecommendedCells_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetupRequestItem AssociatedMBSQosFlowSetupRequestList; + // type record AssociatedMBSQosFlowSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetupRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetuporModifyRequestItem AssociatedMBSQosFlowSetuporModifyRequestList; + // type record AssociatedMBSQosFlowSetuporModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetuporModifyRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of AssociatedQosFlowItem AssociatedQosFlowList; + // type record AssociatedQosFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedQosFlowItem_ExtIEs ( + // type enumerated AuthenticatedIndication { + // type integer AveragingWindow ( + // type union AreaScopeOfMDT_NR { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); + // type union AreaScopeOfMDT_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofFreqforMDT) of AreaScopeOfNeighCellsItem AreaScopeOfNeighCellsList; + // type record AreaScopeOfNeighCellsItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaScopeOfNeighCellsItem_ExtIEs (?); + // type union AreaScopeOfQMC { + // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfQMC_ExtIEs (?); + // type record AvailableRANVisibleQoEMetrics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AvailableRANVisibleQoEMetrics_ExtIEs (?); + // type record BeamMeasurementsReportConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportConfiguration_ExtIEs (?); + // type record BeamMeasurementsReportQuantity { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportQuantity_ExtIEs (?); + // type integer BitRate ( + // type union BroadcastCancelledAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); + // type union BroadcastCompletedAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; + // type record BroadcastPLMNItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( + // type record BluetoothMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofBluetoothName) of BluetoothMeasConfigNameItem BluetoothMeasConfigNameList; + // type record BluetoothMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasConfigNameItem_ExtIEs (?); + // type enumerated BluetoothMeasConfig { + // type octetstring BluetoothName length (1 .. 248); + // type octetstring BurstArrivalTime; + // type bitstring CAG_ID length (32); + // type enumerated CancelAllWarningMessages { + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_EUTRA_Item CancelledCellsInEAI_EUTRA; + // type record CancelledCellsInEAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_NR_Item CancelledCellsInEAI_NR; + // type record CancelledCellsInEAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_EUTRA_Item CancelledCellsInTAI_EUTRA; + // type record CancelledCellsInTAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_NR_Item CancelledCellsInTAI_NR; + // type record CancelledCellsInTAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCandidateCells) of CandidateCellItem CandidateCellList; + // type record CandidateCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellItem_ExtIEs (?); + // type union CandidateCell { + // type NGAP_Containers.NGAP_PROTOCOL_IES CandidateCell_ExtIEs (?); + // type record CandidateCellID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellID_ExtIEs (?); + // type record CandidatePCI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidatePCI_ExtIEs (?); + // type union Cause { + // type NGAP_Containers.NGAP_PROTOCOL_IES Cause_ExtIEs (?); + // type enumerated CauseMisc { + // type enumerated CauseNas { + // type enumerated CauseProtocol { + // type enumerated CauseRadioNetwork { + // type enumerated CauseTransport { + // type record Cell_CAGInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Cell_CAGInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCAGSperCell) of CAG_ID CellCAGList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastEUTRA_Item CellIDBroadcastEUTRA; + // type record CellIDBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastNR_Item CellIDBroadcastNR; + // type record CellIDBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledEUTRA_Item CellIDCancelledEUTRA; + // type record CellIDCancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledNR_Item CellIDCancelledNR; + // type record CellIDCancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledNR_Item_ExtIEs (?); + // type union CellIDListForRestart { + // type NGAP_Containers.NGAP_PROTOCOL_IES CellIDListForRestart_ExtIEs (?); + // type enumerated CellSize { + // type record CellType { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellType_ExtIEs (?); + // type enumerated CEmodeBSupport_Indicator { + // type enumerated CEmodeBrestricted { + // type record CNAssistedRANTuning { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNAssistedRANTuning_ExtIEs (?); + // type integer CNsubgroupID ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of CNTypeRestrictionsForEquivalentItem CNTypeRestrictionsForEquivalent; + // type record CNTypeRestrictionsForEquivalentItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNTypeRestrictionsForEquivalentItem_ExtIEs (?); + // type enumerated CNTypeRestrictionsForServing { + // type octetstring CommonNetworkInstance; + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_EUTRA_Item CompletedCellsInEAI_EUTRA; + // type record CompletedCellsInEAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_NR_Item CompletedCellsInEAI_NR; + // type record CompletedCellsInEAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_NR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_EUTRA_Item CompletedCellsInTAI_EUTRA; + // type record CompletedCellsInTAI_EUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; + // type record CompletedCellsInTAI_NR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_NR_Item_ExtIEs (?); + // type enumerated ConcurrentWarningMessageInd { + // type enumerated ConfidentialityProtectionIndication { + // type enumerated ConfidentialityProtectionResult { + // type enumerated ConfiguredTACIndication { + // type record CoreNetworkAssistanceInformationForInactive { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CoreNetworkAssistanceInformationForInactive_ExtIEs ( + // type record COUNTValueForPDCP_SN12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); + // type record COUNTValueForPDCP_SN18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN18_ExtIEs (?); + // type octetstring CoverageEnhancementLevel; + // type union CPTransportLayerInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES CPTransportLayerInformation_ExtIEs ( + // type record CriticalityDiagnostics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofErrors) of CriticalityDiagnostics_IE_Item CriticalityDiagnostics_IE_List; + // type record CriticalityDiagnostics_IE_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_IE_Item_ExtIEs (?); + // type record CellBasedMDT_NR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_NR_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of NR_CGI CellIdListforMDT_NR; + // type record CellBasedMDT_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_EUTRA_ExtIEs (?); + // type record CellBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellIDforQMC) of NGRAN_CGI CellIdListforQMC; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; + // type bitstring DataCodingScheme length (8); + // type enumerated DataForwardingAccepted { + // type enumerated DataForwardingNotPossible { + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; + // type record DataForwardingResponseDRBItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseDRBItem_ExtIEs (?); + // type record DAPSRequestInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSRequestInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DAPSResponseInfoItem DAPSResponseInfoList; + // type record DAPSResponseInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfoItem_ExtIEs (?); + // type record DAPSResponseInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of DataForwardingResponseERABListItem DataForwardingResponseERABList; + // type record DataForwardingResponseERABListItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseERABListItem_ExtIEs (?); + // type enumerated DelayCritical { + // type record DL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DL_CP_SecurityInformation_ExtIEs (?); + // type bitstring DL_NAS_MAC length (16); + // type enumerated DLForwarding { + // type enumerated DL_NGU_TNLInformationReused { + // type enumerated DirectForwardingPathAvailability { + // type integer DRB_ID ( + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToStatusTransferItem DRBsSubjectToStatusTransferList; + // type record DRBsSubjectToStatusTransferItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToStatusTransferItem_ExtIEs ( + // type union DRBStatusDL { + // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); + // type record DRBStatusDL12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL12_ExtIEs (?); + // type record DRBStatusDL18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL18_ExtIEs (?); + // type union DRBStatusUL { + // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusUL_ExtIEs (?); + // type record DRBStatusUL12 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL12_ExtIEs (?); + // type record DRBStatusUL18 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL18_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsToQosFlowsMappingItem DRBsToQosFlowsMappingList; + // type record DRBsToQosFlowsMappingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsToQosFlowsMappingItem_ExtIEs ( + // type record Dynamic5QIDescriptor { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Dynamic5QIDescriptor_ExtIEs ( + // type enumerated EarlyMeasurement { + // type record EarlyStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EarlyStatusTransfer_TransparentContainer_ExtIEs (?); + // type union ProcedureStageChoice { + // type NGAP_Containers.NGAP_PROTOCOL_IES ProcedureStageChoice_ExtIEs (?); + // type record FirstDLCount { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FirstDLCount_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToEarlyStatusTransfer_Item DRBsSubjectToEarlyStatusTransfer_List; + // type record DRBsSubjectToEarlyStatusTransfer_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToEarlyStatusTransfer_Item_ExtIEs (?); + // type enumerated EDT_Session { + // type octetstring EmergencyAreaID length (3); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; + // type record EmergencyAreaIDBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastNR_Item EmergencyAreaIDBroadcastNR; + // type record EmergencyAreaIDBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledEUTRA_Item EmergencyAreaIDCancelledEUTRA; + // type record EmergencyAreaIDCancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledNR_Item EmergencyAreaIDCancelledNR; + // type record EmergencyAreaIDCancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaID EmergencyAreaIDList; + // type record length (1 .. NGAP_Constants.maxnoofEAIforRestart) of EmergencyAreaID EmergencyAreaIDListForRestart; + // type record EmergencyFallbackIndicator { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyFallbackIndicator_ExtIEs (?); + // type enumerated EmergencyFallbackRequestIndicator { + // type enumerated EmergencyServiceTargetCN { + // type union ENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES ENB_ID_ExtIEs (?); + // type enumerated Enhanced_CoverageRestriction { + // type integer Extended_ConnectedTime (0 .. 255); + // type octetstring EN_DCSONConfigurationTransfer; + // type record EndpointIPAddressAndPort { + // type enumerated EndIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EndpointIPAddressAndPort_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of PLMNIdentity EquivalentPLMNs; + // type octetstring EPS_TAC length (2); + // type record EPS_TAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EPS_TAI_ExtIEs (?); + // type integer E_RAB_ID ( + // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of E_RABInformationItem E_RABInformationList; + // type record E_RABInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION E_RABInformationItem_ExtIEs ( + // type bitstring EUTRACellIdentity length (28); + // type record EUTRA_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinngeNB) of EUTRA_CGI EUTRA_CGIList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of EUTRA_CGI EUTRA_CGIListForWarning; + // type record EUTRA_PagingeDRXInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_PagingeDRXInformation_ExtIEs (?); + // type enumerated EUTRA_Paging_eDRX_Cycle { + // type enumerated EUTRA_Paging_Time_Window { + // type bitstring EUTRAencryptionAlgorithms length ( + // type bitstring EUTRAintegrityProtectionAlgorithms length ( + // type enumerated EventType { + // type record length (1 .. NGAP_Constants.maxnoofThresholdsForExcessPacketDelay) of ExcessPacketDelayThresholdItem ExcessPacketDelayThresholdConfiguration; + // type record ExcessPacketDelayThresholdItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExcessPacketDelayThresholdItem_ExtIEs (?); + // type enumerated ExcessPacketDelayThresholdValue { + // type integer ExpectedActivityPeriod ( + // type enumerated ExpectedHOInterval { + // type integer ExpectedIdlePeriod ( + // type record ExpectedUEActivityBehaviour { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEActivityBehaviour_ExtIEs (?); + // type record ExpectedUEBehaviour { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEBehaviour_ExtIEs (?); + // type enumerated ExpectedUEMobility { + // type record length (1 .. NGAP_Constants.maxnoofCellsUEMovingTrajectory) of ExpectedUEMovingTrajectoryItem ExpectedUEMovingTrajectory; + // type record ExpectedUEMovingTrajectoryItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEMovingTrajectoryItem_ExtIEs (?); + // type record Extended_AMFName { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_AMFName_ExtIEs (?); + // type integer ExtendedPacketDelayBudget ( + // type record Extended_RANNodeName { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_RANNodeName_ExtIEs (?); + // type record ExtendedRATRestrictionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExtendedRATRestrictionInformation_ExtIEs (?); + // type integer ExtendedRNC_ID (4096 .. 65535); + // type record length (1 .. NGAP_Constants.maxnoofExtSliceItems) of SliceSupportItem ExtendedSliceSupportList; + // type bitstring ExtendedUEIdentityIndexValue length (16); + // type union EventTrigger { + // type NGAP_Containers.NGAP_PROTOCOL_IES EventTrigger_ExtIEs (?); + // type record EventL1LoggedMDTConfig { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventL1LoggedMDTConfig_ExtIEs (?); + // type union MeasurementThresholdL1LoggedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_IES MeasurementThresholdL1LoggedMDT_ExtIEs (?); + // type record FailureIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FailureIndication_ExtIEs (?); + // type record FiveG_ProSeAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSeAuthorized_ExtIEs (?); + // type enumerated FiveGProSeDirectDiscovery { + // type enumerated FiveGProSeDirectCommunication { + // type enumerated FiveGProSeLayer2UEtoNetworkRelay { + // type enumerated FiveGProSeLayer3UEtoNetworkRelay { + // type enumerated FiveGProSeLayer2RemoteUE { + // type record FiveG_ProSePC5QoSParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSePC5QoSParameters_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of FiveGProSePC5QoSFlowItem FiveGProSePC5QoSFlowList; + // type record FiveGProSePC5QoSFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5QoSFlowItem_ExtIEs (?); + // type record FiveGProSePC5FlowBitRates { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5FlowBitRates_ExtIEs (?); + // type record FiveG_S_TMSI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_S_TMSI_ExtIEs (?); + // type octetstring FiveG_TMSI length (4); + // type integer FiveQI ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ForbiddenAreaInformation_Item ForbiddenAreaInformation; + // type record ForbiddenAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ForbiddenAreaInformation_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofForbTACs) of TAC ForbiddenTACs; + // type record FromEUTRANtoNGRAN { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromEUTRANtoNGRAN_ExtIEs (?); + // type record FromNGRANtoEUTRAN { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromNGRANtoEUTRAN_ExtIEs (?); + // type record GBR_QosInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GBR_QosInformation_ExtIEs ( + // type octetstring GlobalCable_ID; + // type record GlobalCable_ID_new { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); + // type record GlobalENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); + // type record GlobalGNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); + // type record GlobalN3IWF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); + // type record GlobalLine_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalLine_ID_ExtIEs ( + // type octetstring GlobalLineIdentity; + // type record GlobalNgENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); + // type union GlobalRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( + // type record GlobalTNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTNGF_ID_ExtIEs (?); + // type record GlobalTWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTWIF_ID_ExtIEs (?); + // type record GlobalW_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); + // type union GNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); + // type octetstring GTP_TEID length (4); + // type record GTPTunnel { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); + // type record GUAMI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); + // type enumerated GUAMIType { + // type record HandoverCommandTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( + // type enumerated HandoverFlag { + // type record HandoverPreparationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverPreparationUnsuccessfulTransfer_ExtIEs (?); + // type record HandoverRequestAcknowledgeTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequestAcknowledgeTransfer_ExtIEs ( + // type record HandoverRequiredTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequiredTransfer_ExtIEs (?); + // type record HandoverResourceAllocationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverResourceAllocationUnsuccessfulTransfer_ExtIEs (?); + // type enumerated HandoverType { + // type bitstring HashedUEIdentityIndexValue length ( + // type octetstring HFCNode_ID; + // type record HFCNode_ID_new { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HFCNode_ID_new_ExtIEs (?); + // type record HOReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HOReport_ExtIEs (?); + // type integer Hysteresis (0 .. 30); + // type enumerated IAB_Authorized { + // type enumerated IAB_Supported { + // type enumerated IABNodeIndication { + // type enumerated IMSVoiceSupportIndicator { + // type integer IndexToRFSP ( + // type record InfoOnRecommendedCellsAndRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InfoOnRecommendedCellsAndRANNodesForPaging_ExtIEs (?); + // type enumerated IntegrityProtectionIndication { + // type enumerated IntegrityProtectionResult { + // type integer IntendedNumberOfPagingAttempts ( + // type bitstring InterfacesToTrace length (8); + // type record ImmediateMDTNr { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ImmediateMDTNr_ExtIEs (?); + // type record InterSystemFailureIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemFailureIndication_ExtIEs (?); + // type record IntersystemSONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONConfigurationTransfer_ExtIEs (?); + // type union IntersystemSONTransferType { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONTransferType_ExtIEs (?); + // type record IntersystemSONeNBID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONeNBID_ExtIEs (?); + // type record IntersystemSONNGRANnodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONNGRANnodeID_ExtIEs (?); + // type union IntersystemSONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformation_ExtIEs ( + // type union IntersystemSONInformationRequest { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationRequest_ExtIEs (?); + // type record IntersystemCellActivationRequest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationRequest_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI CellsToActivateList; + // type record IntersystemResourceStatusRequest { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusRequest_ExtIEs (?); + // type union ReportingSystem { + // type NGAP_Containers.NGAP_PROTOCOL_IES ReportingSystem_ExtIEs (?); + // type record EUTRAN_ReportingSystemIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingSystemIEs_ExtIEs (?); + // type record NGRAN_ReportingSystemIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingSystemIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellToReportItem EUTRAN_CellToReportList; + // type record EUTRAN_CellToReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellToReportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellToReportItem NGRAN_CellToReportList; + // type record NGRAN_CellToReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellToReportItem_ExtIEs (?); + // type bitstring ReportCharacteristics length (32); + // type union ReportType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ReportType_ExtIEs (?); + // type record EventBasedReportingIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventBasedReportingIEs_ExtIEs (?); + // type integer IntersystemResourceThreshold (0 .. 100); + // type enumerated NumberOfMeasurementReportingLevels { + // type record PeriodicReportingIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PeriodicReportingIEs_ExtIEs (?); + // type enumerated ReportingPeriodicity { + // type union IntersystemSONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReply_ExtIEs (?); + // type record IntersystemCellActivationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationReply_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI ActivatedCellList; + // type record IntersystemResourceStatusReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReply_ExtIEs (?); + // type union IntersystemSONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReport_ExtIEs ( + // type record IntersystemCellStateIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellStateIndication_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NotificationCell_Item NotificationCellList; + // type record NotificationCell_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NotificationCell_Item_ExtIEs (?); + // type record IntersystemResourceStatusReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReport_ExtIEs (?); + // type union ResourceStatusReportingSystem { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResourceStatusReportingSystem_ExtIEs (?); + // type record EUTRAN_ReportingStatusIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingStatusIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellReportItem EUTRAN_CellReportList; + // type record EUTRAN_CellReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellReportItem_ExtIEs (?); + // type record EUTRAN_CompositeAvailableCapacityGroup { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CompositeAvailableCapacityGroup_ExtIEs (?); + // type record CompositeAvailableCapacity { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompositeAvailableCapacity_ExtIEs (?); + // type integer EUTRAN_NumberOfActiveUEs ( + // type record EUTRAN_RadioResourceStatus { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_RadioResourceStatus_ExtIEs (?); + // type record NGRAN_ReportingStatusIEs { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingStatusIEs_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellReportItem NGRAN_CellReportList; + // type record NGRAN_CellReportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellReportItem_ExtIEs (?); + // type integer NGRAN_NumberOfActiveUEs ( + // type integer NGRAN_NoofRRCConnections ( + // type record NGRAN_RadioResourceStatus { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_RadioResourceStatus_ExtIEs (?); + // type record InterSystemHOReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemHOReport_ExtIEs (?); + // type union InterSystemHandoverReportType { + // type NGAP_Containers.NGAP_PROTOCOL_IES InterSystemHandoverReportType_ExtIEs (?); + // type record IntersystemUnnecessaryHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemUnnecessaryHO_ExtIEs (?); + // type octetstring LAC length (2); + // type record LAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); + // type union LastVisitedCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES LastVisitedCellInformation_ExtIEs (?); + // type record LastVisitedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedCellItem_ExtIEs (?); + // type octetstring LastVisitedEUTRANCellInformation; + // type octetstring LastVisitedGERANCellInformation; + // type record LastVisitedNGRANCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedNGRANCellInformation_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPSCellsPerPrimaryCellinUEHistoryInfo) of LastVisitedPSCellInformation LastVisitedPSCellList; + // type record LastVisitedPSCellInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedPSCellInformation_ExtIEs (?); + // type octetstring LastVisitedUTRANCellInformation; + // type enumerated LineType { + // type enumerated LocationReportingAdditionalInfo { + // type integer LocationReportingReferenceID ( + // type record LocationReportingRequestType { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LocationReportingRequestType_ExtIEs ( + // type record LoggedMDTNr { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LoggedMDTNr_ExtIEs ( + // type enumerated LoggingInterval { + // type enumerated LoggingDuration { + // type enumerated Links_to_log { + // type union LoggedMDTTrigger { + // type NGAP_Containers.NGAP_PROTOCOL_IES LoggedMDTTrigger_ExtIEs (?); + // type enumerated LTEM_Indication { + // type octetstring LTEUERLFReportContainer; + // type record LTEV2XServicesAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEV2XServicesAuthorized_ExtIEs (?); + // type record LTEUESidelinkAggregateMaximumBitrate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEUE_Sidelink_Aggregate_MaximumBitrates_ExtIEs (?); + // type bitstring MaskedIMEISV length (64); + // type integer MaximumDataBurstVolume ( + // type bitstring MessageIdentifier length (16); + // type enumerated MaximumIntegrityProtectedDataRate { + // type integer MBS_AreaSessionID ( + // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_DataForwardingResponseMRBItem MBS_DataForwardingResponseMRBList; + // type record MBS_DataForwardingResponseMRBItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DataForwardingResponseMRBItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_MappingandDataForwardingRequestItem MBS_MappingandDataForwardingRequestList; + // type record MBS_MappingandDataForwardingRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_MappingandDataForwardingRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of QosFlowIdentifier MBS_QoSFlowList; + // type union MRB_ProgressInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES MRB_ProgressInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of MBS_QoSFlowsToBeSetupItem MBS_QoSFlowsToBeSetupList; + // type record MBS_QoSFlowsToBeSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_QoSFlowsToBeSetupItem_ExtIEs (?); + // type union MBS_ServiceArea { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_ServiceArea_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_ServiceAreaInformationItem MBS_ServiceAreaInformationList; + // type record MBS_ServiceAreaInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformationItem_ExtIEs (?); + // type record MBS_ServiceAreaInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsforMBS) of NR_CGI MBS_ServiceAreaCellList; + // type record length (1 .. NGAP_Constants.maxnoofTAIforMBS) of TAI MBS_ServiceAreaTAIList; + // type record MBS_SessionID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionID_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionFailedtoSetupItem MBSSessionFailedtoSetupList; + // type record MBSSessionFailedtoSetupItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionFailedtoSetupItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_SourcetoTargetItem MBS_ActiveSessionInformation_SourcetoTargetList; + // type record MBS_ActiveSessionInformation_SourcetoTargetItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_SourcetoTargetItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_TargettoSourceItem MBS_ActiveSessionInformation_TargettoSourceList; + // type record MBS_ActiveSessionInformation_TargettoSourceItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_TargettoSourceItem_ExtIEs (?); + // type record MBSSessionSetupOrModFailureTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModFailureTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupResponseItem MBSSessionSetupResponseList; + // type record MBSSessionSetupResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupResponseItem_ExtIEs (?); + // type record MBSSessionSetupOrModRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBSSessionSetupOrModRequestTransferIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMBSFSAs) of MBS_SessionFSAID MBS_SessionFSAIDList; + // type octetstring MBS_SessionFSAID length (3); + // type record MBSSessionReleaseResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionReleaseResponseTransfer_ExtIEs (?); + // type record MBSSessionSetupOrModResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModResponseTransfer_ExtIEs (?); + // type enumerated MBS_SupportIndicator { + // type union MBS_SessionTNLInfo5GC { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfo5GC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfo5GCItem MBS_SessionTNLInfo5GCList; + // type record MBS_SessionTNLInfo5GCItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfo5GCItem_ExtIEs (?); + // type union MBS_SessionTNLInfoNGRAN { + // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfoNGRAN_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfoNGRANItem MBS_SessionTNLInfoNGRANList; + // type record MBS_SessionTNLInfoNGRANItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfoNGRANItem_ExtIEs (?); + // type record MBS_DistributionReleaseRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionReleaseRequesTransfer_ExtIEs (?); + // type record MBS_DistributionSetupRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupRequestTransfer_ExtIEs (?); + // type record MBS_DistributionSetupResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupResponseTransfer_ExtIEs (?); + // type record MBS_DistributionSetupUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupRequestItem MBSSessionSetupRequestList; + // type record MBSSessionSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetuporModifyRequestItem MBSSessionSetuporModifyRequestList; + // type record MBSSessionSetuporModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetuporModifyRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionToReleaseItem MBSSessionToReleaseList; + // type record MBSSessionToReleaseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionToReleaseItem_ExtIEs (?); + // type enumerated MBSSessionStatus { + // type enumerated MicoAllPLMN { + // type enumerated MICOModeIndication { + // type bitstring MobilityInformation length (16); + // type record MobilityRestrictionList { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MobilityRestrictionList_ExtIEs ( + // type union MDT_AlignmentInfo { + // type NGAP_Containers.NGAP_PROTOCOL_IES MDT_AlignmentInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNList; + // type record length (0 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNModificationList; + // type record MDT_Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_ExtIEs (?); + // type record MDT_Configuration_NR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_NR_ExtIEs (?); + // type record MDT_Configuration_EUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_EUTRA_ExtIEs (?); + // type enumerated MDT_Activation { + // type union MDTModeNr { + // type NGAP_Containers.NGAP_PROTOCOL_IES MDTModeNr_ExtIEs (?); + // type octetstring MDTModeEutra; + // type bitstring MeasurementsToActivate length (8); + // type integer MRB_ID ( + // type record MulticastSessionActivationRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionActivationRequestTransfer_ExtIEs (?); + // type record MulticastSessionDeactivationRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionDeactivationRequestTransfer_ExtIEs (?); + // type record MulticastSessionUpdateRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES MulticastSessionUpdateRequestTransferIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPagingAreas) of MulticastGroupPagingAreaItem MulticastGroupPagingAreaList; + // type record MulticastGroupPagingAreaItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingAreaItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAI MBS_AreaTAIList; + // type record MulticastGroupPagingArea { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingArea_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEsforPaging) of UE_PagingItem UE_PagingList; + // type record UE_PagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_PagingItem_ExtIEs (?); + // type record M1Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1Configuration_ExtIEs ( + // type enumerated IncludeBeamMeasurementsIndication { + // type integer MaxNrofRS_IndexesToReport ( + // type enumerated M1ReportingTrigger { + // type record M1ThresholdEventA2 { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1ThresholdEventA2_ExtIEs (?); + // type union M1ThresholdType { + // type NGAP_Containers.NGAP_PROTOCOL_IES M1ThresholdType_ExtIEs (?); + // type record M1PeriodicReporting { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1PeriodicReporting_ExtIEs ( + // type record M4Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M4Configuration_ExtIEs ( + // type enumerated M4ReportAmountMDT { + // type enumerated M4period { + // type record M5Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M5Configuration_ExtIEs ( + // type enumerated M5ReportAmountMDT { + // type enumerated M5period { + // type record M6Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M6Configuration_ExtIEs ( + // type enumerated M6ReportAmountMDT { + // type enumerated M6report_Interval { + // type record M7Configuration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M7Configuration_ExtIEs ( + // type enumerated M7ReportAmountMDT { + // type integer M7period ( + // type record MDT_Location_Info { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Location_Info_ExtIEs (?); + // type bitstring MDT_Location_Information length (8); + // type union N3IWF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); + // type octetstring NAS_PDU; + // type octetstring NASSecurityParametersFromNGRAN; + // type enumerated NB_IoT_DefaultPagingDRX { + // type enumerated NB_IoT_PagingDRX { + // type enumerated NB_IoT_Paging_eDRXCycle { + // type enumerated NB_IoT_Paging_TimeWindow { + // type record NB_IoT_Paging_eDRXInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); + // type integer NB_IoT_UEPriority ( + // type integer NetworkInstance ( + // type enumerated NewSecurityContextInd { + // type integer NextHopChainingCount (0 .. 7); + // type enumerated NextPagingAreaScope { + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; + // type record NGAPIESupportInformationRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; + // type record NGAPIESupportInformationResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); + // type union NgENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); + // type enumerated NotifySourceNGRANNode { + // type union NGRAN_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; + // type record NGRAN_TNLAssociationToRemoveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); + // type octetstring NGRANTraceID length (8); + // type bitstring NID length (44); + // type record NonDynamic5QIDescriptor { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; + // type enumerated NotificationCause { + // type enumerated NotificationControl { + // type union NPN_AccessInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); + // type union NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); + // type union NPN_PagingAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); + // type union NPN_Support { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); + // type bitstring NRCellIdentity length (36); + // type record NR_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; + // type record NR_PagingeDRXInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); + // type enumerated NR_Paging_eDRX_Cycle { + // type enumerated NR_Paging_Time_Window { + // type bitstring NRencryptionAlgorithms length ( + // type bitstring NRintegrityProtectionAlgorithms length ( + // type octetstring NRMobilityHistoryReport; + // type octetstring NRPPa_PDU; + // type octetstring NRUERLFReportContainer; + // type record NRNTNTAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); + // type integer NumberOfBroadcasts (0 .. 65535); + // type integer NumberOfBroadcastsRequested (0 .. 65535); + // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); + // type integer NRFrequencyBand ( + // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; + // type record NRFrequencyBandItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); + // type record NRFrequencyInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); + // type integer NR_PCI ( + // type record NRV2XServicesAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); + // type enumerated VehicleUE { + // type enumerated PedestrianUE { + // type record NRUESidelinkAggregateMaximumBitrate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); + // type integer NSAG_ID ( + // type enumerated OnboardingSupport { + // type enumerated OverloadAction { + // type union OverloadResponse { + // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; + // type record OverloadStartNSSAIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); + // type integer PacketDelayBudget ( + // type record PacketErrorRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); + // type integer PacketLossRate ( + // type record PagingAssisDataforCEcapabUE { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); + // type record PagingAttemptInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); + // type integer PagingAttemptCount ( + // type enumerated PagingCause { + // type enumerated PagingCauseIndicationForVoiceService { + // type enumerated PagingDRX { + // type enumerated PagingOrigin { + // type enumerated PagingPriority { + // type enumerated PagingProbabilityInformation { + // type record PathSwitchRequestAcknowledgeTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( + // type record PathSwitchRequestSetupFailedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); + // type record PathSwitchRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( + // type record PathSwitchRequestUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); + // type record PC5QoSParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; + // type record PC5QoSFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); + // type record PC5FlowBitRates { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; + // type enumerated PrivacyIndicator { + // type record PDUSessionAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); + // type integer PDUSessionID (0 .. 255); + // type integer PDUSessionPairID ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; + // type record PDUSessionResourceAdmittedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; + // type record PDUSessionResourceFailedToModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; + // type record PDUSessionResourceFailedToModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; + // type record PDUSessionResourceFailedToResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; + // type record PDUSessionResourceFailedToResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; + // type record PDUSessionResourceFailedToSetupItemCxtFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; + // type record PDUSessionResourceFailedToSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; + // type record PDUSessionResourceFailedToSetupItemHOAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; + // type record PDUSessionResourceFailedToSetupItemPSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; + // type record PDUSessionResourceFailedToSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; + // type record PDUSessionResourceHandoverItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; + // type record PDUSessionResourceInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; + // type record PDUSessionResourceItemCxtRelCpl { + // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; + // type record PDUSessionResourceItemCxtRelReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; + // type record PDUSessionResourceItemHORqd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); + // type record PDUSessionResourceModifyConfirmTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); + // type record PDUSessionResourceModifyRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( + // type record PDUSessionResourceModifyResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; + // type record PDUSessionResourceModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; + // type record PDUSessionResourceModifyItemModInd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; + // type record PDUSessionResourceModifyItemModReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; + // type record PDUSessionResourceModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); + // type record PDUSessionResourceModifyUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; + // type record PDUSessionResourceNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); + // type record PDUSessionResourceNotifyReleasedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( + // type record PDUSessionResourceNotifyTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( + // type record PDUSessionResourceReleaseCommandTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; + // type record PDUSessionResourceReleasedItemNot { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; + // type record PDUSessionResourceReleasedItemPSAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; + // type record PDUSessionResourceReleasedItemPSFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; + // type record PDUSessionResourceReleasedItemRelRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); + // type record PDUSessionResourceReleaseResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; + // type record PDUSessionResourceResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; + // type record PDUSessionResourceResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; + // type record PDUSessionResourceSecondaryRATUsageItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; + // type record PDUSessionResourceSetupItemCxtReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; + // type record PDUSessionResourceSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; + // type record PDUSessionResourceSetupItemHOReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; + // type record PDUSessionResourceSetupItemSUReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; + // type record PDUSessionResourceSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); + // type record PDUSessionResourceSetupRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( + // type record PDUSessionResourceSetupResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( + // type record PDUSessionResourceSetupUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; + // type record PDUSessionResourceSuspendItemSUSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; + // type record PDUSessionResourceSwitchedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; + // type record PDUSessionResourceToBeSwitchedDLItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; + // type record PDUSessionResourceToReleaseItemHOCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; + // type record PDUSessionResourceToReleaseItemRelCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); + // type enumerated PDUSessionType { + // type record PDUSessionUsageReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); + // type record PEIPSassistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); + // type integer Periodicity ( + // type bitstring PeriodicRegistrationUpdateTimer length (8); + // type octetstring PLMNIdentity length (3); + // type record PLMNAreaBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; + // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; + // type record PLMNSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( + // type record PNI_NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); + // type octetstring PortNumber length (2); + // type enumerated Pre_emptionCapability { + // type enumerated Pre_emptionVulnerability { + // type integer PriorityLevelARP (1 .. 15); + // type integer PriorityLevelQos ( + // type union PWSFailedCellIDList { + // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); + // type record QMCConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); + // type record QMCDeactivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; + // type octetstring QoEReference length (6); + // type union QosCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; + // type record QosFlowAcceptedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; + // type record QosFlowAddOrModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; + // type record QosFlowAddOrModifyResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; + // type record QosFlowFeedbackItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); + // type integer QosFlowIdentifier ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; + // type record QosFlowInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( + // type record QosFlowLevelQosParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( + // type enumerated QosMonitoringRequest { + // type integer QosMonitoringReportingFrequency ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; + // type record QosFlowWithCauseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; + // type record QosFlowModifyConfirmItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; + // type record QosFlowNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; + // type record QosFlowParametersItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( + // type record QosFlowPerTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; + // type record QosFlowPerTNLInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; + // type record QosFlowSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; + // type record QosFlowItemWithDataForwarding { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; + // type record QosFlowToBeForwardedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; + // type record QoSFlowsUsageReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); + // type enumerated Range { + // type ASNAUX.PrintableString RANNodeName length ( + // type ASNAUX.VisibleString RANNodeNameVisibleString length ( + // type ASNAUX.UTF8String RANNodeNameUTF8String length ( + // type integer RANPagingPriority (1 .. 256); + // type record RANStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); + // type integer RAN_UE_NGAP_ID (0 .. 4294967295); + // type enumerated RAT_Information { + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; + // type record RATRestrictions_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( + // type bitstring RATRestrictionInformation length ( + // type record RecommendedCellsForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; + // type record RecommendedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); + // type record RecommendedRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; + // type record RecommendedRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); + // type enumerated RedCapIndication { + // type enumerated RedirectionVoiceFallback { + // type record RedundantPDUSessionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( + // type enumerated RedundantQosFlowIndicator { + // type enumerated ReflectiveQosAttribute { + // type integer RelativeAMFCapacity (0 .. 255); + // type enumerated ReportArea { + // type integer RepetitionPeriod (0 .. 131071); + // type enumerated ResetAll { + // type enumerated ReportAmountMDT { + // type enumerated ReportIntervalMDT { + // type enumerated ExtendedReportIntervalMDT { + // type union ResetType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); + // type octetstring RGLevelWirelineAccessCharacteristics; + // type integer RNC_ID (0 .. 4095); + // type octetstring RoutingID; + // type octetstring RRCContainer; + // type enumerated RRCEstablishmentCause { + // type enumerated RRCInactiveTransitionReportRequest { + // type enumerated RRCState { + // type enumerated RSN { + // type record RIMInformationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); + // type record RIMInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); + // type bitstring GNBSetID length (22); + // type record ScheduledCommunicationTime { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; + // type octetstring SD length (3); + // type record SecondaryRATUsageInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); + // type record SecondaryRATDataUsageReportTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); + // type record SecurityContext { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); + // type record SecurityIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( + // type bitstring SecurityKey length (256); + // type record SecurityResult { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); + // type record SensorMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; + // type record SensorMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); + // type enumerated SensorMeasConfig { + // type union SensorNameConfig { + // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); + // type bitstring SerialNumber length (16); + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; + // type record ServedGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; + // type record ServiceAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); + // type enumerated ServiceType { + // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); + // type record SharedNGU_MulticastTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; + // type record SliceOverloadItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; + // type record SliceSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; + // type record SliceSupportQMC_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); + // type record SNPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); + // type record S_NSSAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); + // type record SONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); + // type union SONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( + // type record SONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); + // type union SONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; + // type record SuccessfulHandoverReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); + // type enumerated SONInformationRequest { + // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( + // type union SourceNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); + // type enumerated SourceOfUEActivityBehaviourInformation { + // type record SourceRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); + // type octetstring SourceToTarget_TransparentContainer; + // type record SourceToTarget_AMFInformationReroute { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); + // type enumerated SRVCCOperationPossible { + // type octetstring ConfiguredNSSAI length (128); + // type octetstring RejectedNSSAIinPLMN length (32); + // type octetstring RejectedNSSAIinTA length (32); + // type octetstring SST length (1); + // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; + // type record SupportedTAItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( + // type enumerated SuspendIndicator { + // type enumerated Suspend_Request_Indication { + // type enumerated Suspend_Response_Indication { + // type integer SurvivalTime ( + // type octetstring TAC length (3); + // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; + // type record TAI { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; + // type record TAIBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; + // type record TAIBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; + // type record TAICancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; + // type record TAICancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; + // type record TAIListForInactiveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; + // type record TAIListForPagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; + // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; + // type record TAINSAGSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); + // type record TargeteNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); + // type record TargetHomeENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); + // type union TargetID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; + // type record TargetNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); + // type record TargetNSSAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); + // type record TargetRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); + // type record TargetRANNodeID_RIM { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); + // type record TargetRANNodeID_SON { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( + // type record TargetRNC_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); + // type octetstring TargetToSource_TransparentContainer; + // type octetstring TargettoSource_Failure_TransparentContainer; + // type enumerated TimerApproachForGUAMIRemoval { + // type octetstring TimeStamp length (4); + // type record TimeSyncAssistanceInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); + // type enumerated TimeToWait { + // type integer TimeUEStayedInCell (0 .. 4095); + // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); + // type octetstring TMGI length (6); + // type octetstring TNAP_ID; + // type union TNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); + // type integer TNLAddressWeightFactor (0 .. 255); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; + // type record TNLAssociationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); + // type enumerated TNLAssociationUsage { + // type record TooearlyIntersystemHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); + // type record TraceActivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( + // type enumerated TraceDepth { + // type integer TrafficLoadReductionIndication (1 .. 99); + // type bitstring TransportLayerAddress length ( + // type enumerated TypeOfError { + // type record TAIBasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; + // type record TAIBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; + // type record TABasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; + // type record TABasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; + // type integer Threshold_RSRP (0 .. 127); + // type integer Threshold_RSRQ (0 .. 127); + // type integer Threshold_SINR (0 .. 127); + // type enumerated TimeToTrigger { + // type octetstring TWAP_ID; + // type union TWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); + // type record TSCAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( + // type record TSCTrafficCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); + // type record UEAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; + // type record UEAppLayerMeasInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); + // type record UEAppLayerMeasConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; + // type record UE_associatedLogicalNG_connectionItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); + // type enumerated UECapabilityInfoRequest { + // type enumerated UEContextRequest { + // type record UEContextResumeRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); + // type record UEContextResumeResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); + // type record UEContextSuspendRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); + // type record UE_DifferentiationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; + // type union UEHistoryInformationFromTheUE { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); + // type union UEIdentityIndexValue { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); + // type union UE_NGAP_IDs { + // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); + // type record UE_NGAP_ID_pair { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); + // type union UEPagingIdentity { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); + // type enumerated UEPresence { + // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; + // type record UEPresenceInAreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); + // type octetstring UERadioCapability; + // type record UERadioCapabilityForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( + // type octetstring UERadioCapabilityForPagingOfNB_IoT; + // type octetstring UERadioCapabilityForPagingOfNR; + // type octetstring UERadioCapabilityForPagingOfEUTRA; + // type octetstring UERadioCapabilityID; + // type enumerated UERetentionInformation { + // type union UERLFReportContainer { + // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); + // type record UESecurityCapabilities { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; + // type record UESliceMaximumBitRateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); + // type enumerated UE_UP_CIoT_Support { + // type record UL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); + // type bitstring UL_NAS_MAC length (16); + // type bitstring UL_NAS_Count length (5); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; + // type record UL_NGU_UP_TNLModifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; + // type record UnavailableGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); + // type enumerated ULForwarding { + // type bitstring UpdateFeedback length ( + // type union UPTransportLayerInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; + // type record UPTransportLayerInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; + // type record UPTransportLayerInformationPairItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); + // type ASNAUX.VisibleString URI_address; + // type union UserLocationInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( + // type record UserLocationInformationEUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( + // type record UserLocationInformationN3IWF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( + // type record UserLocationInformationTNGF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( + // type record UserLocationInformationTWIF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( + // type union UserLocationInformationW_AGF { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( + // type record UserLocationInformationNR { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( + // type record UserPlaneSecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; + // type record VolumeTimedReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); + // type union W_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); + // type octetstring WarningAreaCoordinates length (1 .. 1024); + // type union WarningAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); + // type octetstring WarningMessageContents length (1 .. 9600); + // type octetstring WarningSecurityInfo length (50); + // type octetstring WarningType length (2); + // type record WLANMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; + // type record WLANMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); + // type enumerated WLANMeasConfig { + // type octetstring WLANName length (1 .. 32); + // type record WUS_Assistance_Information { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; + // type record XnExtTLA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; + // type record XnTNLConfigurationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); } }//end of group Information_elements -- GitLab From 9d766edd07b55665ac1fcfbb8263f66e30302d79 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 10:33:30 +0200 Subject: [PATCH 045/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 3539163..40ddce2 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1963,8 +1963,8 @@ module LibNGAP_Templates { in template PDUSessionType p_pst, in template QosFlowSetupRequestList p_qfsrl ):={ - PDUSessionResourceSetupRequestTransferIEs:={ protocolIEs:={ + PDUSessionResourceSetupRequestTransferIEs:={ { id := id_PDUSessionAggregateMaximumBitRate, criticality := reject, -- GitLab From 0bf2d83a26c4955e57040890ee8da8c57a16a82e Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 10:36:02 +0200 Subject: [PATCH 046/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 40ddce2..990a347 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1964,14 +1964,14 @@ module LibNGAP_Templates { in template QosFlowSetupRequestList p_qfsrl ):={ protocolIEs:={ - PDUSessionResourceSetupRequestTransferIEs:={ + //PDUSessionResourceSetupRequestTransferIEs:={ { id := id_PDUSessionAggregateMaximumBitRate, criticality := reject, Value := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", //presence := NGAP_CommonDataTypes.optional_ } - }}} + }} //protocolIEs := { pDUSessionResourceSetupRequestTransferIEs:={}}}} // { // id := NGAP_Constants.id_PDUSessionAggregateMaximumBitRate, -- GitLab From 27005f0d518c95420724c6054620f0255f54d60a Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 10:50:03 +0200 Subject: [PATCH 047/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 194 +++++++++++------------- 1 file changed, 92 insertions(+), 102 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 990a347..360e162 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1965,108 +1965,98 @@ module LibNGAP_Templates { ):={ protocolIEs:={ //PDUSessionResourceSetupRequestTransferIEs:={ - { - id := id_PDUSessionAggregateMaximumBitRate, - criticality := reject, - Value := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", - //presence := NGAP_CommonDataTypes.optional_ - } - }} - //protocolIEs := { pDUSessionResourceSetupRequestTransferIEs:={}}}} -// { -// id := NGAP_Constants.id_PDUSessionAggregateMaximumBitRate, -// criticality := NGAP_CommonDataTypes.reject, -// Value := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_UL_NGU_UP_TNLInformation, -// criticality := NGAP_CommonDataTypes.reject, -// Value := { uPTransportLayerInformation := p_utli} -// //presence := NGAP_CommonDataTypes.mandatory -// }, -// { -// id := NGAP_Constants.id_AdditionalUL_NGU_UP_TNLInformation, -// criticality := NGAP_CommonDataTypes.reject, -// Value := omit //"NGAP_IEs.UPTransportLayerInformationList", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_DataForwardingNotPossible, -// criticality := NGAP_CommonDataTypes.reject, -// Value := omit //"NGAP_IEs.DataForwardingNotPossible", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_PDUSessionType, -// criticality := NGAP_CommonDataTypes.reject, -// Value := { pDUSessionType := p_pst} -// //presence := NGAP_CommonDataTypes.mandatory -// }, -// { -// id := NGAP_Constants.id_SecurityIndication, -// criticality := NGAP_CommonDataTypes.reject, -// Value := omit //"NGAP_IEs.SecurityIndication", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_NetworkInstance, -// criticality := NGAP_CommonDataTypes.reject, -// Value := omit //"NGAP_IEs.NetworkInstance", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_QosFlowSetupRequestList, -// criticality := NGAP_CommonDataTypes.reject, -// Value := { qosFlowSetupRequestList := p_qfsrl} -// //presence := NGAP_CommonDataTypes.mandatory -// }, -// { -// id := NGAP_Constants.id_CommonNetworkInstance, -// criticality := NGAP_CommonDataTypes.ignore, -// Value := omit //"NGAP_IEs.CommonNetworkInstance", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_DirectForwardingPathAvailability, -// criticality := NGAP_CommonDataTypes.ignore, -// Value := omit //"NGAP_IEs.DirectForwardingPathAvailability", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_RedundantUL_NGU_UP_TNLInformation, -// criticality := NGAP_CommonDataTypes.ignore, -// Value := omit //"NGAP_IEs.UPTransportLayerInformation", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_AdditionalRedundantUL_NGU_UP_TNLInformation, -// criticality := NGAP_CommonDataTypes.ignore, -// Value := omit //"NGAP_IEs.UPTransportLayerInformationList", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_RedundantCommonNetworkInstance, -// criticality := NGAP_CommonDataTypes.ignore, -// Value := omit //"NGAP_IEs.CommonNetworkInstance", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_RedundantPDUSessionInformation, -// criticality := NGAP_CommonDataTypes.ignore, -// Value := omit //"NGAP_IEs.RedundantPDUSessionInformation", -// //presence := NGAP_CommonDataTypes.optional_ -// }, -// { -// id := NGAP_Constants.id_MBSSessionSetupRequestList, -// criticality := NGAP_CommonDataTypes.ignore, -// Value := omit //"NGAP_IEs.MBSSessionSetupRequestList", -// //presence := NGAP_CommonDataTypes.optional_ -// } -// } -// -// } -// }//end of template m_ie_pDUSessResSetReqTr + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", + //presence := optional_ + }, + { + id := id_UL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { uPTransportLayerInformation := p_utli} + //presence := mandatory + }, + { + id := id_AdditionalUL_NGU_UP_TNLInformation, + criticality := reject, + value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", + //presence := optional_ + }, + { + id := id_DataForwardingNotPossible, + criticality := reject, + value_ := omit //"NGAP_IEs.DataForwardingNotPossible", + //presence := optional_ + }, + { + id := id_PDUSessionType, + criticality := reject, + value_ := { pDUSessionType := p_pst} + //presence := mandatory + }, + { + id := id_SecurityIndication, + criticality := reject, + value_ := omit //"NGAP_IEs.SecurityIndication", + //presence := optional_ + }, + { + id := id_NetworkInstance, + criticality := reject, + value_ := omit //"NGAP_IEs.NetworkInstance", + //presence := optional_ + }, + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { qosFlowSetupRequestList := p_qfsrl} + //presence := mandatory + }, + { + id := id_CommonNetworkInstance, + criticality := ignore, + value_ := omit //"NGAP_IEs.CommonNetworkInstance", + //presence := optional_ + }, + { + id := id_DirectForwardingPathAvailability, + criticality := ignore, + value_ := omit //"NGAP_IEs.DirectForwardingPathAvailability", + //presence := optional_ + }, + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := omit //"NGAP_IEs.UPTransportLayerInformation", + //presence := optional_ + }, + { + id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", + //presence := optional_ + }, + { + id := id_RedundantCommonNetworkInstance, + criticality := ignore, + value_ := omit //"NGAP_IEs.CommonNetworkInstance", + //presence := optional_ + }, + { + id := id_RedundantPDUSessionInformation, + criticality := ignore, + value_ := omit //"NGAP_IEs.RedundantPDUSessionInformation", + //presence := optional_ + }, + { + id := id_MBSSessionSetupRequestList, + criticality := ignore, + value_ := omit //"NGAP_IEs.MBSSessionSetupRequestList", + //presence := optional_ + } + } + }//end of template m_ie_pDUSessResSetReqTr // type record PDUSessionResourceSetupResponseTransfer { -- GitLab From e7bf73b1bb3927248ed55edaf78c36029ce218a3 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 10:55:04 +0200 Subject: [PATCH 048/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 146 ++++++++++++------------ 1 file changed, 73 insertions(+), 73 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 360e162..7071a4c 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1965,96 +1965,96 @@ module LibNGAP_Templates { ):={ protocolIEs:={ //PDUSessionResourceSetupRequestTransferIEs:={ - { - id := id_PDUSessionAggregateMaximumBitRate, - criticality := reject, - value_ := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", - //presence := optional_ - }, +// { +// id := id_PDUSessionAggregateMaximumBitRate, +// criticality := reject, +// value_ := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", +// //presence := optional_ +// }, { id := id_UL_NGU_UP_TNLInformation, criticality := reject, value_ := { uPTransportLayerInformation := p_utli} //presence := mandatory }, - { - id := id_AdditionalUL_NGU_UP_TNLInformation, - criticality := reject, - value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", - //presence := optional_ - }, - { - id := id_DataForwardingNotPossible, - criticality := reject, - value_ := omit //"NGAP_IEs.DataForwardingNotPossible", - //presence := optional_ - }, +// { +// id := id_AdditionalUL_NGU_UP_TNLInformation, +// criticality := reject, +// value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", +// //presence := optional_ +// }, +// { +// id := id_DataForwardingNotPossible, +// criticality := reject, +// value_ := omit //"NGAP_IEs.DataForwardingNotPossible", +// //presence := optional_ +// }, { id := id_PDUSessionType, criticality := reject, value_ := { pDUSessionType := p_pst} //presence := mandatory }, - { - id := id_SecurityIndication, - criticality := reject, - value_ := omit //"NGAP_IEs.SecurityIndication", - //presence := optional_ - }, - { - id := id_NetworkInstance, - criticality := reject, - value_ := omit //"NGAP_IEs.NetworkInstance", - //presence := optional_ - }, +// { +// id := id_SecurityIndication, +// criticality := reject, +// value_ := omit //"NGAP_IEs.SecurityIndication", +// //presence := optional_ +// }, +// { +// id := id_NetworkInstance, +// criticality := reject, +// value_ := omit //"NGAP_IEs.NetworkInstance", +// //presence := optional_ +// }, { id := id_QosFlowSetupRequestList, criticality := reject, value_ := { qosFlowSetupRequestList := p_qfsrl} //presence := mandatory - }, - { - id := id_CommonNetworkInstance, - criticality := ignore, - value_ := omit //"NGAP_IEs.CommonNetworkInstance", - //presence := optional_ - }, - { - id := id_DirectForwardingPathAvailability, - criticality := ignore, - value_ := omit //"NGAP_IEs.DirectForwardingPathAvailability", - //presence := optional_ - }, - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := omit //"NGAP_IEs.UPTransportLayerInformation", - //presence := optional_ - }, - { - id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", - //presence := optional_ - }, - { - id := id_RedundantCommonNetworkInstance, - criticality := ignore, - value_ := omit //"NGAP_IEs.CommonNetworkInstance", - //presence := optional_ - }, - { - id := id_RedundantPDUSessionInformation, - criticality := ignore, - value_ := omit //"NGAP_IEs.RedundantPDUSessionInformation", - //presence := optional_ - }, - { - id := id_MBSSessionSetupRequestList, - criticality := ignore, - value_ := omit //"NGAP_IEs.MBSSessionSetupRequestList", - //presence := optional_ - } + }//, +// { +// id := id_CommonNetworkInstance, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.CommonNetworkInstance", +// //presence := optional_ +// }, +// { +// id := id_DirectForwardingPathAvailability, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.DirectForwardingPathAvailability", +// //presence := optional_ +// }, +// { +// id := id_RedundantUL_NGU_UP_TNLInformation, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.UPTransportLayerInformation", +// //presence := optional_ +// }, +// { +// id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", +// //presence := optional_ +// }, +// { +// id := id_RedundantCommonNetworkInstance, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.CommonNetworkInstance", +// //presence := optional_ +// }, +// { +// id := id_RedundantPDUSessionInformation, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.RedundantPDUSessionInformation", +// //presence := optional_ +// }, +// { +// id := id_MBSSessionSetupRequestList, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.MBSSessionSetupRequestList", +// //presence := optional_ +// } } }//end of template m_ie_pDUSessResSetReqTr -- GitLab From ee73fa29e41ee68a3faff63f43a23ec53dd8d459 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 11:04:11 +0200 Subject: [PATCH 049/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 7071a4c..9b24ae8 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1957,13 +1957,14 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); // type record PDUSessionResourceSetupRequestTransfer { + template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTr:={protocolIEs:={}}; // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( - template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTr( + template PDUSessionResourceSetupRequestTransferIEs m_ie_pDUSessResSetReqTrIEs( in template UPTransportLayerInformation p_utli, in template PDUSessionType p_pst, in template QosFlowSetupRequestList p_qfsrl - ):={ - protocolIEs:={ + ):={{ + //protocolIEs:={ //PDUSessionResourceSetupRequestTransferIEs:={ // { // id := id_PDUSessionAggregateMaximumBitRate, -- GitLab From 5562d1da76d63371c8ead035c5e9d7b2cc2f4f8f Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 11:09:18 +0200 Subject: [PATCH 050/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 9b24ae8..553062b 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1959,7 +1959,7 @@ module LibNGAP_Templates { // type record PDUSessionResourceSetupRequestTransfer { template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTr:={protocolIEs:={}}; // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( - template PDUSessionResourceSetupRequestTransferIEs m_ie_pDUSessResSetReqTrIEs( + template NGAP_PROTOCOL_IES /*PDUSessionResourceSetupRequestTransferIEs*/ m_ie_pDUSessResSetReqTrIEs( in template UPTransportLayerInformation p_utli, in template PDUSessionType p_pst, in template QosFlowSetupRequestList p_qfsrl -- GitLab From 997628846d29b37fb47021799384166127c82dcc Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 11:18:59 +0200 Subject: [PATCH 051/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 553062b..740e24b 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1957,14 +1957,14 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); // type record PDUSessionResourceSetupRequestTransfer { - template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTr:={protocolIEs:={}}; + template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrEmpty:={protocolIEs:={}}; // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( - template NGAP_PROTOCOL_IES /*PDUSessionResourceSetupRequestTransferIEs*/ m_ie_pDUSessResSetReqTrIEs( + template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrIEs( in template UPTransportLayerInformation p_utli, in template PDUSessionType p_pst, in template QosFlowSetupRequestList p_qfsrl - ):={{ - //protocolIEs:={ + ):={ + protocolIEs:={ //PDUSessionResourceSetupRequestTransferIEs:={ // { // id := id_PDUSessionAggregateMaximumBitRate, -- GitLab From 310808befd9efcf07c4efbc3377e69535f965463 Mon Sep 17 00:00:00 2001 From: ldtke Date: Thu, 26 Oct 2023 11:22:47 +0200 Subject: [PATCH 052/365] new TPs in section 8.4 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 167 ++++++++++++++++++++++++++ 1 file changed, 167 insertions(+) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index d217642..84276c3 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1100,8 +1100,175 @@ Package TP_GNB { } // End Group "Handover Preparation" + + Group "Path Switch Request" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_05 + + Test objective "Verify that the AMF node successfully sends a PATH SWITCH REQUEST message that contains mandatory IEs to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.4.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the Path Switch Request + } + then { + the IUT entity sends a PATH_SWITCH_REQUEST containing + RAN_UE_NGAP_ID, + Source_AMF_UE_NGAP_ID, + User_Location_Information, + UE_Security_Capabilities, + PDU_Session_Resources_to_be_Switched_in_Downlink_List containing + PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing + PDU_SessionId, + Path_Switch_Request_Transfer + ; + ; + ; + to the AMF entity + } + + } + + + } // End TP_NGAP_GNB_MMP_05 + } // End Group "Path Switch Request" + Group "Uplink RAN Status Transfer" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_02 + + Test objective "Verify that the NG-RAN node successfully send a Uplink RAN Status Transfer message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.6.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE Uplink RAN Status Transfer + } + then { + the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + RAN_Status_Transfer_Transparent_Container + ; + to the AMF entity + } + + } // End TP_NGAP_GNB_MMP_02 + + + } + } // End Group "Uplink RAN Status Transfer" + + Group "Handover Success" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_03 + + Test objective "Verify that the NG-RAN node successfully sends a Handover Success message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.8.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE handover success + } + then { + the IUT entity sends a HANDOVER_SUCCESS containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the AMF entity + } + } + } // End TP_NGAP_GNB_MMP_03 + + } // End Group "Handover Success" + + Group "Uplink RAN Early Status Transfer" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_04 + + Test objective "Verify that the NG-RAN node successfully sends a Uplink RAN Early Status Transfer message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.9.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a Uplink RAN Early Status Transfer + } + then { + the IUT entity sends a UPLINK_RAN_EARLY_STATUS_TRANSFER containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Early_Status_Transfer_Transparent_Container + ; + to the AMF entity + } + } + } // End TP_NGAP_GNB_MMP_04 + + } // End Group "Uplink RAN Early Status Transfer" + + } // End Group "8.4 UE Mobility Management Procedures" Group "8.6 Initial UE message" -- GitLab From 2d561fe4ed9cc6e21830c60dc728f6fcea6df36c Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 11:33:07 +0200 Subject: [PATCH 053/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 740e24b..b114244 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1965,7 +1965,6 @@ module LibNGAP_Templates { in template QosFlowSetupRequestList p_qfsrl ):={ protocolIEs:={ - //PDUSessionResourceSetupRequestTransferIEs:={ // { // id := id_PDUSessionAggregateMaximumBitRate, // criticality := reject, @@ -2057,9 +2056,21 @@ module LibNGAP_Templates { // //presence := optional_ // } } - }//end of template m_ie_pDUSessResSetReqTr + }//end of template m_ie_pDUSessResSetReqTrIEs // type record PDUSessionResourceSetupResponseTransfer { + template PDUSessionResourceSetupResponseTransfer m_ie_pDUSessResSetRespTr( + in template QosFlowPerTNLInformation p_qosfTnlInf, + in template QosFlowPerTNLInformationList p_qosfList:=omit, + in template SecurityResult p_secRes:=omit, + in template QosFlowListWithCause p_qosfCause:=omit + ):={ + dLQosFlowPerTNLInformation := p_qosfTnlInf, + additionalDLQosFlowPerTNLInformation := p_qosfList, + securityResult := p_secRes, + qosFlowFailedToSetupList := p_qosfCause, + iE_Extensions := omit + }//end of template m_ie_pDUSessResSetRespTr // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( // type record PDUSessionResourceSetupUnsuccessfulTransfer { -- GitLab From ef86cbedc929c99afe2bb9c25ce34b883e60e87b Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 11:49:22 +0200 Subject: [PATCH 054/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index b114244..0fcd46f 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1369,7 +1369,17 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); // type record GlobalENB_ID { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); + // type record GlobalGNB_ID { + template GlobalGNB_ID m_ie_globalGnbId( + in template PLMNIdentity p_plmnId, + in template GNB_ID p_gnbId + ):={ + pLMNIdentity := p_plmnId,//'010001'O, + gNB_ID := {gNB_ID:=p_gnbId/*'0000000000000000000000'B*/}, + iE_Extensions:= omit + }//end of template m_ie_globalGnbId + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); // type record GlobalN3IWF_ID { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); @@ -1380,12 +1390,15 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); // type union GlobalRANNodeID { - template GlobalRANNodeID m_ie_gRanNodeID := { - globalGNB_ID := { - pLMNIdentity := '010001'O, - gNB_ID := {gNB_ID:='0000000000000000000000'B}, - iE_Extensions := omit - } + template GlobalRANNodeID m_ie_gRanNodeID ( + in template GlobalGNB_ID p_gGnbId + ):={ + globalGNB_ID := p_gGnbId +// { +// pLMNIdentity := p_plmnId,//'010001'O, +// gNB_ID := {gNB_ID:=p_gnbId/*'0000000000000000000000'B*/}, +// iE_Extensions := omit +// } }//end of template m_ie_gRanNodeID // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( -- GitLab From e1cebd721df9ea6c06d963a1e2b100d0441afd5d Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 11:53:47 +0200 Subject: [PATCH 055/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 0fcd46f..670daa9 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1373,7 +1373,7 @@ module LibNGAP_Templates { // type record GlobalGNB_ID { template GlobalGNB_ID m_ie_globalGnbId( in template PLMNIdentity p_plmnId, - in template GNB_ID p_gnbId + in template bitstring p_gnbId ):={ pLMNIdentity := p_plmnId,//'010001'O, gNB_ID := {gNB_ID:=p_gnbId/*'0000000000000000000000'B*/}, -- GitLab From 098d7b8f48443dcf00aea178cba3e971646a21ed Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 26 Oct 2023 12:30:10 +0200 Subject: [PATCH 056/365] add TPs for section 8.6 extend the commons file in the context of NAS messages --- test_purposes/Ngap_Common.tplan2 | 2 + test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 48 +++++++++ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 129 ++++++++++++++++++------- 3 files changed, 142 insertions(+), 37 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 8a9a87d..a369b14 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -77,6 +77,8 @@ Package Ngap_Common { - isAttachingToNetwork - hasDoneSubscription - indicate + - isCMIDLE + - isCMCONNECTED ; } // End of Domain section diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 85d4046..071ea84 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1150,6 +1150,54 @@ Package TP_AMF { } // End Group "Downlink RAN Status Transfer" } // End Group "8.4 UE Mobility Management Procedures" + + Group "8.6 Transport of NAS Messages Procedures" + { + Group "Downlink NAS Transport" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_NAS_01 + + Test objective "Verify that the IUT can send an DOWNLINK NAS TRANSPORT message to carry NAS information over the NG interface." + + Reference + "ETSI TS 138 413 [1], Clauses 8.6.2.2 and 9.2.5.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + //TODO: Section 8.6.2.1 describes additional triggers for the DOWNLINK NAS TRANSPORT + + Expected behaviour + ensure that { + when { + the IUT entity sends an INITIAL_UE_MESSAGE containing + RAN_UE_NGAP_ID, + NAS_PDU, + User_Location_Information, + RRC_Establishmnet_Cause + ; + from the GNB entity + } + then { + the IUT entity sends an DOWNLINK_NAS_TRANSPORT containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + NAS_PDU + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_NAS_01 + + } // end "Downlink NAS Transport" + + } // end Group "8.6 Transport of NAS Messages Procedures" } // End of Package TP_AMF diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index d217642..d20d02f 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1104,45 +1104,100 @@ Package TP_GNB { } // End Group "8.4 UE Mobility Management Procedures" - Group "8.6 Initial UE message" + Group "8.6 Transport of NAS Messages Procedures" { - import all from Ngap_Common; - - Test Purpose { - - TP Id TP_NGAP_GNB_NAS_01 - - Test objective "Verify that the IUT can send an INITIAL_UE_MESSAGE to indicate the initiation of a NAS Transport procedure" - - Reference - "ETSI TS 138 413 [1], Clauses 8.6.1.2 and 9.2.5.1" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A3/5_1 - - Initial conditions with { - the IUT entity indicate the initiation "of a NAS Transport procedure" - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate the initiation "of a NAS Transport procedure" - } - then { - the IUT entity sends an INITIAL_UE_MESSAGE containing - RAN_UE_NGAP_ID, - NAS_PDU, - User_Location, - RRC_Establishmnet_Cause; - to the AMF entity - } - } - - } // end TP_NGAP_AMF_PDU_01 + Group "Initial UE Message" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_NAS_01 + + Test objective "Verify that the IUT can send an INITIAL_UE_MESSAGE to indicate the initiation of a NAS Transport procedure" + + Reference + "ETSI TS 138 413 [1], Clauses 8.6.1.2 and 9.2.5.1" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isCMIDLE in the GNB entity + } + + /* TODO: + * + * Maybe improve trigger (see sequence diagram 4.24.1-1 in ts_123501): + * If the UE is in CM-IDLE, the UE first establishes an RRC connection + * OR + * sends the RRCEarlyDataRequest message and sends a NAS message as part of this + * + */ + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a NAS Transport procedure" + } + then { + the IUT entity sends an INITIAL_UE_MESSAGE containing + RAN_UE_NGAP_ID, + NAS_PDU, + User_Location_Information, + RRC_Establishmnet_Cause + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_NAS_01 + } + + Group "Uplink NAS Transport" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_NAS_02 + + Test objective "Verify that the IUT can send an UPLINK NAS TRANSPORT message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.6.3.2 and 9.2.5.3" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isCMCONNECTED in the GNB entity + } + + //TODO: More information about RRC UL message + Expected behaviour + ensure that { + when { + the IUT entity receives an RRC_UL_MESSAGE + from the UE entity + } + then { + the IUT entity sends an UPLINK_NAS_TRANSPORT containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + NAS_PDU, + User_Location_Information + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_NAS_02 + + } // end "Uplink NAS Transport" - } // end Group 8.6 Initial UE message + } // end Group "8.6 Transport of NAS Messages Procedures" } // End of Package TP_GNB -- GitLab From 64f3f7625d684cf45e5e1c94c7b972bc3c8d532a Mon Sep 17 00:00:00 2001 From: ldtke Date: Thu, 26 Oct 2023 12:31:44 +0200 Subject: [PATCH 057/365] new TPs and corrections in section 8.4 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 30 ++--- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 149 ++++++++++++++++++++++++- 2 files changed, 158 insertions(+), 21 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 85d4046..d7a10b9 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -856,7 +856,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_03 - Test objective "Verify that the AMF node successfully processes a HANDOVER_REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." + Test objective "Verify that the AMF node successfully sends a HANDOVER_REQUEST message that contains mandatory IEs to the GNB." Reference "ETSI TS 138 413 [1], Clauses 8.4.2.2" @@ -872,7 +872,10 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity receives a HANDOVER_REQUEST containing + the IUT entity indicate a Handover Request procedure + } + then { + the IUT entity sends a HANDOVER_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Handover_Typ, @@ -890,25 +893,12 @@ Package TP_AMF { Source_to_Target_Transparent_Container, GUAMI ; - from the GNB entity + to the GNB entity } - then { - the IUT entity sends a HANDOVER_REQUEST_ACKNOWLEDGE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Admitted_List containing - PDU_Session_Resource_Admitted_Item containing - PDU_SessionId, - Handover_Request_Acknowledge_Transfer - ; - ;, - Target_to_Source_Transparent_Container - ; - to the GNB entity - } - } + } + + } // end TP TP_NGAP_AMF_MMP_03 - } // end TP TP_NGAP_AMF_MMP_03 } // End Group "Handover Resource Allocation" @@ -1033,7 +1023,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_06 - Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and answers with PATH SWITCH REQUEST FAILURE to confirm that the ongoing handover was cancelled." + Test objective "Verify that the AMF node successfully processes a HANDOVER CANCEL message that contains mandatory IEs and answers with PHANDOVER CANCEL ACKNOWLEDGE to confirm that the ongoing handover was cancelled." Reference "ETSI TS 138 413 [1], Clauses 8.4.5.2" diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 84276c3..090ca53 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1100,7 +1100,113 @@ Package TP_GNB { } // End Group "Handover Preparation" - + + Group "Handover Resource Allocation" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_08 + + Test objective "Verify that the GNB node successfully processes a HANDOVER_REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a HANDOVER_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Handover_Typ, + Cause, + UE_Aggregate_Maximum_Bit_Rate, + UE_Security_Capabilitues + PDU_Session_Setup_Resource_List containing + PDU_Session_Setup_Resource_Item containing + PDU_SessionId, + S_NSSAI, + Handover_Request_Transfer + ; + ;, + Allowed_NSSAI, + Source_to_Target_Transparent_Container, + GUAMI + ; + from the AMF entity + } + then { + the IUT entity sends a HANDOVER_REQUEST_ACKNOWLEDGE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Admitted_List containing + PDU_Session_Resource_Admitted_Item containing + PDU_SessionId, + Handover_Request_Acknowledge_Transfer + ; + ;, + Target_to_Source_Transparent_Container + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_MMP_08 + + } // End Group "Handover Resource Allocation" + + Group "Handover Notification" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_07 + + Test objective "Verify that the AMF node successfully sends a HANDOVER NOTIFICATION message that contains mandatory IEs to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.3.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the Handover Notification + } + then { + the IUT entity sends a HANDOVER_NOTIFY containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + User_Location_Information + ; + to the AMF entity + } + + } + + + } // End TP_NGAP_GNB_MMP_07 + + } // End Group "Handover Notification" + Group "Path Switch Request" { import all from Ngap_Common; @@ -1150,6 +1256,47 @@ Package TP_GNB { } // End Group "Path Switch Request" + Group "Handover Cancellation" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_06 + + Test objective "Verify that the GNB node successfully sends a HANDOVER CANCEL message that contains mandatory IEs to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.5.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a Handover Cancel + } + then { + the IUT entity sends a HANDOVER_CANCEL containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause + ; + to the AMF entity + } + + } // End TP_NGAP_GNB_MMP_06 + + + } // End TP_NGAP_GNB_MMP_06 + } // End Group "Handover Cancellation" + Group "Uplink RAN Status Transfer" { import all from Ngap_Common; -- GitLab From 94b0c97df58130cb353d892ca1780c632821f50c Mon Sep 17 00:00:00 2001 From: stl Date: Thu, 26 Oct 2023 12:32:16 +0200 Subject: [PATCH 058/365] new TPs and corections in section 8.4 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index d7a10b9..f2d17ee 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -900,8 +900,7 @@ Package TP_AMF { } // end TP TP_NGAP_AMF_MMP_03 } // End Group "Handover Resource Allocation" - - + Group "Path Switch Request" { import all from Ngap_Common; -- GitLab From d1fc03b854cb1463defda0b55ea114dce706a4e7 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:25:09 +0200 Subject: [PATCH 059/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 35 ++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 670daa9..8fa4e45 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1411,7 +1411,17 @@ module LibNGAP_Templates { // type union GNB_ID { // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); // type octetstring GTP_TEID length (4); + template GTP_TEID m_ie_gtpTeId(GTP_TEID p_val:='00000000'O):=p_val; + // type record GTPTunnel { + template GTPTunnel m_ie_gTPTunnel( + in template TransportLayerAddress p_tla, + in template GTP_TEID p_gtp_teid + ):= { + transportLayerAddress := p_tla, + gTP_TEID := p_gtp_teid, + iE_Extensions:=omit + } // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); // type record GUAMI { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); @@ -1833,7 +1843,10 @@ module LibNGAP_Templates { // type enumerated PrivacyIndicator { // type record PDUSessionAggregateMaximumBitRate { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); - // type integer PDUSessionID (0 .. 255); + + // type integer PDUSessionID (0 .. 255); + template PDUSessionID m_ie_pDUSessId(PDUSessionID p_val:=0):=p_val; + // type integer PDUSessionPairID ( // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; // type record PDUSessionResourceAdmittedItem { @@ -2103,7 +2116,10 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; // type record PDUSessionResourceToReleaseItemRelCmd { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); + // type enumerated PDUSessionType { + template PDUSessionType m_ie_PDUSessionType(PDUSessionType p_val:=unstructured):=p_val; + // type record PDUSessionUsageReport { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); // type record PEIPSassistanceInformation { @@ -2175,8 +2191,11 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; // type record QosFlowPerTNLInformationItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; + template QosFlowSetupRequestList m_ie_qosFlowSetReqList(QosFlowSetupRequestList p_list):=p_list; // type record QosFlowSetupRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; // type record QosFlowItemWithDataForwarding { @@ -2246,7 +2265,7 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; // type octetstring SD length (3); - template SD m_ie_sD(SD p_val) := p_val; + template SD m_ie_sD(SD p_val:='000000'O) := p_val; // type record SecondaryRATUsageInformation { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); @@ -2337,7 +2356,7 @@ module LibNGAP_Templates { // type octetstring RejectedNSSAIinPLMN length (32); // type octetstring RejectedNSSAIinTA length (32); // type octetstring SST length (1); - template SST m_ie_sST(SST p_val):=p_val; + template SST m_ie_sST(SST p_val:='00'O):=p_val; // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; template SupportedTAList m_ie_supportedTAList(in template SupportedTAList p_list):= p_list; @@ -2435,7 +2454,10 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( // type enumerated TraceDepth { // type integer TrafficLoadReductionIndication (1 .. 99); + // type bitstring TransportLayerAddress length ( + template TransportLayerAddress m_ie_tla(bitstring p_val:='0'B):=p_val; + // type enumerated TypeOfError { // type record TAIBasedMDT { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); @@ -2523,7 +2545,12 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); // type enumerated ULForwarding { // type bitstring UpdateFeedback length ( + // type union UPTransportLayerInformation { + template UPTransportLayerInformation m_ie_uPTLInf (GTPTunel p_gtpt):={ + gTPTunnel:=p_gtpt + } + // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; // type record UPTransportLayerInformationItem { @@ -2964,7 +2991,9 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); // type union GNB_ID { // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); + // type octetstring GTP_TEID length (4); + // type record GTPTunnel { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); // type record GUAMI { -- GitLab From 9b5df17cc8ae7123a431623ae117ab5cd99d7cf6 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:27:20 +0200 Subject: [PATCH 060/365] updated testsystem,components --- ttcn/AtsNGAP/NGAP_TestSystem.ttcn | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TestSystem.ttcn b/ttcn/AtsNGAP/NGAP_TestSystem.ttcn index 8b39a53..634cc2a 100644 --- a/ttcn/AtsNGAP/NGAP_TestSystem.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestSystem.ttcn @@ -36,10 +36,17 @@ module NGAP_TestSystem { } // End of group TestSystemInterfaces - type component NGAP extends ServerSyncComp, NGAPComponent { + type component gNBNGAPComponent extends ServerSyncComp, NGAPComponent { //component variables - - } // End of component NGAP + } // End of type component gNBNGAPComponent + + type component aMFNGAPComponent extends ServerSyncComp, NGAPComponent { + //component variables + } // End of type component aMFNGAPComponent + + //type component NGAP extends ServerSyncComp, NGAPComponent { + // //component variables + //} // End of component NGAP } // End of group TestComponents -- GitLab From f57ca494f24df75c25540b46d25445b39caed9c0 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:27:39 +0200 Subject: [PATCH 061/365] updated testsystem,components --- ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn | 26 +++++++++++++----------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn index 6984ad0..3e29e88 100644 --- a/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn @@ -17,6 +17,8 @@ module NGAP_TestConfiguration { // NGAP_Ats import from NGAP_TestSystem all; + // LibNGAP + import from LibNGAP_Interface all; group cfUp { @@ -25,13 +27,13 @@ module NGAP_TestConfiguration { * @param p_NGAPComponent_mme */ function f_cf_NGAP_AMF_Up( - out NGAP p_NGAPComponent_amf - ) runs on NGAP system TestAdapter { + out aMFNGAPComponent p_NGAPComponent_amf + ) runs on aMFNGAPComponent system TestAdapter { //Variables var FncRetCode v_ret := e_success; //Create - p_NGAPComponent_amf := NGAP.create ; + p_NGAPComponent_amf := aMFNGAPComponent.create ; // Connect mtc sync port connect(self:syncPort, self:syncPort); @@ -50,13 +52,13 @@ module NGAP_TestConfiguration { * @param p_NGAPComponent_gnb */ function f_cf_NGAP_gNB_Up( - out NGAP p_NGAPComponent_gnb - ) runs on NGAP system TestAdapter { + out gNBNGAPComponent p_NGAPComponent_gnb + ) runs on gNBNGAPComponent system TestAdapter { //Variables var FncRetCode v_ret := e_success; //Create - p_NGAPComponent_gnb := NGAP.create ; + p_NGAPComponent_gnb := gNBNGAPComponent.create ; // Connect mtc sync port connect(self:syncPort, self:syncPort); @@ -75,15 +77,15 @@ module NGAP_TestConfiguration { * @param p_NGAPComponent_enb1, p_NGAPComponent_gnb2 */ function f_cf_NGAP_2gNB_Up( - out NGAP p_NGAPComponent_gnb1, - out NGAP p_NGAPComponent_gnb2 - ) runs on NGAP system TestAdapter { + out gNBNGAPComponent p_NGAPComponent_gnb1, + out gNBNGAPComponent p_NGAPComponent_gnb2 + ) runs on gNBNGAPComponent system TestAdapter { //Variables var FncRetCode v_ret := e_success; //Create - p_NGAPComponent_gnb1 := NGAP.create; - p_NGAPComponent_gnb2 := NGAP.create; + p_NGAPComponent_gnb1 := gNBNGAPComponent.create; + p_NGAPComponent_gnb2 := gNBNGAPComponent.create; // Connect mtc sync port connect(self:syncPort, self:syncPort); @@ -108,7 +110,7 @@ module NGAP_TestConfiguration { * @desc Deletes configuration * @param */ - function f_cf_Down() runs on NGAP system TestAdapter { + function f_cf_Down() runs on NGAPComponent system TestAdapter { // Deactivate all deactivate; // Unmap all -- GitLab From 461f06d48121c3dbd92b510d682f7edfa234a4b0 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:28:40 +0200 Subject: [PATCH 062/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 37 ++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index f77ada9..5e627dc 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -66,7 +66,44 @@ module NGAP_TestCases { group PDU_Session_Management_Procedures{ //8.2.1 group PDU_Session_Resource_Setup{ + + /** + * @desc Verify ... + *
+                 * Pics Selection: 
+                 * Configuration: 
+                 *     
+                 * 
+ * + * @see ETSI TS + * @reference ETSI TS + */ + testcase TP_NGAP_GNB_PDU_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if (not PICS_NGAP_GNB_IUT) { + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_01()()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TP_NGAP_GNB_PDU_01 + }//end of group PDU_Session_Resource_Setup + //8.2.2 group PDU_Session_Resource_Release{ }//end of group PDU_Session_Resource_Release -- GitLab From 2cae4df8fed69c1240c215686174cdcace5e4829 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:28:53 +0200 Subject: [PATCH 063/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 53 ++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 2f29975..e615356 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -63,6 +63,59 @@ module NGAP_TCFunctions { group PDU_Session_Management_Procedures{ //8.2.1 group PDU_Session_Resource_Setup{ + + /** + * @desc Testcase function for TC_NGAP_gNB_or_aMF_functionName_01 + */ + function f_TC_NGAP_GNB_PDU_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_n2_PDUSessionResourceSetupRequest( + m_ie_aMFUeNgapId(-), + m_ie_aMFUeNgapId(-), + m_ie_pDUSessionResourceSetupListSUReq( + { + m_ie_pDUSessionResourceSetupItemSUReq( + m_ie_pDUSessId(-), + -, + m_ie_sNSSAI(m_ie_sST(-),m_ie_sD(-)), + bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( + m_ie_uPTLInf(m_ie_gTPTunnel( + m_ie_tla(-), + m_ie_gtpTeId(-))), + m_ie_PDUSessionType(-), + m_ie_qosFlowSetReqList({}) + ))) + ) + } + ) + + + ) + ); + + + f_recv_NGAP_PDU(?); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_or_aMF_functionName_01 + + + }//end of group PDU_Session_Resource_Setup //8.2.2 group PDU_Session_Resource_Release{ -- GitLab From 545bd0c3039f8a1908c000a5af809761f7627201 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:29:46 +0200 Subject: [PATCH 064/365] updated testsystem,components --- ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn | 6 ------ 1 file changed, 6 deletions(-) diff --git a/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn b/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn index bc9321a..4c3a4fe 100644 --- a/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn +++ b/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn @@ -68,12 +68,6 @@ module LibNGAP_Interface { } // End of type component NGAPComponent - type component gNBNGAPComponent extends NGAPComponent { - } // End of type component gNBNGAPComponent - - type component aMFNGAPComponent extends NGAPComponent { - } // End of type component aMFNGAPComponent - } // End of group interfacePorts } // End of module LibNGAP_Interface -- GitLab From 00e35d96c88eaeaef48a1aa58790be7730ce9863 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:32:46 +0200 Subject: [PATCH 065/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 5e627dc..4e6a1ac 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -93,7 +93,7 @@ module NGAP_TestCases { f_cf_NGAP_aMF_Up(v_ngap_amf); // Start - v_ngap_amf.start(f_TC_NGAP_GNB_PDU_01()()); + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); -- GitLab From 5e8fb3f97a96e287e01098e65a438506c74e2d22 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:38:32 +0200 Subject: [PATCH 066/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 1 + 1 file changed, 1 insertion(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index e615356..9d0c2a8 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -26,6 +26,7 @@ module NGAP_TCFunctions { import from LibNGAP_Steps all; // NGAP_Ats + import from NGAP_TestSystem all; import from NGAP_Steps all; import from NGAP_Pixits all; -- GitLab From a567c25f4ca4c5196cd7458c0ef6b682dc11b94c Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:39:34 +0200 Subject: [PATCH 067/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 8fa4e45..78cf6f1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2547,7 +2547,7 @@ module LibNGAP_Templates { // type bitstring UpdateFeedback length ( // type union UPTransportLayerInformation { - template UPTransportLayerInformation m_ie_uPTLInf (GTPTunel p_gtpt):={ + template UPTransportLayerInformation m_ie_uPTLInf (GTPTunnel p_gtpt):={ gTPTunnel:=p_gtpt } -- GitLab From 2af3c91555b6a2a633c6dd96c83fc75eff3b7b64 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:44:32 +0200 Subject: [PATCH 068/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 4e6a1ac..6196915 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -35,10 +35,10 @@ module NGAP_TestCases { * @see ETSI TS * @reference ETSI TS */ - testcase TC_NGAP_gNB_or_aMF_testcaseName_01() runs on NGAP system TestAdapter { + testcase TC_NGAP_gNB_or_aMF_testcaseName_01() runs on aMFNGAPComponent/*gNBNGAPComponent*/ system TestAdapter { // Local variables - var NGAP v_ngap_gnb_or_amf; //or v_ngap_amf + var gNBNGAPComponent v_ngap_gnb_or_amf; //or v_ngap_amf // Test control if (not PICS_NGAP_AMF_IUT) { -- GitLab From e985c986defc636fbb6a2ee08076922dca2bee4e Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 26 Oct 2023 15:47:06 +0200 Subject: [PATCH 069/365] add missing default TPs for section 8.6 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 38 ++++++++++++++++++++- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 46 ++++++++++++++++++++++++-- 2 files changed, 80 insertions(+), 4 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index edfb6c9..2fa777c 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1155,7 +1155,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.6.2.2 and 9.2.5.2" - Config Id CFG_GNB_01 + Config Id CFG_AMF_01 PICS Selection PICS_A3/5_1 @@ -1185,6 +1185,42 @@ Package TP_AMF { } // end TP_NGAP_AMF_NAS_01 } // end "Downlink NAS Transport" + + Group "Reroute NAS Request" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_NAS_02 + + Test objective "Verify that the IUT can send an REROUTE NAS REQUEST message to reroute the INITIAL UE MESSAGE message to another AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.6.5.2 and 9.2.5.5" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a Reroute NAS Request procedure" + } + then { + the IUT entity sends an REROUTE_NAS_REQUEST containing + RAN_UE_NGAP_ID, + NAS_PDU, + AMF_Set_ID + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_NAS_02 + + } // end "Reroute NAS Request" } // end Group "8.6 Transport of NAS Messages Procedures" diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 22c20c6..4f5b7a5 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1509,9 +1509,49 @@ Package TP_GNB { } // end TP_NGAP_GNB_NAS_02 - } // end "Uplink NAS Transport" + } // end "NAS Non Delivery Indication" + + Group "NAS Non Delivery Indication" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_NAS_03 + + Test objective "Verify that the IUT can send an NAS Non Delivery Indication message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.6.4.2 and 9.2.5.4" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isNoLongerAvailable to the GNB entity + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a NAS Non Delivery Indication procedure" + } + then { + the IUT entity sends an NAS_NON_DELIVERY_INDICATION containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + NAS_PDU, + Cause + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_NAS_03 + + } // end "NAS Non Delivery Indication" } // end Group "8.6 Transport of NAS Messages Procedures" -} // End of Package TP_GNB - +} // End of Package TP_GNB \ No newline at end of file -- GitLab From db88e6a027435edb25ea1125c399350531fe29f6 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:48:46 +0200 Subject: [PATCH 070/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 6196915..0515da0 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -35,7 +35,7 @@ module NGAP_TestCases { * @see ETSI TS * @reference ETSI TS */ - testcase TC_NGAP_gNB_or_aMF_testcaseName_01() runs on aMFNGAPComponent/*gNBNGAPComponent*/ system TestAdapter { + testcase TC_NGAP_gNB_or_aMF_testcaseName_01() runs on /*aMFNGAPComponent*/gNBNGAPComponent system TestAdapter { // Local variables var gNBNGAPComponent v_ngap_gnb_or_amf; //or v_ngap_amf -- GitLab From b7b02290f3d6e3da0f4401cdb55f40f1d5f41be6 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:48:59 +0200 Subject: [PATCH 071/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn index 3e29e88..637ba7b 100644 --- a/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn @@ -26,7 +26,7 @@ module NGAP_TestConfiguration { * @desc Creates test configuration of cf_NGAP_AMF - gNB is SUT * @param p_NGAPComponent_mme */ - function f_cf_NGAP_AMF_Up( + function f_cf_NGAP_aMF_Up( out aMFNGAPComponent p_NGAPComponent_amf ) runs on aMFNGAPComponent system TestAdapter { //Variables -- GitLab From 1172ddc93c3a7a2048db667c9ceb0e85a51466fc Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:53:08 +0200 Subject: [PATCH 072/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 78cf6f1..18131cd 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2547,7 +2547,7 @@ module LibNGAP_Templates { // type bitstring UpdateFeedback length ( // type union UPTransportLayerInformation { - template UPTransportLayerInformation m_ie_uPTLInf (GTPTunnel p_gtpt):={ + template UPTransportLayerInformation m_ie_uPTLInf (template GTPTunnel p_gtpt):={ gTPTunnel:=p_gtpt } -- GitLab From cc6136bba4976d1e9b5f0466708b711c23e2f9ce Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 15:57:54 +0200 Subject: [PATCH 073/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 9d0c2a8..58b78c5 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -87,13 +87,14 @@ module NGAP_TCFunctions { m_ie_pDUSessId(-), -, m_ie_sNSSAI(m_ie_sST(-),m_ie_sD(-)), - bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( - m_ie_uPTLInf(m_ie_gTPTunnel( + 'USE bit2oct from lower template'O + /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( + m_ie_uPTLInf(m_ie_gTPTunnel( m_ie_tla(-), m_ie_gtpTeId(-))), - m_ie_PDUSessionType(-), - m_ie_qosFlowSetReqList({}) - ))) + m_ie_PDUSessionType(-), + m_ie_qosFlowSetReqList({}) + )))*/ ) } ) -- GitLab From edde5118303e0d83ba2eef34fa9173fd71dc2b42 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 16:01:55 +0200 Subject: [PATCH 074/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 58b78c5..81fba1e 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -87,7 +87,7 @@ module NGAP_TCFunctions { m_ie_pDUSessId(-), -, m_ie_sNSSAI(m_ie_sST(-),m_ie_sD(-)), - 'USE bit2oct from lower template'O + '00'O /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( m_ie_uPTLInf(m_ie_gTPTunnel( m_ie_tla(-), -- GitLab From 7093bde9216ee919013955758e1c28081d44ad97 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 16:15:49 +0200 Subject: [PATCH 075/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 81fba1e..e84d77b 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -78,6 +78,7 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( + m_ngap_initMsg( m_n2_PDUSessionResourceSetupRequest( m_ie_aMFUeNgapId(-), m_ie_aMFUeNgapId(-), @@ -101,6 +102,7 @@ module NGAP_TCFunctions { ) + ) ); -- GitLab From 8cfc04e5c17aeda2cdd0b2222a07a075e3f7a124 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 16:16:03 +0200 Subject: [PATCH 076/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 36 ++++++++++++++----------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 18131cd..73f09a1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -30,22 +30,28 @@ module LibNGAP_Templates { group g_NGAP_PDU { - /** - * @desc Send template for NGAP PDU with InitiatingMessage payload - * @param p_procedureCode Procedure code - * @param p_value Message value according to the Procedure code - * @see ETSI TS - */ - template (value) NGAP_PDU m_initiatingMessage( - in ProcedureCode p_procedureCode, - in NGAP_CommonDataTypes.Criticality p_criticality:=reject - //in anytype p_value +// /** +// * @desc Send template for NGAP PDU with InitiatingMessage payload +// * @param p_procedureCode Procedure code +// * @param p_value Message value according to the Procedure code +// * @see ETSI TS +// */ +// template (value) NGAP_PDU m_initiatingMessage( +// in ProcedureCode p_procedureCode, +// in NGAP_CommonDataTypes.Criticality p_criticality:=reject +// //in anytype p_value +// ) := { +// initiatingMessage := { +// procedureCode := p_procedureCode, +// criticality := p_criticality, +// value_ := omit//p_value +// } +// } // End of template m_initiatingMessage + + template (value) NGAP_PDU m_ngap_initMsg( + in InitiatingMessage p_msg ) := { - initiatingMessage := { - procedureCode := p_procedureCode, - criticality := p_criticality, - value_ := omit//p_value - } + initiatingMessage := p_msg } // End of template m_initiatingMessage //TODO: check value_ not allowed anytype -- GitLab From fa795a0d2fa8aa11e9647ef80dbc0b0b19fede59 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 16:23:19 +0200 Subject: [PATCH 077/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 27 ++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 73f09a1..af3cede 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -47,13 +47,8 @@ module LibNGAP_Templates { // value_ := omit//p_value // } // } // End of template m_initiatingMessage - - template (value) NGAP_PDU m_ngap_initMsg( - in InitiatingMessage p_msg - ) := { - initiatingMessage := p_msg - } // End of template m_initiatingMessage - +// +// //TODO: check value_ not allowed anytype // /** // * @desc Send template for NGAP PDU with SuccessfulOutcome payload @@ -91,6 +86,24 @@ module LibNGAP_Templates { // } // } // End of template m_unsuccessfulOutcome + template (value) NGAP_PDU m_ngap_initMsg( + in InitiatingMessage p_msg + ) := { + initiatingMessage := p_msg + } // End of template m_ngap_initMsg + + template (value) NGAP_PDU m_ngap_succMsg( + in SuccessfulOutcome p_msg + ) := { + successfulOutcome := p_msg + } // End of template m_ngap_succMsg + + template (value) NGAP_PDU m_ngap_unsuccMsg( + in UnsuccessfulOutcome p_msg + ) := { + unsuccessfulOutcome := p_msg + } // End of template m_ngap_unsuccMsg + }//end of group g_NGAP_PDU //9.2 -- GitLab From b6cfe6574e66b38c683419767c7e45491914ea3b Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 16:23:25 +0200 Subject: [PATCH 078/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index e84d77b..b4269f0 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -44,8 +44,8 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - f_send_NGAP_PDU(m_initiatingMessage(id_NGSetup)); - f_recv_NGAP_PDU(?); + //f_send_NGAP_PDU(m_ngap_initMsg(/*initiating msgtemplate*/)); + //f_recv_NGAP_PDU(?); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From bdc8d8ce0c82da6acab2474bf742132940a7b54e Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 16:26:11 +0200 Subject: [PATCH 079/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index af3cede..5819ecc 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -87,19 +87,19 @@ module LibNGAP_Templates { // } // End of template m_unsuccessfulOutcome template (value) NGAP_PDU m_ngap_initMsg( - in InitiatingMessage p_msg + in template InitiatingMessage p_msg ) := { initiatingMessage := p_msg } // End of template m_ngap_initMsg template (value) NGAP_PDU m_ngap_succMsg( - in SuccessfulOutcome p_msg + in template SuccessfulOutcome p_msg ) := { successfulOutcome := p_msg } // End of template m_ngap_succMsg template (value) NGAP_PDU m_ngap_unsuccMsg( - in UnsuccessfulOutcome p_msg + in template UnsuccessfulOutcome p_msg ) := { unsuccessfulOutcome := p_msg } // End of template m_ngap_unsuccMsg -- GitLab From 46304d38eecad44ec09725d8c01df477d6af287a Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 16:30:22 +0200 Subject: [PATCH 080/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 5819ecc..b7c8d8b 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -86,19 +86,19 @@ module LibNGAP_Templates { // } // } // End of template m_unsuccessfulOutcome - template (value) NGAP_PDU m_ngap_initMsg( - in template InitiatingMessage p_msg + template /*(value)*/ NGAP_PDU m_ngap_initMsg( + in template InitiatingMessage p_msg ) := { initiatingMessage := p_msg } // End of template m_ngap_initMsg - template (value) NGAP_PDU m_ngap_succMsg( + template /*(value)*/ NGAP_PDU m_ngap_succMsg( in template SuccessfulOutcome p_msg ) := { successfulOutcome := p_msg } // End of template m_ngap_succMsg - template (value) NGAP_PDU m_ngap_unsuccMsg( + template /*(value)*/ NGAP_PDU m_ngap_unsuccMsg( in template UnsuccessfulOutcome p_msg ) := { unsuccessfulOutcome := p_msg -- GitLab From 61f1cff69f05cd071586797967a4aa370485686a Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 26 Oct 2023 16:37:54 +0200 Subject: [PATCH 081/365] add TPs for the section 8.8 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 48 ++++++++++++++++++++++ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 55 ++++++++++++++++++++++++-- 2 files changed, 99 insertions(+), 4 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 2fa777c..2a3e477 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1223,6 +1223,54 @@ Package TP_AMF { } // end "Reroute NAS Request" } // end Group "8.6 Transport of NAS Messages Procedures" + + Group "8.8 Configuration Transfer Procedure" + { + Group "Downlink RAN Configuration Transfer" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_CTP_01 + + Test objective "Verify that the IUT can send an Downlink RAN Configuration Transfer message to transfer RAN configuration information to the NG-RAN." + + Reference + "ETSI TS 138 413 [1], Clauses 8.8.2 and 9.2.7.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a Downlink RAN Configuration Transfer" + } + then { + the IUT entity sends an NAS_NON_DELIVERY_INDICATION containing + SON_Configuration_Transfer containing + Target_RAN_Node_ID containing + Global_RAN_Node_ID, + Selected_TAI + ;, + Source_RAN_Node_ID containing + Global_RAN_Node_ID, + Selected_TAI + ;, + SON_Information + ; + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_CTP_01 + + } // end "Downlink RAN Configuration Transfer" + + } // end Group "8.8 Configuration Transfer Procedure" } // End of Package TP_AMF diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 4f5b7a5..f85ac03 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1415,7 +1415,6 @@ Package TP_GNB { } // End Group "Uplink RAN Early Status Transfer" - } // End Group "8.4 UE Mobility Management Procedures" Group "8.6 Transport of NAS Messages Procedures" @@ -1466,7 +1465,7 @@ Package TP_GNB { } } // end TP_NGAP_GNB_NAS_01 - } + } // end "Initial UE Message" Group "Uplink NAS Transport" { @@ -1509,7 +1508,7 @@ Package TP_GNB { } // end TP_NGAP_GNB_NAS_02 - } // end "NAS Non Delivery Indication" + } // end "Uplink NAS Transport" Group "NAS Non Delivery Indication" { @@ -1519,7 +1518,7 @@ Package TP_GNB { TP Id TP_NGAP_GNB_NAS_03 - Test objective "Verify that the IUT can send an NAS Non Delivery Indication message to the AMF." + Test objective "Verify that the IUT can send a NAS Non Delivery Indication message to the AMF." Reference "ETSI TS 138 413 [1], Clauses 8.6.4.2 and 9.2.5.4" @@ -1553,5 +1552,53 @@ Package TP_GNB { } // end "NAS Non Delivery Indication" } // end Group "8.6 Transport of NAS Messages Procedures" + + Group "8.8 Configuration Transfer Procedure" + { + Group "Uplink RAN Configuration Transfer" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_CTP_01 + + Test objective "Verify that the IUT can send an Uplink RAN Configuration Transfer message to transfer RAN configuration information to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.8.1 and 9.2.7.1" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a Uplink RAN Configuration Transfer" + } + then { + the IUT entity sends an NAS_NON_DELIVERY_INDICATION containing + SON_Configuration_Transfer containing + Target_RAN_Node_ID containing + Global_RAN_Node_ID, + Selected_TAI + ;, + Source_RAN_Node_ID containing + Global_RAN_Node_ID, + Selected_TAI + ;, + SON_Information + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CTP_01 + + } // end "Uplink RAN Configuration Transfer" + + } // end Group "8.8 Configuration Transfer Procedure" } // End of Package TP_GNB \ No newline at end of file -- GitLab From 6872851abf937f1efab2b481cbb3df8206671dce Mon Sep 17 00:00:00 2001 From: ldtke Date: Thu, 26 Oct 2023 16:40:06 +0200 Subject: [PATCH 082/365] new TPs in section 8.7 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 262 +++++++++++++++++++++++++ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 7 + 2 files changed, 269 insertions(+) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index edfb6c9..8a79f89 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1188,5 +1188,267 @@ Package TP_AMF { } // end Group "8.6 Transport of NAS Messages Procedures" + Group "8.7 Interface Management Procedures" + { + Group "NG Setup" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_01 + + Test objective "Verify that the AMF node successfully processes a NG RESET REQEST message that contains mandatory IEs and answers with NG SETUP ACKNOWLEDGE to acknowledge the setup." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.1.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a NG_SETUP_REQUEST containing + Global_RAN_Node_ID, + Supported_TA_List containing + Supported_TA_Item containing + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List + ; + ; + ; + ;, + Default_Paging_DRX + ; + from the GNB entity + } + then { + the IUT entity sends a NG_SETUP_RESPONSE containing + AMF_Name, + Served_GUAMI_List containing + Served_GUAMI_Item containing + GUAMI + ; + ;, + Relative_AMF_Capacity, + PLMN_Support_List containing + PLMN_Support_Item containing + PLMN_Identity, + Slice_Support_List, + Extended_Slice_Support_List + ; + ; + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_IMP_01 + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_02 + + Test objective "Verify that the AMF node successfully decline a NG RESET REQEST message and answers with NG SETUP FAILURE when the AMF is not able to handle the request." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.1.3" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + // AMF cannot accept the setup + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a NG_SETUP_REQUEST containing + Global_RAN_Node_ID, + Supported_TA_List containing + Supported_TA_Item containing + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List + ; + ; + ; + ;, + Default_Paging_DRX + ; + from the GNB entity + } + then { + the IUT entity sends a NG_SETUP_FAILURE containing + Cause + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_IMP_02 + + } // End Group "NG Setup" + + Group "RAN Configuration Update" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_03 + + Test objective "Verify that the AMF node successfully processes a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.2.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + // AMF cannot accept the setup + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a RAN_CONFIGURATION_UPDATE containing + Supported_TA_List containing + Supported_TA_Item containing + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List + ; + ; + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_IMP_03 + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_04 + + Test objective "Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.2.3" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + // AMF cannot accept the setup + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a RAN_CONFIGURATION_UPDATE containing + Supported_TA_List containing + Supported_TA_Item containing + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List + ; + ; + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a RAN_CONFIGURATION_UPDATE_FAILURE containing + Cause; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_IMP_04 + + } // End Group "RAN Configuration Update" + + Group "AMF Configuration Update" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_05 + + Test objective "Verify that the AMF node successfully declines a AMF CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.3.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + // AMF cannot accept the setup + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a RAN_CONFIGURATION_UPDATE containing + Supported_TA_List containing + Supported_TA_Item containing + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List + ; + ; + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a RAN_CONFIGURATION_UPDATE_FAILURE containing + Cause; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_IMP_05 + } // End Group "AMF Configuration Update" + + } // End Group "8.7 Interface Management Procedures" } // End of Package TP_AMF diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 22c20c6..7e5ab4b 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1513,5 +1513,12 @@ Package TP_GNB { } // end Group "8.6 Transport of NAS Messages Procedures" + Group "8.7 Interface Management Procedures" + { + Group "NG Setup" + { + + } // End Group "NG Setup" + } } // End of Package TP_GNB -- GitLab From f377782c5b622524adbe8f3b7ef5d6d054b1393e Mon Sep 17 00:00:00 2001 From: stl Date: Thu, 26 Oct 2023 16:40:28 +0200 Subject: [PATCH 083/365] new TPs in section 8.7 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 180 ++++++++++++++----------- 1 file changed, 98 insertions(+), 82 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 8a79f89..f11c40a 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1354,48 +1354,48 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_IMP_04 - - Test objective "Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.2.3" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. - - Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions - // AMF cannot accept the setup - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a RAN_CONFIGURATION_UPDATE containing - Supported_TA_List containing - Supported_TA_Item containing - TAC, - Broadcast_PLMN_List containing - Broadcast_PLMN_Item containing - PLMN_Identity, - TAI_Slice_Support_List - ; - ; - ; - ; - ; - from the GNB entity - } - then { - the IUT entity sends a RAN_CONFIGURATION_UPDATE_FAILURE containing - Cause; - to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_IMP_04 + TP Id TP_NGAP_AMF_IMP_04 + + Test objective "Verify that the AMF node successfully declines a AMF CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.3.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + // AMF cannot accept the setup + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a RAN_CONFIGURATION_UPDATE containing + Supported_TA_List containing + Supported_TA_Item containing + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List + ; + ; + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a RAN_CONFIGURATION_UPDATE_FAILURE containing + Cause; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_IMP_04 } // End Group "RAN Configuration Update" @@ -1405,48 +1405,64 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_IMP_05 - - Test objective "Verify that the AMF node successfully declines a AMF CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.3.2" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. - - Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions - // AMF cannot accept the setup - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a RAN_CONFIGURATION_UPDATE containing - Supported_TA_List containing - Supported_TA_Item containing - TAC, - Broadcast_PLMN_List containing - Broadcast_PLMN_Item containing - PLMN_Identity, - TAI_Slice_Support_List - ; - ; - ; - ; - ; - from the GNB entity - } - then { - the IUT entity sends a RAN_CONFIGURATION_UPDATE_FAILURE containing - Cause; - to the GNB entity - } - } + TP Id TP_NGAP_AMF_IMP_05 + + Test objective "Verify that the AMF node successfully processes a AMF CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.2.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a AMF_CONFIGURATION_UPDATE containing + Served_GUAMI_List containing + Served_GUAMI_Item containing + GUAMI + ; + ;, + PLMN_Support_List containing + PLMN_Support_Item containing + PLMN_Identity, + Slice_Support_List + ; + ;, + AMF_TNL_Association_to_Add_List containing + AMF_TNL_Association_to_Add_item containing + AMF_TNL_Association_Address, + TNL_Address_Weight_Factor + ; + ;, + AMF_TNL_Association_to_Update_List containing + AMF_TNL_Association_to_Update_Item containing + AMF_TNL_Association_Address + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE containing + AMF_TNL_Association_Setup_List containing + AMF_TNL_Association_Setup_Item containing + AMF_TNL_Association_Address + ; + ; + ; + to the GNB entity + } + } } // end TP TP_NGAP_AMF_IMP_05 + } // End Group "AMF Configuration Update" } // End Group "8.7 Interface Management Procedures" -- GitLab From 2ce30ff9bfcdf3cb27ca067807b68d936110ead5 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 17:14:13 +0200 Subject: [PATCH 084/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index b7c8d8b..9a0ea2a 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2663,7 +2663,10 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; // type record AMF_TNLAssociationToUpdateItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); + // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); + template AMF_UE_NGAP_ID mw_ie_aMFUeNgapId(integer p_val:=1) := p_val; + // type record AreaOfInterest { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterest_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofCellinAoI) of AreaOfInterestCellItem AreaOfInterestCellList; @@ -3660,7 +3663,10 @@ module LibNGAP_Templates { // type integer RANPagingPriority (1 .. 256); // type record RANStatusTransfer_TransparentContainer { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); - // type integer RAN_UE_NGAP_ID (0 .. 4294967295); + + // type integer RAN_UE_NGAP_ID (0 .. 4294967295); + template RAN_UE_NGAP_ID mw_ie_rANUeNgapId(integer p_val:=1) := p_val; + // type enumerated RAT_Information { // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; // type record RATRestrictions_Item { -- GitLab From 15ad9ce0bd69c06b1d7f8c1c66333a30009eef43 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 17:14:44 +0200 Subject: [PATCH 085/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index b4269f0..1c8c5bf 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -106,7 +106,15 @@ module NGAP_TCFunctions { ); - f_recv_NGAP_PDU(?); + f_recv_NGAP_PDU( + m_ngap_succMsg( + mw_n2_PDUSessionResourceSetupResponse( + mw_ie_aMFUeNgapId(-), + mw_ie_aMFUeNgapId(-), + ? + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From 2e48b4e3ce928b04691c6015aabd05c99463b7d8 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 26 Oct 2023 17:34:26 +0200 Subject: [PATCH 086/365] create TP groups in AMF --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 136 ++++++++++++++++--------- 1 file changed, 88 insertions(+), 48 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 4c1b9d2..4115f94 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1224,54 +1224,6 @@ Package TP_AMF { } // end Group "8.6 Transport of NAS Messages Procedures" - Group "8.8 Configuration Transfer Procedure" - { - Group "Downlink RAN Configuration Transfer" - { - import all from Ngap_Common; - - Test Purpose { - - TP Id TP_NGAP_AMF_CTP_01 - - Test objective "Verify that the IUT can send an Downlink RAN Configuration Transfer message to transfer RAN configuration information to the NG-RAN." - - Reference - "ETSI TS 138 413 [1], Clauses 8.8.2 and 9.2.7.2" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A3/5_1 - - Expected behaviour - ensure that { - when { - the IUT entity indicate the initiation "of a Downlink RAN Configuration Transfer" - } - then { - the IUT entity sends an NAS_NON_DELIVERY_INDICATION containing - SON_Configuration_Transfer containing - Target_RAN_Node_ID containing - Global_RAN_Node_ID, - Selected_TAI - ;, - Source_RAN_Node_ID containing - Global_RAN_Node_ID, - Selected_TAI - ;, - SON_Information - ; - ; - to the GNB entity - } - } - - } // end TP_NGAP_AMF_CTP_01 - - } // end "Downlink RAN Configuration Transfer" - - } // end Group "8.8 Configuration Transfer Procedure" - Group "8.7 Interface Management Procedures" { Group "NG Setup" @@ -1550,5 +1502,93 @@ Package TP_AMF { } // End Group "AMF Configuration Update" } // End Group "8.7 Interface Management Procedures" + + Group "8.8 Configuration Transfer Procedure" + { + Group "Downlink RAN Configuration Transfer" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_CTP_01 + + Test objective "Verify that the IUT can send an Downlink RAN Configuration Transfer message to transfer RAN configuration information to the NG-RAN." + + Reference + "ETSI TS 138 413 [1], Clauses 8.8.2 and 9.2.7.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a Downlink RAN Configuration Transfer" + } + then { + the IUT entity sends an NAS_NON_DELIVERY_INDICATION containing + SON_Configuration_Transfer containing + Target_RAN_Node_ID containing + Global_RAN_Node_ID, + Selected_TAI + ;, + Source_RAN_Node_ID containing + Global_RAN_Node_ID, + Selected_TAI + ;, + SON_Information + ; + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_CTP_01 + + } // end "Downlink RAN Configuration Transfer" + + } // end Group "8.8 Configuration Transfer Procedure" + + Group "8.9 Warning Message Transmission Procedures" + { + + } // "8.9 Warning Message Transmission Procedures" + + Group "8.10 NRPPa Transport Procedures" + { + + } // "8.10 NRPPa Transport Procedures" + + Group "8.11 Trace Procedures" + { + + } // "8.11 Trace Procedures" + + Group "8.12 Location Reporting Procedures" + { + + } // end "8.12 Location Reporting Procedures" + + Group "8.13 UE TNLA Binding Procedures" + { + + } // end Group "8.13 UE TNLA Binding Procedures" + + Group "8.14 UE Radio Capability Management Procedures" + { + + } // end Group "8.14 UE Radio Capability Management Procedures" + + Group "8.15 Data Usage Reporting Procedures" + { + + } // end Group "8.15 Data Usage Reporting Procedures" + + Group "8.16 RIM Information Transfer Procedures" + { + + } // end Group "8.16 RIM Information Transfer Procedures" } // End of Package TP_AMF -- GitLab From 468a9c510557bdddf247f931048177ea1ccad2c9 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 26 Oct 2023 17:36:12 +0200 Subject: [PATCH 087/365] create TP groups in GNB --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 39 +++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 5ecc7d7..b1e9613 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1609,5 +1609,44 @@ Package TP_GNB { } // end Group "8.8 Configuration Transfer Procedure" + Group "8.9 Warning Message Transmission Procedures" + { + + } // "8.9 Warning Message Transmission Procedures" + + Group "8.10 NRPPa Transport Procedures" + { + + } // "8.10 NRPPa Transport Procedures" + + Group "8.11 Trace Procedures" + { + + } // "8.11 Trace Procedures" + + Group "8.12 Location Reporting Procedures" + { + + } // end "8.12 Location Reporting Procedures" + + Group "8.13 UE TNLA Binding Procedures" + { + + } // end Group "8.13 UE TNLA Binding Procedures" + + Group "8.14 UE Radio Capability Management Procedures" + { + + } // end Group "8.14 UE Radio Capability Management Procedures" + + Group "8.15 Data Usage Reporting Procedures" + { + + } // end Group "8.15 Data Usage Reporting Procedures" + + Group "8.16 RIM Information Transfer Procedures" + { + + } // end Group "8.16 RIM Information Transfer Procedures" } // End of Package TP_GNB -- GitLab From 1990a8a0b52773452b3773ba11d795bc8c81804d Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 17:39:39 +0200 Subject: [PATCH 088/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 1c8c5bf..a8f8eda 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -88,7 +88,7 @@ module NGAP_TCFunctions { m_ie_pDUSessId(-), -, m_ie_sNSSAI(m_ie_sST(-),m_ie_sD(-)), - '00'O + '00'O //TODO replace with template /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( m_ie_uPTLInf(m_ie_gTPTunnel( m_ie_tla(-), @@ -111,7 +111,7 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceSetupResponse( mw_ie_aMFUeNgapId(-), mw_ie_aMFUeNgapId(-), - ? + ? //TODO replace with template ) ) ); -- GitLab From d5e7f04ee5b6d17d248786232252a3715b021bcc Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 17:39:49 +0200 Subject: [PATCH 089/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 9a0ea2a..1099bec 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -641,7 +641,7 @@ module LibNGAP_Templates { procedureCode := id_NGSetup, criticality := reject, value_ := { - NGSetupRequest := { + NGSetupRequest := { protocolIEs := { { id := id_GlobalRANNodeID, -- GitLab From df6a9048f96849ad4d5719c7cc2c4c15fb6631fc Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 17:44:45 +0200 Subject: [PATCH 090/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 55 +++++++++++++++++-------- 1 file changed, 38 insertions(+), 17 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 1099bec..fff5be2 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -86,24 +86,45 @@ module LibNGAP_Templates { // } // } // End of template m_unsuccessfulOutcome - template /*(value)*/ NGAP_PDU m_ngap_initMsg( - in template InitiatingMessage p_msg - ) := { - initiatingMessage := p_msg - } // End of template m_ngap_initMsg - - template /*(value)*/ NGAP_PDU m_ngap_succMsg( - in template SuccessfulOutcome p_msg - ) := { - successfulOutcome := p_msg - } // End of template m_ngap_succMsg - - template /*(value)*/ NGAP_PDU m_ngap_unsuccMsg( - in template UnsuccessfulOutcome p_msg - ) := { - unsuccessfulOutcome := p_msg - } // End of template m_ngap_unsuccMsg + group Send{ + template /*(value)*/ NGAP_PDU m_ngap_initMsg( + in template InitiatingMessage p_msg + ) := { + initiatingMessage := p_msg + } // End of template m_ngap_initMsg + + template /*(value)*/ NGAP_PDU m_ngap_succMsg( + in template SuccessfulOutcome p_msg + ) := { + successfulOutcome := p_msg + } // End of template m_ngap_succMsg + + template /*(value)*/ NGAP_PDU m_ngap_unsuccMsg( + in template UnsuccessfulOutcome p_msg + ) := { + unsuccessfulOutcome := p_msg + } // End of template m_ngap_unsuccMsg + } + group Receive{ + template /*(present)*/ NGAP_PDU mw_ngap_initMsg( + in template InitiatingMessage p_msg + ) := { + initiatingMessage := p_msg + } // End of template m_ngap_initMsg + + template /*(present)*/ NGAP_PDU mw_ngap_succMsg( + in template SuccessfulOutcome p_msg + ) := { + successfulOutcome := p_msg + } // End of template m_ngap_succMsg + + template /*(present)*/ NGAP_PDU mw_ngap_unsuccMsg( + in template UnsuccessfulOutcome p_msg + ) := { + unsuccessfulOutcome := p_msg + } // End of template m_ngap_unsuccMsg + } }//end of group g_NGAP_PDU //9.2 -- GitLab From d494578e0f5b51e9758439c34969120b69446f09 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 26 Oct 2023 17:44:58 +0200 Subject: [PATCH 091/365] added 1st TP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index a8f8eda..07c57c1 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -107,7 +107,7 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( - m_ngap_succMsg( + mw_ngap_succMsg( mw_n2_PDUSessionResourceSetupResponse( mw_ie_aMFUeNgapId(-), mw_ie_aMFUeNgapId(-), -- GitLab From 76d5bcfd458fd7770ef0723940bd41ab7e95a231 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 26 Oct 2023 17:55:24 +0200 Subject: [PATCH 092/365] add TP for section 8.5 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 54 ++++++++++++++++++++++++--- 1 file changed, 49 insertions(+), 5 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index b1e9613..29b76cd 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -15,9 +15,7 @@ file and shall not imply any sub-license right. /* interface at GNB */ Package TP_GNB { - - Group "8.2 PDU Session Management Procedures" { import all from Ngap_Common; @@ -1417,6 +1415,52 @@ Package TP_GNB { } // End Group "8.4 UE Mobility Management Procedures" + Group "8.5 Paging Procedures" + { + Group "Paging" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_PAG_01 + + Test objective "Verify that the IUT can send a PAGING message to enable the AMF to page a UE." + + Reference + "ETSI TS 138 413 [1], Clauses 8.5.1.2 and 9.2.4.1" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + // TODO: initial condition? + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a Page procedure" + } + then { + the IUT entity sends an INITIAL_UE_MESSAGE containing + UE_Paging_Identity containing + 5G_S_TMSI containing + 5G_S_TMSI + ; + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PAG_01 + } // end "Paging" + + } // end "8.5 Paging Procedures" + Group "8.6 Transport of NAS Messages Procedures" { Group "Initial UE Message" @@ -1612,17 +1656,17 @@ Package TP_GNB { Group "8.9 Warning Message Transmission Procedures" { - } // "8.9 Warning Message Transmission Procedures" + } // end "8.9 Warning Message Transmission Procedures" Group "8.10 NRPPa Transport Procedures" { - } // "8.10 NRPPa Transport Procedures" + } // end "8.10 NRPPa Transport Procedures" Group "8.11 Trace Procedures" { - } // "8.11 Trace Procedures" + } // end "8.11 Trace Procedures" Group "8.12 Location Reporting Procedures" { -- GitLab From 48536e7e23ab9d44c4683160ae4d5eb33f3f97bc Mon Sep 17 00:00:00 2001 From: ldtke Date: Thu, 26 Oct 2023 17:59:29 +0200 Subject: [PATCH 093/365] new TPs in section 8.7 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 46 +++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 4115f94..d707dd5 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1234,7 +1234,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_01 - Test objective "Verify that the AMF node successfully processes a NG RESET REQEST message that contains mandatory IEs and answers with NG SETUP ACKNOWLEDGE to acknowledge the setup." + Test objective "Verify that the AMF node successfully processes a NG SETUP REQEST message that contains mandatory IEs and answers with NG SETUP RESPONSE to acknowledge the setup." Reference "ETSI TS 138 413 [1], Clauses 8.7.1.2" @@ -1501,6 +1501,50 @@ Package TP_AMF { } // End Group "AMF Configuration Update" + Group "NG Reset" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_06 + + Test objective "Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.4.2.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + + Initial conditions with { + the UE entity isRegisteredTo the AMF // TODO: check initial conditions + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a NG_RESET containing + Cause, + CHOICE_Reset_Type containing + NG_interface containing + Reset_All + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a NG_RESET_ACKNOWLEDGE + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_IMP_06 + + } // End Group "NG Reset" + } // End Group "8.7 Interface Management Procedures" Group "8.8 Configuration Transfer Procedure" -- GitLab From 3f7eaeaa42e728498232ef1d730e8cb964468ed3 Mon Sep 17 00:00:00 2001 From: ldtke Date: Thu, 26 Oct 2023 18:20:05 +0200 Subject: [PATCH 094/365] new TPs in 8.7 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 34 ++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index d707dd5..cd423f4 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1545,6 +1545,40 @@ Package TP_AMF { } // End Group "NG Reset" + Group "Error Indication" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_07 + + Test objective "Verify that the AMF can send a ERROR INDICATION to established PDU session to the GNB when a error occurs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.5.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a ERROR INDICATION + } + then { + the IUT entity sends a ERROR_INDICATION + to the GNB entity + } + } + + } // end TP_NGAP_AMF_IMP_07 + } } // End Group "8.7 Interface Management Procedures" Group "8.8 Configuration Transfer Procedure" -- GitLab From 703da5568de988634b43770b2aeda9e19791bb1f Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 27 Oct 2023 09:32:34 +0200 Subject: [PATCH 095/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index fff5be2..27f34ba 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -148,18 +148,18 @@ module LibNGAP_Templates { { id := id_AMF_UE_NGAP_ID, criticality := reject, - value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } + value_ := { NGAP_IEs.AMF_UE_NGAP_ID := p_amfUeNgapID } }, { id := id_RAN_UE_NGAP_ID, criticality := reject, - value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } + value_ := { NGAP_IEs.RAN_UE_NGAP_ID := p_ranUeNgapID } }, { id := id_PDUSessionResourceSetupListSUReq, criticality := ignore, - value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL} + value_ := { NGAP_IEs.PDUSessionResourceSetupListSUReq := p_pduSessResSetL} } } -- GitLab From 8c81e20cb6a0ae297f0880a689099bc6c0a33a4f Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 27 Oct 2023 09:54:59 +0200 Subject: [PATCH 096/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 27f34ba..9cb2a60 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -148,18 +148,18 @@ module LibNGAP_Templates { { id := id_AMF_UE_NGAP_ID, criticality := reject, - value_ := { NGAP_IEs.AMF_UE_NGAP_ID := p_amfUeNgapID } + value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } }, { id := id_RAN_UE_NGAP_ID, criticality := reject, - value_ := { NGAP_IEs.RAN_UE_NGAP_ID := p_ranUeNgapID } + value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } }, { id := id_PDUSessionResourceSetupListSUReq, criticality := ignore, - value_ := { NGAP_IEs.PDUSessionResourceSetupListSUReq := p_pduSessResSetL} + value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL} } } -- GitLab From f6b80dc02d007c69dfc03a6305db770d7fff99d9 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 27 Oct 2023 10:38:18 +0200 Subject: [PATCH 097/365] review TPs in group 8.4 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 57 ++++++++++++--------------- 1 file changed, 26 insertions(+), 31 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 29b76cd..49b8778 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1056,10 +1056,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_MMP_01 - Test objective "Verify that the IUT can send a HANDOVER REQUIRED message contains mandatory IEs." + Test objective "Verify that the IUT can send a HANDOVER REQUIRED message containing mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2" + "ETSI TS 138 413 [1], Clauses 8.3.11.2 and 9.2.3.1" Config Id CFG_GNB_01 @@ -1072,7 +1072,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate the initiation Handover Required + the IUT entity indicate the initiation "of a Handover Required procedure" } then { the IUT entity sends a HANDOVER_REQUIRED containing @@ -1083,7 +1083,7 @@ Package TP_GNB { Target_ID, PDU_Session_Resource_List containing PDU_Session_Resource_Item containing - PDU_SessionId, + PDU_SessionId indicating value PX_PDU_ID, Handover_Required_Transfer ; ;, @@ -1091,7 +1091,6 @@ Package TP_GNB { ; to the AMF entity } - } } // end TP TP_NGAP_GNB_MMP_01 @@ -1107,10 +1106,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_MMP_08 - Test objective "Verify that the GNB node successfully processes a HANDOVER_REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." Reference - "ETSI TS 138 413 [1], Clauses 8.4.2.2" + "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4 and 9.2.3.5" Config Id CFG_GNB_01 @@ -1125,14 +1124,14 @@ Package TP_GNB { when { the IUT entity receives a HANDOVER_REQUEST containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, Handover_Typ, Cause, UE_Aggregate_Maximum_Bit_Rate, - UE_Security_Capabilitues - PDU_Session_Setup_Resource_List containing - PDU_Session_Setup_Resource_Item containing - PDU_SessionId, + UE_Security_Capabilities, + Security_Context, + PDU_Session_Resource_Setup_List containing + PDU_Session_Resource_Setup_Item containing + PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, Handover_Request_Transfer ; @@ -1149,7 +1148,7 @@ Package TP_GNB { RAN_UE_NGAP_ID, PDU_Session_Resource_Admitted_List containing PDU_Session_Resource_Admitted_Item containing - PDU_SessionId, + PDU_SessionId indicating value PX_PDU_ID, Handover_Request_Acknowledge_Transfer ; ;, @@ -1174,7 +1173,7 @@ Package TP_GNB { Test objective "Verify that the AMF node successfully sends a HANDOVER NOTIFICATION message that contains mandatory IEs to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.4.3.2" + "ETSI TS 138 413 [1], Clauses 8.4.3.2 and 9.2.3.7" Config Id CFG_AMF_01 @@ -1187,7 +1186,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate the Handover Notification + the IUT entity indicate the initiation "of a Handover Notify procedure" } then { the IUT entity sends a HANDOVER_NOTIFY containing @@ -1216,7 +1215,7 @@ Package TP_GNB { Test objective "Verify that the AMF node successfully sends a PATH SWITCH REQUEST message that contains mandatory IEs to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.4.4.2" + "ETSI TS 138 413 [1], Clauses 8.4.4.2 and 9.2.3.8" Config Id CFG_AMF_01 @@ -1229,7 +1228,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate the Path Switch Request + the IUT entity indicate the initiation "of a Path Switch Request procedure" } then { the IUT entity sends a PATH_SWITCH_REQUEST containing @@ -1239,7 +1238,7 @@ Package TP_GNB { UE_Security_Capabilities, PDU_Session_Resources_to_be_Switched_in_Downlink_List containing PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing - PDU_SessionId, + PDU_SessionId indicating value PX_PDU_ID, Path_Switch_Request_Transfer ; ; @@ -1265,7 +1264,7 @@ Package TP_GNB { Test objective "Verify that the GNB node successfully sends a HANDOVER CANCEL message that contains mandatory IEs to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.4.5.2" + "ETSI TS 138 413 [1], Clauses 8.4.5.2 and 9.2.3.11" Config Id CFG_AMF_01 @@ -1278,7 +1277,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate a Handover Cancel + the IUT entity indicate the initiation "of a Handover Cancel procedure" } then { the IUT entity sends a HANDOVER_CANCEL containing @@ -1288,9 +1287,7 @@ Package TP_GNB { ; to the AMF entity } - - } // End TP_NGAP_GNB_MMP_06 - + } } // End TP_NGAP_GNB_MMP_06 } // End Group "Handover Cancellation" @@ -1306,7 +1303,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully send a Uplink RAN Status Transfer message to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.4.6.2" + "ETSI TS 138 413 [1], Clauses 8.4.6.2 and 9.2.3.13" Config Id CFG_GNB_01 @@ -1319,7 +1316,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate a UE Uplink RAN Status Transfer + the IUT entity indicate the initiation "of an UE Uplink RAN Status Transfer procedure" } then { the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing @@ -1331,8 +1328,6 @@ Package TP_GNB { } } // End TP_NGAP_GNB_MMP_02 - - } } // End Group "Uplink RAN Status Transfer" @@ -1347,7 +1342,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully sends a Handover Success message to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.4.8.2" + "ETSI TS 138 413 [1], Clauses 8.4.8.2 and 9.2.3.15" Config Id CFG_GNB_01 @@ -1360,7 +1355,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate a UE handover success + the IUT entity indicate the initiation "of an UE handover success procedure" } then { the IUT entity sends a HANDOVER_SUCCESS containing @@ -1385,7 +1380,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully sends a Uplink RAN Early Status Transfer message to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.4.9.2" + "ETSI TS 138 413 [1], Clauses 8.4.9.2 and 9.2.3.16" Config Id CFG_GNB_01 @@ -1398,7 +1393,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate a Uplink RAN Early Status Transfer + the IUT entity indicate the initiation "of an Uplink RAN Early Status Transfer" } then { the IUT entity sends a UPLINK_RAN_EARLY_STATUS_TRANSFER containing -- GitLab From 20d4876607688d43580049819d9feb305e9570bf Mon Sep 17 00:00:00 2001 From: stl Date: Fri, 27 Oct 2023 10:46:41 +0200 Subject: [PATCH 098/365] new TPs section 8.7 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 121 ++++++++++++++++++++++++- 1 file changed, 120 insertions(+), 1 deletion(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index cd423f4..bb6f699 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1553,7 +1553,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_07 - Test objective "Verify that the AMF can send a ERROR INDICATION to established PDU session to the GNB when a error occurs." + Test objective "Verify that the AMF can send a ERROR INDICATION to the GNB when a error occurs." Reference "ETSI TS 138 413 [1], Clauses 8.7.5.2" @@ -1579,6 +1579,125 @@ Package TP_AMF { } // end TP_NGAP_AMF_IMP_07 } + + Group "AMF Status Indication" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_08 + + Test objective "Verify that the AMF can send a AMF STATUS INDICATION to the GNB when a error occurs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.6.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a AMF STATUS INDICATION + } + then { + the IUT entity sends a AMF_STATUS_INDICATION containing + Unavailable_GUAMI_List containing + Unavailable_GUAMI_Item containing + GUAMI + ; + ; + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_IMP_08 + + } // End Group "AMF Status Indication" + + Group "Overload Start" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_09 + + Test objective "Verify that the AMF can send a OVERLOAD START to the GNB." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.7.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a OVERLOAD START + } + then { + the IUT entity sends a OVERLOAD_START containing + Overload_Start_NSSAI_List containing + Overload_Start_NSSAI_Item containing + Slice_Overload_List + ; + ; + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_IMP_09 + } // End Group "Overload Start" + + Group "Overload Stop " + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_10 + + Test objective "Verify that the AMF can send a OVERLOAD STOP to the GNB." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.7.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a OVERLOAD STOP + } + then { + the IUT entity sends a OVERLOAD_STOP + to the GNB entity + } + } + + } // end TP_NGAP_AMF_IMP_10 + } // End Group "Overload Stop" + } // End Group "8.7 Interface Management Procedures" Group "8.8 Configuration Transfer Procedure" -- GitLab From ee5e5edb3d6656f16f8b28c1646fac22f436aa18 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 27 Oct 2023 12:57:21 +0200 Subject: [PATCH 099/365] add type Cause to commons file --- test_purposes/Ngap_Common.tplan2 | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index a369b14..b93c858 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -92,6 +92,7 @@ Package Ngap_Common { Data { type NgapMessage; + type Cause; //Table 8.1-1 NgapMessage AMF_CONFIGURATION_UPDATE; @@ -192,6 +193,9 @@ Package Ngap_Common { NgapMessage HANDOVER_SUCCESS; NgapMessage UPLINK_RAN_EARLY_STATUS_TRANSFER; NgapMessage DOWNLINK_RAN_EARLY_STATUS_TRANSFER; + + //Section 9.3.1.2 + Cause Multiple_Location_Reporting_Reference_ID_instances; } // End of Data section -- GitLab From b00b61b71b1bd3ae3dd4b2fe5909dcb9e0185a51 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 27 Oct 2023 12:58:46 +0200 Subject: [PATCH 100/365] add TPs for section 8.12 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 35 +++++++++ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 99 ++++++++++++++++++++++++++ 2 files changed, 134 insertions(+) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index cd423f4..1de96ff 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1646,6 +1646,41 @@ Package TP_AMF { Group "8.12 Location Reporting Procedures" { + Group "Location Reporting Control" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_LRP_01 + + Test objective "Verify that the IUT can send a LOCATION REPORTING CONTROL message that contains mandatory IEs to request a report of the UE's current location." + + Reference + "ETSI TS 138 413 [1], Clauses 8.12.1 and 9.2.11.1" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A3/5_1 + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a Location Reporting Control procedure" + } + then { + the IUT entity sends an LOCATION_REPORTING_CONTROL containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Location_Reporting_Request_Type + ; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_LRP_01 + + } // end "Location Reporting Control" } // end "8.12 Location Reporting Procedures" diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 49b8778..848f0b6 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1665,6 +1665,105 @@ Package TP_GNB { Group "8.12 Location Reporting Procedures" { + Group "Location Reporting Failure Indication" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_LRP_01 + + Test objective "Verify that the IUT can send a LOCATION REPORTING FAILURE INDICATION message after that contains mandatory IEs receiving a LOCATION REPORTING CONTROL message with two identical Location Reporting Reference IDs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.12.2, 9.2.11.1, 9.2.11.2 and 9.3.1.65" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Expected behaviour + ensure that { + when { + the IUT entity sends an LOCATION_REPORTING_CONTROL containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Location_Reporting_Request_Type containing + Event_Type, + Report_Area, + Area_of_Interest_List containing + Area_of_Interest_Item containing + Area_of_Interest, + Location_Reporting_Reference_ID indicating value PX_REPORTING_REFERENCE_ID + ;, + Area_of_Interest_Item containing + Area_of_Interest, + Location_Reporting_Reference_ID indicating value PX_REPORTING_REFERENCE_ID + ; + ; + ; + ; + from the AMF entity + } + then { + the IUT entity sends an LOCATION_REPORTING_CONTROL containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause containing + CHOICE_Cause_Group containing + Radio_Network_Layer_Cause indicating value Multiple_Location_Reporting_Reference_ID_instances + ; + ; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_LRP_01 + + } // end "Location Reporting Failure Indication" + + Group "Location Report" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_LRP_02 + + Test objective "Verify that the IUT can send a LOCATION REPORT message that contains mandatory IEs to provide the UE's current location." + + Reference + "ETSI TS 138 413 [1], Clauses 8.12.2 and 9.2.11.3" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A3/5_1 + + Expected behaviour + ensure that { + when { + the IUT entity sends an LOCATION_REPORTING_CONTROL containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Location_Reporting_Request_Type + ; + from the AMF entity + } + then { + the IUT entity sends an LOCATION_REPORT containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + User_Location_Information, + Location_Reporting_Request_Type + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_LRP_02 + + } // end "Location Report" } // end "8.12 Location Reporting Procedures" -- GitLab From d7b2931b81b2a0157fc3b5a852cdd5fca80fff1e Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 8 Nov 2023 13:16:25 +0100 Subject: [PATCH 101/365] Align template ProtocolIEs.value_ syntax --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 34 ++++++++++++------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 9cb2a60..273ce5d 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -148,18 +148,18 @@ module LibNGAP_Templates { { id := id_AMF_UE_NGAP_ID, criticality := reject, - value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, { id := id_RAN_UE_NGAP_ID, criticality := reject, - value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { id := id_PDUSessionResourceSetupListSUReq, criticality := ignore, - value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL} + value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} } } @@ -182,18 +182,18 @@ module LibNGAP_Templates { { id := id_AMF_UE_NGAP_ID, criticality := reject, - value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, { id := id_RAN_UE_NGAP_ID, criticality := reject, - value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { id := id_PDUSessionResourceSetupListSUReq, criticality := ignore, - value_ := { pDUSessionResourceSetupListSUReq := p_pduSessResSetL} + value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} } } @@ -219,18 +219,18 @@ module LibNGAP_Templates { { id := id_AMF_UE_NGAP_ID, criticality := reject, - value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, { id := id_RAN_UE_NGAP_ID, criticality := reject, - value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { - id := id_PDUSessionResourceSetupListSUReq, + id := id_PDUSessionResourceSetupListSURes, criticality := ignore, - value_ := { pDUSessionResourceSetupListSURes := p_pduSessResSetL} + value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL} } } @@ -253,18 +253,18 @@ module LibNGAP_Templates { { id := id_AMF_UE_NGAP_ID, criticality := reject, - value_ := { aMF_UE_NGAP_ID := p_amfUeNgapID } + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, { id := id_RAN_UE_NGAP_ID, criticality := reject, - value_ := { rAN_UE_NGAP_ID := p_ranUeNgapID } + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { - id := id_PDUSessionResourceSetupListSUReq, + id := id_PDUSessionResourceSetupListSURes, criticality := ignore, - value_ := { pDUSessionResourceSetupListSURes := p_pduSessResSetL} + value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL} } } @@ -667,18 +667,18 @@ module LibNGAP_Templates { { id := id_GlobalRANNodeID, criticality := reject, - value_ := { globalRANNodeID := p_globalRANNodeID } + value_ := { GlobalRANNodeID := p_globalRANNodeID } }, { id := id_SupportedTAList, criticality := reject, - value_ := { supportedTAList := p_supportedTAs } + value_ := { SupportedTAList := p_supportedTAs } }, { id := id_DefaultPagingDRX, criticality := ignore, - value_ := { pagingDRX := p_pagingDRX + value_ := { PagingDRX := p_pagingDRX } } } -- GitLab From 31c8a5bd00043b4febf9bc3acd6456495bd2e9a7 Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 20 Nov 2023 09:00:14 +0100 Subject: [PATCH 102/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 44 +++++++++++++++++++++++-- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 273ce5d..123931e 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -695,6 +695,44 @@ module LibNGAP_Templates { group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + + template (present) SuccessfulOutcome mw_n2_NGSetupResponse( + in template (present) AMFName p_amfName := ?, + in template (present) ServedGUAMIList p_servedGUAMIList := ?, + in template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + in template (present) PLMNSupportList p_plmnSuppList := ? + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupRequest := { + protocolIEs := { + { + id := id_AMFName, + criticality := reject, + value_ := { AMFName := p_amfName } + }, + { + id := id_ServedGUAMIList, + criticality := reject, + value_ := { ServedGUAMIList := p_servedGUAMIList } + + }, + { + id := id_RelativeAMFCapacity, + criticality := ignore, + value_ := { RelativeAMFCapacity := p_relativeAmfCap } + }, + { + id := id_PLMNSupportList, + criticality := ignore, + value_ := { PLMNSupportList := p_plmnSuppList } + } + } + } + } + }//end of template mw_n2_NGSetupResponse + } } //9.2.6.3 @@ -2040,7 +2078,7 @@ module LibNGAP_Templates { { id := id_UL_NGU_UP_TNLInformation, criticality := reject, - value_ := { uPTransportLayerInformation := p_utli} + value_ := { UPTransportLayerInformation := p_utli} //presence := mandatory }, // { @@ -2058,7 +2096,7 @@ module LibNGAP_Templates { { id := id_PDUSessionType, criticality := reject, - value_ := { pDUSessionType := p_pst} + value_ := { PDUSessionType := p_pst} //presence := mandatory }, // { @@ -2076,7 +2114,7 @@ module LibNGAP_Templates { { id := id_QosFlowSetupRequestList, criticality := reject, - value_ := { qosFlowSetupRequestList := p_qfsrl} + value_ := { QosFlowSetupRequestList := p_qfsrl} //presence := mandatory }//, // { -- GitLab From 0b560f27b37dcaba0ba2ca16d0bb60d6185f0068 Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 20 Nov 2023 09:10:22 +0100 Subject: [PATCH 103/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 123931e..d7ab658 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -705,7 +705,7 @@ module LibNGAP_Templates { procedureCode := id_NGSetup, criticality := reject, value_ := { - NGSetupRequest := { + NGSetupResponse := { protocolIEs := { { id := id_AMFName, -- GitLab From 8c2660307887d7c9f00fc2888da98f0ce5049e2a Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 21 Nov 2023 10:17:36 +0100 Subject: [PATCH 104/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index d7ab658..894e728 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -740,6 +740,24 @@ module LibNGAP_Templates { group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ } group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + + template (present) UnsuccessfulOutcome mw_n2_NGSetupFailure( + in template (present) Cause p_cause := ? + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupFailure := { + protocolIEs := { + { + id := id_Cause, + criticality := reject, + value_ := { Cause := p_cause } + } + } + } + } + }//end of template mw_n2_NGSetupFailure } } //9.2.6.4 -- GitLab From ce3284503fbbcb1a14c495f5ca73ec4d70b96039 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 21 Nov 2023 10:46:57 +0100 Subject: [PATCH 105/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 894e728..f4140fe 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -703,7 +703,7 @@ module LibNGAP_Templates { in template (present) PLMNSupportList p_plmnSuppList := ? ) := { procedureCode := id_NGSetup, - criticality := reject, + criticality := ?, value_ := { NGSetupResponse := { protocolIEs := { @@ -745,7 +745,7 @@ module LibNGAP_Templates { in template (present) Cause p_cause := ? ) := { procedureCode := id_NGSetup, - criticality := reject, + criticality := ?, value_ := { NGSetupFailure := { protocolIEs := { -- GitLab From 28b0e3e3be7e8c848e59ff1043e495226a3e1685 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 22 Nov 2023 07:44:25 +0100 Subject: [PATCH 106/365] added IE templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index f4140fe..9b91171 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -751,7 +751,7 @@ module LibNGAP_Templates { protocolIEs := { { id := id_Cause, - criticality := reject, + criticality := ?, value_ := { Cause := p_cause } } } -- GitLab From c4deb8be1fb3ee0d57f117a6a1fe5fe717009a4e Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 4 Dec 2023 17:24:52 +0100 Subject: [PATCH 107/365] TTF T033: Implement ASN.1 send/receive templates --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 49 + ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1975 ++++++++++++------ ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn | 34 - 3 files changed, 1331 insertions(+), 727 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 0515da0..832f3fc 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -14,6 +14,18 @@ module NGAP_TestCases { // LibCommon import from LibCommon_Sync all ; + // LibNGAP + import from NGAP_Constants language "ASN.1:2002" all; + import from NGAP_CommonDataTypes language "ASN.1:2002" all; + import from NGAP_IEs language "ASN.1:2002" all; + import from NGAP_PDU_Contents language "ASN.1:2002" all; + import from NGAP_PDU_Descriptions language "ASN.1:2002" all; + import from NGAP_Containers language "ASN.1:2002" all; + + import from LibNGAP_TypesAndValues all; + import from LibNGAP_Templates all; + import from LibNGAP_Pixits all; + // NGAP_Ats import from LibNGAP_TypesAndValues all; import from NGAP_TestConfiguration all; @@ -39,6 +51,8 @@ module NGAP_TestCases { // Local variables var gNBNGAPComponent v_ngap_gnb_or_amf; //or v_ngap_amf + + var AdditionalDLUPTNLInformationForHOItem v_test, v_test1; // Test control if (not PICS_NGAP_AMF_IUT) { @@ -50,6 +64,41 @@ module NGAP_TestCases { f_cf_NGAP_gNB_Up/*aMF_Up*/(v_ngap_gnb_or_amf); // Start + v_test := valueof( + m_additionalDLUPTNLInformationForHOItem( + m_ie_uPTLInf( + m_ie_gTPTunnel( + m_ie_tla, + m_ie_gtpTeId + )), + { m_qosFlowItemWithDataForwarding( + m_qosFlowIdentifier, + m_dataForwardingAccepted + ) + } + )); + v_test1 := valueof( + m_additionalDLUPTNLInformationForHOItem( + m_ie_uPTLInf( + m_ie_gTPTunnel( + m_ie_tla, + m_ie_gtpTeId + )), + { m_qosFlowItemWithDataForwarding( + m_qosFlowIdentifier, + m_dataForwardingAccepted, + m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( + m_alternativeQoSParaSetIndex + )) + }, + -, + m_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( + m_ie_uPTLInf( + m_ie_gTPTunnel( + m_ie_tla, + m_ie_gtpTeId + + ))))); v_ngap_gnb_or_amf.start(f_TC_NGAP_gNB_or_aMF_functionName_01()); // synchronize PTC on 1 sychronization points diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 9b91171..a4a4e84 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -10,11 +10,11 @@ * @see ETSI TS 138 413 / 3GPP TS 38.413 version 16.12 Release 16 */ module LibNGAP_Templates { - + // LibCommon import from LibCommon_BasicTypesAndValues all; import from LibCommon_DataStrings all; - + // LibNGAP import from NGAP_Constants language "ASN.1:2002" all; import from NGAP_CommonDataTypes language "ASN.1:2002" all; @@ -22,12 +22,12 @@ module LibNGAP_Templates { import from NGAP_PDU_Contents language "ASN.1:2002" all; import from NGAP_PDU_Descriptions language "ASN.1:2002" all; import from NGAP_Containers language "ASN.1:2002" all; - + import from LibNGAP_TypesAndValues all; import from LibNGAP_Pixits all; - + group g_NGAP { - + group g_NGAP_PDU { // /** @@ -40,13 +40,13 @@ module LibNGAP_Templates { // in ProcedureCode p_procedureCode, // in NGAP_CommonDataTypes.Criticality p_criticality:=reject // //in anytype p_value -// ) := { +// ) := { // initiatingMessage := { // procedureCode := p_procedureCode, // criticality := p_criticality, // value_ := omit//p_value // } -// } // End of template m_initiatingMessage +// } // End of template m_initiatingMessage // // //TODO: check value_ not allowed anytype @@ -60,13 +60,13 @@ module LibNGAP_Templates { // in ProcedureCode p_procedureCode, // in NGAP_CommonDataTypes.Criticality p_criticality:=reject // //in anytype p_value -// ) := { +// ) := { // successfulOutcome := { // procedureCode := p_procedureCode, // criticality := p_criticality, // value_ := ?//omit//p_value // } -// } // End of template m_successfulOutcome +// } // End of template m_successfulOutcome // // /** // * @desc Send template for NGAP PDU with unsuccessfulOutcome payload @@ -78,623 +78,624 @@ module LibNGAP_Templates { // in ProcedureCode p_procedureCode, // in NGAP_CommonDataTypes.Criticality p_criticality:=reject // //in anytype p_value -// ) := { +// ) := { // unsuccessfulOutcome := { // procedureCode := p_procedureCode, // criticality := p_criticality, // value_ := ?//omit//p_value // } -// } // End of template m_unsuccessfulOutcome - - group Send{ - template /*(value)*/ NGAP_PDU m_ngap_initMsg( - in template InitiatingMessage p_msg - ) := { - initiatingMessage := p_msg - } // End of template m_ngap_initMsg - - template /*(value)*/ NGAP_PDU m_ngap_succMsg( - in template SuccessfulOutcome p_msg - ) := { - successfulOutcome := p_msg - } // End of template m_ngap_succMsg - - template /*(value)*/ NGAP_PDU m_ngap_unsuccMsg( - in template UnsuccessfulOutcome p_msg - ) := { - unsuccessfulOutcome := p_msg - } // End of template m_ngap_unsuccMsg +// } // End of template m_unsuccessfulOutcome + + group Send { + + template (value) NGAP_PDU m_ngap_initMsg( + in template (value) InitiatingMessage p_msg + ) := { + initiatingMessage := p_msg + } // End of template m_ngap_initMsg + + template (value) NGAP_PDU m_ngap_succMsg( + in template (value) SuccessfulOutcome p_msg + ) := { + successfulOutcome := p_msg + } // End of template m_ngap_succMsg + + template (value) NGAP_PDU m_ngap_unsuccMsg( + in template (value) UnsuccessfulOutcome p_msg + ) := { + unsuccessfulOutcome := p_msg + } // End of template m_ngap_unsuccMsg } group Receive{ - template /*(present)*/ NGAP_PDU mw_ngap_initMsg( - in template InitiatingMessage p_msg - ) := { - initiatingMessage := p_msg - } // End of template m_ngap_initMsg - - template /*(present)*/ NGAP_PDU mw_ngap_succMsg( - in template SuccessfulOutcome p_msg - ) := { - successfulOutcome := p_msg - } // End of template m_ngap_succMsg - - template /*(present)*/ NGAP_PDU mw_ngap_unsuccMsg( - in template UnsuccessfulOutcome p_msg - ) := { - unsuccessfulOutcome := p_msg - } // End of template m_ngap_unsuccMsg + template (present) NGAP_PDU mw_ngap_initMsg( + template (present) InitiatingMessage p_msg := ? + ) := { + initiatingMessage := p_msg + } // End of template m_ngap_initMsg + + template (present) NGAP_PDU mw_ngap_succMsg( + template (present) SuccessfulOutcome p_msg := ? + ) := { + successfulOutcome := p_msg + } // End of template m_ngap_succMsg + + template (present) NGAP_PDU mw_ngap_unsuccMsg( + template (present) UnsuccessfulOutcome p_msg := ? + ) := { + unsuccessfulOutcome := p_msg + } // End of template m_ngap_unsuccMsg } - }//end of group g_NGAP_PDU - + } // End of group g_NGAP_PDU + //9.2 group Message_Functional_Definition_and_Content{ //9.2.1 group PDU_Session_Management_Messages{ //9.2.1.1 group PDU_SESSION_RESOURCE_SETUP_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ template (value) InitiatingMessage m_n2_PDUSessionResourceSetupRequest( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, - in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, - in template (value) PDUSessionResourceSetupListSUReq p_pduSessResSetL - ) := { - procedureCode := id_PDUSessionResourceSetup, - criticality := reject, - value_ := { - PDUSessionResourceSetupRequest := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - - }, - { - id := id_PDUSessionResourceSetupListSUReq, - criticality := ignore, - value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} - } - - } - } + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, + in template (value) PDUSessionResourceSetupListSUReq p_pduSessResSetL + ) := { + procedureCode := id_PDUSessionResourceSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + + }, + { + id := id_PDUSessionResourceSetupListSUReq, + criticality := ignore, + value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} + } + } } - }//end of template mw_n2_PDUSessionResourceSetupRequest + } + } // End of template mw_n2_PDUSessionResourceSetupRequest } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + + group Receive { template (present) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( - in template (present) AMF_UE_NGAP_ID p_amfUeNgapID, - in template (present) RAN_UE_NGAP_ID p_ranUeNgapID, - in template (present) PDUSessionResourceSetupListSUReq p_pduSessResSetL - ) := { - procedureCode := id_PDUSessionResourceSetup, - criticality := reject, - value_ := { - PDUSessionResourceSetupRequest := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - - }, - { - id := id_PDUSessionResourceSetupListSUReq, - criticality := ignore, - value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} - } - - } - } + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceSetupListSUReq p_pduSessResSetL + ) := { + procedureCode := id_PDUSessionResourceSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + + }, + { + id := id_PDUSessionResourceSetupListSUReq, + criticality := ignore, + value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} + } + + } } - }//end of template mw_n2_PDUSessionResourceSetupRequest + } + } // End of template mw_n2_PDUSessionResourceSetupRequest } } //9.2.1.2 group PDU_SESSION_RESOURCE_SETUP_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ template (value) SuccessfulOutcome m_n2_PDUSessionResourceSetupResponse( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, - in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, - in template (value) PDUSessionResourceSetupListSURes p_pduSessResSetL - ) := { - procedureCode := id_PDUSessionResourceSetup, - criticality := reject, - value_ := { - PDUSessionResourceSetupResponse := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - - }, - { - id := id_PDUSessionResourceSetupListSURes, - criticality := ignore, - value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL} - } - - } - } + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, + in template (value) PDUSessionResourceSetupListSURes p_pduSessResSetL + ) := { + procedureCode := id_PDUSessionResourceSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + + }, + { + id := id_PDUSessionResourceSetupListSURes, + criticality := ignore, + value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL} + } + + } } - }//end of template mw_n2_PDUSessionResourceSetupResponse + } + } // End of template mw_n2_PDUSessionResourceSetupResponse } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ template (present) SuccessfulOutcome mw_n2_PDUSessionResourceSetupResponse( - in template (present) AMF_UE_NGAP_ID p_amfUeNgapID, - in template (present) RAN_UE_NGAP_ID p_ranUeNgapID, - in template (present) PDUSessionResourceSetupListSURes p_pduSessResSetL + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceSetupListSURes p_pduSessResSetL := ? ) := { - procedureCode := id_PDUSessionResourceSetup, - criticality := reject, - value_ := { - PDUSessionResourceSetupResponse := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - - }, - { - id := id_PDUSessionResourceSetupListSURes, - criticality := ignore, - value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL} - } - - } - } - } - }//end of template mw_n2_PDUSessionResourceSetupResponse + procedureCode := id_PDUSessionResourceSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + + }, + { + id := id_PDUSessionResourceSetupListSURes, + criticality := ignore, + value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL} + } + + } + } + } + } // End of template mw_n2_PDUSessionResourceSetupResponse } } //9.2.1.3 group PDU_SESSION_RESOURCE_RELEASE_COMMAND{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.1.4 group PDU_SESSION_RESOURCE_RELEASE_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.1.5 group PDU_SESSION_RESOURCE_MODIFY_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.1.6 group PDU_SESSION_RESOURCE_MODIFY_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.1.7 group PDU_SESSION_RESOURCE_NOTIFY{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.1.8 group PDU_SESSION_RESOURCE_MODIFY_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.1.9 group PDU_SESSION_RESOURCE_MODIFY_CONFIRM{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end_of_group_PDU_Session_Management_Messages + } // End of group PDU_Session_Management_Messages //9.2.2 group UE_Context_Management_Messages{ //9.2.2.1 group INITIAL_CONTEXT_SETUP_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.2 group INITIAL_CONTEXT_SETUP_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.3 group INITIAL_CONTEXT_SETUP_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.4 group UE_CONTEXT_RELEASE_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.5 group UE_CONTEXT_RELEASE_COMMAND{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.6 group UE_CONTEXT_RELEASE_COMPLETE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.7 group UE_CONTEXT_MODIFICATION_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.8 group UE_CONTEXT_MODIFICATION_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.9 group UE_CONTEXT_MODIFICATION_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.10 group RRC_INACTIVE_TRANSITION_REPORT{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.11 group CONNECTION_ESTABLISHMENT_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.12 group AMF_CP_RELOCATION_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.13 group RAN_CP_RELOCATION_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.14 group RETRIEVE_UE_INFORMATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.15 group UE_INFORMATION_TRANSFER{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.16 group UE_CONTEXT_SUSPEND_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.17 group UE_CONTEXT_SUSPEND_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.18 group UE_CONTEXT_SUSPEND_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.19 group UE_CONTEXT_RESUME_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.20 group UE_CONTEXT_RESUME_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.2.21 group UE_CONTEXT_RESUME_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end_of_group_UE_Context_Management_Messages_ + } // End of group UE_Context_Management_Messages_ //9.2.3 group UE_Mobility_Management_Messages{ //9.2.3.1 group HANDOVER_REQUIRED{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.2 group HANDOVER_COMMAND{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.3 group HANDOVER_PREPARATION_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.4 group HANDOVER_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.5 group HANDOVER_REQUEST_ACKNOWLEDGE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.6 group HANDOVER_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.7 group HANDOVER_NOTIFY{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.8 group PATH_SWITCH_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.9 group PATH_SWITCH_REQUEST_ACKNOWLEDGE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.10 group PATH_SWITCH_REQUEST_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.11 group HANDOVER_CANCEL{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.12 group HANDOVER_CANCEL_ACKNOWLEDGE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.13 group UPLINK_RAN_STATUS_TRANSFER{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.14 group DOWNLINK_RAN_STATUS_TRANSFER{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.15 group HANDOVER_SUCCESS{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.16 group UPLINK_RAN_EARLY_STATUS_TRANSFER{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.3.17 group DOWNLINK_RAN_EARLY_STATUS_TRANSFER{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group UE_Mobility_Management_Messages - + } // End of group UE_Mobility_Management_Messages + //9.2.4 group Paging_Messages{ //9.2.4.1 group PAGING{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group Paging_Messages - + } // End of group Paging_Messages + //9.2.5 group NAS_Transport_Messages{ //9.2.5.1 group INITIAL_UE_MESSAGE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.5.2 group DOWNLINK_NAS_TRANSPORT{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.5.3 group UPLINK_NAS_TRANSPORT{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.5.4 group NAS_NON_DELIVERY_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.5.5 group REROUTE_NAS_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group NAS_Transport_Messages + } // End of group NAS_Transport_Messages //9.2.6 group Interface_Management_Messages{ //9.2.6.1 group NG_SETUP_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ template (value) InitiatingMessage m_n2_NGSetupRequest( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) SupportedTAList p_supportedTAs, - in template (value) PagingDRX p_pagingDRX - ) := { - procedureCode := id_NGSetup, - criticality := reject, - value_ := { - NGSetupRequest := { - protocolIEs := { - { - id := id_GlobalRANNodeID, - criticality := reject, - value_ := { GlobalRANNodeID := p_globalRANNodeID } - }, - { - id := id_SupportedTAList, - criticality := reject, - value_ := { SupportedTAList := p_supportedTAs } + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) SupportedTAList p_supportedTAs, + in template (value) PagingDRX p_pagingDRX + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupRequest := { + protocolIEs := { + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + }, + { + id := id_SupportedTAList, + criticality := reject, + value_ := { SupportedTAList := p_supportedTAs } - }, - { - id := id_DefaultPagingDRX, - criticality := ignore, - value_ := { PagingDRX := p_pagingDRX - } - } - } - } - } - }//end of template m_n2_NGSetupRequest + }, + { + id := id_DefaultPagingDRX, + criticality := ignore, + value_ := { PagingDRX := p_pagingDRX + } + } + } + } + } // End of template m_n2_NGSetupRequest + } } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.2 group NG_SETUP_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ template (present) SuccessfulOutcome mw_n2_NGSetupResponse( in template (present) AMFName p_amfName := ?, @@ -737,9 +738,9 @@ module LibNGAP_Templates { } //9.2.6.3 group NG_SETUP_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ template (present) UnsuccessfulOutcome mw_n2_NGSetupFailure( in template (present) Cause p_cause := ? @@ -762,350 +763,405 @@ module LibNGAP_Templates { } //9.2.6.4 group RAN_CONFIGURATION_UPDATE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.5 group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.6 group RAN_CONFIGURATION_UPDATE_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.7 group AMF_CONFIGURATION_UPDATE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.8 group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.9 group AMF_CONFIGURATION_UPDATE_FAILURE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.10 group AMF_STATUS_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.11 group NG_RESET{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.12 group NG_RESET_ACKNOWLEDGE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.13 group ERROR_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.14 group OVERLOAD_START{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.6.15 group OVERLOAD_STOP{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group Interface_Management_Messages - + } // End of group Interface_Management_Messages + //9.2.7 group Configuration_Transfer_Messages{ //9.2.7.1 group UPLINK_RAN_CONFIGURATION_TRANSFER{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.7.2 group DOWNLINK_RAN_CONFIGURATION_TRANSFER{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group Configuration_Transfer_Messages - + } // End of group Configuration_Transfer_Messages + //9.2.8 group Warning_Message_Transmission_Messages{ //9.2.8.1 group WRITE_REPLACE_WARNING_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.8.2 group WRITE_REPLACE_WARNING_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.8.3 group PWS_CANCEL_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.8.4 group PWS_CANCEL_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.8.5 group PWS_RESTART_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.8.6 group PWS_FAILURE_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group Warning_Message_Transmission_Messages + } // End of group Warning_Message_Transmission_Messages //9.2.9 group NRPPa_Transport_Messages{ //9.2.9.1 group DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.9.2 group UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.9.3 group DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.9.4 group UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group NRPPa_Transport_Messages - + } // End of group NRPPa_Transport_Messages + //9.2.10 group Trace_Messages{ //9.2.10.1 group TRACE_START{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.10.2 group TRACE_FAILURE_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.10.3 group DEACTIVATE_TRACE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.10.4 group CELL_TRAFFIC_TRACE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group Trace_Messages - + } // End of group Trace_Messages + //9.2.11 group Location_Reporting_Messages{ //9.2.11.1 group LOCATION_REPORTING_CONTROL{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.11.2 group LOCATION_REPORTING_FAILURE_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.11.3 group LOCATION_REPORT{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group Location_Reporting_Messages - + } // End of group Location_Reporting_Messages + //9.2.12 group UE_TNLA_Binding_Messages{ //9.2.12.1 group UE_TNLA_BINDING_RELEASE_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group UE_TNLA_Binding_Messages - + } // End of group UE_TNLA_Binding_Messages + //9.2.13 group UE_Radio_Capability_Management_Messages{ //9.2.13.1 group UE_RADIO_CAPABILITY_INFO_INDICATION{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.13.2 group UE_RADIO_CAPABILITY_CHECK_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.13.3 group UE_RADIO_CAPABILITY_CHECK_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.13.4 group UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.13.5 group UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group UE_Radio_Capability_Management_Messages - + } // End of group UE_Radio_Capability_Management_Messages + //9.2.14 group Data_Usage_Reporting_Messages{ //9.2.14.1 group SECONDARY_RAT_DATA_USAGE_REPORT{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group Data_Usage_Reporting_Messages - + } // End of group Data_Usage_Reporting_Messages + //9.2.15 group RIM_Information_Transfer_Messages{ //9.2.15.1 group UPLINK_RIM_INFORMATION_TRANSFER{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } //9.2.15.2 group DOWNLINK_RIM_INFORMATION_TRANSFER{ - group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + group Send{ } - group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ + group Receive{ } } - }//end of group RIM_Information_Transfer_Messages - - }//end of group Message_Functional_Definition_and_Content + } // End of group RIM_Information_Transfer_Messages + + } // End of group Message_Functional_Definition_and_Content group Information_elements{ - group Send{/*m_ie_*/ - - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of AdditionalDLUPTNLInformationForHOItem AdditionalDLUPTNLInformationForHOList; - // type record AdditionalDLUPTNLInformationForHOItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AdditionalDLUPTNLInformationForHOItem_ExtIEs ( - // type enumerated AdditionalQosFlowInformation { - // type record AllocationAndRetentionPriority { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllocationAndRetentionPriority_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; - // type record AllowedNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; - // type record Allowed_PNI_NPN_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; - // type integer AlternativeQoSParaSetIndex ( - // type integer AlternativeQoSParaSetNotifyIndex ( - // type record length (1 .. NGAP_Constants.maxnoofQosParaSets) of AlternativeQoSParaSetItem AlternativeQoSParaSetList; - // type record AlternativeQoSParaSetItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AlternativeQoSParaSetItem_ExtIEs (?); - // type ASNAUX.PrintableString AMFName length ( - // type ASNAUX.VisibleString AMFNameVisibleString length ( - // type ASNAUX.UTF8String AMFNameUTF8String length ( - // type union AMFPagingTarget { + + group Send { + + template (omit) AdditionalDLUPTNLInformationForHOItem m_additionalDLUPTNLInformationForHOItem( + in template (value) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation, + in template (value) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList, + in template (omit) UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := omit, + in template (omit) AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := omit + ) := { + additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, + additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, + additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_additionalDLUPTNLInformationForHOItem + + template (value) AdditionalDLUPTNLInformationForHOItem.iE_Extensions m_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_additionalDLUPTNLInformationForHOItem_iE_Extensions + + template (value) AdditionalQosFlowInformation m_additionalQosFlowInformation(in AdditionalQosFlowInformation p_value := more_likely) := p_value; + + template (omit) AllocationAndRetentionPriority m_allocationAndRetentionPriority( + in template (value) PriorityLevelARP p_priorityLevelARP, + in template (value) Pre_emptionCapability p_pre_emptionCapability, + in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + in template (omit) AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := omit + ) := { + priorityLevelARP := p_priorityLevelARP, + pre_emptionCapability := p_pre_emptionCapability, + pre_emptionVulnerability := p_pre_emptionVulnerability, + iE_Extensions := p_iE_Extensions + } // End of template m_allocationAndRetentionPriority + + template (value) AlternativeQoSParaSetIndex m_alternativeQoSParaSetIndex(in template (value) integer p_value := 0) := p_value; + + template (value) AlternativeQoSParaSetNotifyIndex m_alternativeQoSParaSetNotifyIndex(in template (value) integer p_value := 0) := p_value; + + template (omit) AlternativeQoSParaSetItem m_alternativeQoSParaSetItem( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex, + in template (omit) BitRate p_guaranteedFlowBitRateDL := omit, + in template (omit) BitRate p_guaranteedFlowBitRateUL := omit, + in template (omit) PacketDelayBudget p_packetDelayBudget := omit, + in template (omit) PacketErrorRate p_packetErrorRate := omit, + in template (omit) AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := omit + ) := { + alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + iE_Extensions := p_iE_Extensions + } // End of template m_alternativeQoSParaSetItem + + template (value) AMFName m_aMFName(in AMFName p_value) := p_value; + + template (value) AMFNameVisibleString m_aMFNameVisibleString(in AMFNameVisibleString p_value) := p_value; + + template (value) AMFNameUTF8String m_aMFNameUTF8String(in AMFNameUTF8String p_value) := p_value; + + template (value) AMFPagingTarget m_aMFPagingTarget_globalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + globalRANNodeID := p_globalRANNodeID + } // End of template m_aMFPagingTarget_globalRANNodeID + template (value) AMFPagingTarget m_aMFPagingTarget_tAI( + in template (value) TAI p_tAI + ) := { + tAI := p_tAI + } // End of template m_aMFPagingTarget_tAI + template (value) AMFPagingTarget m_aMFPagingTarget_ext( + in template (value) AMFPagingTarget.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_aMFPagingTarget_ext // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); // type bitstring AMFPointer length (6); // type bitstring AMFRegionID length (8); @@ -1122,73 +1178,280 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; // type record AMF_TNLAssociationToUpdateItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); - + // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); - template AMF_UE_NGAP_ID m_ie_aMFUeNgapId(integer p_val:=1) := p_val; - - // type record AreaOfInterest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterest_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinAoI) of AreaOfInterestCellItem AreaOfInterestCellList; - // type record AreaOfInterestCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestCellItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAoI) of AreaOfInterestItem AreaOfInterestList; - // type record AreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRANNodeinAoI) of AreaOfInterestRANNodeItem AreaOfInterestRANNodeList; - // type record AreaOfInterestRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestRANNodeItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIinAoI) of AreaOfInterestTAIItem AreaOfInterestTAIList; - // type record AreaOfInterestTAIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestTAIItem_ExtIEs (?); + template (value) AMF_UE_NGAP_ID m_ie_aMFUeNgapId(in integer p_val := 1) := p_val; + + template (omit) AreaOfInterest m_areaOfInterest( + in template (omit) AreaOfInterestTAIList p_areaOfInterestTAIList := omit, + in template (omit) AreaOfInterestCellList p_areaOfInterestCellList := omit, + in template (omit) AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := omit, + in template (omit) AreaOfInterest.iE_Extensions p_iE_Extensions := omit + ) := { + areaOfInterestTAIList := p_areaOfInterestTAIList, + areaOfInterestCellList := p_areaOfInterestCellList, + areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template m_areaOfInterest + + template (omit) AreaOfInterestCellItem m_areaOfInterestCellItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (omit) AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_areaOfInterestCellItem + + template (omit) AreaOfInterestItem m_reaOfInterestItem( + in template (value) AreaOfInterest p_areaOfInterest, + in template (value) LocationReportingReferenceID p_locationReportingReferenceID, + in template (omit) AreaOfInterestItem.iE_Extensions p_iE_Extensions := omit + ) := { + areaOfInterest := p_areaOfInterest, + locationReportingReferenceID := p_locationReportingReferenceID, + iE_Extensions := p_iE_Extensions + } // End of template m_reaOfInterestItem + + template (omit) AreaOfInterestRANNodeItem m_areaOfInterestRANNodeItem( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (omit) AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := omit + ):= { + globalRANNodeID := p_globalRANNodeID, + iE_Extensions := p_iE_Extensions + } // End of template m_areaOfInterestRANNodeItem + + template (omit) AreaOfInterestTAIItem m_areaOfInterestTAIItem( + in template (value) TAI p_tAI, + in template (omit) AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_areaOfInterestTAIItem + // type record AssistanceDataForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForPaging_ExtIEs ( - // type record AssistanceDataForRecommendedCells { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForRecommendedCells_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetupRequestItem AssociatedMBSQosFlowSetupRequestList; - // type record AssociatedMBSQosFlowSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetupRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetuporModifyRequestItem AssociatedMBSQosFlowSetuporModifyRequestList; - // type record AssociatedMBSQosFlowSetuporModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetuporModifyRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of AssociatedQosFlowItem AssociatedQosFlowList; - // type record AssociatedQosFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedQosFlowItem_ExtIEs ( - // type enumerated AuthenticatedIndication { + template (omit) AssistanceDataForPaging m_assistanceDataForPaging( + in template (omit) AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := omit, + in template (omit) PagingAttemptInformation p_pagingAttemptInformation := omit, + in template (omit) AssistanceDataForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, + pagingAttemptInformation := p_pagingAttemptInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_assistanceDataForPaging + + template (value) AssistanceDataForPaging.iE_Extensions m_assistanceDataForPaging_NPN_PagingAssistanceInformation( + in template (value) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation + ) := { + { + id := id_NPN_PagingAssistanceInformation, + criticality := ignore, + extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } + } + } // End of template m_assistanceDataForPaging_NPN_PagingAssistanceInformation + + template (value) AssistanceDataForPaging.iE_Extensions m_assistanceDataForPaging_pagingAssisDataforCEcapabUE( + in template (value) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE + ) := { + { + id := id_PagingAssisDataforCEcapabUE, + criticality := ignore, + extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } + } + } // End of template m_assistanceDataForPaging_pagingAssisDataforCEcapabUE + + template (omit) AssistanceDataForRecommendedCells m_assistanceDataForRecommendedCells( + in template (value) RecommendedCellsForPaging p_recommendedCellsForPaging, + in template (omit) AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := omit + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + iE_Extensions := p_iE_Extensions + } // End of template m_assistanceDataForRecommendedCells + + template (omit) AssociatedMBSQosFlowSetupRequestItem m_associatedMBSQosFlowSetupRequestItem( + in template (value) QosFlowIdentifier p_mBS_QosFlowIdentifier, + in template (value) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier, + in template (omit) AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_associatedMBSQosFlowSetupRequestItem + + template (omit) AssociatedMBSQosFlowSetuporModifyRequestItem m_associatedMBSQosFlowSetuporModifyRequestItem( + in template (value) QosFlowIdentifier p_mBS_QosFlowIdentifier, + in template (value) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier, + in template (omit) AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_associatedMBSQosFlowSetuporModifyRequestItem + + template (omit) AssociatedQosFlowItem m_associatedQosFlowItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := omit, + in template (omit) AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowMappingIndication := p_qosFlowMappingIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_associatedQosFlowItem + + template (value) AssociatedQosFlowItem.iE_Extensions m_associatedQosFlowItem_alternativeQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_associatedQosFlowItem_alternativeQoSParaSetIndex + + template (value) AuthenticatedIndication m_authenticatedIndication(in AuthenticatedIndication p_value := true_) := p_value; // type integer AveragingWindow ( // type union AreaScopeOfMDT_NR { // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); // type union AreaScopeOfMDT_EUTRA { // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofFreqforMDT) of AreaScopeOfNeighCellsItem AreaScopeOfNeighCellsList; - // type record AreaScopeOfNeighCellsItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaScopeOfNeighCellsItem_ExtIEs (?); - // type union AreaScopeOfQMC { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfQMC_ExtIEs (?); - // type record AvailableRANVisibleQoEMetrics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AvailableRANVisibleQoEMetrics_ExtIEs (?); - // type record BeamMeasurementsReportConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportConfiguration_ExtIEs (?); - // type record BeamMeasurementsReportQuantity { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportQuantity_ExtIEs (?); - // type integer BitRate ( - // type union BroadcastCancelledAreaList { + + template (omit) AreaScopeOfNeighCellsItem m_areaScopeOfNeighCellsItem( + in template (value) NRFrequencyInfo p_nrFrequencyInfo, + in template (omit) PCIListForMDT p_pciListForMDT := omit, + in template (omit) AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := omit + ) := { + nrFrequencyInfo := p_nrFrequencyInfo, + pciListForMDT := p_pciListForMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_areaScopeOfNeighCellsItem + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_cellBased( + in template (value) CellBasedQMC p_cellBased + ) := { + cellBased := p_cellBased + } // End of template m_areaScopeOfQMC_cellBased + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_tABased( + in template (value) TABasedQMC p_tABased + ) := { + tABased := p_tABased + } // End of template m_areaScopeOfQMC_tABased + + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_tAIBased( + in template (value) TAIBasedQMC p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template m_areaScopeOfQMC_tAIBased + + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_pLMNAreaBased( + in template (value) PLMNAreaBasedQMC p_pLMNAreaBased + ) := { + pLMNAreaBased := p_pLMNAreaBased + } // End of template m_areaScopeOfQMC_pLMNAreaBased + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_ext( + in template (value) AreaScopeOfQMC.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_areaScopeOfQMC_pLMNAreaBased_ext + + template (omit) AvailableRANVisibleQoEMetrics m_availableRANVisibleQoEMetrics( + in template (omit) AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := omit, + in template (omit) AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := omit, + in template (omit) AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := omit + ) := { + applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, + playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, + iE_Extensions := p_iE_Extensions + } // End of template m_availableRANVisibleQoEMetrics + + template (omit) BeamMeasurementsReportConfiguration m_beamMeasurementsReportConfiguration( + in template (omit) BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := omit, + in template (omit) MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := omit, + in template (omit) BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := omit + ) := { + beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, + maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, + iE_Extensions := p_iE_Extensions + } // End of template m_beamMeasurementsReportConfiguration + + template (omit) BeamMeasurementsReportQuantity m_beamMeasurementsReportQuantity( + in template (omit) BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, + in template (omit) BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, + in template (omit) BeamMeasurementsReportQuantity.sINR p_sINR := true_, + in template (omit) BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := omit + ) := { + rSRP := p_rSRP, + rSRQ := p_rSRQ, + sINR := p_sINR, + iE_Extensions := p_iE_Extensions + } // End of template m_beamMeasurementsReportQuantity + + template (value) BitRate m_bitRate(in template (value) BitRate p_value) := p_value; + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_cellIDCancelledEUTRA( + in template (value) CellIDCancelledEUTRA p_cellIDCancelledEUTRA + ) := { + cellIDCancelledEUTRA := p_cellIDCancelledEUTRA + } // End of template m_broadcastCancelledAreaList_cellIDCancelledEUTRA + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_tAICancelledEUTRA( + in template (value) TAICancelledEUTRA p_tAICancelledEUTRA + ) := { + tAICancelledEUTRA := p_tAICancelledEUTRA + } // End of template m_broadcastCancelledAreaList_tAICancelledEUTRA + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( + in template (value) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA + ) := { + emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA + } // End of template m_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_cellIDCancelledNR( + in template (value) CellIDCancelledNR p_cellIDCancelledNR + ) := { + cellIDCancelledNR := p_cellIDCancelledNR + } // End of template m_broadcastCancelledAreaList_cellIDCancelledNR + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_tAICancelledNR( + in template (value) TAICancelledNR p_tAICancelledNR + ) := { + tAICancelledNR := p_tAICancelledNR + } // End of template m_broadcastCancelledAreaList_tAICancelledNR + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( + in template (value) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR + ) := { + emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR + } // End of template m_broadcastCancelledAreaList_ext + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_ext( + in template (value) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_broadcastCancelledAreaList_ext + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); // type union BroadcastCompletedAreaList { // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); - + // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; - template BroadcastPLMNList m_ie_broadcastPLMNList(in template BroadcastPLMNList p_list):=p_list; + template (value) BroadcastPLMNList m_ie_broadcastPLMNList( + in template (value) BroadcastPLMNList p_list + ) := p_list; // type record BroadcastPLMNItem { - template BroadcastPLMNItem m_ie_broadcastPLMNItem( - in template PLMNIdentity p_plmnId, - in template SliceSupportList p_ssl - ):={ - pLMNIdentity := p_plmnId, - tAISliceSupportList := p_ssl, - iE_Extensions :=omit - }//end of template m_ie_broadcastPLMNItem - + template (omit) BroadcastPLMNItem m_ie_broadcastPLMNItem( + in template (value) PLMNIdentity p_plmnId, + in template (value) SliceSupportList p_ssl, + in template (omit) BroadcastPLMNItem.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_plmnId, + tAISliceSupportList := p_ssl, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_broadcastPLMNItem + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( // type record BluetoothMeasurementConfiguration { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); @@ -1298,7 +1561,7 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofCellIDforQMC) of NGRAN_CGI CellIdListforQMC; // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; // type bitstring DataCodingScheme length (8); - // type enumerated DataForwardingAccepted { + template (value) DataForwardingAccepted m_dataForwardingAccepted(in DataForwardingAccepted p_value := data_forwarding_accepted) := p_value; // type enumerated DataForwardingNotPossible { // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; // type record DataForwardingResponseDRBItem { @@ -1465,17 +1728,18 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); // type record GlobalENB_ID { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); - + // type record GlobalGNB_ID { - template GlobalGNB_ID m_ie_globalGnbId( - in template PLMNIdentity p_plmnId, - in template bitstring p_gnbId - ):={ + template (omit) GlobalGNB_ID m_ie_globalGnbId( + in template (value) PLMNIdentity p_plmnId, + in template (value) bitstring p_gnbId, + in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + ) := { pLMNIdentity := p_plmnId,//'010001'O, - gNB_ID := {gNB_ID:=p_gnbId/*'0000000000000000000000'B*/}, - iE_Extensions:= omit - }//end of template m_ie_globalGnbId - + gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_globalGnbId + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); // type record GlobalN3IWF_ID { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); @@ -1484,18 +1748,18 @@ module LibNGAP_Templates { // type octetstring GlobalLineIdentity; // type record GlobalNgENB_ID { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); - + // type union GlobalRANNodeID { - template GlobalRANNodeID m_ie_gRanNodeID ( - in template GlobalGNB_ID p_gGnbId - ):={ - globalGNB_ID := p_gGnbId -// { -// pLMNIdentity := p_plmnId,//'010001'O, -// gNB_ID := {gNB_ID:=p_gnbId/*'0000000000000000000000'B*/}, -// iE_Extensions := omit + template (value) GlobalRANNodeID m_ie_gRanNodeID( + in template (value) GlobalGNB_ID p_gGnbId + ):={ + globalGNB_ID := p_gGnbId +// { +// pLMNIdentity := p_plmnId,//'010001'O, +// gNB_ID := {gNB_ID:=p_gnbId/*'0000000000000000000000'B*/}, +// iE_Extensions := omit // } - }//end of template m_ie_gRanNodeID + } // End of template m_ie_gRanNodeID // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( // type record GlobalTNGF_ID { @@ -1506,18 +1770,18 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); // type union GNB_ID { // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); - // type octetstring GTP_TEID length (4); - template GTP_TEID m_ie_gtpTeId(GTP_TEID p_val:='00000000'O):=p_val; - + template (value) GTP_TEID m_ie_gtpTeId(in GTP_TEID p_val := '00000000'O) :=p_val; + // type record GTPTunnel { - template GTPTunnel m_ie_gTPTunnel( - in template TransportLayerAddress p_tla, - in template GTP_TEID p_gtp_teid - ):= { + template (omit) GTPTunnel m_ie_gTPTunnel( + in template (value) TransportLayerAddress p_tla, + in template (value) GTP_TEID p_gtp_teid, + in template (omit) GTPTunnel.iE_Extensions p_iE_Extensions := omit + ):= { transportLayerAddress := p_tla, - gTP_TEID := p_gtp_teid, - iE_Extensions:=omit - } + gTP_TEID := p_gtp_teid, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_gTPTunnel // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); // type record GUAMI { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); @@ -1913,9 +2177,9 @@ module LibNGAP_Templates { // type integer PagingAttemptCount ( // type enumerated PagingCause { // type enumerated PagingCauseIndicationForVoiceService { - + // type enumerated PagingDRX { - template PagingDRX m_ie_defaultPagingDRX (PagingDRX p_drx:=v256):= p_drx; + template (value) PagingDRX m_ie_defaultPagingDRX(in PagingDRX p_drx := v256) := p_drx; // type enumerated PagingOrigin { // type enumerated PagingPriority { @@ -1939,10 +2203,10 @@ module LibNGAP_Templates { // type enumerated PrivacyIndicator { // type record PDUSessionAggregateMaximumBitRate { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); - + // type integer PDUSessionID (0 .. 255); - template PDUSessionID m_ie_pDUSessId(PDUSessionID p_val:=0):=p_val; - + template (value) PDUSessionID m_ie_pDUSessId(in PDUSessionID p_val := 0) := p_val; + // type integer PDUSessionPairID ( // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; // type record PDUSessionResourceAdmittedItem { @@ -2055,36 +2319,39 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; // type record PDUSessionResourceSetupItemHOReq { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( - + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; - template PDUSessionResourceSetupListSUReq m_ie_pDUSessionResourceSetupListSUReq(in template PDUSessionResourceSetupListSUReq p_list):= p_list; + template (value) PDUSessionResourceSetupListSUReq m_ie_pDUSessionResourceSetupListSUReq( + in template (value) PDUSessionResourceSetupListSUReq p_list + ) := p_list; // type record PDUSessionResourceSetupItemSUReq { - template PDUSessionResourceSetupItemSUReq m_ie_pDUSessionResourceSetupItemSUReq( - in template PDUSessionID p_pDUSessId, - in template NAS_PDU p_nASPdu:=omit, - in template S_NSSAI p_sNSSAI, - in template octetstring p_pduSessResSetReqTra - ):= { - pDUSessionID := p_pDUSessId, - pDUSessionNAS_PDU :=p_nASPdu, - s_NSSAI := p_sNSSAI, - pDUSessionResourceSetupRequestTransfer := p_pduSessResSetReqTra, - iE_Extensions:=omit - }//end of template m_ie_pDUSessionResourceSetupItemSUReq + template (omit) PDUSessionResourceSetupItemSUReq m_ie_pDUSessionResourceSetupItemSUReq( + in template (value) PDUSessionID p_pDUSessId, + in template (omit) NAS_PDU p_nASPdu := omit, + in template (value) S_NSSAI p_sNSSAI, + in template (value) octetstring p_pduSessResSetReqTra, + in template (omit) PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := omit + ):= { + pDUSessionID := p_pDUSessId, + pDUSessionNAS_PDU :=p_nASPdu, + s_NSSAI := p_sNSSAI, + pDUSessionResourceSetupRequestTransfer := p_pduSessResSetReqTra, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_pDUSessionResourceSetupItemSUReq // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; // type record PDUSessionResourceSetupItemSURes { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); - + // type record PDUSessionResourceSetupRequestTransfer { template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrEmpty:={protocolIEs:={}}; // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( - template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrIEs( - in template UPTransportLayerInformation p_utli, - in template PDUSessionType p_pst, - in template QosFlowSetupRequestList p_qfsrl + template (value) PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrIEs( + in template (value) UPTransportLayerInformation p_utli, + in template (value) PDUSessionType p_pst, + in template (value) QosFlowSetupRequestList p_qfsrl ):={ protocolIEs:={ // { @@ -2178,22 +2445,23 @@ module LibNGAP_Templates { // //presence := optional_ // } } - }//end of template m_ie_pDUSessResSetReqTrIEs - + } // End of template m_ie_pDUSessResSetReqTrIEs + // type record PDUSessionResourceSetupResponseTransfer { - template PDUSessionResourceSetupResponseTransfer m_ie_pDUSessResSetRespTr( - in template QosFlowPerTNLInformation p_qosfTnlInf, - in template QosFlowPerTNLInformationList p_qosfList:=omit, - in template SecurityResult p_secRes:=omit, - in template QosFlowListWithCause p_qosfCause:=omit - ):={ - dLQosFlowPerTNLInformation := p_qosfTnlInf, - additionalDLQosFlowPerTNLInformation := p_qosfList, - securityResult := p_secRes, - qosFlowFailedToSetupList := p_qosfCause, - iE_Extensions := omit - }//end of template m_ie_pDUSessResSetRespTr - + template (omit) PDUSessionResourceSetupResponseTransfer m_ie_pDUSessResSetRespTr( + in template (value) QosFlowPerTNLInformation p_qosfTnlInf, + in template (omit) QosFlowPerTNLInformationList p_qosfList := omit, + in template (omit) SecurityResult p_secRes := omit, + in template (omit) QosFlowListWithCause p_qosfCause := omit, + in template (omit) PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit + ):={ + dLQosFlowPerTNLInformation := p_qosfTnlInf, + additionalDLQosFlowPerTNLInformation := p_qosfList, + securityResult := p_secRes, + qosFlowFailedToSetupList := p_qosfCause, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_pDUSessResSetRespTr + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( // type record PDUSessionResourceSetupUnsuccessfulTransfer { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); @@ -2212,10 +2480,10 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; // type record PDUSessionResourceToReleaseItemRelCmd { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); - + // type enumerated PDUSessionType { - template PDUSessionType m_ie_PDUSessionType(PDUSessionType p_val:=unstructured):=p_val; - + template (value) PDUSessionType m_ie_PDUSessionType(in PDUSessionType p_val := unstructured) := p_val; + // type record PDUSessionUsageReport { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); // type record PEIPSassistanceInformation { @@ -2224,7 +2492,7 @@ module LibNGAP_Templates { // type bitstring PeriodicRegistrationUpdateTimer length (8); // type octetstring PLMNIdentity length (3); - template PLMNIdentity m_ie_pLMNIdentity(PLMNIdentity p_val):=p_val; + template (value) PLMNIdentity m_ie_pLMNIdentity(in PLMNIdentity p_val) := p_val; // type record PLMNAreaBasedQMC { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); @@ -2261,7 +2529,7 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; // type record QosFlowFeedbackItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); - // type integer QosFlowIdentifier ( + template (value) QosFlowIdentifier m_qosFlowIdentifier(in QosFlowIdentifier p_value := 0) := p_value; // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; // type record QosFlowInformationItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( @@ -2287,14 +2555,31 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; // type record QosFlowPerTNLInformationItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); - + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; - template QosFlowSetupRequestList m_ie_qosFlowSetReqList(QosFlowSetupRequestList p_list):=p_list; + template (value) QosFlowSetupRequestList m_ie_qosFlowSetReqList(in QosFlowSetupRequestList p_list) := p_list; // type record QosFlowSetupRequestItem { - + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; - // type record QosFlowItemWithDataForwarding { + template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, + in template (omit) QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dataForwardingAccepted := p_dataForwardingAccepted, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowItemWithDataForwarding + + template (omit) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; // type record QosFlowToBeForwardedItem { @@ -2309,9 +2594,9 @@ module LibNGAP_Templates { // type integer RANPagingPriority (1 .. 256); // type record RANStatusTransfer_TransparentContainer { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); - + // type integer RAN_UE_NGAP_ID (0 .. 4294967295); - template RAN_UE_NGAP_ID m_ie_rANUeNgapId(integer p_val:=1) := p_val; + template (value) RAN_UE_NGAP_ID m_ie_rANUeNgapId(in integer p_val := 1) := p_val; // type enumerated RAT_Information { // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; @@ -2359,9 +2644,9 @@ module LibNGAP_Templates { // type record ScheduledCommunicationTime { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; - + // type octetstring SD length (3); - template SD m_ie_sD(SD p_val:='000000'O) := p_val; + template (value) SD m_ie_sD(in SD p_val := '000000'O) := p_val; // type record SecondaryRATUsageInformation { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); @@ -2396,17 +2681,18 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; // type record SliceOverloadItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); - + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; - template SliceSupportList m_ie_sliceSupportList(in template SliceSupportList p_list):=p_list; + template (value) SliceSupportList m_ie_sliceSupportList(in template (value) SliceSupportList p_list) := p_list; // type record SliceSupportItem { - template SliceSupportItem m_ie_sliceSupportItem( - in template S_NSSAI p_S_NSSAI - ):={ - s_NSSAI := p_S_NSSAI, - iE_Extensions :=omit - }//end of template m_ie_sliceSupportItem + template (omit) SliceSupportItem m_ie_sliceSupportItem( + in template (value) S_NSSAI p_S_NSSAI, + in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ):={ + s_NSSAI := p_S_NSSAI, + iE_Extensions :=p_iE_Extensions + } // End of template m_ie_sliceSupportItem // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; @@ -2415,14 +2701,15 @@ module LibNGAP_Templates { // type record SNPN_MobilityInformation { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); // type record S_NSSAI { - template S_NSSAI m_ie_sNSSAI( - in template SST p_sST, - in template SD p_sD - ):={ - sST := p_sST,//'00'O, - sD := p_sD,//'000000'O, - iE_Extensions := omit - }//end of template m_ie_sNSSAI + template (omit) S_NSSAI m_ie_sNSSAI( + in template (value) SST p_sST, + in template (value) SD p_sD, + in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ):={ + sST := p_sST,//'00'O, + sD := p_sD,//'000000'O, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_sNSSAI // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); // type record SONConfigurationTransfer { @@ -2452,30 +2739,31 @@ module LibNGAP_Templates { // type octetstring RejectedNSSAIinPLMN length (32); // type octetstring RejectedNSSAIinTA length (32); // type octetstring SST length (1); - template SST m_ie_sST(SST p_val:='00'O):=p_val; + template (value) SST m_ie_sST(in SST p_val := '00'O) := p_val; // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; - template SupportedTAList m_ie_supportedTAList(in template SupportedTAList p_list):= p_list; + template (value) SupportedTAList m_ie_supportedTAList(in template (value) SupportedTAList p_list) := p_list; // type record SupportedTAItem { - template SupportedTAItem m_ie_supportedTAItem( - in template TAC p_tAC, - in template BroadcastPLMNList p_broadcastPLMNList - ):={ - tAC := p_tAC, - broadcastPLMNList := p_broadcastPLMNList, - iE_Extensions :=omit - }//end of template m_ie_supportedTAItem - + template (omit) SupportedTAItem m_ie_supportedTAItem( + in template (value) TAC p_tAC, + in template (value) BroadcastPLMNList p_broadcastPLMNList, + in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ):={ + tAC := p_tAC, + broadcastPLMNList := p_broadcastPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_supportedTAItem + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( - + // type enumerated SuspendIndicator { // type enumerated Suspend_Request_Indication { // type enumerated Suspend_Response_Indication { // type integer SurvivalTime ( - + // type octetstring TAC length (3); - template TAC m_ie_tAC(TAC p_val):=p_val; + template (value) TAC m_ie_tAC(in template (value) TAC p_val) := p_val; // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; // type record TAI { @@ -2550,10 +2838,9 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( // type enumerated TraceDepth { // type integer TrafficLoadReductionIndication (1 .. 99); - - // type bitstring TransportLayerAddress length ( - template TransportLayerAddress m_ie_tla(bitstring p_val:='0'B):=p_val; - + + template (value) TransportLayerAddress m_ie_tla(in bitstring p_val := '0'B) := p_val; + // type enumerated TypeOfError { // type record TAIBasedMDT { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); @@ -2641,12 +2928,14 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); // type enumerated ULForwarding { // type bitstring UpdateFeedback length ( - + // type union UPTransportLayerInformation { - template UPTransportLayerInformation m_ie_uPTLInf (template GTPTunnel p_gtpt):={ - gTPTunnel:=p_gtpt - } - + template (value) UPTransportLayerInformation m_ie_uPTLInf( + in template (value) GTPTunnel p_gtpt + ) := { + gTPTunnel := p_gtpt + } // End of template m_ie_uPTLInf + // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; // type record UPTransportLayerInformationItem { @@ -2698,15 +2987,46 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; // type record XnTNLConfigurationInfo { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); - - } - group Receive{/*mw_ie_*/ - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of AdditionalDLUPTNLInformationForHOItem AdditionalDLUPTNLInformationForHOList; - // type record AdditionalDLUPTNLInformationForHOItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AdditionalDLUPTNLInformationForHOItem_ExtIEs ( - // type enumerated AdditionalQosFlowInformation { - // type record AllocationAndRetentionPriority { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllocationAndRetentionPriority_ExtIEs (?); + + } // End of group send + + group Receive{ + + template (present) AdditionalDLUPTNLInformationForHOItem mw_additionalDLUPTNLInformationForHOItem( + template (present) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation := ?, + template (present) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList := ?, + template UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := *, + template AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := * + ) := { + additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, + additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, + additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_additionalDLUPTNLInformationForHOItem + + template (present) AdditionalDLUPTNLInformationForHOItem.iE_Extensions mw_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_additionalDLUPTNLInformationForHOItem_iE_Extensions + + template (present) AdditionalQosFlowInformation mw_additionalQosFlowInformation(template (present) AdditionalQosFlowInformation p_value := ?) := p_value; + + template (present) AllocationAndRetentionPriority mw_allocationAndRetentionPriority( + template (present) PriorityLevelARP p_priorityLevelARP := ?, + template (present) Pre_emptionCapability p_pre_emptionCapability := ?, + template (present) Pre_emptionVulnerability p_pre_emptionVulnerability := ?, + template AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := * + ) := { + priorityLevelARP := p_priorityLevelARP, + pre_emptionCapability := p_pre_emptionCapability, + pre_emptionVulnerability := p_pre_emptionVulnerability, + iE_Extensions := p_iE_Extensions + } // End of template mw_allocationAndRetentionPriority // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; // type record AllowedNSSAI_Item { @@ -2715,15 +3035,47 @@ module LibNGAP_Templates { // type record Allowed_PNI_NPN_Item { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; - // type integer AlternativeQoSParaSetIndex ( - // type integer AlternativeQoSParaSetNotifyIndex ( - // type record length (1 .. NGAP_Constants.maxnoofQosParaSets) of AlternativeQoSParaSetItem AlternativeQoSParaSetList; - // type record AlternativeQoSParaSetItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AlternativeQoSParaSetItem_ExtIEs (?); - // type ASNAUX.PrintableString AMFName length ( - // type ASNAUX.VisibleString AMFNameVisibleString length ( - // type ASNAUX.UTF8String AMFNameUTF8String length ( - // type union AMFPagingTarget { + template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(in template (present) integer p_value := ?) := p_value; + + template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(in template (present) integer p_value := ?) := p_value; + + template (present) AlternativeQoSParaSetItem mw_alternativeQoSParaSetItem( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ?, + template BitRate p_guaranteedFlowBitRateDL := *, + template BitRate p_guaranteedFlowBitRateUL := *, + template PacketDelayBudget p_packetDelayBudget := *, + template PacketErrorRate p_packetErrorRate := *, + template AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := * + ) := { + alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_alternativeQoSParaSetItem + + template (present) AMFName mw_aMFName(template (present) AMFName p_value := ?) := p_value; + + template (present) AMFNameVisibleString mw_aMFNameVisibleString(template (present) AMFNameVisibleString p_value := ?) := p_value; + + template (present) AMFNameUTF8String mw_aMFNameUTF8String(template (present) AMFNameUTF8String p_value := ?) := p_value; + + template (present) AMFPagingTarget mw_aMFPagingTarget_globalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + globalRANNodeID := p_globalRANNodeID + } // End of template mw_aMFPagingTarget_globalRANNodeID + template (present) AMFPagingTarget mw_aMFPagingTarget_tAI( + template (present) TAI p_tAI := ? + ) := { + tAI := p_tAI + } // End of template mw_aMFPagingTarget_tAI + template (present) AMFPagingTarget mw_aMFPagingTarget_ext( + template (present) AMFPagingTarget.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_aMFPagingTarget_ext // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); // type bitstring AMFPointer length (6); // type bitstring AMFRegionID length (8); @@ -2740,56 +3092,260 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; // type record AMF_TNLAssociationToUpdateItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); - + // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); - template AMF_UE_NGAP_ID mw_ie_aMFUeNgapId(integer p_val:=1) := p_val; + template (present) AMF_UE_NGAP_ID mw_ie_aMFUeNgapId(template (present) integer p_val := ?) := p_val; + + template AreaOfInterest mw_areaOfInterest( + template AreaOfInterestTAIList p_areaOfInterestTAIList := *, + template AreaOfInterestCellList p_areaOfInterestCellList := *, + template AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := *, + template AreaOfInterest.iE_Extensions p_iE_Extensions := * + ) := { + areaOfInterestTAIList := p_areaOfInterestTAIList, + areaOfInterestCellList := p_areaOfInterestCellList, + areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterest - // type record AreaOfInterest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterest_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinAoI) of AreaOfInterestCellItem AreaOfInterestCellList; - // type record AreaOfInterestCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestCellItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAoI) of AreaOfInterestItem AreaOfInterestList; - // type record AreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRANNodeinAoI) of AreaOfInterestRANNodeItem AreaOfInterestRANNodeList; - // type record AreaOfInterestRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestRANNodeItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIinAoI) of AreaOfInterestTAIItem AreaOfInterestTAIList; - // type record AreaOfInterestTAIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaOfInterestTAIItem_ExtIEs (?); - // type record AssistanceDataForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForPaging_ExtIEs ( - // type record AssistanceDataForRecommendedCells { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssistanceDataForRecommendedCells_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetupRequestItem AssociatedMBSQosFlowSetupRequestList; - // type record AssociatedMBSQosFlowSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetupRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of AssociatedMBSQosFlowSetuporModifyRequestItem AssociatedMBSQosFlowSetuporModifyRequestList; - // type record AssociatedMBSQosFlowSetuporModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedMBSQosFlowSetuporModifyRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of AssociatedQosFlowItem AssociatedQosFlowList; - // type record AssociatedQosFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AssociatedQosFlowItem_ExtIEs ( - // type enumerated AuthenticatedIndication { + template (present) AreaOfInterestCellItem mw_areaOfInterestCellItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestCellItem + + template (present) AreaOfInterestItem mw_reaOfInterestItem( + template (present) AreaOfInterest p_areaOfInterest := ?, + template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, + template AreaOfInterestItem.iE_Extensions p_iE_Extensions := * + ) := { + areaOfInterest := p_areaOfInterest, + locationReportingReferenceID := p_locationReportingReferenceID, + iE_Extensions := p_iE_Extensions + } // End of template mw_reaOfInterestItem + + template (present) AreaOfInterestRANNodeItem mw_areaOfInterestRANNodeItem( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := * + ):= { + globalRANNodeID := p_globalRANNodeID, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestRANNodeItem + + template (present) AreaOfInterestTAIItem mw_areaOfInterestTAIItem( + template (present) TAI p_tAI := ?, + template AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestTAIItem + + template AssistanceDataForPaging mw_assistanceDataForPaging( + template AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := *, + template PagingAttemptInformation p_pagingAttemptInformation := *, + template AssistanceDataForPaging.iE_Extensions p_iE_Extensions := * + ) := { + assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, + pagingAttemptInformation := p_pagingAttemptInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_assistanceDataForPaging + + template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_NPN_PagingAssistanceInformation( + template (present) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation := ? + ) := { + { + id := id_NPN_PagingAssistanceInformation, + criticality := ignore, + extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } + } + } // End of template mw_assistanceDataForPaging_NPN_PagingAssistanceInformation + + template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE( + template (present) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE := ? + ) := { + { + id := id_PagingAssisDataforCEcapabUE, + criticality := ignore, + extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } + } + } // End of template mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE + + template (present) AssistanceDataForRecommendedCells mw_assistanceDataForRecommendedCells( + template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, + template AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + iE_Extensions := p_iE_Extensions + } // End of template mw_assistanceDataForRecommendedCells + + template (present) AssociatedMBSQosFlowSetupRequestItem mw_associatedMBSQosFlowSetupRequestItem( + template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, + template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, + template AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedMBSQosFlowSetupRequestItem + + template (present) AssociatedMBSQosFlowSetuporModifyRequestItem mw_associatedMBSQosFlowSetuporModifyRequestItem( + template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, + template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, + template AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedMBSQosFlowSetuporModifyRequestItem + + template (present) AssociatedQosFlowItem mw_associatedQosFlowItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := *, + template AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowMappingIndication := p_qosFlowMappingIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedQosFlowItem + + template (present) AssociatedQosFlowItem.iE_Extensions mw_associatedQosFlowItem_alternativeQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_associatedQosFlowItem_alternativeQoSParaSetIndex + + template (present) AuthenticatedIndication mw_authenticatedIndication(template (present) AuthenticatedIndication p_value := true_) := p_value; + // type integer AveragingWindow ( // type union AreaScopeOfMDT_NR { // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); // type union AreaScopeOfMDT_EUTRA { // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofFreqforMDT) of AreaScopeOfNeighCellsItem AreaScopeOfNeighCellsList; - // type record AreaScopeOfNeighCellsItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AreaScopeOfNeighCellsItem_ExtIEs (?); - // type union AreaScopeOfQMC { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfQMC_ExtIEs (?); - // type record AvailableRANVisibleQoEMetrics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AvailableRANVisibleQoEMetrics_ExtIEs (?); - // type record BeamMeasurementsReportConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportConfiguration_ExtIEs (?); - // type record BeamMeasurementsReportQuantity { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BeamMeasurementsReportQuantity_ExtIEs (?); - // type integer BitRate ( - // type union BroadcastCancelledAreaList { + + template (present) AreaScopeOfNeighCellsItem mw_areaScopeOfNeighCellsItem( + template (present) NRFrequencyInfo p_nrFrequencyInfo := ?, + template PCIListForMDT p_pciListForMDT := *, + template AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := * + ) := { + nrFrequencyInfo := p_nrFrequencyInfo, + pciListForMDT := p_pciListForMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaScopeOfNeighCellsItem + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_cellBased( + template (present) CellBasedQMC p_cellBased := ? + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfQMC_cellBased + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tABased( + template (present) TABasedQMC p_tABased := ? + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfQMC_tABased + + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tAIBased( + template (present) TAIBasedQMC p_tAIBased := ? + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfQMC_tAIBased + + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_pLMNAreaBased( + template (present) PLMNAreaBasedQMC p_pLMNAreaBased := ? + ) := { + pLMNAreaBased := p_pLMNAreaBased + } // End of template mw_areaScopeOfQMC_pLMNAreaBased + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_ext( + template (present) AreaScopeOfQMC.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfQMC_ext + + template AvailableRANVisibleQoEMetrics mw_availableRANVisibleQoEMetrics( + template AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := *, + template AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := *, + template AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := * + ) := { + applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, + playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, + iE_Extensions := p_iE_Extensions + } // End of template mw_availableRANVisibleQoEMetrics + + template BeamMeasurementsReportConfiguration mw_beamMeasurementsReportConfiguration( + template BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := *, + template MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := *, + template BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, + maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, + iE_Extensions := p_iE_Extensions + } // End of template mw_beamMeasurementsReportConfiguration + + template BeamMeasurementsReportQuantity mw_beamMeasurementsReportQuantity( + template BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, + template BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, + template BeamMeasurementsReportQuantity.sINR p_sINR := true_, + template BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := * + ) := { + rSRP := p_rSRP, + rSRQ := p_rSRQ, + sINR := p_sINR, + iE_Extensions := p_iE_Extensions + } // End of template mw_beamMeasurementsReportQuantity + + template (present) BitRate mw_bitRate (template (present) BitRate p_value := ?) := p_value; + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledEUTRA( + template (present) CellIDCancelledEUTRA p_cellIDCancelledEUTRA := ? + ) := { + cellIDCancelledEUTRA := p_cellIDCancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_cellIDCancelledEUTRA + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledEUTRA( + template (present) TAICancelledEUTRA p_tAICancelledEUTRA := ? + ) := { + tAICancelledEUTRA := p_tAICancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_tAICancelledEUTRA + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( + template (present) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA := ? + ) := { + emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledNR( + template (present) CellIDCancelledNR p_cellIDCancelledNR := ? + ) := { + cellIDCancelledNR := p_cellIDCancelledNR + } // End of template mw_broadcastCancelledAreaList_cellIDCancelledNR + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledNR( + template (present) TAICancelledNR p_tAICancelledNR := ? + ) := { + tAICancelledNR := p_tAICancelledNR + } // End of template mw_broadcastCancelledAreaList_tAICancelledNR + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( + template (present) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR := ? + ) := { + emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR + } // End of template mw_broadcastCancelledAreaList_ext + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_ext( + template (present) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_broadcastCancelledAreaList_ext + // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); // type union BroadcastCompletedAreaList { // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); @@ -2905,6 +3461,7 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; // type bitstring DataCodingScheme length (8); // type enumerated DataForwardingAccepted { + template (present) DataForwardingAccepted mw_dataForwardingAccepted(template (present) DataForwardingAccepted p_value := ?) := p_value; // type enumerated DataForwardingNotPossible { // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; // type record DataForwardingResponseDRBItem { @@ -3090,10 +3647,24 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); // type union GNB_ID { // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); - - // type octetstring GTP_TEID length (4); - - // type record GTPTunnel { + + template (present) GTP_TEID mw_ie_gtpTeId(template (present) GTP_TEID p_val := ?) := p_val; + + template (present) GTPTunnel mw_ie_gTPTunnel( + in template (present) TransportLayerAddress p_tla := ?, + in template (present) GTP_TEID p_gtp_teid := ?, + in template GTPTunnel.iE_Extensions p_iE_Extensions := * + ):= { + transportLayerAddress := p_tla, + gTP_TEID := p_gtp_teid, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_gTPTunnel + + template (present) UPTransportLayerInformation mw_ie_uPTLInf( + template (present) GTPTunnel p_gtpt := ? + ) := { + gTPTunnel := p_gtpt + } // End of template mw_ie_uPTLInf // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); // type record GUAMI { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); @@ -3695,7 +4266,7 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; // type record QosFlowFeedbackItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); - // type integer QosFlowIdentifier ( + template (present) QosFlowIdentifier mw_qosFlowIdentifier(template (present) QosFlowIdentifier p_value := ?) := p_value; // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; // type record QosFlowInformationItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( @@ -3725,8 +4296,25 @@ module LibNGAP_Templates { // type record QosFlowSetupRequestItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; - // type record QosFlowItemWithDataForwarding { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( + template (present) QosFlowItemWithDataForwarding mw_qosFlowItemWithDataForwarding( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template DataForwardingAccepted p_dataForwardingAccepted := *, + template QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dataForwardingAccepted := p_dataForwardingAccepted, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowItemWithDataForwarding + + template (present) QosFlowItemWithDataForwarding.iE_Extensions mw_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_qosFlowItemWithDamw_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndextaForwarding_ // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; // type record QosFlowToBeForwardedItem { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); @@ -3740,10 +4328,10 @@ module LibNGAP_Templates { // type integer RANPagingPriority (1 .. 256); // type record RANStatusTransfer_TransparentContainer { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); - + // type integer RAN_UE_NGAP_ID (0 .. 4294967295); - template RAN_UE_NGAP_ID mw_ie_rANUeNgapId(integer p_val:=1) := p_val; - + template (present) RAN_UE_NGAP_ID mw_ie_rANUeNgapId(template (present) integer p_val := ?) := p_val; + // type enumerated RAT_Information { // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; // type record RATRestrictions_Item { @@ -3942,7 +4530,7 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( // type enumerated TraceDepth { // type integer TrafficLoadReductionIndication (1 .. 99); - // type bitstring TransportLayerAddress length ( + template (present) TransportLayerAddress mw_ie_tla(template (present) bitstring p_val := ?) := p_val; // type enumerated TypeOfError { // type record TAIBasedMDT { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); @@ -4082,14 +4670,15 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; // type record XnTNLConfigurationInfo { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); - - } - }//end of group Information_elements - }//end of group g_NGAP + } // End of group receive + + } // End of group Information_elements + + } // End of group g_NGAP group Functions_For_Templates{ - }//end of group functionsForTemplates - -}// End of module LibNGAP_Templates + } // End of group functionsForTemplates + +} // End of module LibNGAP_Templates diff --git a/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn b/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn index d1ddba3..52714ae 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn @@ -16,40 +16,6 @@ module LibNGAP_TypesAndValues { import from NGAP_PDU_Contents language "ASN.1:2002" all; import from NGAP_PDU_Descriptions language "ASN.1:2002" all; -//TODO: Remove!!! -// type set NGAPIEs{ -// anytype value_ optional, -// GlobalRANNodeID globalRANNodeID optional, -// GlobalGNB_ID globalGNB_ID optional, -// RANNodeName rANNodeName optional, -// SupportedTAList supportedTAList optional, -// PagingDRX defaultPagingDRX optional, -// UERetentionInformation uERetentionInformation optional, -// NB_IoT_DefaultPagingDRX nB_IoT_DefaultPagingDRX optional, -// Extended_RANNodeName extended_RANNodeName optional -// } -// -// /** -// * @desc This data structure redefines ASN.1 ProtocolIE-Field data structure die to parameterization limitation of TTCN-3 tools -// * @member id Protocol Information Element identifier -// * @member criticality Criticality value attached to this IE -// * @member value_ Value of this IE -// * @see ETSI TS 136 413 Clause 9.1 Message Functional Definition and Content -// */ -// type record ProtocolIE { -// integer id (0 .. 65535), -// enumerated { -// reject, ignore, notify -// } criticality, -// //anytype value_ -// NGAPIEs IE -// } -// -// /** -// * @desc List of ProtocolIEs -// */ -// type set of ProtocolIE RecordOf_ProtocolIE; - } with { encode "LibNGAP_codec" } // End of module LibNGAP_TypesAndValues -- GitLab From d7ce2e528653ea9111a47502068a72317a3c5506 Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 4 Dec 2023 21:41:38 +0100 Subject: [PATCH 108/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 118 ++++++++++++++++++++++++ 1 file changed, 118 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 9b91171..f700d33 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -614,6 +614,124 @@ module LibNGAP_Templates { //9.2.5.1 group INITIAL_UE_MESSAGE{ group Send{/* template (value) TYPE m_INTFERFACE_TEMPLATENAME*/ + template (value) InitiatingMessage m_n2_initialUeMessage( + in template (value) RAN_UE_NGAP_ID p_RANUeNgapID, + in template (value) NAS_PDU p_nasPdu, + in template (value) UserLocationInformation p_UeLocInf, + in template (value) RRCEstablishmentCause p_rrcEstCause + + ):={ + procedureCode := id_InitialUEMessage, + criticality := reject, + value_ := { + InitialUEMessage := { + protocolIEs := { + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := {RAN_UE_NGAP_ID:=p_RANUeNgapID} + //presence := NGAP_CommonDataTypes.mandatory + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := {NAS_PDU:=p_nasPdu} + //presence := NGAP_CommonDataTypes.mandatory + }, + { + id := id_UserLocationInformation, + criticality := reject, + value_ := {UserLocationInformation:=p_UeLocInf} + //presence := NGAP_CommonDataTypes.mandatory + }, + { + id := id_RRCEstablishmentCause, + criticality := ignore, + value_ := {RRCEstablishmentCause:=p_rrcEstCause} + //presence := NGAP_CommonDataTypes.mandatory + }//, + /*{ + id := NGAP_Constants.id_FiveG_S_TMSI, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.FiveG_S_TMSI", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AMFSetID, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.AMFSetID", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_UEContextRequest, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.UEContextRequest", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AllowedNSSAI, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.AllowedNSSAI", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_SourceToTarget_AMFInformationReroute, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.SourceToTarget_AMFInformationReroute", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_SelectedPLMNIdentity, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.PLMNIdentity", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_IABNodeIndication, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.IABNodeIndication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_CEmodeBSupport_Indicator, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.CEmodeBSupport_Indicator", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_LTEM_Indication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.LTEM_Indication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_EDT_Session, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.EDT_Session", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AuthenticatedIndication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.AuthenticatedIndication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_NPN_AccessInformation, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.NPN_AccessInformation", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_RedCapIndication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.RedCapIndication", + presence := NGAP_CommonDataTypes.optional_ + }*/ + } + } + } + } } group Receive{/* template (present) TYPE mw_INTFERFACE_TEMPLATENAME*/ } -- GitLab From e16e189f77e59436b7644473d62addbb59088ee5 Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 4 Dec 2023 22:00:06 +0100 Subject: [PATCH 109/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 118 ++++++++++++++++++++++++ 1 file changed, 118 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index a4a4e84..77c5dce 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -615,6 +615,124 @@ module LibNGAP_Templates { //9.2.5.1 group INITIAL_UE_MESSAGE{ group Send{ + template (value) InitiatingMessage m_n2_initialUeMessage( + in template (value) RAN_UE_NGAP_ID p_RANUeNgapID, + in template (value) NAS_PDU p_nasPdu, + in template (value) UserLocationInformation p_UeLocInf, + in template (value) RRCEstablishmentCause p_rrcEstCause + + ):={ + procedureCode := id_InitialUEMessage, + criticality := reject, + value_ := { + InitialUEMessage := { + protocolIEs := { + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := {RAN_UE_NGAP_ID:=p_RANUeNgapID} + //presence := NGAP_CommonDataTypes.mandatory + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := {NAS_PDU:=p_nasPdu} + //presence := NGAP_CommonDataTypes.mandatory + }, + { + id := id_UserLocationInformation, + criticality := reject, + value_ := {UserLocationInformation:=p_UeLocInf} + //presence := NGAP_CommonDataTypes.mandatory + }, + { + id := id_RRCEstablishmentCause, + criticality := ignore, + value_ := {RRCEstablishmentCause:=p_rrcEstCause} + //presence := NGAP_CommonDataTypes.mandatory + }//, + /*{ + id := NGAP_Constants.id_FiveG_S_TMSI, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.FiveG_S_TMSI", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AMFSetID, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.AMFSetID", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_UEContextRequest, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.UEContextRequest", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AllowedNSSAI, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.AllowedNSSAI", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_SourceToTarget_AMFInformationReroute, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.SourceToTarget_AMFInformationReroute", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_SelectedPLMNIdentity, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.PLMNIdentity", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_IABNodeIndication, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.IABNodeIndication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_CEmodeBSupport_Indicator, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.CEmodeBSupport_Indicator", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_LTEM_Indication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.LTEM_Indication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_EDT_Session, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.EDT_Session", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AuthenticatedIndication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.AuthenticatedIndication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_NPN_AccessInformation, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.NPN_AccessInformation", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_RedCapIndication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.RedCapIndication", + presence := NGAP_CommonDataTypes.optional_ + }*/ + } + } + } + } // End of template m_n2_initialUeMessage } group Receive{ } -- GitLab From 00e1bfeaeb5b5759a59a54a3b8335055dd956336 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 5 Dec 2023 07:38:14 +0100 Subject: [PATCH 110/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 77c5dce..5c37a8e 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3063,6 +3063,10 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); // type ASNAUX.VisibleString URI_address; // type union UserLocationInformation { + template (value) UserLocationInformation m_ie_userLocInf_NR(UserLocationInformationNR p_ulinr):={ + userLocationInformationNR := p_ulinr + } // End of template m_ie_userLocInf + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( // type record UserLocationInformationEUTRA { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( @@ -3075,6 +3079,15 @@ module LibNGAP_Templates { // type union UserLocationInformationW_AGF { // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( // type record UserLocationInformationNR { + template (value) UserLocationInformationNR m_ie_userLocInfNR( + template (value) NR_CGI p_nrcgi, + template (value) TAI p_tai + ):={ + nR_CGI := p_nrcgi, + tAI := p_tai, + timeStamp := omit // optional, + } // End of template m_ie_userLocInfNR + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( // type record UserPlaneSecurityInformation { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); -- GitLab From 1fe4f984a6f4340d71535e16e58f497541d13a31 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 5 Dec 2023 07:59:06 +0100 Subject: [PATCH 111/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 5c37a8e..1b89fd0 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2751,6 +2751,8 @@ module LibNGAP_Templates { // type octetstring RoutingID; // type octetstring RRCContainer; // type enumerated RRCEstablishmentCause { + template (value) RRCEstablishmentCause m_ie_rrcEstCause(template (value) RRCEstablishmentCause p_rrcEstCause:=mo_Signalling):=p_rrcEstCause; + // type enumerated RRCInactiveTransitionReportRequest { // type enumerated RRCState { // type enumerated RSN { -- GitLab From 6c364891c054e870fb769082019dbfe2f466a0de Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 5 Dec 2023 08:19:10 +0100 Subject: [PATCH 112/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 1b89fd0..deb6ea2 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2246,6 +2246,14 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); // type bitstring NRCellIdentity length (36); // type record NR_CGI { + template (value) NR_CGI m_ie_nrCgi( + template (value) PLMNIdentity p_PlmnId, + template (value) NR_CellIdentity p_nrCellId + ):={ + pLMNIdentity := p_PlmnId, + nRCellIdentity := p_nrCellId + } //End of template m_ie_nrCgi + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; @@ -2887,6 +2895,14 @@ module LibNGAP_Templates { // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; // type record TAI { + template (value) TAI m_ie_tAI( + template (value) PLMNIdentity p_plmnId, + template (value) TAC p_tac + ):={ + pLMNIdentity := p_plmnId, + tAC := p_tac + } //End of template m_ie_tAI + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; // type record TAIBroadcastEUTRA_Item { -- GitLab From 49e271c218403e82696479382c4b2e0c1f49fea7 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 5 Dec 2023 09:26:34 +0100 Subject: [PATCH 113/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index deb6ea2..951b937 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2245,10 +2245,11 @@ module LibNGAP_Templates { // type union NPN_Support { // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); // type bitstring NRCellIdentity length (36); + template (value) NRCellIdentity m_ie_nRCellId(template (value) NRCellIdentity p_nrCId:='000000000000000000000000000000000000'B):= p_nrCId; // type record NR_CGI { template (value) NR_CGI m_ie_nrCgi( template (value) PLMNIdentity p_PlmnId, - template (value) NR_CellIdentity p_nrCellId + template (value) NRCellIdentity p_nrCellId ):={ pLMNIdentity := p_PlmnId, nRCellIdentity := p_nrCellId -- GitLab From 5fa5862bc173bdb2a327ea15ee30e1b7e62d22f6 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 5 Dec 2023 09:31:07 +0100 Subject: [PATCH 114/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 951b937..a9c17c6 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3082,7 +3082,7 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); // type ASNAUX.VisibleString URI_address; // type union UserLocationInformation { - template (value) UserLocationInformation m_ie_userLocInf_NR(UserLocationInformationNR p_ulinr):={ + template (value) UserLocationInformation m_ie_userLocInf_NR(template (value) UserLocationInformationNR p_ulinr):={ userLocationInformationNR := p_ulinr } // End of template m_ie_userLocInf -- GitLab From eeadfc4a7730e214b32e23482106906a932baa91 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 5 Dec 2023 09:41:39 +0100 Subject: [PATCH 115/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index a9c17c6..d38db53 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2250,9 +2250,11 @@ module LibNGAP_Templates { template (value) NR_CGI m_ie_nrCgi( template (value) PLMNIdentity p_PlmnId, template (value) NRCellIdentity p_nrCellId + in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit ):={ - pLMNIdentity := p_PlmnId, - nRCellIdentity := p_nrCellId + pLMNIdentity := p_PlmnId, + nRCellIdentity := p_nrCellId, + iE_Extensions := p_iE_Extensions } //End of template m_ie_nrCgi // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); -- GitLab From b074b4a918c04db834b34c6168c7f542de85a3b4 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 5 Dec 2023 09:43:58 +0100 Subject: [PATCH 116/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index d38db53..12060de 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2249,7 +2249,7 @@ module LibNGAP_Templates { // type record NR_CGI { template (value) NR_CGI m_ie_nrCgi( template (value) PLMNIdentity p_PlmnId, - template (value) NRCellIdentity p_nrCellId + template (value) NRCellIdentity p_nrCellId, in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit ):={ pLMNIdentity := p_PlmnId, -- GitLab From b6de5576805ea4d541b8f68cdbb42b29367d216c Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 5 Dec 2023 09:49:38 +0100 Subject: [PATCH 117/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 12060de..591abc6 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3102,11 +3102,13 @@ module LibNGAP_Templates { // type record UserLocationInformationNR { template (value) UserLocationInformationNR m_ie_userLocInfNR( template (value) NR_CGI p_nrcgi, - template (value) TAI p_tai + template (value) TAI p_tai, + in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit ):={ nR_CGI := p_nrcgi, tAI := p_tai, - timeStamp := omit // optional, + timeStamp := omit, // optional, + iE_Extensions := p_iE_Extensions } // End of template m_ie_userLocInfNR // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( -- GitLab From 5df20a7bdd158fc5ad3a09ba6ccbb13c6a2fa38b Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 5 Dec 2023 09:53:14 +0100 Subject: [PATCH 118/365] added InitialUEMessage send template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 591abc6..7db17f0 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2900,10 +2900,12 @@ module LibNGAP_Templates { // type record TAI { template (value) TAI m_ie_tAI( template (value) PLMNIdentity p_plmnId, - template (value) TAC p_tac + template (value) TAC p_tac, + in template (omit) TAI.iE_Extensions p_iE_Extensions := omit ):={ pLMNIdentity := p_plmnId, - tAC := p_tac + tAC := p_tac, + iE_Extensions := p_iE_Extensions } //End of template m_ie_tAI // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); -- GitLab From 0b0cc2f7812f734eb636b0341baaa5a6243c82e1 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 5 Dec 2023 14:45:26 +0100 Subject: [PATCH 119/365] TTF T033: Resolve conflicts --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 480 +++++++++++++++++------- 1 file changed, 338 insertions(+), 142 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 7db17f0..ca490e1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -41,12 +41,14 @@ module LibNGAP_Templates { // in NGAP_CommonDataTypes.Criticality p_criticality:=reject // //in anytype p_value // ) := { +// ) := { // initiatingMessage := { // procedureCode := p_procedureCode, // criticality := p_criticality, // value_ := omit//p_value // } // } // End of template m_initiatingMessage +// } // End of template m_initiatingMessage // // //TODO: check value_ not allowed anytype @@ -61,12 +63,14 @@ module LibNGAP_Templates { // in NGAP_CommonDataTypes.Criticality p_criticality:=reject // //in anytype p_value // ) := { +// ) := { // successfulOutcome := { // procedureCode := p_procedureCode, // criticality := p_criticality, // value_ := ?//omit//p_value // } // } // End of template m_successfulOutcome +// } // End of template m_successfulOutcome // // /** // * @desc Send template for NGAP PDU with unsuccessfulOutcome payload @@ -79,11 +83,13 @@ module LibNGAP_Templates { // in NGAP_CommonDataTypes.Criticality p_criticality:=reject // //in anytype p_value // ) := { +// ) := { // unsuccessfulOutcome := { // procedureCode := p_procedureCode, // criticality := p_criticality, // value_ := ?//omit//p_value // } +// } // End of template m_unsuccessfulOutcome // } // End of template m_unsuccessfulOutcome group Send { @@ -105,9 +111,10 @@ module LibNGAP_Templates { ) := { unsuccessfulOutcome := p_msg } // End of template m_ngap_unsuccMsg - } + } // End of group Send + + group Receive { - group Receive{ template (present) NGAP_PDU mw_ngap_initMsg( template (present) InitiatingMessage p_msg := ? ) := { @@ -125,7 +132,8 @@ module LibNGAP_Templates { ) := { unsuccessfulOutcome := p_msg } // End of template m_ngap_unsuccMsg - } + } // End of group Receive + } // End of group g_NGAP_PDU //9.2 @@ -134,7 +142,7 @@ module LibNGAP_Templates { group PDU_Session_Management_Messages{ //9.2.1.1 group PDU_SESSION_RESOURCE_SETUP_REQUEST{ - group Send{ + group Send { template (value) InitiatingMessage m_n2_PDUSessionResourceSetupRequest( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, @@ -147,26 +155,26 @@ module LibNGAP_Templates { PDUSessionResourceSetupRequest := { protocolIEs := { { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { - id := id_PDUSessionResourceSetupListSUReq, - criticality := ignore, - value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} + id := id_PDUSessionResourceSetupListSUReq, + criticality := ignore, + value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} } } } } } // End of template mw_n2_PDUSessionResourceSetupRequest - } + + } // End of group Send group Receive { @@ -181,31 +189,31 @@ module LibNGAP_Templates { PDUSessionResourceSetupRequest := { protocolIEs := { { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { - id := id_PDUSessionResourceSetupListSUReq, - criticality := ignore, - value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} + id := id_PDUSessionResourceSetupListSUReq, + criticality := ignore, + value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} } - } } } } // End of template mw_n2_PDUSessionResourceSetupRequest - } + + } // End of group Receive } //9.2.1.2 group PDU_SESSION_RESOURCE_SETUP_RESPONSE{ - group Send{ + + group Send { template (value) SuccessfulOutcome m_n2_PDUSessionResourceSetupResponse( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, @@ -218,28 +226,27 @@ module LibNGAP_Templates { PDUSessionResourceSetupResponse := { protocolIEs := { { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { - id := id_PDUSessionResourceSetupListSURes, - criticality := ignore, - value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL} + id := id_PDUSessionResourceSetupListSURes, + criticality := ignore, + value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL} } - } } } } // End of template mw_n2_PDUSessionResourceSetupResponse - } - group Receive{ + } // End of group Send + + group Receive { template (present) SuccessfulOutcome mw_n2_PDUSessionResourceSetupResponse( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, @@ -272,7 +279,8 @@ module LibNGAP_Templates { } } } // End of template mw_n2_PDUSessionResourceSetupResponse - } + + } // End of group Receive } //9.2.1.3 group PDU_SESSION_RESOURCE_RELEASE_COMMAND{ @@ -614,14 +622,15 @@ module LibNGAP_Templates { group NAS_Transport_Messages{ //9.2.5.1 group INITIAL_UE_MESSAGE{ - group Send{ + + group Send { + template (value) InitiatingMessage m_n2_initialUeMessage( in template (value) RAN_UE_NGAP_ID p_RANUeNgapID, in template (value) NAS_PDU p_nasPdu, in template (value) UserLocationInformation p_UeLocInf, in template (value) RRCEstablishmentCause p_rrcEstCause - - ):={ + ) := { procedureCode := id_InitialUEMessage, criticality := reject, value_ := { @@ -733,9 +742,11 @@ module LibNGAP_Templates { } } } // End of template m_n2_initialUeMessage - } + } // End of group Send + group Receive{ } + } //9.2.5.2 group DOWNLINK_NAS_TRANSPORT{ @@ -820,37 +831,37 @@ module LibNGAP_Templates { in template (present) ServedGUAMIList p_servedGUAMIList := ?, in template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, in template (present) PLMNSupportList p_plmnSuppList := ? - ) := { - procedureCode := id_NGSetup, - criticality := ?, - value_ := { - NGSetupResponse := { - protocolIEs := { - { - id := id_AMFName, - criticality := reject, - value_ := { AMFName := p_amfName } - }, - { - id := id_ServedGUAMIList, - criticality := reject, - value_ := { ServedGUAMIList := p_servedGUAMIList } - - }, - { - id := id_RelativeAMFCapacity, - criticality := ignore, - value_ := { RelativeAMFCapacity := p_relativeAmfCap } - }, + ) := { + procedureCode := id_NGSetup, + criticality := ?, + value_ := { + NGSetupResponse := { + protocolIEs := { + { + id := id_AMFName, + criticality := reject, + value_ := { AMFName := p_amfName } + }, + { + id := id_ServedGUAMIList, + criticality := reject, + value_ := { ServedGUAMIList := p_servedGUAMIList } + + }, + { + id := id_RelativeAMFCapacity, + criticality := ignore, + value_ := { RelativeAMFCapacity := p_relativeAmfCap } + }, { id := id_PLMNSupportList, criticality := ignore, value_ := { PLMNSupportList := p_plmnSuppList } } - } - } - } - }//end of template mw_n2_NGSetupResponse + } + } + } + }//end of template mw_n2_NGSetupResponse } } @@ -1586,67 +1597,244 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_EUTRA_Item_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_NR_Item CancelledCellsInEAI_NR; // type record CancelledCellsInEAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_EUTRA_Item CancelledCellsInTAI_EUTRA; - // type record CancelledCellsInTAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_NR_Item CancelledCellsInTAI_NR; - // type record CancelledCellsInTAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCandidateCells) of CandidateCellItem CandidateCellList; - // type record CandidateCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellItem_ExtIEs (?); - // type union CandidateCell { - // type NGAP_Containers.NGAP_PROTOCOL_IES CandidateCell_ExtIEs (?); - // type record CandidateCellID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellID_ExtIEs (?); - // type record CandidatePCI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidatePCI_ExtIEs (?); - // type union Cause { - // type NGAP_Containers.NGAP_PROTOCOL_IES Cause_ExtIEs (?); - // type enumerated CauseMisc { - // type enumerated CauseNas { - // type enumerated CauseProtocol { - // type enumerated CauseRadioNetwork { - // type enumerated CauseTransport { - // type record Cell_CAGInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Cell_CAGInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCAGSperCell) of CAG_ID CellCAGList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastEUTRA_Item CellIDBroadcastEUTRA; - // type record CellIDBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastNR_Item CellIDBroadcastNR; - // type record CellIDBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledEUTRA_Item CellIDCancelledEUTRA; - // type record CellIDCancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledNR_Item CellIDCancelledNR; - // type record CellIDCancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledNR_Item_ExtIEs (?); - // type union CellIDListForRestart { - // type NGAP_Containers.NGAP_PROTOCOL_IES CellIDListForRestart_ExtIEs (?); - // type enumerated CellSize { - // type record CellType { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellType_ExtIEs (?); - // type enumerated CEmodeBSupport_Indicator { - // type enumerated CEmodeBrestricted { - // type record CNAssistedRANTuning { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNAssistedRANTuning_ExtIEs (?); - // type integer CNsubgroupID ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of CNTypeRestrictionsForEquivalentItem CNTypeRestrictionsForEquivalent; - // type record CNTypeRestrictionsForEquivalentItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNTypeRestrictionsForEquivalentItem_ExtIEs (?); - // type enumerated CNTypeRestrictionsForServing { - // type octetstring CommonNetworkInstance; - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_EUTRA_Item CompletedCellsInEAI_EUTRA; - // type record CompletedCellsInEAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_NR_Item CompletedCellsInEAI_NR; + template (omit) CancelledCellsInEAI_NR_Item m_cancelledCellsInEAI_NR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cancelledCellsInEAI_NR_Item + + template (omit) CancelledCellsInTAI_EUTRA_Item m_cancelledCellsInTAI_EUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cancelledCellsInTAI_EUTRA_Item + + template (omit) CancelledCellsInTAI_NR_Item m_CancelledCellsInTAI_NR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_CancelledCellsInTAI_NR_Item + + template (omit) CandidateCellItem m_candidateCellItem( + in template (value) CandidateCell p_candidateCell, + in template (omit) CandidateCellItem.iE_Extensions p_iE_Extensions := omit + ) := { + candidateCell := p_candidateCell, + iE_Extensions := p_iE_Extensions + } // End of template m_candidateCellItem + + template (value) CandidateCell m_candidateCell_candidateCGI( + in template (value) CandidateCellID p_candidateCGI + ) := { + candidateCGI := p_candidateCGI + } // End of template m_candidateCell_candidateCGI + + template (value) CandidateCell m_candidateCell_candidatePCI( + in template (value) CandidatePCI p_candidatePCI + ) := { + candidatePCI := p_candidatePCI + } // End of template m_candidateCell_candidatePCI + + template (value) CandidateCell m_candidateCell_ext( + in template (value) CandidateCell.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_candidateCell_ext + + template (omit) CandidateCellID m_candidateCellID( + in template (value) NR_CGI p_candidateCellID, + in template (omit) CandidateCellID.iE_Extensions p_iE_Extensions := omit + ) := { + candidateCellID := p_candidateCellID, + iE_Extensions := p_iE_Extensions + } // End of template m_candidateCellID + + template (omit) CandidatePCI m_candidatePCI( + in template (value) CandidatePCI.candidatePCI p_candidatePCI, + in template (value) CandidatePCI.candidateNRARFCN p_candidateNRARFCN, + in template (omit) CandidatePCI.iE_Extensions p_iE_Extensions := omit + ) := { + candidatePCI := p_candidatePCI, + candidateNRARFCN := p_candidateNRARFCN, + iE_Extensions := p_iE_Extensions + } // End of template m_candidatePCI + + template (value) Cause m_cause_radioNetwork( + in template (value) CauseRadioNetwork p_radioNetwork + ) := { + radioNetwork := p_radioNetwork + } // End of template m_cause_radioNetwork + + template (value) Cause m_cause_transport( + in template (value) CauseTransport p_transport + ) := { + transport := p_transport + } // End of template m_cause_transport + + template (value) Cause m_cause_nas( + in template (value) CauseNas p_nas + ) := { + nas := p_nas + } // End of template m_cause_nas + + template (value) Cause m_cause_protocol( + in template (value) CauseProtocol p_protocol + ) := { + protocol := p_protocol + } // End of template m_cause_protocol + + template (value) Cause m_cause_misc( + in template (value) CauseMisc p_misc + ) := { + misc := p_misc + } // End of template m_cause_misc + + template (value) Cause m_cause_ext( + in template (value) Cause.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_cause_ext + + template (value) CauseMisc m_causeMisc(in CauseMisc p_value := unspecified) := p_value; + template (value) CauseNas m_causeNas(in CauseNas p_value := unspecified) := p_value; + template (value) CauseProtocol m_causeProtocol(in CauseProtocol p_value := unspecified) := p_value; + template (value) CauseRadioNetwork m_causeRadioNetwork(in CauseRadioNetwork p_value := unspecified) := p_value; + template (value) CauseTransport m_causeTransport(in CauseTransport p_value := unspecified) := p_value; + + template (omit) Cell_CAGInformation m_cell_CAGInformation( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) CellCAGList p_cellCAGList, + in template (omit) Cell_CAGInformation.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + cellCAGList := p_cellCAGList, + iE_Extensions := p_iE_Extensions + } // End of template m_cell_CAGInformation + + template (omit) CellIDBroadcastEUTRA_Item m_cellIDBroadcastEUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (omit) CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_cellIDBroadcastEUTRA_Item + + template (omit) CellIDBroadcastNR_Item m_cellIDBroadcastNR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (omit) CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_cellIDBroadcastNR_Item + + template (omit) CellIDCancelledEUTRA_Item m_cellIDCancelledEUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cellIDCancelledEUTRA_Item + + template (omit) CellIDCancelledNR_Item m_cellIDCancelledNR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cellIDCancelledNR_Item + + template (value) CellIDListForRestart m_cellIDListForRestart_eUTRA_CGIListforRestart( + in template (value) EUTRA_CGIList p_eUTRA_CGIListforRestart + ) := { + eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart + } // End of template m_cellIDListForRestart_misc + + template (value) CellIDListForRestart m_cellIDListForRestart_nR_CGIListforRestart( + in template (value) NR_CGIList p_nR_CGIListforRestart + ) := { + nR_CGIListforRestart := p_nR_CGIListforRestart + } // End of template m_cellIDListForRestart_nR_CGIListforRestart + + template (value) CellIDListForRestart m_cellIDListForRestart_ext( + in template (value) CellIDListForRestart.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_cellIDListForRestart_ext + + template (value) CellSize m_cellSize(in CellSize p_value := medium) := p_value; + + template (omit) CellType m_cellType( + in template (value) CellSize p_cellSize, + in template (omit) CellType.iE_Extensions p_iE_Extensions := omit + ) := { + cellSize := p_cellSize, + iE_Extensions := p_iE_Extensions + } // End of template m_cellType + + template (value) CEmodeBSupport_Indicator m_cEmodeBSupport_Indicator(in CEmodeBSupport_Indicator p_value := supported) := p_value; + template (value) CEmodeBrestricted m_cEmodeBrestricted(in CEmodeBrestricted p_value := restricted) := p_value; + + template (omit) CNAssistedRANTuning m_cNAssistedRANTuning( + in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, + in template (omit) CNAssistedRANTuning.iE_Extensions p_iE_Extensions := omit + ) := { + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template m_cNAssistedRANTuning + + template (omit) CNTypeRestrictionsForEquivalentItem m_cNTypeRestrictionsForEquivalentItem( + in template (value) PLMNIdentity p_plmnIdentity, + in template (value) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type, + in template (omit) CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := omit + ) := { + plmnIdentity := p_plmnIdentity, + cn_Type := p_cn_Type, + iE_Extensions := p_iE_Extensions + } // End of template m_cNTypeRestrictionsForEquivalentItem + + template (value) CNTypeRestrictionsForServing m_cNTypeRestrictionsForServing(in CNTypeRestrictionsForServing p_value := epc_forbidden) := p_value; + + template (omit) CompletedCellsInEAI_EUTRA_Item m_completedCellsInEAI_EUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (omit) CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_completedCellsInEAI_EUTRA_Item + // type record CompletedCellsInEAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_EUTRA_Item CompletedCellsInTAI_EUTRA; - // type record CompletedCellsInTAI_EUTRA_Item { + template (omit) CompletedCellsInEAI_NR_Item m_completedCellsInEAI_NR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (omit) CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_completedCellsInEAI_NR_Item + + template (omit) CompletedCellsInTAI_EUTRA_Item m_completedCellsInTAI_EUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (omit) CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_completedCellsInTAI_EUTRA_Item + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; // type record CompletedCellsInTAI_NR_Item { @@ -1870,7 +2058,7 @@ module LibNGAP_Templates { // type union GlobalRANNodeID { template (value) GlobalRANNodeID m_ie_gRanNodeID( in template (value) GlobalGNB_ID p_gGnbId - ):={ + ) := { globalGNB_ID := p_gGnbId // { // pLMNIdentity := p_plmnId,//'010001'O, @@ -2251,7 +2439,7 @@ module LibNGAP_Templates { template (value) PLMNIdentity p_PlmnId, template (value) NRCellIdentity p_nrCellId, in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit - ):={ + ) := { pLMNIdentity := p_PlmnId, nRCellIdentity := p_nrCellId, iE_Extensions := p_iE_Extensions @@ -2481,7 +2669,7 @@ module LibNGAP_Templates { in template (value) UPTransportLayerInformation p_utli, in template (value) PDUSessionType p_pst, in template (value) QosFlowSetupRequestList p_qfsrl - ):={ + ) := { protocolIEs:={ // { // id := id_PDUSessionAggregateMaximumBitRate, @@ -2583,7 +2771,7 @@ module LibNGAP_Templates { in template (omit) SecurityResult p_secRes := omit, in template (omit) QosFlowListWithCause p_qosfCause := omit, in template (omit) PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit - ):={ + ) := { dLQosFlowPerTNLInformation := p_qosfTnlInf, additionalDLQosFlowPerTNLInformation := p_qosfList, securityResult := p_secRes, @@ -2820,7 +3008,7 @@ module LibNGAP_Templates { template (omit) SliceSupportItem m_ie_sliceSupportItem( in template (value) S_NSSAI p_S_NSSAI, in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit - ):={ + ) := { s_NSSAI := p_S_NSSAI, iE_Extensions :=p_iE_Extensions } // End of template m_ie_sliceSupportItem @@ -2836,7 +3024,7 @@ module LibNGAP_Templates { in template (value) SST p_sST, in template (value) SD p_sD, in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit - ):={ + ) := { sST := p_sST,//'00'O, sD := p_sD,//'000000'O, iE_Extensions := p_iE_Extensions @@ -2880,7 +3068,7 @@ module LibNGAP_Templates { in template (value) TAC p_tAC, in template (value) BroadcastPLMNList p_broadcastPLMNList, in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit - ):={ + ) := { tAC := p_tAC, broadcastPLMNList := p_broadcastPLMNList, iE_Extensions := p_iE_Extensions @@ -2902,7 +3090,7 @@ module LibNGAP_Templates { template (value) PLMNIdentity p_plmnId, template (value) TAC p_tac, in template (omit) TAI.iE_Extensions p_iE_Extensions := omit - ):={ + ) := { pLMNIdentity := p_plmnId, tAC := p_tac, iE_Extensions := p_iE_Extensions @@ -3086,7 +3274,7 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); // type ASNAUX.VisibleString URI_address; // type union UserLocationInformation { - template (value) UserLocationInformation m_ie_userLocInf_NR(template (value) UserLocationInformationNR p_ulinr):={ + template (value) UserLocationInformation m_ie_userLocInf_NR(template (value) UserLocationInformationNR p_ulinr) := { userLocationInformationNR := p_ulinr } // End of template m_ie_userLocInf @@ -3106,7 +3294,7 @@ module LibNGAP_Templates { template (value) NR_CGI p_nrcgi, template (value) TAI p_tai, in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit - ):={ + ) := { nR_CGI := p_nrcgi, tAI := p_tai, timeStamp := omit, // optional, @@ -3584,6 +3772,14 @@ module LibNGAP_Templates { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_NR_Item_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_EUTRA_Item CompletedCellsInTAI_EUTRA; // type record CompletedCellsInTAI_EUTRA_Item { + template (present) CompletedCellsInTAI_EUTRA_Item mw_completedCellsInTAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInTAI_EUTRA_Item + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; // type record CompletedCellsInTAI_NR_Item { -- GitLab From 10874063d35281836671873db15675112c743fa0 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 8 Dec 2023 08:55:34 +0100 Subject: [PATCH 120/365] TTF T033: Implement ASN.1 send/receive templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 879 +++++++++++++++++++----- 1 file changed, 700 insertions(+), 179 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index ca490e1..2744e96 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1291,24 +1291,47 @@ module LibNGAP_Templates { ) := { choice_Extensions := p_choice_Extensions } // End of template m_aMFPagingTarget_ext - // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); - // type bitstring AMFPointer length (6); - // type bitstring AMFRegionID length (8); - // type bitstring AMFSetID length (10); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationSetupItem AMF_TNLAssociationSetupList; - // type record AMF_TNLAssociationSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationSetupItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToAddItem AMF_TNLAssociationToAddList; - // type record AMF_TNLAssociationToAddItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToAddItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToRemoveItem AMF_TNLAssociationToRemoveList; - // type record AMF_TNLAssociationToRemoveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToRemoveItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; - // type record AMF_TNLAssociationToUpdateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); - - // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); + + template (omit) AMF_TNLAssociationSetupItem m_aMF_TNLAssociationSetupItem( + in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + in template (omit) AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template m_aMF_TNLAssociationSetupItem + + template (omit) AMF_TNLAssociationToAddItem m_aMF_TNLAssociationToAddItem( + in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + in template (value) TNLAddressWeightFactor p_tNLAddressWeightFactor, + in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, + in template (omit) AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := omit + ):= { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template m_aMF_TNLAssociationToAddItem + + template (omit) AMF_TNLAssociationToRemoveItem m_aMF_TNLAssociationToRemoveItem( + in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + in template (omit) AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template m_aMF_TNLAssociationToRemoveItem + + template (omit) AMF_TNLAssociationToUpdateItem m_aMF_TNLAssociationToUpdateItem( + in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, + in template (omit) TNLAddressWeightFactor p_tNLAddressWeightFactor := omit, + in template (omit) AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template m_aMF_TNLAssociationToUpdateItem + template (value) AMF_UE_NGAP_ID m_ie_aMFUeNgapId(in integer p_val := 1) := p_val; template (omit) AreaOfInterest m_areaOfInterest( @@ -1357,7 +1380,6 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_areaOfInterestTAIItem - // type record AssistanceDataForPaging { template (omit) AssistanceDataForPaging m_assistanceDataForPaging( in template (omit) AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := omit, in template (omit) PagingAttemptInformation p_pagingAttemptInformation := omit, @@ -1437,11 +1459,34 @@ module LibNGAP_Templates { } // End of template m_associatedQosFlowItem_alternativeQoSParaSetIndex template (value) AuthenticatedIndication m_authenticatedIndication(in AuthenticatedIndication p_value := true_) := p_value; - // type integer AveragingWindow ( - // type union AreaScopeOfMDT_NR { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); - // type union AreaScopeOfMDT_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_NR_cellBased( + in template (value) CellBasedMDT_NR p_cellBased + ) := { + cellBased := p_cellBased + } // End of template m_areaScopeOfMDT_cellBased + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_tABased( + in template (value) TABasedMDT p_tABased + ) := { + tABased := p_tABased + } // End of template m_areaScopeOfMDT_tABased + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_pLMNWide := { + pLMNWide := NULL + } // End of template m_areaScopeOfMDT_pLMNWide + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_tAIBased( + in template (value) TAIBasedMDT p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template m_areaScopeOfMDT_tAIBased + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_ext( + in template (value) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_areaScopeOfMDT_ext template (omit) AreaScopeOfNeighCellsItem m_areaScopeOfNeighCellsItem( in template (value) NRFrequencyInfo p_nrFrequencyInfo, @@ -1465,14 +1510,12 @@ module LibNGAP_Templates { tABased := p_tABased } // End of template m_areaScopeOfQMC_tABased - template (value) AreaScopeOfQMC m_areaScopeOfQMC_tAIBased( in template (value) TAIBasedQMC p_tAIBased ) := { tAIBased := p_tAIBased } // End of template m_areaScopeOfQMC_tAIBased - template (value) AreaScopeOfQMC m_areaScopeOfQMC_pLMNAreaBased( in template (value) PLMNAreaBasedQMC p_pLMNAreaBased ) := { @@ -1483,7 +1526,35 @@ module LibNGAP_Templates { in template (value) AreaScopeOfQMC.choice_Extensions p_choice_Extensions ) := { choice_Extensions := p_choice_Extensions - } // End of template m_areaScopeOfQMC_pLMNAreaBased_ext + } // End of template m_areaScopeOfQMC_ext + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_cellBased( + in template (value) CellBasedMDT_EUTRA p_cellBased + ) := { + cellBased := p_cellBased + } // End of template m_areaScopeOfMDT_EUTRA_cellBased + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_tABased( + in template (value) TABasedMDT p_tABased + ) := { + tABased := p_tABased + } // End of template m_areaScopeOfMDT_EUTRA_tABased + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_pLMNWide := { + pLMNWide := NULL + } // End of template m_areaScopeOfMDT_EUTRA_pLMNWide + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_tAIBased( + in template (value) TAIBasedMDT p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template m_areaScopeOfMDT_EUTRA_tAIBased + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_ext( + in template (value) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_areaScopeOfMDT_EUTRA_ext template (omit) AvailableRANVisibleQoEMetrics m_availableRANVisibleQoEMetrics( in template (omit) AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := omit, @@ -1561,16 +1632,52 @@ module LibNGAP_Templates { choice_Extensions := p_choice_Extensions } // End of template m_broadcastCancelledAreaList_ext - // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); - // type union BroadcastCompletedAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_cellIDBroadcastEUTRA( + in template (value) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA + ) := { + cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA + } // End of template m_broadcastCompletedAreaList_cellIDCancelledEUTRA + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_tAIBroadcastEUTRA( + in template (value) TAIBroadcastEUTRA p_tAIBroadcastEUTRA + ) := { + tAIBroadcastEUTRA := p_tAIBroadcastEUTRA + } // End of template m_broadcastCompletedAreaList_tAIBroadcastEUTRA + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( + in template (value) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA + ) := { + emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA + } // End of template m_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_cellIDBroadcastNR( + in template (value) CellIDBroadcastNR p_cellIDBroadcastNR + ) := { + cellIDBroadcastNR := p_cellIDBroadcastNR + } // End of template m_broadcastCompletedAreaList_cellIDBroadcastNR + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_tAIBroadcastNR( + in template (value) TAIBroadcastNR p_tAIBroadcastNR + ) := { + tAIBroadcastNR := p_tAIBroadcastNR + } // End of template m_broadcastCompletedAreaList_tAIBroadcastNR + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( + in template (value) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR + ) := { + emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR + } // End of template m_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_ext( + in template (value) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_broadcastCompletedAreaList_ext - // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; template (value) BroadcastPLMNList m_ie_broadcastPLMNList( in template (value) BroadcastPLMNList p_list ) := p_list; - // type record BroadcastPLMNItem { template (omit) BroadcastPLMNItem m_ie_broadcastPLMNItem( in template (value) PLMNIdentity p_plmnId, in template (value) SliceSupportList p_ssl, @@ -1581,22 +1688,40 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_ie_broadcastPLMNItem - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( - // type record BluetoothMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofBluetoothName) of BluetoothMeasConfigNameItem BluetoothMeasConfigNameList; - // type record BluetoothMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasConfigNameItem_ExtIEs (?); - // type enumerated BluetoothMeasConfig { - // type octetstring BluetoothName length (1 .. 248); - // type octetstring BurstArrivalTime; - // type bitstring CAG_ID length (32); - // type enumerated CancelAllWarningMessages { - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_EUTRA_Item CancelledCellsInEAI_EUTRA; - // type record CancelledCellsInEAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_NR_Item CancelledCellsInEAI_NR; - // type record CancelledCellsInEAI_NR_Item { + template (omit) BluetoothMeasurementConfiguration m_bluetoothMeasurementConfiguration( + in template (value) BluetoothMeasConfig p_bluetoothMeasConfig, + in template (omit) BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := omit, + in template (omit) BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := omit, + in template (omit) BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := omit + ) := { + bluetoothMeasConfig := p_bluetoothMeasConfig, + bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, + bt_rssi := p_bt_rssi, + iE_Extensions := p_iE_Extensions + } // End of template m_bluetoothMeasurementConfiguration + + template (omit) BluetoothMeasConfigNameItem m_bluetoothMeasConfigNameItem( + in template (value) BluetoothName p_bluetoothName, + in template (omit) BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := omit + ) := { + bluetoothName := p_bluetoothName, + iE_Extensions := p_iE_Extensions + } // End of template m_bluetoothMeasConfigNameItem + + template (value) BluetoothMeasConfig m_bluetoothMeasConfig(in BluetoothMeasConfig p_value := setup) := p_value; + + template (value) CancelAllWarningMessages m_cancelAllWarningMessages(in CancelAllWarningMessages p_value := true_) := p_value; + + template (omit) CancelledCellsInEAI_EUTRA_Item m_cancelledCellsInEAI_EUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cancelledCellsInEAI_EUTRA_Item + template (omit) CancelledCellsInEAI_NR_Item m_cancelledCellsInEAI_NR_Item( in template (value) NR_CGI p_nR_CGI, in template (value) NumberOfBroadcasts p_numberOfBroadcasts, @@ -1766,8 +1891,8 @@ module LibNGAP_Templates { } // End of template m_cellIDListForRestart_misc template (value) CellIDListForRestart m_cellIDListForRestart_nR_CGIListforRestart( - in template (value) NR_CGIList p_nR_CGIListforRestart - ) := { + in template (value) NR_CGIList p_nR_CGIListforRestart + ) := { nR_CGIListforRestart := p_nR_CGIListforRestart } // End of template m_cellIDListForRestart_nR_CGIListforRestart @@ -1818,8 +1943,7 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_completedCellsInEAI_EUTRA_Item - // type record CompletedCellsInEAI_NR_Item { - template (omit) CompletedCellsInEAI_NR_Item m_completedCellsInEAI_NR_Item( + #template (omit) CompletedCellsInEAI_NR_Item m_completedCellsInEAI_NR_Item( in template (value) NR_CGI p_nR_CGI, in template (omit) CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := omit ) := { @@ -1835,16 +1959,66 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_completedCellsInTAI_EUTRA_Item - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; - // type record CompletedCellsInTAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_NR_Item_ExtIEs (?); - // type enumerated ConcurrentWarningMessageInd { - // type enumerated ConfidentialityProtectionIndication { - // type enumerated ConfidentialityProtectionResult { - // type enumerated ConfiguredTACIndication { - // type record CoreNetworkAssistanceInformationForInactive { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CoreNetworkAssistanceInformationForInactive_ExtIEs ( + template (omit) CompletedCellsInTAI_NR_Item m_completedCellsInTAI_NR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (omit) CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_completedCellsInTAI_NR_Item + + template (value) ConcurrentWarningMessageInd m_concurrentWarningMessageInd(in ConcurrentWarningMessageInd p_value := true_) := p_value; + template (value) ConfidentialityProtectionIndication m_confidentialityProtectionIndication(in ConfidentialityProtectionIndication p_value := required) := p_value; + template (value) ConfidentialityProtectionResult m_confidentialityProtectionResult(in ConfidentialityProtectionResult p_value := performed) := p_value; + template (value) ConfiguredTACIndication m_configuredTACIndication(in ConfiguredTACIndication p_value := true_) := p_value; + + template (omit) CoreNetworkAssistanceInformationForInactive m_coreNetworkAssistanceInformationForInactive( + in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, + in template (value) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer, + in template (value) TAIListForInactive p_tAIListForInactive, + in template (omit) PagingDRX p_uESpecificDRX := omit, + in template (omit) MICOModeIndication p_mICOModeIndication := omit, + in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, + in template (omit) CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := omit + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + uESpecificDRX := p_uESpecificDRX, + periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, + mICOModeIndication := p_mICOModeIndication, + tAIListForInactive := p_tAIListForInactive, + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template m_coreNetworkAssistanceInformationForInactive + + template (value) CoreNetworkAssistanceInformationForInactive.iE_Extensions m_coreNetworkAssistanceInformationForInactive_paging( + in template (value) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation, + in template (value) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue, + in template (value) UERadioCapabilityForPaging p_uERadioCapabilityForPaging, + in template (value) MicoAllPLMN p_micoAllPLMN + ) := { + { + id := id_EUTRA_PagingeDRXInformation, + criticality := ignore, + extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } + }, + { + id := id_ExtendedUEIdentityIndexValue, + criticality := ignore, + extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } + }, + { + id := id_UERadioCapabilityForPaging, + criticality := ignore, + extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } + }, + { + id := id_MicoAllPLMN, + criticality := ignore, + extensionValue := { MicoAllPLMN := p_micoAllPLMN } + } + // TODO To be enhanced + } // End of template m_coreNetworkAssistanceInformationForInactive_paging + // type record COUNTValueForPDCP_SN12 { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); // type record COUNTValueForPDCP_SN18 { @@ -3420,24 +3594,47 @@ module LibNGAP_Templates { ) := { choice_Extensions := p_choice_Extensions } // End of template mw_aMFPagingTarget_ext - // type NGAP_Containers.NGAP_PROTOCOL_IES AMFPagingTarget_ExtIEs (?); - // type bitstring AMFPointer length (6); - // type bitstring AMFRegionID length (8); - // type bitstring AMFSetID length (10); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationSetupItem AMF_TNLAssociationSetupList; - // type record AMF_TNLAssociationSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationSetupItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToAddItem AMF_TNLAssociationToAddList; - // type record AMF_TNLAssociationToAddItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToAddItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToRemoveItem AMF_TNLAssociationToRemoveList; - // type record AMF_TNLAssociationToRemoveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToRemoveItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of AMF_TNLAssociationToUpdateItem AMF_TNLAssociationToUpdateList; - // type record AMF_TNLAssociationToUpdateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AMF_TNLAssociationToUpdateItem_ExtIEs (?); - - // type integer AMF_UE_NGAP_ID (0 .. 1099511627775); + + template (present) AMF_TNLAssociationSetupItem mw_aMF_TNLAssociationSetupItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationSetupItem + + template (present) AMF_TNLAssociationToAddItem mw_aMF_TNLAssociationToAddItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template (present) TNLAddressWeightFactor p_tNLAddressWeightFactor := ?, + template TNLAssociationUsage p_tNLAssociationUsage := *, + template AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := * + ):= { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToAddItem + + template (present) AMF_TNLAssociationToRemoveItem mw_aMF_TNLAssociationToRemoveItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToRemoveItem + + template (present) AMF_TNLAssociationToUpdateItem mw_aMF_TNLAssociationToUpdateItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template TNLAssociationUsage p_tNLAssociationUsage := *, + template TNLAddressWeightFactor p_tNLAddressWeightFactor := *, + template AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToUpdateItem + template (present) AMF_UE_NGAP_ID mw_ie_aMFUeNgapId(template (present) integer p_val := ?) := p_val; template AreaOfInterest mw_areaOfInterest( @@ -3566,11 +3763,33 @@ module LibNGAP_Templates { template (present) AuthenticatedIndication mw_authenticatedIndication(template (present) AuthenticatedIndication p_value := true_) := p_value; - // type integer AveragingWindow ( - // type union AreaScopeOfMDT_NR { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_NR_ExtIEs (?); - // type union AreaScopeOfMDT_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_IES AreaScopeOfMDT_EUTRA_ExtIEs (?); + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_NR_cellBased( + template (present) CellBasedMDT_NR p_cellBased := ? + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfMDT_cellBased + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tABased( + template (present) TABasedMDT p_tABased := ? + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfMDT_tABased + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_pLMNWide := { + pLMNWide := NULL + } // End of template mw_areaScopeOfMDT_pLMNWide + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tAIBased( + template (present) TAIBasedMDT p_tAIBased := ? + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfMDT_tAIBased + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_ext( + template (present) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfMDT_ext template (present) AreaScopeOfNeighCellsItem mw_areaScopeOfNeighCellsItem( template (present) NRFrequencyInfo p_nrFrequencyInfo := ?, @@ -3594,14 +3813,12 @@ module LibNGAP_Templates { tABased := p_tABased } // End of template mw_areaScopeOfQMC_tABased - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tAIBased( template (present) TAIBasedQMC p_tAIBased := ? ) := { tAIBased := p_tAIBased } // End of template mw_areaScopeOfQMC_tAIBased - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_pLMNAreaBased( template (present) PLMNAreaBasedQMC p_pLMNAreaBased := ? ) := { @@ -3614,6 +3831,34 @@ module LibNGAP_Templates { choice_Extensions := p_choice_Extensions } // End of template mw_areaScopeOfQMC_ext + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_cellBased( + template (present) CellBasedMDT_EUTRA p_cellBased + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfMDT_EUTRA_cellBased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tABased( + template (present) TABasedMDT p_tABased + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfMDT_EUTRA_tABased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_pLMNWide := { + pLMNWide := NULL + } // End of template mw_areaScopeOfMDT_EUTRA_pLMNWide + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tAIBased( + template (present) TAIBasedMDT p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfMDT_EUTRA_tAIBased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_ext( + template (present) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfMDT_EUTRA_ext + template AvailableRANVisibleQoEMetrics mw_availableRANVisibleQoEMetrics( template AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := *, template AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := *, @@ -3690,88 +3935,314 @@ module LibNGAP_Templates { choice_Extensions := p_choice_Extensions } // End of template mw_broadcastCancelledAreaList_ext - // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCancelledAreaList_ExtIEs (?); - // type union BroadcastCompletedAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES BroadcastCompletedAreaList_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofBPLMNs) of BroadcastPLMNItem BroadcastPLMNList; - // type record BroadcastPLMNItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BroadcastPLMNItem_ExtIEs ( - // type record BluetoothMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofBluetoothName) of BluetoothMeasConfigNameItem BluetoothMeasConfigNameList; - // type record BluetoothMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION BluetoothMeasConfigNameItem_ExtIEs (?); - // type enumerated BluetoothMeasConfig { - // type octetstring BluetoothName length (1 .. 248); - // type octetstring BurstArrivalTime; - // type bitstring CAG_ID length (32); - // type enumerated CancelAllWarningMessages { - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_EUTRA_Item CancelledCellsInEAI_EUTRA; - // type record CancelledCellsInEAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CancelledCellsInEAI_NR_Item CancelledCellsInEAI_NR; - // type record CancelledCellsInEAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInEAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_EUTRA_Item CancelledCellsInTAI_EUTRA; - // type record CancelledCellsInTAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CancelledCellsInTAI_NR_Item CancelledCellsInTAI_NR; - // type record CancelledCellsInTAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CancelledCellsInTAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCandidateCells) of CandidateCellItem CandidateCellList; - // type record CandidateCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellItem_ExtIEs (?); - // type union CandidateCell { - // type NGAP_Containers.NGAP_PROTOCOL_IES CandidateCell_ExtIEs (?); - // type record CandidateCellID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidateCellID_ExtIEs (?); - // type record CandidatePCI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CandidatePCI_ExtIEs (?); - // type union Cause { - // type NGAP_Containers.NGAP_PROTOCOL_IES Cause_ExtIEs (?); - // type enumerated CauseMisc { - // type enumerated CauseNas { - // type enumerated CauseProtocol { - // type enumerated CauseRadioNetwork { - // type enumerated CauseTransport { - // type record Cell_CAGInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Cell_CAGInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCAGSperCell) of CAG_ID CellCAGList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastEUTRA_Item CellIDBroadcastEUTRA; - // type record CellIDBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDBroadcastNR_Item CellIDBroadcastNR; - // type record CellIDBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledEUTRA_Item CellIDCancelledEUTRA; - // type record CellIDCancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of CellIDCancelledNR_Item CellIDCancelledNR; - // type record CellIDCancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellIDCancelledNR_Item_ExtIEs (?); - // type union CellIDListForRestart { - // type NGAP_Containers.NGAP_PROTOCOL_IES CellIDListForRestart_ExtIEs (?); - // type enumerated CellSize { - // type record CellType { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellType_ExtIEs (?); - // type enumerated CEmodeBSupport_Indicator { - // type enumerated CEmodeBrestricted { - // type record CNAssistedRANTuning { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNAssistedRANTuning_ExtIEs (?); - // type integer CNsubgroupID ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of CNTypeRestrictionsForEquivalentItem CNTypeRestrictionsForEquivalent; - // type record CNTypeRestrictionsForEquivalentItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CNTypeRestrictionsForEquivalentItem_ExtIEs (?); - // type enumerated CNTypeRestrictionsForServing { - // type octetstring CommonNetworkInstance; - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_EUTRA_Item CompletedCellsInEAI_EUTRA; - // type record CompletedCellsInEAI_EUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinEAI) of CompletedCellsInEAI_NR_Item CompletedCellsInEAI_NR; - // type record CompletedCellsInEAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInEAI_NR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_EUTRA_Item CompletedCellsInTAI_EUTRA; - // type record CompletedCellsInTAI_EUTRA_Item { + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastEUTRA( + template (present) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA + ) := { + cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_cellIDCancelledEUTRA + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastEUTRA( + template (present) TAIBroadcastEUTRA p_tAIBroadcastEUTRA + ) := { + tAIBroadcastEUTRA := p_tAIBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_tAIBroadcastEUTRA + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( + template (present) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA + ) := { + emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastNR( + template (present) CellIDBroadcastNR p_cellIDBroadcastNR + ) := { + cellIDBroadcastNR := p_cellIDBroadcastNR + } // End of template mw_broadcastCompletedAreaList_cellIDBroadcastNR + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastNR( + template (present) TAIBroadcastNR p_tAIBroadcastNR + ) := { + tAIBroadcastNR := p_tAIBroadcastNR + } // End of template mw_broadcastCompletedAreaList_tAIBroadcastNR + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( + template (present) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR + ) := { + emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR + } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_ext( + template (present) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_broadcastCompletedAreaList_ext + + template (present) BroadcastPLMNItem mw_ie_broadcastPLMNItem( + template (present) PLMNIdentity p_plmnId := ?, + template (present) SliceSupportList p_ssl := ?, + template BroadcastPLMNItem.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_plmnId, + tAISliceSupportList := p_ssl, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_broadcastPLMNItem + + template (present) BluetoothMeasurementConfiguration mw_bluetoothMeasurementConfiguration( + template (present) BluetoothMeasConfig p_bluetoothMeasConfig := ?, + template BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := *, + template BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := *, + template BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + bluetoothMeasConfig := p_bluetoothMeasConfig, + bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, + bt_rssi := p_bt_rssi, + iE_Extensions := p_iE_Extensions + } // End of template mw_bluetoothMeasurementConfiguration + + template (present) BluetoothMeasConfigNameItem mw_bluetoothMeasConfigNameItem( + template (present) BluetoothName p_bluetoothName := ?, + template BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := * + ) := { + bluetoothName := p_bluetoothName, + iE_Extensions := p_iE_Extensions + } // End of template mw_bluetoothMeasConfigNameItem + + template (present) BluetoothMeasConfig mw_bluetoothMeasConfig(template (present) BluetoothMeasConfig p_value := setup) := p_value; + + template (present) CancelAllWarningMessages mw_cancelAllWarningMessages(template (present) CancelAllWarningMessages p_value := true_) := p_value; + + + template (present) CancelledCellsInEAI_EUTRA_Item mw_cancelledCellsInEAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInEAI_EUTRA_Item + + template (present) CancelledCellsInEAI_NR_Item mw_cancelledCellsInEAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInEAI_NR_Item + + template (present) CancelledCellsInTAI_EUTRA_Item mw_cancelledCellsInTAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInTAI_EUTRA_Item + + template (present) CancelledCellsInTAI_NR_Item mw_CancelledCellsInTAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_CancelledCellsInTAI_NR_Item + + template (present) CandidateCellItem mw_candidateCellItem( + template (present) CandidateCell p_candidateCell := ?, + template CandidateCellItem.iE_Extensions p_iE_Extensions := * + ) := { + candidateCell := p_candidateCell, + iE_Extensions := p_iE_Extensions + } // End of template mw_candidateCellItem + + template (present) CandidateCell mw_candidateCell_candidateCGI( + template (present) CandidateCellID p_candidateCGI := ? + ) := { + candidateCGI := p_candidateCGI + } // End of template mw_candidateCell_candidateCGI + + template (present) CandidateCell mw_candidateCell_candidatePCI( + template (present) CandidatePCI p_candidatePCI := ? + ) := { + candidatePCI := p_candidatePCI + } // End of template mw_candidateCell_candidatePCI + + template (present) CandidateCell mw_candidateCell_ext( + template (present) CandidateCell.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_candidateCell_ext + + template (present) CandidatePCI mw_candidatePCI( + template (present) CandidatePCI.candidatePCI p_candidatePCI := ?, + template (present) CandidatePCI.candidateNRARFCN p_candidateNRARFCN := ?, + template CandidatePCI.iE_Extensions p_iE_Extensions := * + ) := { + candidatePCI := p_candidatePCI, + candidateNRARFCN := p_candidateNRARFCN, + iE_Extensions := p_iE_Extensions + } // End of template mw_candidatePCI + + template (present) Cause mw_cause_radioNetwork( + template (present) CauseRadioNetwork p_radioNetwork + ) := { + radioNetwork := p_radioNetwork + } // End of template mw_cause_radioNetwork + + template (present) Cause mw_cause_transport( + template (present) CauseTransport p_transport + ) := { + transport := p_transport + } // End of template mw_cause_transport + + template (present) Cause mw_cause_nas( + template (present) CauseNas p_nas + ) := { + nas := p_nas + } // End of template mw_cause_nas + + template (present) Cause mw_cause_protocol( + template (present) CauseProtocol p_protocol + ) := { + protocol := p_protocol + } // End of template mw_cause_protocol + + template (present) Cause mw_cause_misc( + template (present) CauseMisc p_misc + ) := { + misc := p_misc + } // End of template mw_cause_misc + + template (present) Cause mw_cause_ext( + template (present) Cause.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cause_ext + + template (present) CauseMisc mw_causeMisc(template (present) CauseMisc p_value := ?) := p_value; + template (present) CauseNas mw_causeNas(template (present) CauseNas p_value := ?) := p_value; + template (present) CauseProtocol mw_causeProtocol(template (present) CauseProtocol p_value := ?) := p_value; + template (present) CauseRadioNetwork mww_causeRadioNetwork(template (present) CauseRadioNetwork p_value := ?) := p_value; + template (present) CauseTransport mw_causeTransport(template (present) CauseTransport p_value := ?) := p_value; + + template (present) Cell_CAGInformation mw_cell_CAGInformation( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) CellCAGList p_cellCAGList := ?, + template Cell_CAGInformation.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + cellCAGList := p_cellCAGList, + iE_Extensions := p_iE_Extensions + } // End of template mw_cell_CAGInformation + + template (present) CellIDBroadcastEUTRA_Item mw_cellIDBroadcastEUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDBroadcastEUTRA_Item + + template (present) CellIDBroadcastNR_Item mw_cellIDBroadcastNR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDBroadcastNR_Item + + template (present) CellIDCancelledEUTRA_Item mw_cellIDCancelledEUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDCancelledEUTRA_Item + + template (present) CellIDCancelledNR_Item mw_cellIDCancelledNR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDCancelledNR_Item + + template (present) CellIDListForRestart mw_cellIDListForRestart_eUTRA_CGIListforRestart( + template (present) EUTRA_CGIList p_eUTRA_CGIListforRestart := ? + ) := { + eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart + } // End of template mw_cellIDListForRestart_misc + + template (present) CellIDListForRestart mw_cellIDListForRestart_nR_CGIListforRestart( + template (present) NR_CGIList p_nR_CGIListforRestart := ? + ) := { + nR_CGIListforRestart := p_nR_CGIListforRestart + } // End of template mw_cellIDListForRestart_nR_CGIListforRestart + + template (present) CellIDListForRestart mw_cellIDListForRestart_ext( + template (present) CellIDListForRestart.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cellIDListForRestart_ext + + template (present) CellSize mw_cellSize(template (present) CellSize p_value := ?) := p_value; + + template (present) CellType mw_cellType( + template (present) CellSize p_cellSize:= ?, + template CellType.iE_Extensions p_iE_Extensions := * + ) := { + cellSize := p_cellSize, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellType + + template (present) CEmodeBSupport_Indicator mw_cEmodeBSupport_Indicator(template (present) CEmodeBSupport_Indicator p_value := ?) := p_value; + template (present) CEmodeBrestricted mw_cEmodeBrestricted(template (present) CEmodeBrestricted p_value := ?) := p_value; + + template CNAssistedRANTuning mw_cNAssistedRANTuning( + template ExpectedUEBehaviour p_expectedUEBehaviour := *, + template CNAssistedRANTuning.iE_Extensions p_iE_Extensions := * + ) := { + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template mw_cNAssistedRANTuning + + template (present) CNTypeRestrictionsForEquivalentItem mw_cNTypeRestrictionsForEquivalentItem( + template (present) PLMNIdentity p_plmnIdentity := ?, + template (present) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type := ?, + template CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := * + ) := { + plmnIdentity := p_plmnIdentity, + cn_Type := p_cn_Type, + iE_Extensions := p_iE_Extensions + } // End of template mw_cNTypeRestrictionsForEquivalentItem + + template (present) CNTypeRestrictionsForServing mw_cNTypeRestrictionsForServing(template (present) CNTypeRestrictionsForServing p_value := ?) := p_value; + + template (present) CompletedCellsInEAI_EUTRA_Item mw_completedCellsInEAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInEAI_EUTRA_Item + + template (present) CompletedCellsInEAI_NR_Item mw_completedCellsInEAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInEAI_NR_Item + template (present) CompletedCellsInTAI_EUTRA_Item mw_completedCellsInTAI_EUTRA_Item( template (present) EUTRA_CGI p_eUTRA_CGI := ?, template CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * @@ -3780,16 +4251,66 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_completedCellsInTAI_EUTRA_Item - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_EUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellinTAI) of CompletedCellsInTAI_NR_Item CompletedCellsInTAI_NR; - // type record CompletedCellsInTAI_NR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompletedCellsInTAI_NR_Item_ExtIEs (?); - // type enumerated ConcurrentWarningMessageInd { - // type enumerated ConfidentialityProtectionIndication { - // type enumerated ConfidentialityProtectionResult { - // type enumerated ConfiguredTACIndication { - // type record CoreNetworkAssistanceInformationForInactive { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CoreNetworkAssistanceInformationForInactive_ExtIEs ( + template (present) CompletedCellsInTAI_NR_Item mw_completedCellsInTAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInTAI_NR_Item + + template (present) ConcurrentWarningMessageInd mw_concurrentWarningMessageInd(template (present) ConcurrentWarningMessageInd p_value := true_) := p_value; + template (present) ConfidentialityProtectionIndication mw_confidentialityProtectionIndication(template (present) ConfidentialityProtectionIndication p_value := ?) := p_value; + template (present) ConfidentialityProtectionResult mw_confidentialityProtectionResult(template (present) ConfidentialityProtectionResult p_value := ?) := p_value; + template (present) ConfiguredTACIndication mw_configuredTACIndication(template (present) ConfiguredTACIndication p_value := true_) := p_value; + + template (present) CoreNetworkAssistanceInformationForInactive mw_coreNetworkAssistanceInformationForInactive( + template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, + template (present) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := ?, + template (present) TAIListForInactive p_tAIListForInactive := ?, + template PagingDRX p_uESpecificDRX := *, + template MICOModeIndication p_mICOModeIndication := *, + template ExpectedUEBehaviour p_expectedUEBehaviour := *, + template CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := * + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + uESpecificDRX := p_uESpecificDRX, + periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, + mICOModeIndication := p_mICOModeIndication, + tAIListForInactive := p_tAIListForInactive, + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template mw_coreNetworkAssistanceInformationForInactive + + template (present) CoreNetworkAssistanceInformationForInactive.iE_Extensions mw_coreNetworkAssistanceInformationForInactive_paging( + template (present) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation := ?, + template (present) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue := ?, + template (present) UERadioCapabilityForPaging p_uERadioCapabilityForPaging := ?, + template (present) MicoAllPLMN p_micoAllPLMN := ? + ) := { + { + id := id_EUTRA_PagingeDRXInformation, + criticality := ignore, + extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } + }, + { + id := id_ExtendedUEIdentityIndexValue, + criticality := ignore, + extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } + }, + { + id := id_UERadioCapabilityForPaging, + criticality := ignore, + extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } + }, + { + id := id_MicoAllPLMN, + criticality := ignore, + extensionValue := { MicoAllPLMN := p_micoAllPLMN } + } + // TODO To be enhanced + } // End of template mw_coreNetworkAssistanceInformationForInactive_paging + // type record COUNTValueForPDCP_SN12 { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); // type record COUNTValueForPDCP_SN18 { -- GitLab From fd269dcc4ef377b631ba5618e89d42ae6a4558b0 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 8 Dec 2023 10:34:06 +0100 Subject: [PATCH 121/365] Resolve conflict --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 156 ++++++++++++++++++++---- 1 file changed, 134 insertions(+), 22 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 2744e96..06dacb4 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1555,6 +1555,7 @@ module LibNGAP_Templates { ) := { choice_Extensions := p_choice_Extensions } // End of template m_areaScopeOfMDT_EUTRA_ext + } // End of template m_areaScopeOfQMC_ext template (omit) AvailableRANVisibleQoEMetrics m_availableRANVisibleQoEMetrics( in template (omit) AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := omit, @@ -1943,7 +1944,7 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_completedCellsInEAI_EUTRA_Item - #template (omit) CompletedCellsInEAI_NR_Item m_completedCellsInEAI_NR_Item( + template (omit) CompletedCellsInEAI_NR_Item m_completedCellsInEAI_NR_Item( in template (value) NR_CGI p_nR_CGI, in template (omit) CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := omit ) := { @@ -2019,14 +2020,71 @@ module LibNGAP_Templates { // TODO To be enhanced } // End of template m_coreNetworkAssistanceInformationForInactive_paging - // type record COUNTValueForPDCP_SN12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); - // type record COUNTValueForPDCP_SN18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN18_ExtIEs (?); - // type octetstring CoverageEnhancementLevel; - // type union CPTransportLayerInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES CPTransportLayerInformation_ExtIEs ( - // type record CriticalityDiagnostics { + template (omit) COUNTValueForPDCP_SN12 m_cOUNTValueForPDCP_SN12( + in template (value) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12, + in template (value) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12, + in template (omit) COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := omit + ) := { + pDCP_SN12 := p_pDCP_SN12, + hFN_PDCP_SN12 := p_hFN_PDCP_SN12, + iE_Extensions := p_iE_Extensions + } // End of template m_cOUNTValueForPDCP_SN12 + + template (omit) COUNTValueForPDCP_SN18 m_cOUNTValueForPDCP_SN18( + in template (value) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18, + in template (value) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18, + in template (omit) COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := omit + ) := { + pDCP_SN18 := p_pDCP_SN18, + hFN_PDCP_SN18 := p_hFN_PDCP_SN18, + iE_Extensions := p_iE_Extensions + } // End of template m_cOUNTValueForPDCP_SN18 + + template (value) CPTransportLayerInformation m_cPTransportLayerInformation_endpointIPAddress( + in template (value) TransportLayerAddress p_endpointIPAddress + ) := { + endpointIPAddress := p_endpointIPAddress + } // End of template m_cPTransportLayerInformation_endpointIPAddress + + template (value) CPTransportLayerInformation m_cPTransportLayerInformation_choice_Extensions( + in template (value) CPTransportLayerInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_cPTransportLayerInformation_choice_Extensions + + template (value) CPTransportLayerInformation.choice_Extensions m_cPTransportLayerInformation_ext( + in template (value) EndpointIPAddressAndPort p_EndpointIPAddressAndPort + ) := { + id := id_EndpointIPAddressAndPort, + criticality := reject, + value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } + } // End of template m_cPTransportLayerInformation_ext + + template (omit) CriticalityDiagnostics m_criticalityDiagnostics( + in template (omit) ProcedureCode p_procedureCode := omit, + in template (omit) TriggeringMessage p_triggeringMessage := omit, + in template (omit) Criticality p_procedureCriticality := omit, + in template (omit) CriticalityDiagnostics.iEsCriticalityDiagnostics p_criticalityDiagnostics_IE_List := omit, + in template (omit) CriticalityDiagnostics.iE_Extensions p_iE_Extensions := omit + ) := { + procedureCode := p_procedureCode, + triggeringMessage := p_triggeringMessage, + procedureCriticality := p_procedureCriticality, + iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, + iE_Extensions := p_iE_Extensions + } // End of template m_criticalityDiagnostics + + template (omit) CriticalityDiagnostics_IE_Item m_criticalityDiagnostics_IE_Item( + in template (value) Criticality p_iECriticality, + in template (value) ProtocolIE_ID p_iE_ID, + in template (value) TypeOfError p_typeOfError, + in template (omit) CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := omit + ) := { + iECriticality := p_iECriticality, + iE_ID := p_iE_ID, + typeOfError := p_typeOfError, + iE_Extensions := p_iE_Extensions + } // End of template m_criticalityDiagnostics_IE_Item // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofErrors) of CriticalityDiagnostics_IE_Item CriticalityDiagnostics_IE_List; // type record CriticalityDiagnostics_IE_Item { @@ -4311,18 +4369,72 @@ module LibNGAP_Templates { // TODO To be enhanced } // End of template mw_coreNetworkAssistanceInformationForInactive_paging - // type record COUNTValueForPDCP_SN12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN12_ExtIEs (?); - // type record COUNTValueForPDCP_SN18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION COUNTValueForPDCP_SN18_ExtIEs (?); - // type octetstring CoverageEnhancementLevel; - // type union CPTransportLayerInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES CPTransportLayerInformation_ExtIEs ( - // type record CriticalityDiagnostics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofErrors) of CriticalityDiagnostics_IE_Item CriticalityDiagnostics_IE_List; - // type record CriticalityDiagnostics_IE_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_IE_Item_ExtIEs (?); + template (present) COUNTValueForPDCP_SN12 mw_cOUNTValueForPDCP_SN12( + template (present) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12 := ?, + template (present) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12 := ?, + template COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := * + ) := { + pDCP_SN12 := p_pDCP_SN12, + hFN_PDCP_SN12 := p_hFN_PDCP_SN12, + iE_Extensions := p_iE_Extensions + } // End of template mw_cOUNTValueForPDCP_SN12 + + template (present) COUNTValueForPDCP_SN18 mw_cOUNTValueForPDCP_SN18( + template (present) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18 := ?, + template (present) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18 := ?, + template COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := * + ) := { + pDCP_SN18 := p_pDCP_SN18, + hFN_PDCP_SN18 := p_hFN_PDCP_SN18, + iE_Extensions := p_iE_Extensions + } // End of template mw_cOUNTValueForPDCP_SN18 + + template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_endpointIPAddress( + template (present) TransportLayerAddress p_endpointIPAddress := ? + ) := { + endpointIPAddress := p_endpointIPAddress + } // End of template mw_cPTransportLayerInformation_endpointIPAddress + + template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_choice_Extensions( + template (present) CPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cPTransportLayerInformation_choice_Extensions + + template (present) CPTransportLayerInformation.choice_Extensions mw_cPTransportLayerInformation_ext( + template (present) EndpointIPAddressAndPort p_EndpointIPAddressAndPort := ? + ) := { + id := id_EndpointIPAddressAndPort, + criticality := reject, + value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } + } // End of template mw_cPTransportLayerInformation_ext + + template CriticalityDiagnostics mw_criticalityDiagnostics( + template ProcedureCode p_procedureCode := *, + template TriggeringMessage p_triggeringMessage := *, + template Criticality p_procedureCriticality := *, + template CriticalityDiagnostics.iEsCriticalityDiagnostics p_criticalityDiagnostics_IE_List := *, + template CriticalityDiagnostics.iE_Extensions p_iE_Extensions := * + ) := { + procedureCode := p_procedureCode, + triggeringMessage := p_triggeringMessage, + procedureCriticality := p_procedureCriticality, + iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, + iE_Extensions := p_iE_Extensions + } // End of template mw_criticalityDiagnostics + + template (present) CriticalityDiagnostics_IE_Item mw_criticalityDiagnostics_IE_Item( + template (present) Criticality p_iECriticality := ?, + template (present) ProtocolIE_ID p_iE_ID := ?, + template (present) TypeOfError p_typeOfError := ?, + template CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := * + ) := { + iECriticality := p_iECriticality, + iE_ID := p_iE_ID, + typeOfError := p_typeOfError, + iE_Extensions := p_iE_Extensions + } // End of template mw_criticalityDiagnostics_IE_Item + // type record CellBasedMDT_NR { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_NR_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of NR_CGI CellIdListforMDT_NR; @@ -5546,7 +5658,7 @@ module LibNGAP_Templates { } // End of group receive - } // End of group Information_elements + //} // End of group Information_elements } // End of group g_NGAP -- GitLab From b9f7943d95eb592889a946d7ae7de7f7abc35a42 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 8 Dec 2023 10:49:45 +0100 Subject: [PATCH 122/365] Minor typing change in m/w_criticalityDiagnostics --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 06dacb4..c86f401 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2064,7 +2064,7 @@ module LibNGAP_Templates { in template (omit) ProcedureCode p_procedureCode := omit, in template (omit) TriggeringMessage p_triggeringMessage := omit, in template (omit) Criticality p_procedureCriticality := omit, - in template (omit) CriticalityDiagnostics.iEsCriticalityDiagnostics p_criticalityDiagnostics_IE_List := omit, + in template (omit) CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := omit, in template (omit) CriticalityDiagnostics.iE_Extensions p_iE_Extensions := omit ) := { procedureCode := p_procedureCode, @@ -4413,7 +4413,7 @@ module LibNGAP_Templates { template ProcedureCode p_procedureCode := *, template TriggeringMessage p_triggeringMessage := *, template Criticality p_procedureCriticality := *, - template CriticalityDiagnostics.iEsCriticalityDiagnostics p_criticalityDiagnostics_IE_List := *, + template CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := *, template CriticalityDiagnostics.iE_Extensions p_iE_Extensions := * ) := { procedureCode := p_procedureCode, -- GitLab From 3ccf9357b6d0c256a411b1d8cb068ee36fc0cb9c Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 15 Dec 2023 15:29:20 +0100 Subject: [PATCH 123/365] TTF T033: Implement ASN.1 send/receive templates (continue) --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 728 +++++++++++++++++++----- 1 file changed, 597 insertions(+), 131 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index c86f401..c94cda6 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2085,74 +2085,306 @@ module LibNGAP_Templates { typeOfError := p_typeOfError, iE_Extensions := p_iE_Extensions } // End of template m_criticalityDiagnostics_IE_Item - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofErrors) of CriticalityDiagnostics_IE_Item CriticalityDiagnostics_IE_List; - // type record CriticalityDiagnostics_IE_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CriticalityDiagnostics_IE_Item_ExtIEs (?); - // type record CellBasedMDT_NR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_NR_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of NR_CGI CellIdListforMDT_NR; - // type record CellBasedMDT_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_EUTRA_ExtIEs (?); - // type record CellBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforQMC) of NGRAN_CGI CellIdListforQMC; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; - // type bitstring DataCodingScheme length (8); + + template (omit) CellBasedMDT_NR m_cellBasedMDT_NR( + in template (value) CellIdListforMDT_NR p_cellIdListforMDT, + in template (omit) CellBasedMDT_NR.iE_Extensions p_iE_Extensions + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_cellBasedMDT_NR + + template (omit) CellBasedMDT_EUTRA m_cellBasedMDT_EUTRA( + in template (value) CellIdListforMDT_EUTRA p_cellIdListforMDT, + in template (omit) CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_cellBasedMDT_EUTRA + + template (omit) CellBasedQMC m_cellBasedQMC( + in template (value) CellIdListforQMC p_cellIdListforQMC, + in template (omit) CellBasedQMC.iE_Extensions p_iE_Extensions + ) := { + cellIdListforQMC := p_cellIdListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template m_cellBasedQMC + + template (value) DataForwardingNotPossible m_dataForwardingNotPossible(in DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; + template (value) DataForwardingAccepted m_dataForwardingAccepted(in DataForwardingAccepted p_value := data_forwarding_accepted) := p_value; - // type enumerated DataForwardingNotPossible { - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; - // type record DataForwardingResponseDRBItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseDRBItem_ExtIEs (?); - // type record DAPSRequestInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSRequestInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DAPSResponseInfoItem DAPSResponseInfoList; - // type record DAPSResponseInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfoItem_ExtIEs (?); - // type record DAPSResponseInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of DataForwardingResponseERABListItem DataForwardingResponseERABList; - // type record DataForwardingResponseERABListItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseERABListItem_ExtIEs (?); - // type enumerated DelayCritical { - // type record DL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DL_CP_SecurityInformation_ExtIEs (?); - // type bitstring DL_NAS_MAC length (16); - // type enumerated DLForwarding { - // type enumerated DL_NGU_TNLInformationReused { - // type enumerated DirectForwardingPathAvailability { - // type integer DRB_ID ( - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToStatusTransferItem DRBsSubjectToStatusTransferList; - // type record DRBsSubjectToStatusTransferItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToStatusTransferItem_ExtIEs ( - // type union DRBStatusDL { - // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); - // type record DRBStatusDL12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL12_ExtIEs (?); - // type record DRBStatusDL18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL18_ExtIEs (?); - // type union DRBStatusUL { - // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusUL_ExtIEs (?); - // type record DRBStatusUL12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL12_ExtIEs (?); - // type record DRBStatusUL18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL18_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsToQosFlowsMappingItem DRBsToQosFlowsMappingList; - // type record DRBsToQosFlowsMappingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsToQosFlowsMappingItem_ExtIEs ( - // type record Dynamic5QIDescriptor { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Dynamic5QIDescriptor_ExtIEs ( - // type enumerated EarlyMeasurement { - // type record EarlyStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EarlyStatusTransfer_TransparentContainer_ExtIEs (?); - // type union ProcedureStageChoice { - // type NGAP_Containers.NGAP_PROTOCOL_IES ProcedureStageChoice_ExtIEs (?); - // type record FirstDLCount { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FirstDLCount_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToEarlyStatusTransfer_Item DRBsSubjectToEarlyStatusTransfer_List; - // type record DRBsSubjectToEarlyStatusTransfer_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToEarlyStatusTransfer_Item_ExtIEs (?); - // type enumerated EDT_Session { + + template (omit) DataForwardingResponseDRBItem m_dataForwardingResponseDRBItem( + in template (value) DRB_ID p_dRB_ID, + in template (omit) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := omit, + in template (omit) UPTransportLayerInformation p_uLForwardingUP_TNLInformation := omit, + in template (omit) DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := omit + ) := { + dRB_ID := p_dRB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_dataForwardingResponseDRBItem + + template (omit) DAPSRequestInfo m_dAPSRequestInfo( + in template (value) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, + in template (omit) DAPSRequestInfo.iE_Extensions p_iE_Extensions := omit + ) := { + dAPSIndicator := p_dAPSIndicator, + iE_Extensions := p_iE_Extensions + } // End of template m_dAPSRequestInfo + + template (omit) DAPSResponseInfoItem m_dAPSResponseInfoItem( + in template (value) DRB_ID p_dRB_ID, + in template (value) DAPSResponseInfo p_dAPSResponseInfo, + in template (omit) DAPSResponseInfoItem.iE_Extension p_iE_Extension := omit + ) := { + dRB_ID := p_dRB_ID, + dAPSResponseInfo := p_dAPSResponseInfo, + iE_Extension := p_iE_Extension + } // End of template m_dAPSResponseInfoItem + + template (omit) DAPSResponseInfo m_dAPSResponseInfo( + in template (value) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator, + in template (omit) DAPSResponseInfo.iE_Extensions p_iE_Extensions := omit + ) := { + dapsresponseindicator := p_dapsresponseindicator, + iE_Extensions := p_iE_Extensions + } // End of template m_dAPSResponseInfo + + template (omit) DataForwardingResponseERABListItem m_DataForwardingResponseERABListItem( + in template (value) E_RAB_ID p_e_RAB_ID, + in template (value) UPTransportLayerInformation p_dLForwardingUP_TNLInformation, + in template (omit) DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := omit + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_DataForwardingResponseERABListItem + + template (value) DelayCritical m_delayCritical(in DelayCritical p_value) := p_value; + + template (omit) DL_CP_SecurityInformation m_dL_CP_SecurityInformation( + in template (value) DL_NAS_MAC p_dl_NAS_MAC, + in template (omit) DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + dl_NAS_MAC := p_dl_NAS_MAC, + iE_Extensions := p_iE_Extensions + } // End of template m_dL_CP_SecurityInformation + + template (value) DLForwarding m_dLForwarding(in DLForwarding p_value := dl_forwarding_proposed) := p_value; + + template (value) DL_NGU_TNLInformationReused m_dL_NGU_TNLInformationReused(in DL_NGU_TNLInformationReused p_value := true_) := p_value; + + template (value) DirectForwardingPathAvailability m_directForwardingPathAvailability(in DirectForwardingPathAvailability p_value := direct_path_available) := p_value; + + template (omit) DRBsSubjectToStatusTransferItem m_dRBsSubjectToStatusTransferItem( + in template (value) DRB_ID p_dRB_ID, + in template (value) DRBStatusUL p_dRBStatusUL, + in template (value) DRBStatusDL p_dRBStatusDL, + in template (omit) DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := omit + ) := { + dRB_ID := p_dRB_ID, + dRBStatusUL := p_dRBStatusUL, + dRBStatusDL := p_dRBStatusDL, + iE_Extension := p_iE_Extension + } // End of template m_dRBsSubjectToStatusTransferItem + + template (value) DRBsSubjectToStatusTransferItem.iE_Extension m_dRBsSubjectToStatusTransferItem_associatedQosFlowList( + in template (value) AssociatedQosFlowList p_associatedQosFlowList + ) := { + { + id := id_OldAssociatedQosFlowList_ULendmarkerexpected, + criticality := ignore, + extensionValue := { AssociatedQosFlowList := p_associatedQosFlowList } + } + } // End of template m_dRBsSubjectToStatusTransferItem_associatedQosFlowList + + template (value) DRBStatusDL m_dRBStatusDL_dRBStatusDL12( + in template (value) DRBStatusDL12 p_dRBStatusDL12 + ) := { + dRBStatusDL12 := p_dRBStatusDL12 + } // End of template m_dRBStatusDL_dRBStatusDL12 + + template (value) DRBStatusDL m_dRBStatusDL_dRBStatusDL18( + in template (value) DRBStatusDL18 p_dRBStatusDL18 + ) := { + dRBStatusDL18 := p_dRBStatusDL18 + } // End of template m_dRBStatusDL_dRBStatusDL18 + + template (value) DRBStatusDL m_dRBStatusDL_choice_Extensions( + in template (value) DRBStatusDL.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_dRBStatusDL_choice_Extensions // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); + + template (omit) DRBStatusDL12 m_dRBStatusDL12( + in template (value) COUNTValueForPDCP_SN12 p_dL_COUNTValue, + in template (omit) DRBStatusDL12.iE_Extension p_iE_Extension := omit + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template m_dRBStatusDL12 + + template (omit) DRBStatusDL18 m_dRBStatusDL18( + in template (value) COUNTValueForPDCP_SN18 p_dL_COUNTValue, + in template (omit) DRBStatusDL18.iE_Extension p_iE_Extension := omit + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template m_dRBStatusDL18 + + template (value) DRBStatusUL m_dRBStatusUL_dRBStatusUL12( + in template (value) DRBStatusUL12 p_dRBStatusUL12 + ) := { + dRBStatusUL12 := p_dRBStatusUL12 + } // End of template m_dRBStatusUL_dRBStatusUL12 + + template (value) DRBStatusUL m_dRBStatusUL_dRBStatusUL18( + in template (value) DRBStatusUL18 p_dRBStatusUL18 + ) := { + dRBStatusUL18 := p_dRBStatusUL18 + } // End of template m_dRBStatusUL_dRBStatusUL18 + + template (value) DRBStatusUL m_dRBStatusUL_choice_Extensions( + in template (value) DRBStatusUL.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_dRBStatusUL_choice_Extensions + + template (omit) DRBStatusUL12 m_dRBStatusUL12( + in template (value) COUNTValueForPDCP_SN12 p_uL_COUNTValue, + in template (omit) DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := omit, + in template (omit) DRBStatusUL12.iE_Extension p_iE_Extension := omit + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template m_dRBStatusUL12 + + template (omit) DRBStatusUL18 m_dRBStatusUL18( + in template (value) COUNTValueForPDCP_SN18 p_uL_COUNTValue, + in template (omit) DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := omit, + in template (omit) DRBStatusUL18.iE_Extension p_iE_Extension := omit + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template m_dRBStatusUL18 + + template (omit) DRBsToQosFlowsMappingItem m_dRBsToQosFlowsMappingItem( + in template (value) DRB_ID p_dRB_ID, + in template (value) AssociatedQosFlowList p_associatedQosFlowList, + in template (omit) DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := omit + ) := { + dRB_ID := p_dRB_ID, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template m_dRBsToQosFlowsMappingItem + + template (value) DRBsToQosFlowsMappingItem.iE_Extensions m_dRBsToQosFlowsMappingItem_dAPSRequestInfo( + in template (value) DAPSRequestInfo p_dAPSRequestInfo + ) := { + { + id := id_DAPSRequestInfo, + criticality := ignore, + extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } + } + } // End of template m_dRBsToQosFlowsMappingItem_dAPSRequestInfo + + template (omit) Dynamic5QIDescriptor m_dynamic5QIDescriptor( + in template (value) PriorityLevelQos p_priorityLevelQos, + in template (value) PacketDelayBudget p_packetDelayBudget, + in template (value) PacketErrorRate p_packetErrorRate, + in template (omit) FiveQI p_fiveQI := omit, + in template (omit) DelayCritical p_delayCritical := omit, + in template (omit) AveragingWindow p_averagingWindow := omit, + in template (omit) MaximumDataBurstVolume p_maximumDataBurstVolume := omit, + in template (omit) Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := omit + ) := { + priorityLevelQos := p_priorityLevelQos, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + fiveQI := p_fiveQI, + delayCritical := p_delayCritical, + // The above IE shall be present in case of GBR QoS flow + averagingWindow := p_averagingWindow, + // The above IE shall be present in case of GBR QoS flow + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template m_dynamic5QIDescriptor + + template (value) Dynamic5QIDescriptor.iE_Extensions m_dynamic5QIDescriptor_extendedPacketDelayBudget( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_ExtendedPacketDelayBudget, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_dynamic5QIDescriptor_extendedPacketDelayBudget + + template (value) Dynamic5QIDescriptor.iE_Extensions m_dynamic5QIDescriptor_cNPacketDelayBudgetDL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_dynamic5QIDescriptor_cNPacketDelayBudgetDL + + template (value) Dynamic5QIDescriptor.iE_Extensions m_dynamic5QIDescriptor_cNPacketDelayBudgetUL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_dynamic5QIDescriptor_cNPacketDelayBudgetUL + + template (value) EarlyMeasurement m_earlyMeasurement(in EarlyMeasurement p_value := true_) := p_value; + + template (omit) EarlyStatusTransfer_TransparentContainer m_earlyStatusTransfer_TransparentContainer( + in template (value) ProcedureStageChoice p_procedureStage, + in template (omit) EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := omit + ) := { + procedureStage := p_procedureStage, + iE_Extensions := p_iE_Extensions + } // End of template m_earlyStatusTransfer_TransparentContainer + + template (value) ProcedureStageChoice m_procedureStageChoice_firstDLCount( + in template (value) FirstDLCount p_firstDLCount + ) := { + first_dl_count := p_firstDLCount + } // End of template m_procedureStageChoice_firstDLCount + + template (value) ProcedureStageChoice m_procedureStageChoice_choice_Extensions( + in template (value) ProcedureStageChoice.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_procedureStageChoice_choice_Extensions + + template (omit) FirstDLCount m_firstDLCount( + in template (value) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer, + in template (omit) FirstDLCount.iE_Extension p_iE_Extension := omit + ) := { + dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, + iE_Extension := p_iE_Extension + } // End of template m_firstDLCount + + template (omit) DRBsSubjectToEarlyStatusTransfer_Item m_dRBsSubjectToEarlyStatusTransfer_Item( + in template (value) DRB_ID p_dRB_ID, + in template (value) DRBStatusDL p_firstDLCOUNT, + in template (omit) DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := omit + ) := { + dRB_ID := p_dRB_ID, + firstDLCOUNT := p_firstDLCOUNT, + iE_Extension := p_iE_Extension + } // End of template m_dRBsSubjectToEarlyStatusTransfer_Item + + template (value) EDT_Session m_eDT_Session(in EDT_Session p_value := true_) := p_value; // type octetstring EmergencyAreaID length (3); // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; // type record EmergencyAreaIDBroadcastEUTRA_Item { @@ -4435,71 +4667,305 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_criticalityDiagnostics_IE_Item - // type record CellBasedMDT_NR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_NR_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of NR_CGI CellIdListforMDT_NR; - // type record CellBasedMDT_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedMDT_EUTRA_ExtIEs (?); - // type record CellBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CellBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellIDforQMC) of NGRAN_CGI CellIdListforQMC; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforMDT) of EUTRA_CGI CellIdListforMDT_EUTRA; - // type bitstring DataCodingScheme length (8); - // type enumerated DataForwardingAccepted { + template (present) CellBasedMDT_NR mw_cellBasedMDT_NR( + in template (present) CellIdListforMDT_NR p_cellIdListforMDT := ?, + in template CellBasedMDT_NR.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedMDT_NR + + template (present) CellBasedMDT_EUTRA mw_cellBasedMDT_EUTRA( + template (present) CellIdListforMDT_EUTRA p_cellIdListforMDT := ?, + template CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedMDT_EUTRA + + template (present) CellBasedQMC mw_cellBasedQMC( + template (present) CellIdListforQMC p_cellIdListforQMC := ?, + template CellBasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforQMC := p_cellIdListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedQMC + + template (present) DataForwardingNotPossible mw_DataForwardingNotPossible(template (present) DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; + template (present) DataForwardingAccepted mw_dataForwardingAccepted(template (present) DataForwardingAccepted p_value := ?) := p_value; - // type enumerated DataForwardingNotPossible { - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DataForwardingResponseDRBItem DataForwardingResponseDRBList; - // type record DataForwardingResponseDRBItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseDRBItem_ExtIEs (?); - // type record DAPSRequestInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSRequestInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DAPSResponseInfoItem DAPSResponseInfoList; - // type record DAPSResponseInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfoItem_ExtIEs (?); - // type record DAPSResponseInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DAPSResponseInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of DataForwardingResponseERABListItem DataForwardingResponseERABList; - // type record DataForwardingResponseERABListItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DataForwardingResponseERABListItem_ExtIEs (?); - // type enumerated DelayCritical { - // type record DL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DL_CP_SecurityInformation_ExtIEs (?); - // type bitstring DL_NAS_MAC length (16); - // type enumerated DLForwarding { - // type enumerated DL_NGU_TNLInformationReused { - // type enumerated DirectForwardingPathAvailability { - // type integer DRB_ID ( - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToStatusTransferItem DRBsSubjectToStatusTransferList; - // type record DRBsSubjectToStatusTransferItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToStatusTransferItem_ExtIEs ( - // type union DRBStatusDL { - // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); - // type record DRBStatusDL12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL12_ExtIEs (?); - // type record DRBStatusDL18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusDL18_ExtIEs (?); - // type union DRBStatusUL { - // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusUL_ExtIEs (?); - // type record DRBStatusUL12 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL12_ExtIEs (?); - // type record DRBStatusUL18 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBStatusUL18_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsToQosFlowsMappingItem DRBsToQosFlowsMappingList; - // type record DRBsToQosFlowsMappingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsToQosFlowsMappingItem_ExtIEs ( - // type record Dynamic5QIDescriptor { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Dynamic5QIDescriptor_ExtIEs ( - // type enumerated EarlyMeasurement { - // type record EarlyStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EarlyStatusTransfer_TransparentContainer_ExtIEs (?); - // type union ProcedureStageChoice { - // type NGAP_Containers.NGAP_PROTOCOL_IES ProcedureStageChoice_ExtIEs (?); - // type record FirstDLCount { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FirstDLCount_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofDRBs) of DRBsSubjectToEarlyStatusTransfer_Item DRBsSubjectToEarlyStatusTransfer_List; - // type record DRBsSubjectToEarlyStatusTransfer_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION DRBsSubjectToEarlyStatusTransfer_Item_ExtIEs (?); - // type enumerated EDT_Session { + + template (present) DataForwardingResponseDRBItem mw_dataForwardingResponseDRBItem( + template (present) DRB_ID p_dRB_ID := ?, + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template UPTransportLayerInformation p_uLForwardingUP_TNLInformation := *, + template DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := * + ) := { + dRB_ID := p_dRB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_dataForwardingResponseDRBItem + + template (present) DAPSRequestInfo mw_dAPSRequestInfo( + template (present) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, + template DAPSRequestInfo.iE_Extensions p_iE_Extensions := * + ) := { + dAPSIndicator := p_dAPSIndicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_dAPSRequestInfo + + template (present) DAPSResponseInfoItem mw_dAPSResponseInfoItem( + template (present) DRB_ID p_dRB_ID := ?, + template (present) DAPSResponseInfo p_dAPSResponseInfo := ?, + template DAPSResponseInfoItem.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + dAPSResponseInfo := p_dAPSResponseInfo, + iE_Extension := p_iE_Extension + } // End of template mw_dAPSResponseInfoItem + + template (present) DAPSResponseInfo mw_dAPSResponseInfo( + template (present) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator := ?, + template DAPSResponseInfo.iE_Extensions p_iE_Extensions := * + ) := { + dapsresponseindicator := p_dapsresponseindicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_dAPSResponseInfo + + template (present) DataForwardingResponseERABListItem mw_DataForwardingResponseERABListItem( + template (present) E_RAB_ID p_e_RAB_ID := ?, + template (present) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := ?, + template DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := * + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_DataForwardingResponseERABListItem + + template (present) DelayCritical mw_delayCritical(template (present) DelayCritical p_value := ?) := p_value; + + template (present) DL_CP_SecurityInformation mw_dL_CP_SecurityInformation( + template (present) DL_NAS_MAC p_dl_NAS_MAC := ?, + template DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * + ) := { + dl_NAS_MAC := p_dl_NAS_MAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_dL_CP_SecurityInformation + + template (present) DLForwarding mw_dLForwarding(template (present) DLForwarding p_value := dl_forwarding_proposed) := p_value; + + template (present) DL_NGU_TNLInformationReused mw_dL_NGU_TNLInformationReused(template (present) DL_NGU_TNLInformationReused p_value := true_) := p_value; + + template (present) DirectForwardingPathAvailability mw_directForwardingPathAvailability(template (present) DirectForwardingPathAvailability p_value := direct_path_available) := p_value; + + template (present) DRBsSubjectToStatusTransferItem mw_dRBsSubjectToStatusTransferItem( + in template (present) DRB_ID p_dRB_ID := ?, + in template (present) DRBStatusUL p_dRBStatusUL := ?, + in template (present) DRBStatusDL p_dRBStatusDL := ?, + in template DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + dRBStatusUL := p_dRBStatusUL, + dRBStatusDL := p_dRBStatusDL, + iE_Extension := p_iE_Extension + } // End of template mw_dRBsSubjectToStatusTransferItem + + template (present) DRBsSubjectToStatusTransferItem.iE_Extension mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList( + template (present) AssociatedQosFlowList p_AssociatedQosFlowList := ? + ) := { + { + id := id_OldAssociatedQosFlowList_ULendmarkerexpected, + criticality := ignore, + extensionValue := { AssociatedQosFlowList := p_AssociatedQosFlowList } + } + } // End of template mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList + + template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL12( + template (present) DRBStatusDL12 p_dRBStatusDL12 := ? + ) := { + dRBStatusDL12 := p_dRBStatusDL12 + } // End of template mw_dRBStatusDL_dRBStatusDL12 + + template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL18( + template (present) DRBStatusDL18 p_dRBStatusDL18 := ? + ) := { + dRBStatusDL18 := p_dRBStatusDL18 + } // End of template mw_dRBStatusDL_dRBStatusDL18 + + template (present) DRBStatusDL mw_dRBStatusDL_choice_Extensions( + template (present) DRBStatusDL.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_dRBStatusDL_choice_Extensions + + template (present) DRBStatusDL12 mw_dRBStatusDL12( + template (present) COUNTValueForPDCP_SN12 p_dL_COUNTValue := ?, + template DRBStatusDL12.iE_Extension p_iE_Extension := * + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusDL12 + + template (present) DRBStatusDL18 mw_dRBStatusDL18( + template (present) COUNTValueForPDCP_SN18 p_dL_COUNTValue := ?, + template DRBStatusDL18.iE_Extension p_iE_Extension := * + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusDL18 + + template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL12( + template (present) DRBStatusUL12 p_dRBStatusUL12 := ? + ) := { + dRBStatusUL12 := p_dRBStatusUL12 + } // End of template mw_dRBStatusUL_dRBStatusUL12 + + template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL18( + template (present) DRBStatusUL18 p_dRBStatusUL18 := ? + ) := { + dRBStatusUL18 := p_dRBStatusUL18 + } // End of template mw_dRBStatusUL_dRBStatusUL18 + + template (present) DRBStatusUL mw_dRBStatusUL_choice_Extensions( + template (present) DRBStatusUL.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_dRBStatusUL_choice_Extensions + + template (present) DRBStatusUL12 mw_dRBStatusUL12( + template (present) COUNTValueForPDCP_SN12 p_uL_COUNTValue := ?, + template DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, + template DRBStatusUL12.iE_Extension p_iE_Extension := * + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusUL12 + + template (present) DRBStatusUL18 mw_dRBStatusUL18( + template (present) COUNTValueForPDCP_SN18 p_uL_COUNTValue := ?, + template DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, + template DRBStatusUL18.iE_Extension p_iE_Extension := * + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusUL18 + + template (present) DRBsToQosFlowsMappingItem mw_dRBsToQosFlowsMappingItem( + template (present) DRB_ID p_dRB_ID := ?, + template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, + template DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := * + ) := { + dRB_ID := p_dRB_ID, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template mw_dRBsToQosFlowsMappingItem + + template (present) DRBsToQosFlowsMappingItem.iE_Extensions mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo( + template (present) DAPSRequestInfo p_dAPSRequestInfo := ? + ) := { + { + id := id_DAPSRequestInfo, + criticality := ignore, + extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } + } + } // End of template mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo + + template (present) Dynamic5QIDescriptor mw_dynamic5QIDescriptor( + template (present) PriorityLevelQos p_priorityLevelQos := ?, + template (present) PacketDelayBudget p_packetDelayBudget := ?, + template (present) PacketErrorRate p_packetErrorRate := ?, + template FiveQI p_fiveQI := *, + template DelayCritical p_delayCritical := *, + template AveragingWindow p_averagingWindow := *, + template MaximumDataBurstVolume p_maximumDataBurstVolume := *, + template Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * + ) := { + priorityLevelQos := p_priorityLevelQos, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + fiveQI := p_fiveQI, + delayCritical := p_delayCritical, + // The above IE shall be present in case of GBR QoS flow + averagingWindow := p_averagingWindow, + // The above IE shall be present in case of GBR QoS flow + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template mw_dynamic5QIDescriptor + + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_extendedPacketDelayBudget( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_ExtendedPacketDelayBudget, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_extendedPacketDelayBudget + + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL + + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL + + template (present) EarlyMeasurement mw_earlyMeasurement(template (present) EarlyMeasurement p_value := true_) := p_value; + + template (present) EarlyStatusTransfer_TransparentContainer mw_earlyStatusTransfer_TransparentContainer( + template (present) ProcedureStageChoice p_procedureStage := ?, + template EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * + ) := { + procedureStage := p_procedureStage, + iE_Extensions := p_iE_Extensions + } // End of template mw_earlyStatusTransfer_TransparentContainer + + template (present) ProcedureStageChoice mw_procedureStageChoice_firstDLCount( + template (present) FirstDLCount p_firstDLCount := ? + ) := { + first_dl_count := p_firstDLCount + } // End of template mw_procedureStageChoice_firstDLCount + + template (present) ProcedureStageChoice mw_procedureStageChoice_choice_Extensions( + template (present) ProcedureStageChoice.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_procedureStageChoice_choice_Extensions + + template (present) FirstDLCount mw_firstDLCount( + template (present) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer := ?, + template FirstDLCount.iE_Extension p_iE_Extension := * + ) := { + dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, + iE_Extension := p_iE_Extension + } // End of template mw_firstDLCount + + template (present) DRBsSubjectToEarlyStatusTransfer_Item mw_dRBsSubjectToEarlyStatusTransfer_Item( + template (present) DRB_ID p_dRB_ID := ?, + template (present) DRBStatusDL p_firstDLCOUNT := ?, + template DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + firstDLCOUNT := p_firstDLCOUNT, + iE_Extension := p_iE_Extension + } // End of template mw_dRBsSubjectToEarlyStatusTransfer_Item + + template (present) EDT_Session mw_eDT_Session(template (present) EDT_Session p_value := true_) := p_value; // type octetstring EmergencyAreaID length (3); // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; // type record EmergencyAreaIDBroadcastEUTRA_Item { -- GitLab From aeafc4a6224c2d09d4274084d686e86d2ea59606 Mon Sep 17 00:00:00 2001 From: garciay Date: Sun, 17 Dec 2023 15:37:35 +0100 Subject: [PATCH 124/365] Bug fixed in switch scripts --- install.sh | 2 +- titan-test-system-framework | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/install.sh b/install.sh index 0e65e40..aaa1b55 100755 --- a/install.sh +++ b/install.sh @@ -8,7 +8,7 @@ BASE_PATH=`pwd` git checkout devel git submodule update --init --recursive --remote -if [ ! -f ./titan-test-system-framework ] +if [ ! -d ./titan-test-system-framework ] then git clone --recurse-submodules --branch devel https://labs.etsi.org/rep/cti-tools/titan-test-system-framework.git cd ./titan-test-system-framework diff --git a/titan-test-system-framework b/titan-test-system-framework index e27aaa8..eb652d4 160000 --- a/titan-test-system-framework +++ b/titan-test-system-framework @@ -1 +1 @@ -Subproject commit e27aaa847f49a1e459f427abc3620ef7a40223ca +Subproject commit eb652d4fbd09a333332d4e2fb28aede6543d456b -- GitLab From 0b1beaf8f9283735e7c1cf6f370cc5d856ccb6f5 Mon Sep 17 00:00:00 2001 From: pintar Date: Mon, 18 Dec 2023 15:20:03 +0100 Subject: [PATCH 125/365] Warning Message TPs added --- test_purposes/Ngap_Common.tplan2 | 36 +++++ test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 77 +++++++++- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 197 +++++++++++++++++++++++-- 3 files changed, 296 insertions(+), 14 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index b93c858..e3a74fe 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -22,7 +22,43 @@ Package Ngap_Common { Domain { pics: - NONE + - PICS_A2/1 //gNB + - PICS_A2/2 //AMF + - PICS_A3/1_1 //gNB - PDU session management procedure - PDU SESSION RESOURCE SETUP REQUEST + - PICS_A3/1_2 //gNB - PDU session management procedure - PDU SESSION RESOURCE RELEASE COMMAND + - PICS_A3/1_3 //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST + - PICS_A3/1_4 //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY NOTIFY + - PICS_A3/1_5 //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY INDICATION + - PICS_A3/8_1 //gNB - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST + - PICS_A3/8_2 //gNB - Warning Message Transmission procedure - PWS CANCEL REQUEST + - PICS_A3/8_3 //gNB - Warning Message Transmission procedure - PWS RESTART INDICATION + - PICS_A3/8_4 //gNB - Warning Message Transmission procedure - PWS FAILURE INDICATION + - PICS_A3/9_1 //gNB - NRPPa Transport procedure - DOWNLINK UE ASSOCIATED NRPPA TRANSPORT messages + - PICS_A3/9_2 //gNB - NRPPa Transport procedure - UPLINK UE ASSOCIATED NRPPA TRANSPORT messages + - PICS_A3/9_3 //gNB - NRPPa Transport procedure - DOWNLINK NON UE ASSOCIATED NRPPA TRANSPORT messages + - PICS_A3/9_4 //gNB - NRPPa Transport procedure - UPLINK NON UE ASSOCIATED NRPPA TRANSPORT messages + - PICS_A3/10_1 //gNB - Trace procedure - TRACE START messages + - PICS_A3/10_2 //gNB - Trace procedure - TRACE FAILURE INDICATION messages + - PICS_A3/10_3 //gNB - Trace procedure - DEACTIVATE TRACE messages + - PICS_A3/10_4 //gNB - Trace procedure - CELL TRAFFIC TRACE messages - PICS_A3/5_1 + - PICS_A4/1_1 //AMF - PDU session management procedure - PDU SESSION RESOURCE SETUP REQUEST + - PICS_A4/1_2 //AMF - PDU session management procedure - PDU SESSION RESOURCE RELEASE COMMAND + - PICS_A4/1_3 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST + - PICS_A4/1_4 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY NOTIFY + - PICS_A4/1_5 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY INDICATION + - PICS_A4/8_1 //AMF - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST + - PICS_A4/8_2 //AMF - Warning Message Transmission procedure - PWS CANCEL REQUEST + - PICS_A4/8_3 //AMF - Warning Message Transmission procedure - PWS RESTART INDICATION + - PICS_A4/8_4 //AMF - Warning Message Transmission procedure - PWS FAILURE INDICATION + - PICS_A4/9_1 //AMF - NRPPa Transport procedure - DOWNLINK UE ASSOCIATED NRPPA TRANSPORT messages + - PICS_A4/9_2 //AMF - NRPPa Transport procedure - UPLINK UE ASSOCIATED NRPPA TRANSPORT messages + - PICS_A4/9_3 //AMF - NRPPa Transport procedure - DOWNLINK NON UE ASSOCIATED NRPPA TRANSPORT messages + - PICS_A4/9_4 //AMF - NRPPa Transport procedure - UPLINK NON UE ASSOCIATED NRPPA TRANSPORT messages + - PICS_A4/10_1 //gNB - Trace procedure - TRACE START messages + - PICS_A4/10_2 //gNB - Trace procedure - TRACE FAILURE INDICATION messages + - PICS_A4/10_3 //gNB - Trace procedure - DEACTIVATE TRACE messages + - PICS_A4/10_4 //gNB - Trace procedure - CELL TRAFFIC TRACE messages - NOT_PICS_2 ; entities: diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 88919a4..7ba156d 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -33,7 +33,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/1_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -70,7 +70,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/1_2 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -111,7 +111,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/1_3 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -161,7 +161,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/1_5 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -224,7 +224,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/1_5 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -1750,6 +1750,73 @@ Package TP_AMF { Group "8.9 Warning Message Transmission Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_WTP_01 + + Test objective "Verify that the IUT can send a WRITE REPLACE WARNING REQUEST to start broadcasting of warning messages." + + Reference + "ETSI TS 138 413 [1], Clauses 8.9.1.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/8_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a Write message Transmission procedure + } + then { + the IUT entity sends a WRITE_REPLACE_WARNING_REQUEST containing + Message_Identifier, + Serial_Number, + Repetition_Period, + Number_of_Broadcasts_Requested; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_WTP_01 + + Test Purpose { + + TP Id TP_NGAP_AMF_WTP_02 + + Test objective "Verify that the IUT can send a PWS CANCEL REQUEST to cancel broadcasting of warning messages." + + Reference + "ETSI TS 138 413 [1], Clauses 8.9.2.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/8_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PWS cancel procedure + } + then { + the IUT entity sends a PWS_CANCEL_REQUEST containing + Message_Identifier, + Serial_Number; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_WTP_02 } // "8.9 Warning Message Transmission Procedures" diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 848f0b6..1f7c5eb 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -31,7 +31,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -90,7 +90,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -162,7 +162,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -221,7 +221,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -283,7 +283,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_2 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -333,7 +333,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_2 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -389,7 +389,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_3 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -456,7 +456,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_4 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -497,7 +497,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_5 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -1650,6 +1650,185 @@ Package TP_GNB { Group "8.9 Warning Message Transmission Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_01 + + Test objective "Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing mandatory IEs and answers with WRITE-REPLACE WARNING RESPONSE to start broadcasting of warning messages." + + Reference + "ETSI TS 138 413 [1], Clause 8.9.1.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing + Message_Identifier, + Serial_Number, + Repetition_Period, + Number_of_Broadcasts_Requested; + from the AMF entity + } + then { + the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing + Message_Identifier, + Serial_Number; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_01 + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_02 + + Test objective "Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing Message Identifier IE and/or Serial Number IE different from those in the warning message being broadcast and if Concurent Warning Message Indicator is not present then IUT node answers with WRITE-REPLACE WARNING RESPONSE and replaces the warning message being broadcast with newly received one for that area." + + Reference + "ETSI TS 138 413 [1], Clause 8.9.1.2" //paragraph 3 + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing + Message_Identifier indicating value "different from already being broadcasted", + Serial_Number indicating value "different from already being broadcasted", + Repetition_Period, + Number_of_Broadcasts_Requested, + not Concurent_Warning_Message_Indicator; + from the AMF entity + } + then { + the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing + Message_Identifier, + Serial_Number; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_02 + + //TODO:possible to add additional tests from 8.9.1.2 paragraph 4 and on + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_03 + + Test objective "Verify that the NG-RAN node successfully processes a PWS CANCEL REQUEST containing mandatory IEs and answers with PWS CANCEL RESPONSE to cancel an already ongoing broadcast warning messages in all of the cells in the NG-RAN." + + Reference + "ETSI TS 138 413 [1], Clause 8.9.2.2" //paragraph 3 + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PWS_CANCEL_REQUEST containing + Message_Identifier, + Serial_Number; + from the AMF entity + } + then { + the IUT entity sends a PWS_CANCEL_RESPONSE containing + Message_Identifier, + Serial_Number; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_03 + + //TODO:possible to add additional tests from 8.9.2.2 paragraph 3, 5 and on + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_04 + + Test objective "Verify that the IUT can send a PWS RESTART INDICATION to inform AMF that PWS information for some or all cells may be reloaded from the CBC if needed." + + Reference + "ETSI TS 138 413 [1], Clause 8.9.3.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PWS restart indication + } + then { + the IUT entity sends a PWS_RESTART_INDICATION containing + Cell_List_for_Restart, + Global_RAN_Node_ID; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_04 + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_05 + + Test objective "Verify that the IUT can send a PWS FAILURE INDICATION to inform AMF that ongoing PWS operation for one or more cells has failed." + + Reference + "ETSI TS 138 413 [1], Clause 8.9.4.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_4 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PWS failure indication + } + then { + the IUT entity sends a PWS_FAILURE_INDICATION containing + PWS_Failed_Cell_List, + Global_RAN_Node_ID; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_05 } // end "8.9 Warning Message Transmission Procedures" -- GitLab From 46f9a8da11f120ad71b7cc5926566799bf9fa63d Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 9 Jan 2024 19:50:16 +0100 Subject: [PATCH 126/365] TTF T033: Implement ASN.1 send/receive templates E/F/G --- titan-test-system-framework | 2 +- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1500 ++++++++++++++++++----- 3 files changed, 1213 insertions(+), 291 deletions(-) diff --git a/titan-test-system-framework b/titan-test-system-framework index eb652d4..e27aaa8 160000 --- a/titan-test-system-framework +++ b/titan-test-system-framework @@ -1 +1 @@ -Subproject commit eb652d4fbd09a333332d4e2fb28aede6543d456b +Subproject commit e27aaa847f49a1e459f427abc3620ef7a40223ca diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 07c57c1..fd116bb 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -14,7 +14,7 @@ module NGAP_TCFunctions { // LibCommon import from LibCommon_Sync all; import from LibCommon_VerdictControl all; - import from LibCommon_Time {function f_sleepIgnoreDef;} + import from LibCommon_Time all; // LibNGAP import from NGAP_IEs language "ASN.1:2002" all; diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index c94cda6..99bc90a 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2385,121 +2385,449 @@ module LibNGAP_Templates { } // End of template m_dRBsSubjectToEarlyStatusTransfer_Item template (value) EDT_Session m_eDT_Session(in EDT_Session p_value := true_) := p_value; - // type octetstring EmergencyAreaID length (3); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; - // type record EmergencyAreaIDBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastNR_Item EmergencyAreaIDBroadcastNR; - // type record EmergencyAreaIDBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledEUTRA_Item EmergencyAreaIDCancelledEUTRA; - // type record EmergencyAreaIDCancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledNR_Item EmergencyAreaIDCancelledNR; - // type record EmergencyAreaIDCancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaID EmergencyAreaIDList; - // type record length (1 .. NGAP_Constants.maxnoofEAIforRestart) of EmergencyAreaID EmergencyAreaIDListForRestart; - // type record EmergencyFallbackIndicator { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyFallbackIndicator_ExtIEs (?); - // type enumerated EmergencyFallbackRequestIndicator { - // type enumerated EmergencyServiceTargetCN { - // type union ENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES ENB_ID_ExtIEs (?); - // type enumerated Enhanced_CoverageRestriction { - // type integer Extended_ConnectedTime (0 .. 255); - // type octetstring EN_DCSONConfigurationTransfer; - // type record EndpointIPAddressAndPort { - // type enumerated EndIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EndpointIPAddressAndPort_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of PLMNIdentity EquivalentPLMNs; - // type octetstring EPS_TAC length (2); - // type record EPS_TAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EPS_TAI_ExtIEs (?); - // type integer E_RAB_ID ( - // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of E_RABInformationItem E_RABInformationList; - // type record E_RABInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION E_RABInformationItem_ExtIEs ( - // type bitstring EUTRACellIdentity length (28); - // type record EUTRA_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinngeNB) of EUTRA_CGI EUTRA_CGIList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of EUTRA_CGI EUTRA_CGIListForWarning; - // type record EUTRA_PagingeDRXInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_PagingeDRXInformation_ExtIEs (?); - // type enumerated EUTRA_Paging_eDRX_Cycle { - // type enumerated EUTRA_Paging_Time_Window { - // type bitstring EUTRAencryptionAlgorithms length ( - // type bitstring EUTRAintegrityProtectionAlgorithms length ( - // type enumerated EventType { - // type record length (1 .. NGAP_Constants.maxnoofThresholdsForExcessPacketDelay) of ExcessPacketDelayThresholdItem ExcessPacketDelayThresholdConfiguration; - // type record ExcessPacketDelayThresholdItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExcessPacketDelayThresholdItem_ExtIEs (?); - // type enumerated ExcessPacketDelayThresholdValue { - // type integer ExpectedActivityPeriod ( - // type enumerated ExpectedHOInterval { - // type integer ExpectedIdlePeriod ( - // type record ExpectedUEActivityBehaviour { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEActivityBehaviour_ExtIEs (?); - // type record ExpectedUEBehaviour { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEBehaviour_ExtIEs (?); - // type enumerated ExpectedUEMobility { - // type record length (1 .. NGAP_Constants.maxnoofCellsUEMovingTrajectory) of ExpectedUEMovingTrajectoryItem ExpectedUEMovingTrajectory; - // type record ExpectedUEMovingTrajectoryItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEMovingTrajectoryItem_ExtIEs (?); - // type record Extended_AMFName { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_AMFName_ExtIEs (?); - // type integer ExtendedPacketDelayBudget ( - // type record Extended_RANNodeName { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_RANNodeName_ExtIEs (?); - // type record ExtendedRATRestrictionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExtendedRATRestrictionInformation_ExtIEs (?); - // type integer ExtendedRNC_ID (4096 .. 65535); - // type record length (1 .. NGAP_Constants.maxnoofExtSliceItems) of SliceSupportItem ExtendedSliceSupportList; - // type bitstring ExtendedUEIdentityIndexValue length (16); - // type union EventTrigger { - // type NGAP_Containers.NGAP_PROTOCOL_IES EventTrigger_ExtIEs (?); - // type record EventL1LoggedMDTConfig { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventL1LoggedMDTConfig_ExtIEs (?); - // type union MeasurementThresholdL1LoggedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_IES MeasurementThresholdL1LoggedMDT_ExtIEs (?); - // type record FailureIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FailureIndication_ExtIEs (?); - // type record FiveG_ProSeAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSeAuthorized_ExtIEs (?); - // type enumerated FiveGProSeDirectDiscovery { - // type enumerated FiveGProSeDirectCommunication { - // type enumerated FiveGProSeLayer2UEtoNetworkRelay { - // type enumerated FiveGProSeLayer3UEtoNetworkRelay { - // type enumerated FiveGProSeLayer2RemoteUE { - // type record FiveG_ProSePC5QoSParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSePC5QoSParameters_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of FiveGProSePC5QoSFlowItem FiveGProSePC5QoSFlowList; - // type record FiveGProSePC5QoSFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5QoSFlowItem_ExtIEs (?); - // type record FiveGProSePC5FlowBitRates { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5FlowBitRates_ExtIEs (?); - // type record FiveG_S_TMSI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_S_TMSI_ExtIEs (?); - // type octetstring FiveG_TMSI length (4); - // type integer FiveQI ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ForbiddenAreaInformation_Item ForbiddenAreaInformation; - // type record ForbiddenAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ForbiddenAreaInformation_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofForbTACs) of TAC ForbiddenTACs; - // type record FromEUTRANtoNGRAN { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromEUTRANtoNGRAN_ExtIEs (?); - // type record FromNGRANtoEUTRAN { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromNGRANtoEUTRAN_ExtIEs (?); - // type record GBR_QosInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GBR_QosInformation_ExtIEs ( - // type octetstring GlobalCable_ID; - // type record GlobalCable_ID_new { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); - // type record GlobalENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); - - // type record GlobalGNB_ID { + + template (omit) EmergencyAreaIDBroadcastEUTRA_Item m_emergencyAreaIDBroadcastEUTRA_Item( + in template (value) EmergencyAreaID p_emergencyAreaID, + in template (value) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA, + in template (omit) EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyAreaIDBroadcastEUTRA_Item + + template (omit) EmergencyAreaIDBroadcastNR_Item m_emergencyAreaIDBroadcastNR_Item( + in template (value) EmergencyAreaID p_emergencyAreaID, + in template (value) CompletedCellsInEAI_NR p_completedCellsInEAI_NR, + in template (omit) EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_NR := p_completedCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyAreaIDBroadcastNR_Item + + template (omit) EmergencyAreaIDCancelledEUTRA_Item m_emergencyAreaIDCancelledEUTRA_Item( + in template (value) EmergencyAreaID p_emergencyAreaID, + in template (value) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA, + in template (omit) EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyAreaIDCancelledEUTRA_Item + + template (omit) EmergencyAreaIDCancelledNR_Item m_emergencyAreaIDCancelledNR_Item( + in template (value) EmergencyAreaID p_emergencyAreaID, + in template (value) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR, + in template (omit) EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyAreaIDCancelledNR_Item + + template (omit) EmergencyFallbackIndicator m_emergencyFallbackIndicator( + in template (value) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator, + in template (omit) EmergencyServiceTargetCN p_emergencyServiceTargetCN := omit, + in template (omit) EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, + emergencyServiceTargetCN := p_emergencyServiceTargetCN, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyFallbackIndicator + + template (value) EmergencyFallbackRequestIndicator m_emergencyFallbackRequestIndicator(in EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; + + template (value) EmergencyServiceTargetCN m_emergencyServiceTargetCN(in EmergencyServiceTargetCN p_value := fiveGC) := p_value; + + template (value) ENB_ID m_eNB_ID_macroENB_ID( + in template (value) Bit20 p_macroENB_ID + ) := { + macroENB_ID := p_macroENB_ID + } // End of template m_eNB_ID_macroENB_ID + + template (value) ENB_ID m_eNB_ID_homeENB_ID( + in template (value) Bit28 p_homeENB_ID + ) := { + homeENB_ID := p_homeENB_ID + } // End of template m_eNB_ID_homeENB_ID + + template (value) ENB_ID m_eNB_ID_short_macroENB_ID( + in template (value) Bit18 p_short_macroENB_ID + ) := { + short_macroENB_ID := p_short_macroENB_ID + } // End of template m_eNB_ID_short_macroENB_ID + + template (value) ENB_ID m_eNB_ID_long_macroENB_ID( + in template (value) Bit21 p_long_macroENB_ID + ) := { + long_macroENB_ID := p_long_macroENB_ID + } // End of template m_eNB_ID_long_macroENB_ID + + template (value) ENB_ID m_eNB_ID_choice_Extensions( + in template (value) ENB_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_eNB_ID_choice_Extensions + + template (value) Enhanced_CoverageRestriction m_enhanced_CoverageRestriction(in Enhanced_CoverageRestriction p_value := restricted) := p_value; + + template (omit) EndpointIPAddressAndPort m_endpointIPAddressAndPort( + in template (value) TransportLayerAddress p_endpointIPAddress, + in template (value) PortNumber p_portNumber, + in template (omit) EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := omit + ) := { + endpointIPAddress := p_endpointIPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template m_endpointIPAddressAndPort + + template (value) EndIndication m_endIndication(in EndIndication p_value := no_further_data) := p_value; + + template (omit) EPS_TAI m_ePS_TAI( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) EPS_TAC p_ePS_TAC, + in template (omit) EPS_TAI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + ePS_TAC := p_ePS_TAC, + iE_Extensions := p_iE_Extensions + } // End of template m_ePS_TAI + + template (omit) E_RABInformationItem m_e_RABInformationItem( + in template (value) E_RAB_ID p_e_RAB_ID, + in template (value) DLForwarding p_dLForwarding, + in template (omit) E_RABInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwarding := p_dLForwarding, + iE_Extensions := p_iE_Extensions + } // End of template m_e_RABInformationItem + + template (omit) E_RABInformationItem.iE_Extensions m_e_RABInformationItem_id_SourceTNLAddrInfo( + in template (value) TransportLayerAddress p_transportLayerAddress + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template m_e_RABInformationItem_id_SourceTNLAddrInfo + + template (omit) E_RABInformationItem.iE_Extensions m_e_RABInformationItem_id_SourceNodeTNLAddrInfo( + in template (value) TransportLayerAddress p_transportLayerAddress + ) := { + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template m_e_RABInformationItem_id_SourceNodeTNLAddrInfo + + template (omit) EUTRA_CGI m_uUTRA_CGI( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) EUTRACellIdentity p_eUTRACellIdentity, + in template (omit) EUTRA_CGI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + eUTRACellIdentity := p_eUTRACellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template m_uUTRA_CGI + + template (omit) EUTRA_PagingeDRXInformation m_eUTRA_PagingeDRXInformation( + in template (value) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle, + in template (omit) EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := omit, + in template (omit) EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, + eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRA_PagingeDRXInformation + + template (value) EUTRA_Paging_eDRX_Cycle m_eUTRA_Paging_eDRX_Cycle(in EUTRA_Paging_eDRX_Cycle p_value := hfhalf) := p_value; + + template (value) EUTRA_Paging_Time_Window m_eUTRA_Paging_Time_Window(in EUTRA_Paging_Time_Window p_value := s1) := p_value; + + template (value) EventType m_eventType(in EventType p_value := direct) := p_value; + + template (omit) ExcessPacketDelayThresholdItem m_excessPacketDelayThresholdItem( + in template (value) FiveQI p_fiveQi, + in template (value) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue, + in template (omit) ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := omit + ) := { + fiveQi := p_fiveQi, + excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, + iE_Extensions := p_iE_Extensions + } // End of template m_excessPacketDelayThresholdItem + + template (value) ExcessPacketDelayThresholdValue m_excessPacketDelayThresholdValue(in ExcessPacketDelayThresholdValue p_value := ms0dot25) := p_value; + + template (value) ExpectedHOInterval m_expectedHOInterval(in ExpectedHOInterval p_value := sec15) := p_value; + + template (omit) ExpectedUEActivityBehaviour m_expectedUEActivityBehaviour( + in template (omit) ExpectedActivityPeriod p_expectedActivityPeriod := omit, + in template (omit) ExpectedIdlePeriod p_expectedIdlePeriod := omit, + in template (omit) SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := omit, + in template (omit) ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := omit + ) := { + expectedActivityPeriod := p_expectedActivityPeriod, + expectedIdlePeriod := p_expectedIdlePeriod, + sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEActivityBehaviour + + template (omit) ExpectedUEBehaviour m_expectedUEBehaviour( + in template (omit) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := omit, + in template (omit) ExpectedHOInterval p_expectedHOInterval := omit, + in template (omit) ExpectedUEMobility p_expectedUEMobility := omit, + in template (omit) ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= omit, + in template (omit) ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := omit + ) := { + expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, + expectedHOInterval := p_expectedHOInterval, + expectedUEMobility := p_expectedUEMobility, + expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEBehaviour + + template (value) ExpectedUEMobility m_expectedUEMobility(in ExpectedUEMobility p_value := mobile) := p_value; + + template (omit) ExpectedUEMovingTrajectoryItem m_expectedUEMovingTrajectoryItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (omit) ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := omit, + in template (omit) ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEMovingTrajectoryItem + + template (omit) Extended_AMFName m_extended_AMFName( + in template (omit) AMFNameVisibleString p_aMFNameVisibleString := omit, + in template (omit) AMFNameUTF8String p_aMFNameUTF8String := omit, + in template (omit) Extended_AMFName.iE_Extensions p_iE_Extensions := omit + ) := { + aMFNameVisibleString := p_aMFNameVisibleString, + aMFNameUTF8String := p_aMFNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template m_extended_AMFName + + template (omit) Extended_RANNodeName m_extended_RANNodeName( + in template (omit) RANNodeNameVisibleString p_rANNodeNameVisibleString := omit, + in template (omit) RANNodeNameUTF8String p_rANNodeNameUTF8String := omit, + in template (omit) Extended_RANNodeName.iE_Extensions p_iE_Extensions := omit + ) := { + rANNodeNameVisibleString := p_rANNodeNameVisibleString, + rANNodeNameUTF8String := p_rANNodeNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template m_extended_RANNodeName + + template (omit) ExtendedRATRestrictionInformation m_extendedRATRestrictionInformation( + in template (value) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction, + in template (value) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction, + in template (omit) ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := omit + ) := { + primaryRATRestriction := p_primaryRATRestriction, + secondaryRATRestriction := p_secondaryRATRestriction, + iE_Extensions := p_iE_Extensions + } // End of template m_extendedRATRestrictionInformation + + template (value) EventTrigger m_eventTrigger_outOfCoverage( + in template (value) EventTrigger.outOfCoverage p_outOfCoverage := true_ + ) := { + outOfCoverage := p_outOfCoverage + } // End of template m_eventTrigger_outOfCoverage + + template (value) EventTrigger m_eventTrigger_eventL1LoggedMDTConfig( + in template (value) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig + ) := { + eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig + } // End of template m_eventTrigger_eventL1LoggedMDTConfig + + template (value) EventTrigger m_eventTrigger_choice_Extensions( + in template (value) EventTrigger.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_eventTrigger_choice_Extensions + + template (omit) EventL1LoggedMDTConfig m_eventL1LoggedMDTConfig( + in template (value) MeasurementThresholdL1LoggedMDT p_l1Threshold, + in template (value) Hysteresis p_hysteresis, + in template (value) TimeToTrigger p_timeToTrigger, + in template (omit) EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := omit + ) := { + l1Threshold := p_l1Threshold, + hysteresis := p_hysteresis, + timeToTrigger := p_timeToTrigger, + iE_Extensions := p_iE_Extensions + } // End of template m_eventL1LoggedMDTConfig + + template (value) MeasurementThresholdL1LoggedMDT m_measurementThresholdL1LoggedMDT_threshold_RSRP( + in template (value) Threshold_RSRP p_threshold_RSRP + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template m_measurementThresholdL1LoggedMDT_threshold_RSRP + + template (value) MeasurementThresholdL1LoggedMDT m_measurementThresholdL1LoggedMDT_threshold_RSRQ( + in template (value) Threshold_RSRQ p_threshold_RSRQ + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template m_measurementThresholdL1LoggedMDT_threshold_RSRQ + + template (value) MeasurementThresholdL1LoggedMDT m_measurementThresholdL1LoggedMDT_choice_Extensions( + in template (value) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_measurementThresholdL1LoggedMDT_choice_Extensions + + template (omit) FailureIndication m_failureIndication( + in template (value) UERLFReportContainer p_uERLFReportContainer, + in template (omit) FailureIndication.iE_Extensions p_iE_Extensions := omit + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_failureIndication + + template (omit) FiveG_ProSeAuthorized m_FiveG_ProSeAuthorized( + in template (omit) FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := omit, + in template (omit) FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := omit, + in template (omit) FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := omit, + in template (omit) FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := omit, + in template (omit) FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := omit, + in template (omit) FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := omit + ) := { + fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, + fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, + fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, + fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, + fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, + iE_Extensions := p_iE_Extensions + } // End of template m_FiveG_ProSeAuthorized + + template (value) FiveGProSeDirectDiscovery m_fiveGProSeDirectDiscovery(in FiveGProSeDirectDiscovery p_value := authorized) := p_value; + + template (value) FiveGProSeDirectCommunication m_fiveGProSeDirectCommunication(in FiveGProSeDirectCommunication p_value := authorized) := p_value; + + template (value) FiveGProSeLayer2UEtoNetworkRelay m_fiveGProSeLayer2UEtoNetworkRelay(in FiveGProSeLayer2UEtoNetworkRelay p_value := authorized) := p_value; + + template (value) FiveGProSeLayer3UEtoNetworkRelay m_fiveGProSeLayer3UEtoNetworkRelay(in FiveGProSeLayer3UEtoNetworkRelay p_value := authorized) := p_value; + + template (value) FiveGProSeLayer2RemoteUE m_fiveGProSeLayer2RemoteUE(in FiveGProSeLayer2RemoteUE p_value := authorized) := p_value; + + template (omit) FiveG_ProSePC5QoSParameters m_fiveG_ProSePC5QoSParameters( + in template (value) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList, + in template (omit) BitRate p_fiveGProSepc5LinkAggregateBitRates := omit, + in template (omit) FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := omit + ) := { + fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, + fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template m_fiveG_ProSePC5QoSParameters + + template (omit) FiveGProSePC5QoSFlowItem m_fiveGProSePC5QoSFlowItem( + in template (value) FiveQI p_fiveGproSepQI, + in template (omit) FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := omit, + in template (omit) Range p_fiveGproSerange := omit, + in template (omit) FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := omit + ) := { + fiveGproSepQI := p_fiveGproSepQI, + fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, + fiveGproSerange := p_fiveGproSerange, + iE_Extensions := p_iE_Extensions + } // End of template m_fiveGProSePC5QoSFlowItem + + template (omit) FiveGProSePC5FlowBitRates m_fiveGProSePC5FlowBitRates( + in template (value) BitRate p_fiveGproSeguaranteedFlowBitRate, + in template (value) BitRate p_fiveGproSemaximumFlowBitRate, + in template (omit) FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := omit + ) := { + fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, + fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template m_fiveGProSePC5FlowBitRates + + template (omit) FiveG_S_TMSI m_fiveG_S_TMSI( + in template (value) AMFSetID p_aMFSetID, + in template (value) AMFPointer p_aMFPointer, + in template (value) FiveG_TMSI p_fiveG_TMSI, + in template (omit) FiveG_S_TMSI.iE_Extensions p_iE_Extensions := omit + ) := { + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + fiveG_TMSI := p_fiveG_TMSI, + iE_Extensions := p_iE_Extensions + } // End of template m_fiveG_S_TMSI + + template (omit) ForbiddenAreaInformation_Item m_forbiddenAreaInformation_Item( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) ForbiddenTACs p_forbiddenTACs, + in template (omit) ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + forbiddenTACs := p_forbiddenTACs, + iE_Extensions := p_iE_Extensions + } // End of template m_forbiddenAreaInformation_Item + + template (omit) FromEUTRANtoNGRAN m_fromEUTRANtoNGRAN( + in template (value) IntersystemSONeNBID p_sourceeNBID, + in template (value) IntersystemSONNGRANnodeID p_targetNGRANnodeID, + in template (omit) FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := omit + ) := { + sourceeNBID := p_sourceeNBID, + targetNGRANnodeID := p_targetNGRANnodeID, + iE_Extensions := p_iE_Extensions + } // End of template m_fromEUTRANtoNGRAN + + template (omit) FromNGRANtoEUTRAN m_fromNGRANtoEUTRAN( + in template (value) IntersystemSONNGRANnodeID p_sourceNGRANnodeID, + in template (value) IntersystemSONeNBID p_targeteNBID, + in template (omit) FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := omit + ) := { + sourceNGRANnodeID := p_sourceNGRANnodeID, + targeteNBID := p_targeteNBID, + iE_Extensions := p_iE_Extensions + } // End of template m_fromNGRANtoEUTRAN + + template (omit) GBR_QosInformation m_gBR_QosInformation( + in template (value) BitRate p_maximumFlowBitRateDL, + in template (value) BitRate p_maximumFlowBitRateUL, + in template (value) BitRate p_guaranteedFlowBitRateDL, + in template (value) BitRate p_guaranteedFlowBitRateUL, + in template (omit) NotificationControl p_notificationControl := omit, + in template (omit) PacketLossRate p_maximumPacketLossRateDL := omit, + in template (omit) PacketLossRate p_maximumPacketLossRateUL := omit, + in template (omit) GBR_QosInformation.iE_Extensions p_iE_Extensions := omit + ) := { + maximumFlowBitRateDL := p_maximumFlowBitRateDL, + maximumFlowBitRateUL := p_maximumFlowBitRateUL, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + notificationControl := p_notificationControl, + maximumPacketLossRateDL := p_maximumPacketLossRateDL, + maximumPacketLossRateUL := p_maximumPacketLossRateUL, + iE_Extensions := p_iE_Extensions + } // End of template m_gBR_QosInformation + + template (value) GBR_QosInformation.iE_Extensions m_gBR_QosInformation_id_AlternativeQoSParaSetList( + in template (value) AlternativeQoSParaSetList p_alternativeQoSParaSetList + ) := { + { + id := id_AlternativeQoSParaSetList, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} + } + } // End of template m_gBR_QosInformation_id_AlternativeQoSParaSetList + + template (omit) GlobalCable_ID_new m_globalCable_ID_new( + in template (value) GlobalCable_ID p_globalCable_ID, + in template (value) TAI p_tAI, + in template (omit) GlobalCable_ID_new.iE_Extensions p_iE_Extensions := omit + ) := { + globalCable_ID := p_globalCable_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_globalCable_ID_new + template (omit) GlobalGNB_ID m_ie_globalGnbId( in template (value) PLMNIdentity p_plmnId, in template (value) bitstring p_gnbId, @@ -2510,36 +2838,156 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_ie_globalGnbId - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); - // type record GlobalN3IWF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); - // type record GlobalLine_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalLine_ID_ExtIEs ( - // type octetstring GlobalLineIdentity; - // type record GlobalNgENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); - - // type union GlobalRANNodeID { - template (value) GlobalRANNodeID m_ie_gRanNodeID( - in template (value) GlobalGNB_ID p_gGnbId - ) := { - globalGNB_ID := p_gGnbId -// { -// pLMNIdentity := p_plmnId,//'010001'O, -// gNB_ID := {gNB_ID:=p_gnbId/*'0000000000000000000000'B*/}, -// iE_Extensions := omit -// } - } // End of template m_ie_gRanNodeID - - // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( - // type record GlobalTNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTNGF_ID_ExtIEs (?); - // type record GlobalTWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTWIF_ID_ExtIEs (?); - // type record GlobalW_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); - // type union GNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); + template (omit) GlobalN3IWF_ID m_globalN3IWF_ID( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) N3IWF_ID p_n3IWF_ID, + in template (omit) GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + n3IWF_ID := p_n3IWF_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_globalN3IWF_ID + + template (omit) GlobalLine_ID m_globalLine_ID( + in template (value) GlobalLineIdentity p_globalLineIdentity, + in template (omit) LineType p_lineType := omit, + in template (omit) GlobalLine_ID.iE_Extensions p_iE_Extensions := omit + ) := { + globalLineIdentity := p_globalLineIdentity, + lineType := p_lineType, + iE_Extensions := p_iE_Extensions + } // End of template m_globalLine_ID + + template (value) GlobalLine_ID.iE_Extensions m_globalLine_ID_id_TAI(in template (value) TAI p_tAI) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template m_globalLine_ID_id_TAI + + template (omit) GlobalNgENB_ID m_globalNgENB_ID( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) NgENB_ID p_ngENB_ID, + in template (omit) GlobalNgENB_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + ngENB_ID := p_ngENB_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_globalNgENB_ID + + template (value) GlobalRANNodeID m_globalRANNodeID_globalGNB_ID( + in template (value) GlobalGNB_ID p_globalGNB_ID + ) := { + globalGNB_ID := p_globalGNB_ID + } // End of template m_globalRANNodeID_globalGNB_ID + + template (value) GlobalRANNodeID m_globalRANNodeID_globalNgENB_ID( + in template (value) GlobalNgENB_ID p_globalNgENB_ID + ) := { + globalNgENB_ID := p_globalNgENB_ID + } // End of template m_globalRANNodeID_globalNgENB_ID + + template (value) GlobalRANNodeID m_globalRANNodeID_globalN3IWF_ID( + in template (value) GlobalN3IWF_ID p_globalN3IWF_ID + ) := { + globalN3IWF_ID := p_globalN3IWF_ID + } // End of template m_globalRANNodeID_globalN3IWF_ID + + template (value) GlobalRANNodeID m_globalRANNodeID_choice_Extensions( + in template (value) GlobalRANNodeID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_globalRANNodeID_choice_Extensions + + template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_id_GlobalTNGF_ID( + in template (value) GlobalTNGF_ID p_globalTNGF_ID + ) := { + id := id_GlobalTNGF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTNGF_ID } + } // End of template m_globalRANNodeID_id_GlobalTNGF_ID + + template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_id_GlobalTWIF_ID( + in template (value) GlobalTNGF_ID p_globalTWIF_ID + ) := { + id := id_GlobalTWIF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTWIF_ID } + } // End of template m_globalRANNodeID_id_GlobalTWIF_ID + + template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_id_GlobalW_AGF_ID( + in template (value) GlobalW_AGF_ID p_globalW_AGF_ID + ) := { + id := id_GlobalW_AGF_ID, + criticality := reject, + value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } + } // End of template m_globalRANNodeID_id_GlobalW_AGF_ID + + // template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_all( + // in template (value) GlobalTNGF_ID p_globalTNGF_ID, + // in template (value) GlobalTWIF_ID p_globalTWIF_ID, + // in template (value) GlobalW_AGF_ID p_globalW_AGF_ID + // ) := { + // { + // id := id_GlobalTNGF_ID, + // criticality := reject, + // value_ := { GlobalTNGF_ID := p_globalTNGF_ID } + // }, + // { + // id := id_GlobalTWIF_ID, + // criticality := reject, + // value_ := { GlobalTNGF_ID := p_globalTWIF_ID } + // }, + // { + // id := id_GlobalW_AGF_ID, + // criticality := reject, + // value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } + // } + // } // End of template m_globalRANNodeID_all + + template (omit) GlobalTNGF_ID m_globalTNGF_ID( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) TNGF_ID p_tNGF_ID, + in template (omit) GlobalTNGF_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + tNGF_ID := p_tNGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_globalTNGF_ID + + template (omit) GlobalTWIF_ID m_globalTWIF_ID( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) TWIF_ID p_tWIF_ID, + in template (omit) GlobalTWIF_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + tWIF_ID := p_tWIF_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_globalTWIF_ID + + template (omit) GlobalW_AGF_ID m_GlobalW_AGF_ID( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) W_AGF_ID p_w_AGF_ID, + in template (omit) GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + w_AGF_ID := p_w_AGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_GlobalW_AGF_ID + + template (value) GNB_ID m_gNB_ID_gNB_ID( + in template (value) GNB_ID.gNB_ID p_gNB_ID + ) := { + gNB_ID := p_gNB_ID + } // End of template m_gNB_ID_gNB_ID + + template (value) GNB_ID m_gNB_ID_choice_Extensions( + in template (value) GNB_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_gNB_ID_choice_Extensions + template (value) GTP_TEID m_ie_gtpTeId(in GTP_TEID p_val := '00000000'O) :=p_val; // type record GTPTunnel { @@ -2552,10 +3000,23 @@ module LibNGAP_Templates { gTP_TEID := p_gtp_teid, iE_Extensions := p_iE_Extensions } // End of template m_ie_gTPTunnel - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); - // type record GUAMI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); - // type enumerated GUAMIType { + + template (omit) GUAMI m_gUAMI( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) AMFRegionID p_aMFRegionID, + in template (value) AMFSetID p_aMFSetID, + in template (value) AMFPointer p_aMFPointer, + in template (omit) GUAMI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + aMFRegionID := p_aMFRegionID, + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + iE_Extensions := p_iE_Extensions + } // End of template m_gUAMI + + template (value) GUAMIType m_gUAMIType(in GUAMIType p_val := native) := p_val; + // type record HandoverCommandTransfer { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( // type enumerated HandoverFlag { @@ -4966,146 +5427,594 @@ module LibNGAP_Templates { } // End of template mw_dRBsSubjectToEarlyStatusTransfer_Item template (present) EDT_Session mw_eDT_Session(template (present) EDT_Session p_value := true_) := p_value; - // type octetstring EmergencyAreaID length (3); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastEUTRA_Item EmergencyAreaIDBroadcastEUTRA; - // type record EmergencyAreaIDBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDBroadcastNR_Item EmergencyAreaIDBroadcastNR; - // type record EmergencyAreaIDBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledEUTRA_Item EmergencyAreaIDCancelledEUTRA; - // type record EmergencyAreaIDCancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaIDCancelledNR_Item EmergencyAreaIDCancelledNR; - // type record EmergencyAreaIDCancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyAreaIDCancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEmergencyAreaID) of EmergencyAreaID EmergencyAreaIDList; - // type record length (1 .. NGAP_Constants.maxnoofEAIforRestart) of EmergencyAreaID EmergencyAreaIDListForRestart; - // type record EmergencyFallbackIndicator { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EmergencyFallbackIndicator_ExtIEs (?); - // type enumerated EmergencyFallbackRequestIndicator { - // type enumerated EmergencyServiceTargetCN { - // type union ENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES ENB_ID_ExtIEs (?); - // type enumerated Enhanced_CoverageRestriction { - // type integer Extended_ConnectedTime (0 .. 255); - // type octetstring EN_DCSONConfigurationTransfer; - // type record EndpointIPAddressAndPort { - // type enumerated EndIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EndpointIPAddressAndPort_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNs) of PLMNIdentity EquivalentPLMNs; - // type octetstring EPS_TAC length (2); - // type record EPS_TAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EPS_TAI_ExtIEs (?); - // type integer E_RAB_ID ( - // type record length (1 .. NGAP_Constants.maxnoofE_RABs) of E_RABInformationItem E_RABInformationList; - // type record E_RABInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION E_RABInformationItem_ExtIEs ( - // type bitstring EUTRACellIdentity length (28); - // type record EUTRA_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinngeNB) of EUTRA_CGI EUTRA_CGIList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of EUTRA_CGI EUTRA_CGIListForWarning; - // type record EUTRA_PagingeDRXInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRA_PagingeDRXInformation_ExtIEs (?); - // type enumerated EUTRA_Paging_eDRX_Cycle { - // type enumerated EUTRA_Paging_Time_Window { - // type bitstring EUTRAencryptionAlgorithms length ( - // type bitstring EUTRAintegrityProtectionAlgorithms length ( - // type enumerated EventType { - // type record length (1 .. NGAP_Constants.maxnoofThresholdsForExcessPacketDelay) of ExcessPacketDelayThresholdItem ExcessPacketDelayThresholdConfiguration; - // type record ExcessPacketDelayThresholdItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExcessPacketDelayThresholdItem_ExtIEs (?); - // type enumerated ExcessPacketDelayThresholdValue { - // type integer ExpectedActivityPeriod ( - // type enumerated ExpectedHOInterval { - // type integer ExpectedIdlePeriod ( - // type record ExpectedUEActivityBehaviour { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEActivityBehaviour_ExtIEs (?); - // type record ExpectedUEBehaviour { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEBehaviour_ExtIEs (?); - // type enumerated ExpectedUEMobility { - // type record length (1 .. NGAP_Constants.maxnoofCellsUEMovingTrajectory) of ExpectedUEMovingTrajectoryItem ExpectedUEMovingTrajectory; - // type record ExpectedUEMovingTrajectoryItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExpectedUEMovingTrajectoryItem_ExtIEs (?); - // type record Extended_AMFName { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_AMFName_ExtIEs (?); - // type integer ExtendedPacketDelayBudget ( - // type record Extended_RANNodeName { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Extended_RANNodeName_ExtIEs (?); - // type record ExtendedRATRestrictionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ExtendedRATRestrictionInformation_ExtIEs (?); - // type integer ExtendedRNC_ID (4096 .. 65535); - // type record length (1 .. NGAP_Constants.maxnoofExtSliceItems) of SliceSupportItem ExtendedSliceSupportList; - // type bitstring ExtendedUEIdentityIndexValue length (16); - // type union EventTrigger { - // type NGAP_Containers.NGAP_PROTOCOL_IES EventTrigger_ExtIEs (?); - // type record EventL1LoggedMDTConfig { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventL1LoggedMDTConfig_ExtIEs (?); - // type union MeasurementThresholdL1LoggedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_IES MeasurementThresholdL1LoggedMDT_ExtIEs (?); - // type record FailureIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FailureIndication_ExtIEs (?); - // type record FiveG_ProSeAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSeAuthorized_ExtIEs (?); - // type enumerated FiveGProSeDirectDiscovery { - // type enumerated FiveGProSeDirectCommunication { - // type enumerated FiveGProSeLayer2UEtoNetworkRelay { - // type enumerated FiveGProSeLayer3UEtoNetworkRelay { - // type enumerated FiveGProSeLayer2RemoteUE { - // type record FiveG_ProSePC5QoSParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_ProSePC5QoSParameters_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of FiveGProSePC5QoSFlowItem FiveGProSePC5QoSFlowList; - // type record FiveGProSePC5QoSFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5QoSFlowItem_ExtIEs (?); - // type record FiveGProSePC5FlowBitRates { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveGProSePC5FlowBitRates_ExtIEs (?); - // type record FiveG_S_TMSI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FiveG_S_TMSI_ExtIEs (?); - // type octetstring FiveG_TMSI length (4); - // type integer FiveQI ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ForbiddenAreaInformation_Item ForbiddenAreaInformation; - // type record ForbiddenAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ForbiddenAreaInformation_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofForbTACs) of TAC ForbiddenTACs; - // type record FromEUTRANtoNGRAN { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromEUTRANtoNGRAN_ExtIEs (?); - // type record FromNGRANtoEUTRAN { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION FromNGRANtoEUTRAN_ExtIEs (?); - // type record GBR_QosInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GBR_QosInformation_ExtIEs ( - // type octetstring GlobalCable_ID; - // type record GlobalCable_ID_new { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalCable_ID_new_ExtIEs (?); - // type record GlobalENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalENB_ID_ExtIEs (?); - // type record GlobalGNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalGNB_ID_ExtIEs (?); - // type record GlobalN3IWF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalN3IWF_ID_ExtIEs (?); - // type record GlobalLine_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalLine_ID_ExtIEs ( - // type octetstring GlobalLineIdentity; - // type record GlobalNgENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalNgENB_ID_ExtIEs (?); - // type union GlobalRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_IES GlobalRANNodeID_ExtIEs ( - // type record GlobalTNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTNGF_ID_ExtIEs (?); - // type record GlobalTWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalTWIF_ID_ExtIEs (?); - // type record GlobalW_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GlobalW_AGF_ID_ExtIEs (?); - // type union GNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES GNB_ID_ExtIEs (?); + + template (present) EmergencyAreaIDBroadcastEUTRA_Item mw_emergencyAreaIDBroadcastEUTRA_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA := ?, + template EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDBroadcastEUTRA_Item + + template (present) EmergencyAreaIDBroadcastNR_Item mw_emergencyAreaIDBroadcastNR_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CompletedCellsInEAI_NR p_completedCellsInEAI_NR := ?, + template EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_NR := p_completedCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDBroadcastNR_Item + + template (present) EmergencyAreaIDCancelledEUTRA_Item mw_emergencyAreaIDCancelledEUTRA_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA := ?, + template EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDCancelledEUTRA_Item + + template (present) EmergencyAreaIDCancelledNR_Item mw_emergencyAreaIDCancelledNR_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR := ?, + template EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDCancelledNR_Item + + template (present) EmergencyFallbackIndicator mw_emergencyFallbackIndicator( + template (present) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator := ?, + template EmergencyServiceTargetCN p_emergencyServiceTargetCN := *, + template EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := * + ) := { + emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, + emergencyServiceTargetCN := p_emergencyServiceTargetCN, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyFallbackIndicator + + template (present) EmergencyFallbackRequestIndicator mw_emergencyFallbackRequestIndicator(template (present) EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; + + template (present) EmergencyServiceTargetCN mw_emergencyServiceTargetCN(template (present) EmergencyServiceTargetCN p_value := ?) := p_value; + + template (present) ENB_ID mw_eNB_ID_macroENB_ID( + template (present) Bit20 p_macroENB_ID := ? + ) := { + macroENB_ID := p_macroENB_ID + } // End of template mw_eNB_ID_macroENB_ID + + template (present) ENB_ID mw_eNB_ID_homeENB_ID( + template (present) Bit28 p_homeENB_ID := ? + ) := { + homeENB_ID := p_homeENB_ID + } // End of template mw_eNB_ID_homeENB_ID + + template (present) ENB_ID mw_eNB_ID_short_macroENB_ID( + template (present) Bit18 p_short_macroENB_ID := ? + ) := { + short_macroENB_ID := p_short_macroENB_ID + } // End of template mw_eNB_ID_short_macroENB_ID + + template (present) ENB_ID mw_eNB_ID_long_macroENB_ID( + template (present) Bit21 p_long_macroENB_ID := ? + ) := { + long_macroENB_ID := p_long_macroENB_ID + } // End of template mw_eNB_ID_long_macroENB_ID + + template (present) ENB_ID mw_eNB_ID_choice_Extensions( + template (present) ENB_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_eNB_ID_choice_Extensions + + template (present) Enhanced_CoverageRestriction mw_enhanced_CoverageRestriction(template (present) Enhanced_CoverageRestriction p_value := restricted) := p_value; + + template (present) EndpointIPAddressAndPort mw_endpointIPAddressAndPort( + template (present) TransportLayerAddress p_endpointIPAddress := ?, + template (present) PortNumber p_portNumber := ?, + template EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := * + ) := { + endpointIPAddress := p_endpointIPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_endpointIPAddressAndPort + + template (present) EndIndication mw_endIndication(template (present) EndIndication p_value := ?) := p_value; + + template (present) EPS_TAI mw_ePS_TAI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) EPS_TAC p_ePS_TAC := ?, + template EPS_TAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + ePS_TAC := p_ePS_TAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_ePS_TAI + + template (present) E_RABInformationItem mw_e_RABInformationItem( + template (present) E_RAB_ID p_e_RAB_ID := ?, + template (present) DLForwarding p_dLForwarding := ?, + template E_RABInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwarding := p_dLForwarding, + iE_Extensions := p_iE_Extensions + } // End of template mw_e_RABInformationItem + + template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_e_RABInformationItem_id_SourceTNLAddrInfo + + template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo + + template (present) EUTRA_CGI mw_uUTRA_CGI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) EUTRACellIdentity p_eUTRACellIdentity := ?, + template EUTRA_CGI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + eUTRACellIdentity := p_eUTRACellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template mw_uUTRA_CGI + + template (present) EUTRA_PagingeDRXInformation mw_eUTRA_PagingeDRXInformation( + template (present) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle := ?, + template EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := *, + template EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, + eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRA_PagingeDRXInformation + + template (present) EUTRA_Paging_eDRX_Cycle mw_eUTRA_Paging_eDRX_Cycle(template (present) EUTRA_Paging_eDRX_Cycle p_value := ?) := p_value; + + template (present) EUTRA_Paging_Time_Window mw_eUTRA_Paging_Time_Window(template (present) EUTRA_Paging_Time_Window p_value := ?) := p_value; + + template (present) EventType mw_eventType(template (present) EventType p_value := ?) := p_value; + + template (present) ExcessPacketDelayThresholdItem mw_excessPacketDelayThresholdItem( + template (present) FiveQI p_fiveQi := ?, + template (present) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue := ?, + template ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := * + ) := { + fiveQi := p_fiveQi, + excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_excessPacketDelayThresholdItem + + template (present) ExcessPacketDelayThresholdValue mw_excessPacketDelayThresholdValue(template (present) ExcessPacketDelayThresholdValue p_value := ?) := p_value; + + template (present) ExpectedHOInterval mw_expectedHOInterval(template (present) ExpectedHOInterval p_value := ?) := p_value; + + template ExpectedUEActivityBehaviour mw_expectedUEActivityBehaviour( + template ExpectedActivityPeriod p_expectedActivityPeriod := *, + template ExpectedIdlePeriod p_expectedIdlePeriod := *, + template SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := *, + template ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := * + ) := { + expectedActivityPeriod := p_expectedActivityPeriod, + expectedIdlePeriod := p_expectedIdlePeriod, + sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_expectedUEActivityBehaviour + + template ExpectedUEBehaviour mw_expectedUEBehaviour( + template ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := *, + template ExpectedHOInterval p_expectedHOInterval := *, + template ExpectedUEMobility p_expectedUEMobility := *, + template ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= *, + template ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := * + ) := { + expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, + expectedHOInterval := p_expectedHOInterval, + expectedUEMobility := p_expectedUEMobility, + expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEBehaviour + + template (present) ExpectedUEMobility mw_expectedUEMobility(template (present) ExpectedUEMobility p_value := ?) := p_value; + + template (present) ExpectedUEMovingTrajectoryItem mw_expectedUEMovingTrajectoryItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := *, + template ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template mw_expectedUEMovingTrajectoryItem + + template Extended_AMFName mw_extended_AMFName( + template AMFNameVisibleString p_aMFNameVisibleString := *, + template AMFNameUTF8String p_aMFNameUTF8String := *, + template Extended_AMFName.iE_Extensions p_iE_Extensions := * + ) := { + aMFNameVisibleString := p_aMFNameVisibleString, + aMFNameUTF8String := p_aMFNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template mw_extended_AMFName + + template Extended_RANNodeName mw_extended_RANNodeName( + template RANNodeNameVisibleString p_rANNodeNameVisibleString := *, + template RANNodeNameUTF8String p_rANNodeNameUTF8String := *, + template Extended_RANNodeName.iE_Extensions p_iE_Extensions := * + ) := { + rANNodeNameVisibleString := p_rANNodeNameVisibleString, + rANNodeNameUTF8String := p_rANNodeNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template mw_extended_RANNodeName + + template (present) ExtendedRATRestrictionInformation mw_extendedRATRestrictionInformation( + template (present) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction := ?, + template (present) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction := ?, + template ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := * + ) := { + primaryRATRestriction := p_primaryRATRestriction, + secondaryRATRestriction := p_secondaryRATRestriction, + iE_Extensions := p_iE_Extensions + } // End of template mw_extendedRATRestrictionInformation + + template (present) EventTrigger mw_eventTrigger_outOfCoverage( + template (present) EventTrigger.outOfCoverage p_outOfCoverage := true_ + ) := { + outOfCoverage := p_outOfCoverage + } // End of template mw_eventTrigger_outOfCoverage + + template (present) EventTrigger mw_eventTrigger_eventL1LoggedMDTConfig( + template (present) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig := ? + ) := { + eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig + } // End of template mw_eventTrigger_eventL1LoggedMDTConfig + + template (present) EventTrigger mw_eventTrigger_choice_Extensions( + template (present) EventTrigger.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_eventTrigger_choice_Extensions + + template (present) EventL1LoggedMDTConfig mw_eventL1LoggedMDTConfig( + template (present) MeasurementThresholdL1LoggedMDT p_l1Threshold := ?, + template (present) Hysteresis p_hysteresis := ?, + template (present) TimeToTrigger p_timeToTrigger := ?, + template EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := * + ) := { + l1Threshold := p_l1Threshold, + hysteresis := p_hysteresis, + timeToTrigger := p_timeToTrigger, + iE_Extensions := p_iE_Extensions + } // End of template mw_eventL1LoggedMDTConfig + + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRP( + template (present) Threshold_RSRP p_threshold_RSRP := ? + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRP + + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRQ( + template (present) Threshold_RSRQ p_threshold_RSRQ := ? + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRQ + + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_choice_Extensions( + template (present) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_measurementThresholdL1LoggedMDT_choice_Extensions + + template (present) FailureIndication mw_failureIndication( + template (present) UERLFReportContainer p_uERLFReportContainer := ?, + template FailureIndication.iE_Extensions p_iE_Extensions := * + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_failureIndication + + template FiveG_ProSeAuthorized mw_FiveG_ProSeAuthorized( + template FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := *, + template FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := *, + template FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := *, + template FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := *, + template FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := *, + template FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := * + ) := { + fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, + fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, + fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, + fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, + fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_FiveG_ProSeAuthorized + + template (present) FiveGProSeDirectDiscovery mw_fiveGProSeDirectDiscovery(template (present) FiveGProSeDirectDiscovery p_value := ?) := p_value; + + template (present) FiveGProSeDirectCommunication mw_fiveGProSeDirectCommunication(template (present) FiveGProSeDirectCommunication p_value := ?) := p_value; + + template (present) FiveGProSeLayer2UEtoNetworkRelay mw_fiveGProSeLayer2UEtoNetworkRelay(template (present) FiveGProSeLayer2UEtoNetworkRelay p_value := ?) := p_value; + + template (present) FiveGProSeLayer3UEtoNetworkRelay mw_fiveGProSeLayer3UEtoNetworkRelay(template (present) FiveGProSeLayer3UEtoNetworkRelay p_value := ?) := p_value; + + template (present) FiveGProSeLayer2RemoteUE mw_fiveGProSeLayer2RemoteUE(template (present) FiveGProSeLayer2RemoteUE p_value := ?) := p_value; + + template (present) FiveG_ProSePC5QoSParameters mw_fiveG_ProSePC5QoSParameters( + template (present) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList := ?, + template BitRate p_fiveGProSepc5LinkAggregateBitRates := *, + template FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := * + ) := { + fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, + fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveG_ProSePC5QoSParameters + + template (present) FiveGProSePC5QoSFlowItem mw_fiveGProSePC5QoSFlowItem( + template (present) FiveQI p_fiveGproSepQI := ?, + template FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := *, + template Range p_fiveGproSerange := *, + template FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := * + ) := { + fiveGproSepQI := p_fiveGproSepQI, + fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, + fiveGproSerange := p_fiveGproSerange, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveGProSePC5QoSFlowItem + + template (present) FiveGProSePC5FlowBitRates mw_fiveGProSePC5FlowBitRates( + template (present) BitRate p_fiveGproSeguaranteedFlowBitRate := ?, + template (present) BitRate p_fiveGproSemaximumFlowBitRate := ?, + template FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := * + ) := { + fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, + fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveGProSePC5FlowBitRates + + template (present) FiveG_S_TMSI mw_fiveG_S_TMSI( + template (present) AMFSetID p_aMFSetID := ?, + template (present) AMFPointer p_aMFPointer := ?, + template (present) FiveG_TMSI p_fiveG_TMSI := ?, + template FiveG_S_TMSI.iE_Extensions p_iE_Extensions := * + ) := { + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + fiveG_TMSI := p_fiveG_TMSI, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveG_S_TMSI + + template (present) ForbiddenAreaInformation_Item mw_forbiddenAreaInformation_Item( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) ForbiddenTACs p_forbiddenTACs := ?, + template ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + forbiddenTACs := p_forbiddenTACs, + iE_Extensions := p_iE_Extensions + } // End of template mw_forbiddenAreaInformation_Item + + template (present) FromEUTRANtoNGRAN mw_fromEUTRANtoNGRAN( + template (present) IntersystemSONeNBID p_sourceeNBID := ?, + template (present) IntersystemSONNGRANnodeID p_targetNGRANnodeID := ?, + template FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := * + ) := { + sourceeNBID := p_sourceeNBID, + targetNGRANnodeID := p_targetNGRANnodeID, + iE_Extensions := p_iE_Extensions + } // End of template mw_fromEUTRANtoNGRAN + + template (present) FromNGRANtoEUTRAN mw_fromNGRANtoEUTRAN( + template (present) IntersystemSONNGRANnodeID p_sourceNGRANnodeID := ?, + template (present) IntersystemSONeNBID p_targeteNBID := ?, + template FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := * + ) := { + sourceNGRANnodeID := p_sourceNGRANnodeID, + targeteNBID := p_targeteNBID, + iE_Extensions := p_iE_Extensions + } // End of template mw_fromNGRANtoEUTRAN + + template (present) GBR_QosInformation mw_gBR_QosInformation( + template (present) BitRate p_maximumFlowBitRateDL := ?, + template (present) BitRate p_maximumFlowBitRateUL := ?, + template (present) BitRate p_guaranteedFlowBitRateDL := ?, + template (present) BitRate p_guaranteedFlowBitRateUL := ?, + template NotificationControl p_notificationControl := *, + template PacketLossRate p_maximumPacketLossRateDL := *, + template PacketLossRate p_maximumPacketLossRateUL := *, + template GBR_QosInformation.iE_Extensions p_iE_Extensions := * + ) := { + maximumFlowBitRateDL := p_maximumFlowBitRateDL, + maximumFlowBitRateUL := p_maximumFlowBitRateUL, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + notificationControl := p_notificationControl, + maximumPacketLossRateDL := p_maximumPacketLossRateDL, + maximumPacketLossRateUL := p_maximumPacketLossRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_gBR_QosInformation + + template (present) GBR_QosInformation.iE_Extensions mw_gBR_QosInformation_id_AlternativeQoSParaSetList( + template (present) AlternativeQoSParaSetList p_alternativeQoSParaSetList := ? + ) := { + { + id := id_AlternativeQoSParaSetList, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} + } + } // End of template mw_gBR_QosInformation_id_AlternativeQoSParaSetList + + template (present) GlobalCable_ID_new mw_globalCable_ID_new( + template (present) GlobalCable_ID p_globalCable_ID := ?, + template (present) TAI p_tAI := ?, + template GlobalCable_ID_new.iE_Extensions p_iE_Extensions := * + ) := { + globalCable_ID := p_globalCable_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalCable_ID_new + + template (present) GlobalGNB_ID mw_ie_globalGnbId( + template (present) PLMNIdentity p_plmnId := ?, + template (present) bitstring p_gnbId := ?, + template GlobalGNB_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_plmnId,//'010001'O, + gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_globalGnbId + + template (present) GlobalN3IWF_ID mw_globalN3IWF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) N3IWF_ID p_n3IWF_ID := ?, + template GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + n3IWF_ID := p_n3IWF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalN3IWF_ID + + template (present) GlobalLine_ID mw_globalLine_ID( + template (present) GlobalLineIdentity p_globalLineIdentity := ?, + template LineType p_lineType := *, + template GlobalLine_ID.iE_Extensions p_iE_Extensions := * + ) := { + globalLineIdentity := p_globalLineIdentity, + lineType := p_lineType, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalLine_ID + + template (present) GlobalLine_ID.iE_Extensions mw_globalLine_ID_id_TAI(template TAI p_tAI := *) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template mw_globalLine_ID_id_TAI + + template (present) GlobalNgENB_ID mw_globalNgENB_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) NgENB_ID p_ngENB_ID := ?, + template GlobalNgENB_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + ngENB_ID := p_ngENB_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalNgENB_ID + + template (present) GlobalRANNodeID mw_globalRANNodeID_globalGNB_ID( + template (present) GlobalGNB_ID p_globalGNB_ID := ? + ) := { + globalGNB_ID := p_globalGNB_ID + } // End of template mw_globalRANNodeID_globalGNB_ID + + template (present) GlobalRANNodeID mw_globalRANNodeID_globalNgENB_ID( + template (present) GlobalNgENB_ID p_globalNgENB_ID := ? + ) := { + globalNgENB_ID := p_globalNgENB_ID + } // End of template mw_globalRANNodeID_globalNgENB_ID + + template (present) GlobalRANNodeID mw_globalRANNodeID_globalN3IWF_ID( + template (present) GlobalN3IWF_ID p_globalN3IWF_ID := ? + ) := { + globalN3IWF_ID := p_globalN3IWF_ID + } // End of template mw_globalRANNodeID_globalN3IWF_ID + + template (present) GlobalRANNodeID mw_globalRANNodeID_choice_Extensions( + template (present) GlobalRANNodeID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_globalRANNodeID_choice_Extensions + + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTNGF_ID( + template (present) GlobalTNGF_ID p_globalTNGF_ID := ? + ) := { + id := id_GlobalTNGF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTNGF_ID } + } // End of template mw_globalRANNodeID_id_GlobalTNGF_ID + + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTWIF_ID( + template (present) GlobalTNGF_ID p_globalTWIF_ID := ? + ) := { + id := id_GlobalTWIF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTWIF_ID } + } // End of template mw_globalRANNodeID_id_GlobalTWIF_ID + + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalW_AGF_ID( + template (present) GlobalW_AGF_ID p_globalW_AGF_ID := ? + ) := { + id := id_GlobalW_AGF_ID, + criticality := reject, + value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } + } // End of template mw_globalRANNodeID_id_GlobalW_AGF_ID + + template (present) GlobalTNGF_ID mw_globalTNGF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TNGF_ID p_tNGF_ID := ?, + template GlobalTNGF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tNGF_ID := p_tNGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalTNGF_ID + + template (present) GlobalTWIF_ID mw_globalTWIF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TWIF_ID p_tWIF_ID := ?, + template GlobalTWIF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tWIF_ID := p_tWIF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalTWIF_ID + + template (present) GlobalW_AGF_ID mw_GlobalW_AGF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) W_AGF_ID p_w_AGF_ID := ?, + template GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + w_AGF_ID := p_w_AGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_GlobalW_AGF_ID + + template (present) GNB_ID mw_gNB_ID_gNB_ID( + template (present) GNB_ID.gNB_ID p_gNB_ID := ? + ) := { + gNB_ID := p_gNB_ID + } // End of template mw_gNB_ID_gNB_ID + + template (present) GNB_ID mw_gNB_ID_choice_Extensions( + template (present) GNB_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_gNB_ID_choice_Extensions template (present) GTP_TEID mw_ie_gtpTeId(template (present) GTP_TEID p_val := ?) := p_val; template (present) GTPTunnel mw_ie_gTPTunnel( - in template (present) TransportLayerAddress p_tla := ?, - in template (present) GTP_TEID p_gtp_teid := ?, - in template GTPTunnel.iE_Extensions p_iE_Extensions := * - ):= { + in template (present) TransportLayerAddress p_tla := ?, + in template (present) GTP_TEID p_gtp_teid := ?, + in template GTPTunnel.iE_Extensions p_iE_Extensions := * + ):= { transportLayerAddress := p_tla, gTP_TEID := p_gtp_teid, iE_Extensions := p_iE_Extensions @@ -5116,10 +6025,23 @@ module LibNGAP_Templates { ) := { gTPTunnel := p_gtpt } // End of template mw_ie_uPTLInf - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GTPTunnel_ExtIEs (?); - // type record GUAMI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION GUAMI_ExtIEs (?); - // type enumerated GUAMIType { + + template (present) GUAMI mw_gUAMI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) AMFRegionID p_aMFRegionID := ?, + template (present) AMFSetID p_aMFSetID := ?, + template (present) AMFPointer p_aMFPointer := ?, + template GUAMI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + aMFRegionID := p_aMFRegionID, + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + iE_Extensions := p_iE_Extensions + } // End of template mw_gUAMI + + template (present) GUAMIType mw_gUAMIType(template (present) GUAMIType p_val := ?) := p_val; + // type record HandoverCommandTransfer { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( // type enumerated HandoverFlag { -- GitLab From 3d58160546412db7a321ca78405df185e7b6a693 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 12 Jan 2024 10:17:00 +0100 Subject: [PATCH 127/365] fix error with Paging message in wrong section --- test_purposes/Ngap_Common.tplan2 | 1 + test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 46 +++++ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 245 +------------------------ 3 files changed, 57 insertions(+), 235 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index e3a74fe..5d728b5 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -47,6 +47,7 @@ Package Ngap_Common { - PICS_A4/1_3 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST - PICS_A4/1_4 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY NOTIFY - PICS_A4/1_5 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY INDICATION + - PICS_A4/4_1 //AMF - Paging procedures - Paging - PICS_A4/8_1 //AMF - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST - PICS_A4/8_2 //AMF - Warning Message Transmission procedure - PWS CANCEL REQUEST - PICS_A4/8_3 //AMF - Warning Message Transmission procedure - PWS RESTART INDICATION diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 7ba156d..58b577c 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1140,6 +1140,52 @@ Package TP_AMF { } // End Group "8.4 UE Mobility Management Procedures" + Group "8.5 Paging Procedures" + { + Group "Paging" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_PAG_01 + + Test objective "Verify that the IUT can send a PAGING message to enable the AMF to page a UE." + + Reference + "ETSI TS 138 413 [1], Clauses 8.5.1.2 and 9.2.4.1" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A4/4_1 + + // TODO: initial condition? + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a Paging procedure" + } + then { + the IUT entity sends a PAGING containing + UE_Paging_Identity containing + 5G_S_TMSI containing + 5G_S_TMSI + ; + ; + ; + to the GNB entity + } + } + + } // end TP_NGAP_GNB_PAG_01 + } // end "Paging" + + } // end "8.5 Paging Procedures" + Group "8.6 Transport of NAS Messages Procedures" { Group "Downlink NAS Transport" diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 1f7c5eb..cacef18 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -31,7 +31,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/1_1 + PICS Selection PICS_A3/5_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -90,7 +90,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/1_1 + PICS Selection PICS_A3/5_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -162,7 +162,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/1_1 + PICS Selection PICS_A3/5_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -221,7 +221,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/1_1 + PICS Selection PICS_A3/5_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -283,7 +283,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/1_2 + PICS Selection PICS_A3/5_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -333,7 +333,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/1_2 + PICS Selection PICS_A3/5_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -389,7 +389,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/1_3 + PICS Selection PICS_A3/5_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -456,7 +456,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/1_4 + PICS Selection PICS_A3/5_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -497,7 +497,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/1_5 + PICS Selection PICS_A3/5_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -1410,52 +1410,6 @@ Package TP_GNB { } // End Group "8.4 UE Mobility Management Procedures" - Group "8.5 Paging Procedures" - { - Group "Paging" - { - import all from Ngap_Common; - - Test Purpose { - - TP Id TP_NGAP_GNB_PAG_01 - - Test objective "Verify that the IUT can send a PAGING message to enable the AMF to page a UE." - - Reference - "ETSI TS 138 413 [1], Clauses 8.5.1.2 and 9.2.4.1" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A3/5_1 - - // TODO: initial condition? - Initial conditions with { - the UE entity isRegisteredTo the AMF - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate the initiation "of a Page procedure" - } - then { - the IUT entity sends an INITIAL_UE_MESSAGE containing - UE_Paging_Identity containing - 5G_S_TMSI containing - 5G_S_TMSI - ; - ; - ; - to the AMF entity - } - } - - } // end TP_NGAP_GNB_PAG_01 - } // end "Paging" - - } // end "8.5 Paging Procedures" - Group "8.6 Transport of NAS Messages Procedures" { Group "Initial UE Message" @@ -1540,7 +1494,7 @@ Package TP_GNB { RAN_UE_NGAP_ID, NAS_PDU, User_Location_Information - ; + ; to the AMF entity } } @@ -1650,185 +1604,6 @@ Package TP_GNB { Group "8.9 Warning Message Transmission Procedures" { - import all from Ngap_Common; - - Test Purpose { - - TP Id TP_NGAP_GNB_WTP_01 - - Test objective "Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing mandatory IEs and answers with WRITE-REPLACE WARNING RESPONSE to start broadcasting of warning messages." - - Reference - "ETSI TS 138 413 [1], Clause 8.9.1.2" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/8_1 - - Initial conditions with { - the UE entity isRegisteredTo the AMF - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing - Message_Identifier, - Serial_Number, - Repetition_Period, - Number_of_Broadcasts_Requested; - from the AMF entity - } - then { - the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing - Message_Identifier, - Serial_Number; - to the AMF entity - } - } - - } // end TP_NGAP_GNB_WTP_01 - - Test Purpose { - - TP Id TP_NGAP_GNB_WTP_02 - - Test objective "Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing Message Identifier IE and/or Serial Number IE different from those in the warning message being broadcast and if Concurent Warning Message Indicator is not present then IUT node answers with WRITE-REPLACE WARNING RESPONSE and replaces the warning message being broadcast with newly received one for that area." - - Reference - "ETSI TS 138 413 [1], Clause 8.9.1.2" //paragraph 3 - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/8_1 - - Initial conditions with { - the UE entity isRegisteredTo the AMF - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing - Message_Identifier indicating value "different from already being broadcasted", - Serial_Number indicating value "different from already being broadcasted", - Repetition_Period, - Number_of_Broadcasts_Requested, - not Concurent_Warning_Message_Indicator; - from the AMF entity - } - then { - the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing - Message_Identifier, - Serial_Number; - to the AMF entity - } - } - - } // end TP_NGAP_GNB_WTP_02 - - //TODO:possible to add additional tests from 8.9.1.2 paragraph 4 and on - - Test Purpose { - - TP Id TP_NGAP_GNB_WTP_03 - - Test objective "Verify that the NG-RAN node successfully processes a PWS CANCEL REQUEST containing mandatory IEs and answers with PWS CANCEL RESPONSE to cancel an already ongoing broadcast warning messages in all of the cells in the NG-RAN." - - Reference - "ETSI TS 138 413 [1], Clause 8.9.2.2" //paragraph 3 - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/8_2 - - Initial conditions with { - the UE entity isRegisteredTo the AMF - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a PWS_CANCEL_REQUEST containing - Message_Identifier, - Serial_Number; - from the AMF entity - } - then { - the IUT entity sends a PWS_CANCEL_RESPONSE containing - Message_Identifier, - Serial_Number; - to the AMF entity - } - } - - } // end TP_NGAP_GNB_WTP_03 - - //TODO:possible to add additional tests from 8.9.2.2 paragraph 3, 5 and on - - Test Purpose { - - TP Id TP_NGAP_GNB_WTP_04 - - Test objective "Verify that the IUT can send a PWS RESTART INDICATION to inform AMF that PWS information for some or all cells may be reloaded from the CBC if needed." - - Reference - "ETSI TS 138 413 [1], Clause 8.9.3.2" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/8_3 - - Initial conditions with { - the UE entity isRegisteredTo the AMF - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate a PWS restart indication - } - then { - the IUT entity sends a PWS_RESTART_INDICATION containing - Cell_List_for_Restart, - Global_RAN_Node_ID; - to the AMF entity - } - } - - } // end TP_NGAP_GNB_WTP_04 - - Test Purpose { - - TP Id TP_NGAP_GNB_WTP_05 - - Test objective "Verify that the IUT can send a PWS FAILURE INDICATION to inform AMF that ongoing PWS operation for one or more cells has failed." - - Reference - "ETSI TS 138 413 [1], Clause 8.9.4.2" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/8_4 - - Initial conditions with { - the UE entity isRegisteredTo the AMF - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate a PWS failure indication - } - then { - the IUT entity sends a PWS_FAILURE_INDICATION containing - PWS_Failed_Cell_List, - Global_RAN_Node_ID; - to the AMF entity - } - } - - } // end TP_NGAP_GNB_WTP_05 } // end "8.9 Warning Message Transmission Procedures" -- GitLab From d8feaa752178f27611a70095038361f6e94c50bc Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 15 Jan 2024 11:22:43 +0100 Subject: [PATCH 128/365] TTF T033: Implement ASN.1 send/receive templates H --- ccsrc/EncDec/LibNGAP_Encdec.cc | 12 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 489 ++++++++++++++++++++++-- 2 files changed, 459 insertions(+), 42 deletions(-) diff --git a/ccsrc/EncDec/LibNGAP_Encdec.cc b/ccsrc/EncDec/LibNGAP_Encdec.cc index 7c5696f..b440dac 100644 --- a/ccsrc/EncDec/LibNGAP_Encdec.cc +++ b/ccsrc/EncDec/LibNGAP_Encdec.cc @@ -9,10 +9,10 @@ namespace LibNGAP__EncdecDeclarations { * @param value to encode * @return encoded value ****************************************************/ - BITSTRING fx__enc__ProtocolIE(const LibNGAP__TypesAndValues::ProtocolIE &p) { + /*BITSTRING fx__enc__ProtocolIE(const LibNGAP__TypesAndValues::ProtocolIE &p) { loggers::get_instance().log(">>> fx__enc__ProtocolIE::"); loggers::get_instance().log_msg(">>> fx__enc__ProtocolIE:: ", p); - /*ngap_codec codec; + ngap_codec codec; OCTETSTRING os; if (codec.encode(p.IE(), os) == -1) { loggers::get_instance().warning("fx__enc__ProtocolIE -1 result code was returned"); @@ -20,9 +20,9 @@ namespace LibNGAP__EncdecDeclarations { } return oct2bit(os); -*/ + return int2bit(0, 8); - } + }*/ /**************************************************** * @desc External function to decode a .... type @@ -30,9 +30,9 @@ namespace LibNGAP__EncdecDeclarations { * @return encoded value ****************************************************/ - INTEGER fx__dec__ProtocolIE(BITSTRING &b, LibNGAP__TypesAndValues::ProtocolIE &p) { + /*INTEGER fx__dec__ProtocolIE(BITSTRING &b, LibNGAP__TypesAndValues::ProtocolIE &p) { loggers::get_instance().log(">>> fx__dec__ProtocolIE::"); return -1; - } + }*/ } // namespace LibNGAP__EncdecDeclarations diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 99bc90a..716c7e4 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3017,24 +3017,233 @@ module LibNGAP_Templates { template (value) GUAMIType m_gUAMIType(in GUAMIType p_val := native) := p_val; - // type record HandoverCommandTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( - // type enumerated HandoverFlag { - // type record HandoverPreparationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverPreparationUnsuccessfulTransfer_ExtIEs (?); - // type record HandoverRequestAcknowledgeTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequestAcknowledgeTransfer_ExtIEs ( - // type record HandoverRequiredTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequiredTransfer_ExtIEs (?); - // type record HandoverResourceAllocationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverResourceAllocationUnsuccessfulTransfer_ExtIEs (?); - // type enumerated HandoverType { - // type bitstring HashedUEIdentityIndexValue length ( - // type octetstring HFCNode_ID; - // type record HFCNode_ID_new { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HFCNode_ID_new_ExtIEs (?); - // type record HOReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HOReport_ExtIEs (?); + template (omit) HandoverCommandTransfer m_handoverCommandTransfer( + in template (omit) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := omit, + in template (omit) QosFlowToBeForwardedList p_qosFlowToBeForwardedList := omit, + in template (omit) DataForwardingResponseDRBList p_dataForwardingResponseDRBList := omit, + in template (omit) HandoverCommandTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template m_handoverCommandTransfer + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalDLForwardingUPTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_handoverCommandTransfer_id_ULForwardingUP_TNLInformation + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_DataForwardingResponseERABList( + in template (value) DataForwardingResponseERABList p_dataForwardingResponseERABList + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template m_handoverCommandTransfer_id_DataForwardingResponseERABList + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_QosFlowFailedToSetupList( + in template (value) QosFlowListWithCause p_qosFlowListWithCause + ) := { + { + id := id_QosFlowFailedToSetupList, + criticality := ignore, + extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template m_handoverCommandTransfer_id_QosFlowFailedToSetupList + + template (value) HandoverFlag m_handoverFlag(in HandoverFlag p_val := handover_preparation) := p_val; + + template (omit) HandoverPreparationUnsuccessfulTransfer m_mandoverPreparationUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_mandoverPreparationUnsuccessfulTransfer + + template (omit) HandoverRequestAcknowledgeTransfer m_handoverRequestAcknowledgeTransfer( + in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, + in template (value) QosFlowListWithDataForwarding p_qosFlowSetupResponseList, + in template (omit) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := omit, + in template (omit) SecurityResult p_securityResult := omit, + in template (omit) QosFlowListWithCause p_qosFlowFailedToSetupList := omit, + in template (omit) DataForwardingResponseDRBList p_dataForwardingResponseDRBList := omit, + in template (omit) HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + securityResult := p_securityResult, + qosFlowSetupResponseList := p_qosFlowSetupResponseList, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template m_handoverRequestAcknowledgeTransfer + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( + in template (value) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList + ) := { + { + id := id_AdditionalDLUPTNLInformationForHOList, + criticality := reject, + extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( + in template (value) DataForwardingResponseERABList p_dataForwardingResponseERABList + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( + in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( + in template (value) MBS_SupportIndicator p_mBS_SupportIndicator + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator + + template (omit) HandoverRequiredTransfer m_handoverRequiredTransfer( + in template (omit) DirectForwardingPathAvailability p_directForwardingPathAvailability := omit, + in template (omit) HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + directForwardingPathAvailability := p_directForwardingPathAvailability, + iE_Extensions := p_iE_Extensions + } // End of template m_handoverRequiredTransfer + + template (omit) HandoverResourceAllocationUnsuccessfulTransfer m_handoverResourceAllocationUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_handoverResourceAllocationUnsuccessfulTransfer + + template (value) HandoverType m_handoverType(in HandoverType p_value := intra5gs) := p_value; + + template (omit) HFCNode_ID_new m_hFCNode_ID_new( + in template (value) HFCNode_ID p_hFCNode_ID, + in template (value) TAI p_tAI, + in template (omit) HFCNode_ID_new.iE_Extensions p_iE_Extensions := omit + ) := { + hFCNode_ID := p_hFCNode_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_hFCNode_ID_new + + template (omit) HOReport m_hOReport( + in template (value) HOReport.handoverReportType p_handoverReportType := ho_too_early, + in template (value) Cause p_handoverCause, + in template (value) NGRAN_CGI p_sourcecellCGI, + in template (value) NGRAN_CGI p_targetcellCGI, + in template (omit) NGRAN_CGI p_reestablishmentcellCGI, + in template (omit) Bit16 p_sourcecellC_RNTI := omit, + in template (omit) EUTRA_CGI p_targetcellinE_UTRAN := omit, + in template (omit) MobilityInformation p_mobilityInformation := omit, + in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, + in template (omit) HOReport.iE_Extensions p_iE_Extensions := omit + ) := { + handoverReportType := p_handoverReportType, + handoverCause := p_handoverCause, + sourcecellCGI := p_sourcecellCGI, + targetcellCGI := p_targetcellCGI, + reestablishmentcellCGI := p_reestablishmentcellCGI, + // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" + sourcecellC_RNTI := p_sourcecellC_RNTI, + targetcellinE_UTRAN := p_targetcellinE_UTRAN, + // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" + mobilityInformation := p_mobilityInformation, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_hOReport + + // type integer Hysteresis (0 .. 30); // type enumerated IAB_Authorized { // type enumerated IAB_Supported { @@ -6042,24 +6251,232 @@ module LibNGAP_Templates { template (present) GUAMIType mw_gUAMIType(template (present) GUAMIType p_val := ?) := p_val; - // type record HandoverCommandTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverCommandTransfer_ExtIEs ( - // type enumerated HandoverFlag { - // type record HandoverPreparationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverPreparationUnsuccessfulTransfer_ExtIEs (?); - // type record HandoverRequestAcknowledgeTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequestAcknowledgeTransfer_ExtIEs ( - // type record HandoverRequiredTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverRequiredTransfer_ExtIEs (?); - // type record HandoverResourceAllocationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HandoverResourceAllocationUnsuccessfulTransfer_ExtIEs (?); - // type enumerated HandoverType { - // type bitstring HashedUEIdentityIndexValue length ( - // type octetstring HFCNode_ID; - // type record HFCNode_ID_new { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HFCNode_ID_new_ExtIEs (?); - // type record HOReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION HOReport_ExtIEs (?); + template HandoverCommandTransfer mw_handoverCommandTransfer( + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template QosFlowToBeForwardedList p_qosFlowToBeForwardedList := *, + template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, + template HandoverCommandTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverCommandTransfer + + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalDLForwardingUPTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation + + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation + + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation + + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_DataForwardingResponseERABList( + template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template mw_handoverCommandTransfer_id_DataForwardingResponseERABList + + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_QosFlowFailedToSetupList( + template (present) QosFlowListWithCause p_qosFlowListWithCause := ? + ) := { + { + id := id_QosFlowFailedToSetupList, + criticality := ignore, + extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template mwhandoverCommandTransfer_id_QosFlowFailedToSetupList + + template (present) HandoverFlag mw_handoverFlag(template (present) HandoverFlag p_val := handover_preparation) := p_val; + + template (present) HandoverPreparationUnsuccessfulTransfer mw_mandoverPreparationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mandoverPreparationUnsuccessfulTransfer + + template (present) HandoverRequestAcknowledgeTransfer mw_handoverRequestAcknowledgeTransfer( + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template (present) QosFlowListWithDataForwarding p_qosFlowSetupResponseList := ?, + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template SecurityResult p_securityResult := *, + template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, + template HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + securityResult := p_securityResult, + qosFlowSetupResponseList := p_qosFlowSetupResponseList, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverRequestAcknowledgeTransfer + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( + template (present) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList := ? + ) := { + { + id := id_AdditionalDLUPTNLInformationForHOList, + criticality := reject, + extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( + template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator + + template HandoverRequiredTransfer mw_handoverRequiredTransfer( + template DirectForwardingPathAvailability p_directForwardingPathAvailability := *, + template HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := * + ) := { + directForwardingPathAvailability := p_directForwardingPathAvailability, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverRequiredTransfer + + template (present) HandoverResourceAllocationUnsuccessfulTransfer mw_handoverResourceAllocationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverResourceAllocationUnsuccessfulTransfer + + template (present) HandoverType mw_handoverType(template (present) HandoverType p_value := ?) := p_value; + + template (present) HFCNode_ID_new mw_hFCNode_ID_new( + template (present) HFCNode_ID p_hFCNode_ID := ?, + template (present) TAI p_tAI := ?, + template HFCNode_ID_new.iE_Extensions p_iE_Extensions := * + ) := { + hFCNode_ID := p_hFCNode_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_hFCNode_ID_new + + template (present) HOReport mw_hOReport( + template (present) HOReport.handoverReportType p_handoverReportType := ?, + template (present) Cause p_handoverCause := ?, + template (present) NGRAN_CGI p_sourcecellCGI := ?, + template (present) NGRAN_CGI p_targetcellCGI := ?, + template NGRAN_CGI p_reestablishmentcellCGI := ?, + template Bit16 p_sourcecellC_RNTI := *, + template EUTRA_CGI p_targetcellinE_UTRAN := *, + template MobilityInformation p_mobilityInformation := *, + template UERLFReportContainer p_uERLFReportContainer := *, + template HOReport.iE_Extensions p_iE_Extensions := * + ) := { + handoverReportType := p_handoverReportType, + handoverCause := p_handoverCause, + sourcecellCGI := p_sourcecellCGI, + targetcellCGI := p_targetcellCGI, + reestablishmentcellCGI := p_reestablishmentcellCGI, + // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" + sourcecellC_RNTI := p_sourcecellC_RNTI, + targetcellinE_UTRAN := p_targetcellinE_UTRAN, + // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" + mobilityInformation := p_mobilityInformation, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_hOReport + // type integer Hysteresis (0 .. 30); // type enumerated IAB_Authorized { // type enumerated IAB_Supported { -- GitLab From 09e35cae5941291a6e5d2d1099dc95f10f5a40f1 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 25 Jan 2024 10:47:57 +0100 Subject: [PATCH 129/365] add PICS references to commons file and update PICS reference within TPs for CMP group --- test_purposes/Ngap_Common.tplan2 | 10 +++++++++- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 24 ++++++++++++------------ 2 files changed, 21 insertions(+), 13 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 5d728b5..3d42066 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -29,6 +29,15 @@ Package Ngap_Common { - PICS_A3/1_3 //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST - PICS_A3/1_4 //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY NOTIFY - PICS_A3/1_5 //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY INDICATION + - PICS_A3/2_1 //gnB - UE Context Management Procedures - INITIAL CONTEXT SETUP REQUEST + - PICS_A3/2_2 //gnB - UE Context Management Procedures - UE CONTEXT RELEASE REQUEST + - PICS_A3/2_3 //gnB - UE Context Management Procedures - UE CONTEXT RELEASE COMMAND + - PICS_A3/2_4 //gnB - UE Context Management Procedures - UE CONTEXT MODIFICATION REQUEST + - PICS_A3/2_5 //gnB - UE Context Management Procedures - RRC INACTIVE TRANSITION REPORT + - PICS_A3/2_8 //gnB - UE Context Management Procedures - RAN CP Relocation Indication + - PICS_A3/2_11 //gnB - UE Context Management Procedures - UE CONTEXT SUSPEND REQUEST + - PICS_A3/2_12 //gnB - UE Context Management Procedures - UE CONTEXT RESUME REQUEST + - PICS_A3/5_1 //gNB - Transport of NAS Messages Procedures - INITIAL UE MESSAGE - PICS_A3/8_1 //gNB - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST - PICS_A3/8_2 //gNB - Warning Message Transmission procedure - PWS CANCEL REQUEST - PICS_A3/8_3 //gNB - Warning Message Transmission procedure - PWS RESTART INDICATION @@ -41,7 +50,6 @@ Package Ngap_Common { - PICS_A3/10_2 //gNB - Trace procedure - TRACE FAILURE INDICATION messages - PICS_A3/10_3 //gNB - Trace procedure - DEACTIVATE TRACE messages - PICS_A3/10_4 //gNB - Trace procedure - CELL TRAFFIC TRACE messages - - PICS_A3/5_1 - PICS_A4/1_1 //AMF - PDU session management procedure - PDU SESSION RESOURCE SETUP REQUEST - PICS_A4/1_2 //AMF - PDU session management procedure - PDU SESSION RESOURCE RELEASE COMMAND - PICS_A4/1_3 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index cacef18..38e8a66 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -547,7 +547,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO @@ -598,7 +598,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO; check initial conditions @@ -655,7 +655,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_2 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -701,7 +701,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_3 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO @@ -748,7 +748,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_3 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO @@ -800,7 +800,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO; check initial conditions @@ -838,7 +838,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -872,7 +872,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_CMP_07 + TP Id TP_NGAP_GNB_CMP_11 Test objective "Verify that the IUT can send a RRC INACTIVE TRANSITION REPORT that contains mandatory IEs" @@ -881,7 +881,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_5 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -923,7 +923,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_8 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -966,7 +966,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_11 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1012,7 +1012,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/2_12 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions -- GitLab From f84cb963c1a467dfd21f0596185e446023f14482 Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 29 Jan 2024 14:25:55 +0100 Subject: [PATCH 130/365] TTF T033: Implement ASN.1 send/receive templates I,J,K --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1235 +++++++++++++++++++---- 1 file changed, 1033 insertions(+), 202 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 716c7e4..a277b3a 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3243,108 +3243,529 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_hOReport + template (value) IAB_Authorized m_iAB_Authorized(in IAB_Authorized p_value := authorized) := p_value; + + template (value) IAB_Supported m_iAB_Supported(in IAB_Supported p_value := true_) := p_value; + + template (value) IABNodeIndication m_iABNodeIndication(in IABNodeIndication p_value := true_) := p_value; + + template (value) IMSVoiceSupportIndicator m_iMSVoiceSupportIndicator(in IMSVoiceSupportIndicator p_value := supported) := p_value; + + template (omit) InfoOnRecommendedCellsAndRANNodesForPaging m_infoOnRecommendedCellsAndRANNodesForPaging( + in template (value) RecommendedCellsForPaging p_recommendedCellsForPaging, + in template (value) RecommendedRANNodesForPaging p_recommendRANNodesForPaging, + in template (omit) InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + recommendRANNodesForPaging := p_recommendRANNodesForPaging, + iE_Extensions := p_iE_Extensions + } // End of template m_infoOnRecommendedCellsAndRANNodesForPaging + + template (value) IntegrityProtectionIndication m_integrityProtectionIndication(in IntegrityProtectionIndication p_value := required) := p_value; + + template (value) IntegrityProtectionResult m_integrityProtectionResult(in IntegrityProtectionResult p_value := performed) := p_value; + + template (omit) ImmediateMDTNr m_immediateMDTNr( + in template (value) MeasurementsToActivate p_measurementsToActivate, + in template (omit) M1Configuration p_m1Configuration := omit, + in template (omit) M4Configuration p_m4Configuration := omit, + in template (omit) M5Configuration p_m5Configuration := omit, + in template (omit) M6Configuration p_m6Configuration := omit, + in template (omit) M7Configuration p_m7Configuration := omit, + in template (omit) BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := omit, + in template (omit) WLANMeasurementConfiguration p_wLANMeasurementConfiguration := omit, + in template (omit) MDT_Location_Info p_mDT_Location_Info := omit, + in template (omit) SensorMeasurementConfiguration p_sensorMeasurementConfiguration := omit, + in template (omit) ImmediateMDTNr.iE_Extensions p_iE_Extensions := omit + ) := { + measurementsToActivate := p_measurementsToActivate, + m1Configuration := p_m1Configuration, + // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” + m4Configuration := p_m4Configuration, + // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” + m5Configuration := p_m5Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” + m6Configuration := p_m6Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” + m7Configuration := p_m7Configuration, + // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + mDT_Location_Info := p_mDT_Location_Info, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + iE_Extensions := p_iE_Extensions + } // End of template m_immediateMDTNr + + template (omit) InterSystemFailureIndication m_interSystemFailureIndication( + in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, + in template (omit) InterSystemFailureIndication.iE_Extensions p_iE_Extensions := omit + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_interSystemFailureIndication + + template (omit) IntersystemSONConfigurationTransfer m_intersystemSONConfigurationTransfer( + in template (value) IntersystemSONTransferType p_transferType, + in template (value) IntersystemSONInformation p_intersystemSONInformation, + in template (omit) IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + transferType := p_transferType, + intersystemSONInformation := p_intersystemSONInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemSONConfigurationTransfer + + template (value) IntersystemSONTransferType m_intersystemSONTransferType_fromEUTRANtoNGRAN( + in template (value) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN + ) := { + fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN + } // End of template m_intersystemSONTransferType_fromEUTRANtoNGRAN + + template (value) IntersystemSONTransferType m_intersystemSONTransferType_fromNGRANtoEUTRAN( + in template (value) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN + ) := { + fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN + } // End of template m_intersystemSONTransferType_fromNGRANtoEUTRAN + + template (value) IntersystemSONTransferType m_intersystemSONTransferType_choice_Extensions( + in template (value) IntersystemSONTransferType.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONTransferType_choice_Extensions + + template (value) IntersystemSONeNBID m_intersystemSONeNBID( + in template (value) GlobalENB_ID p_globaleNBID, + in template (value) EPS_TAI p_selectedEPSTAI, + in template (omit) IntersystemSONeNBID.iE_Extensions p_iE_Extensions := omit + ) := { + globaleNBID := p_globaleNBID, + selectedEPSTAI := p_selectedEPSTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemSONeNBID + + template (value) IntersystemSONNGRANnodeID m_intersystemSONNGRANnodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemSONNGRANnodeID + + template (value) IntersystemSONInformation m_intersystemSONInformation_intersystemSONInformationReport( + in template (value) IntersystemSONInformationReport p_intersystemSONInformationReport + ) := { + intersystemSONInformationReport := p_intersystemSONInformationReport + } // End of template m_intersystemSONInformation_intersystemSONInformationReport + + template (value) IntersystemSONInformation m_intersystemSONInformation_choice_Extensions( + in template (value) IntersystemSONInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONInformation_choice_Extensions + + template (value) IntersystemSONInformation.choice_Extensions m_intersystemSONInformation_id_IntersystemSONInformationRequest( + in template (value) IntersystemSONInformationRequest p_intersystemSONInformationRequest + ) := { + id := id_IntersystemSONInformationRequest, + criticality := ignore, + value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } + } // End of template m_intersystemSONInformation_id_IntersystemSONInformationRequest + + template (value) IntersystemSONInformation.choice_Extensions m_intersystemSONInformation_id_IntersystemSONInformationReply( + in template (value) IntersystemSONInformationReply p_intersystemSONInformationReply + ) := { + id := id_IntersystemSONInformationReply, + criticality := ignore, + value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } + } // End of template m_intersystemSONInformation_id_IntersystemSONInformationReply + + template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_nGRAN_CellActivation( + in template (value) IntersystemCellActivationRequest p_nGRAN_CellActivation + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template m_intersystemSONInformationRequest_nGRAN_CellActivation + + template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_resourceStatus( + in template (value) IntersystemResourceStatusRequest p_resourceStatus + ) := { + resourceStatus := p_resourceStatus + } // End of template m_intersystemSONInformationRequest_resourceStatus + + template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_choice_Extensions( + in template (value) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONInformationRequest_choice_Extensions + + template (omit) IntersystemCellActivationRequest m_intersystemCellActivationRequest( + in template (value) IntersystemCellActivationRequest.activationID p_activationID, + in template (value) CellsToActivateList p_cellsToActivateList, + in template (omit) IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := omit + ) := { + activationID := p_activationID, + cellsToActivateList := p_cellsToActivateList, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemCellActivationRequest + + template (omit) IntersystemResourceStatusRequest m_intersystemResourceStatusRequest( + in template (value) ReportingSystem p_reportingSystem, + in template (value) ReportCharacteristics p_reportCharacteristics, + in template (value) ReportType p_reportType, + in template (omit) IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := omit + ) := { + reportingSystem := p_reportingSystem, + reportCharacteristics := p_reportCharacteristics, + reportType := p_reportType, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemResourceStatusRequest + + template (value) ReportingSystem m_reportingSystem_eUTRAN( + in template (value) EUTRAN_ReportingSystemIEs p_eUTRAN + ) := { + eUTRAN := p_eUTRAN + } // End of template m_reportingSystem_eUTRAN + + template (value) ReportingSystem m_reportingSystem_nGRAN( + in template (value) NGRAN_ReportingSystemIEs p_nGRAN + ) := { + nGRAN := p_nGRAN + } // End of template m_reportingSystem_nGRAN + + template (value) ReportingSystem m_reportingSystem_choice_Extensions( + in template (value) ReportingSystem.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_reportingSystem_choice_Extensions + + template (omit) EUTRAN_ReportingSystemIEs m_eUTRAN_ReportingSystemIEs( + in template (value) EUTRAN_CellToReportList p_eUTRAN_CellToReportList, + in template (omit) EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_ReportingSystemIEs + + template (omit) NGRAN_ReportingSystemIEs m_nGRAN_ReportingSystemIEs( + in template (value) NGRAN_CellToReportList p_nGRAN_CellToReportList, + in template (omit) NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CellToReportList := p_nGRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_ReportingSystemIEs + + template (omit) EUTRAN_CellToReportItem m_eUTRAN_CellToReportItem( + in template (value) EUTRA_CGI p_eCGI, + in template (omit) EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := omit + ) := { + eCGI := p_eCGI, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_CellToReportItem + + template (omit) NGRAN_CellToReportItem m_nGRAN_CellToReportItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (omit) NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := omit + ):= { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_CellToReportItem + + template (value) ReportType m_reportType_eventBasedReporting( + in template (value) EventBasedReportingIEs p_eventBasedReporting + ) := { + eventBasedReporting := p_eventBasedReporting + } // End of template m_reportType_eventBasedReporting + + template (value) ReportType m_reportType_periodicReporting( + in template (value) PeriodicReportingIEs p_periodicReporting + ) := { + periodicReporting := p_periodicReporting + } // End of template m_reportType_periodicReporting + + template (value) ReportType m_reportType_choice_Extensions( + in template (value) ReportType.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_reportType_choice_Extensions + + template (value) EventBasedReportingIEs m_eventBasedReportingIEs( + in template (value) IntersystemResourceThreshold p_intersystemResourceThresholdLow, + in template (value) IntersystemResourceThreshold p_intersystemResourceThresholdHigh, + in template (value)NumberOfMeasurementReportingLevels p_numberOfMeasurementReportingLevels, + in template (omit) EventBasedReportingIEs.iE_Extensions p_iE_Extensions := omit + ) := { + intersystemResourceThresholdLow := p_intersystemResourceThresholdLow, + intersystemResourceThresholdHigh := p_intersystemResourceThresholdHigh, + numberOfMeasurementReportingLevels := p_numberOfMeasurementReportingLevels, + iE_Extensions := p_iE_Extensions + } // End of template m_eventBasedReportingIEs + + template (value) NumberOfMeasurementReportingLevels m_numberOfMeasurementReportingLevels(in NumberOfMeasurementReportingLevels p_value := n2) := p_value; + + template (omit) PeriodicReportingIEs m_PeriodicReportingIEs( + in template (value) ReportingPeriodicity p_reportingPeriodicity, + in template (omit) PeriodicReportingIEs.iE_Extensions p_iE_Extensions := omit + ) := { + reportingPeriodicity := p_reportingPeriodicity, + iE_Extensions := p_iE_Extensions + } // End of template m_PeriodicReportingIEs + + template (value) ReportingPeriodicity m_reportingPeriodicity(in ReportingPeriodicity p_value := stop_) := p_value; + + template (value) IntersystemSONInformationReply m_intersystemSONInformationReply_nGRAN_CellActivation( + in template (value) IntersystemCellActivationReply p_nGRAN_CellActivation + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template m_intersystemSONInformationReply_nGRAN_CellActivation + + template (value) IntersystemSONInformationReply m_intersystemSONInformationReply_resourceStatus( + in template (value) IntersystemResourceStatusReply p_resourceStatus + ) := { + resourceStatus := p_resourceStatus + } // End of template m_intersystemSONInformationReply_resourceStatus + + template (value) IntersystemSONInformationReply m_intersystemSONInformationReply_choice_Extensions( + in template (value) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONInformationReply_choice_Extensions + + template (omit) IntersystemCellActivationReply m_intersystemCellActivationReply( + in template (value) ActivatedCellList p_activatedCellList, + in template (value) IntersystemCellActivationReply.activation_ID p_activation_ID, + in template (omit) IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := omit + ) := { + activatedCellList := p_activatedCellList, + activation_ID := p_activation_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemCellActivationReply + + template (omit) IntersystemResourceStatusReply m_intersystemResourceStatusReply( + in template (value) ReportingSystem p_reportingsystem, + in template (omit) IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := omit + ) := { + reportingsystem := p_reportingsystem, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemResourceStatusReply + + template (value) IntersystemSONInformationReport m_intersystemSONInformationReport_hOReportInformation( + in template (value) InterSystemHOReport p_hOReportInformation + ) := { + hOReportInformation := p_hOReportInformation + } // End of template m_intersystemSONInformationReport_hOReportInformation + + template (value) IntersystemSONInformationReport m_intersystemSONInformationReport_failureIndicationInformation( + in template (value) InterSystemFailureIndication p_failureIndicationInformation + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template m_intersystemSONInformationReport_failureIndicationInformation + + template (value) IntersystemSONInformationReport m_intersystemSONInformationReport_choice_Extensions( + in template (value) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONInformationReport_choice_Extensions + + template (value) IntersystemSONInformationReport.choice_Extensions m_intersystemSONInformationReport_id_EnergySavingIndication( + in template (value) IntersystemCellStateIndication p_intersystemCellStateIndication + ) := { + id := id_EnergySavingIndication, + criticality := ignore, + value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } + } // End of template m_intersystemSONInformationReport_id_EnergySavingIndication + + template (value) IntersystemSONInformationReport.choice_Extensions m_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( + in template (value) IntersystemResourceStatusReport p_intersystemResourceStatusReport + ) := { + id := id_IntersystemResourceStatusUpdate, + criticality := ignore, + value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } + } // End of template m_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate + + template (omit) NotificationCell_Item m_notificationCell_Item( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) NotificationCell_Item.notifyFlag p_notifyFlag := activated, + in template (omit) NotificationCell_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + notifyFlag := p_notifyFlag, + iE_Extensions := p_iE_Extensions + } // End of template m_notificationCell_Item + + template (omit) IntersystemResourceStatusReport m_intersystemResourceStatusReport( + in template (value) ResourceStatusReportingSystem p_reportingSystem, + in template (omit) IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := omit + ) := { + reportingSystem := p_reportingSystem, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemResourceStatusReport + + template (value) ResourceStatusReportingSystem m_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( + in template (value) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus + ) := { + eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus + } // End of template m_resourceStatusReportingSystem_eUTRAN_ReportingStatus + + template (value) ResourceStatusReportingSystem m_resourceStatusReportingSystemt_nGRAN_ReportingStatus( + in template (value) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus + ) := { + nGRAN_ReportingStatus := p_nGRAN_ReportingStatus + } // End of template m_resourceStatusReportingSystem_nGRAN_ReportingStatus + + template (value) ResourceStatusReportingSystem m_resourceStatusReportingSystem_choice_Extensions( + in template (value) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_resourceStatusReportingSystem_choice_Extensions + + template (omit) EUTRAN_ReportingStatusIEs m_eUTRAN_ReportingStatusIEs( + in template (value) EUTRAN_CellReportList p_eUTRAN_CellReportList, + in template (omit) EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRAN_CellReportList := p_eUTRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_ReportingStatusIEs + + template (omit) EUTRAN_CellReportItem m_eUTRAN_CellReportItem ( + in template (value) EUTRA_CGI p_eCGI, + in template (value) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup, + in template (omit) EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := omit, + in template (omit) NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := omit, + in template (omit) EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := omit, + in template (omit) EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := omit + ):= { + eCGI := p_eCGI, + eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, + eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, + eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, + eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_ReportingStatusIEs + + template (omit) EUTRAN_CompositeAvailableCapacityGroup m_EUTRAN_CompositeAvailableCapacityGroup( + in template (value) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity, + in template (value) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity, + in template (omit) EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := omit + ) := { + dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, + uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, + iE_Extensions := p_iE_Extensions + } // End of template m_EUTRAN_CompositeAvailableCapacityGroup + + template (omit) CompositeAvailableCapacity m_compositeAvailableCapacity( + in template (value) CompositeAvailableCapacity.capacityValue p_capacityValue, + in template (omit) CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := omit, + in template (omit) CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := omit + ) := { + cellCapacityClassValue := p_cellCapacityClassValue, + capacityValue := p_capacityValue, + iE_Extensions := p_iE_Extensions + } // End of template m_compositeAvailableCapacity + + template (omit) EUTRAN_RadioResourceStatus m_eUTRAN_RadioResourceStatus( + in template (value) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage, + in template (omit) EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := omit, + in template (omit) EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := omit, + in template (omit) EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := omit + ) := { + dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, + uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, + dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, + uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, + dL_Total_PRB_usage := p_dL_Total_PRB_usage, + uL_Total_PRB_usage := p_uL_Total_PRB_usage, + dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, + uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_RadioResourceStatus + + template (omit) NGRAN_ReportingStatusIEs m_nGRAN_ReportingStatusIEs( + in template (value) NGRAN_CellReportList p_nGRAN_CellReportList, + in template (omit) NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CellReportList := p_nGRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_ReportingStatusIEs + + template (omit) NGRAN_CellReportItem m_nGRAN_CellReportItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup, + in template (omit) NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := omit, + in template (omit) NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := omit, + in template (omit) NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := omit, + in template (omit) NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, + nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, + nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, + nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_CellReportItem + + template (omit) NGRAN_RadioResourceStatus m_nGRAN_RadioResourceStatus( + in template (value) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO, + in template (omit) NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := omit + ) := { + dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, + uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, + dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, + uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, + dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, + uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_RadioResourceStatus + + template (omit) InterSystemHOReport m_interSystemHOReport( + in template (value) InterSystemHandoverReportType p_handoverReportType, + in template (omit) InterSystemHOReport.iE_Extensions p_iE_Extensions := omit + ) := { + handoverReportType := p_handoverReportType, + iE_Extensions := p_iE_Extensions + } // End of template m_interSystemHOReport + + template (value) InterSystemHandoverReportType m_interSystemHandoverReportType_tooearlyIntersystemHO( + in template (value) TooearlyIntersystemHO p_tooearlyIntersystemHO + ) := { + tooearlyIntersystemHO := p_tooearlyIntersystemHO + } // End of template m_interSystemHandoverReportType_tooearlyIntersystemHO + + template (value) InterSystemHandoverReportType m_interSystemHandoverReportType_intersystemUnnecessaryHO( + in template (value) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO + ) := { + intersystemUnnecessaryHO := p_intersystemUnnecessaryHO + } // End of template m_interSystemHandoverReportType_intersystemUnnecessaryHO + + template (value) InterSystemHandoverReportType m_interSystemHandoverReportType_choice_Extensions( + in template (value) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_interSystemHandoverReportType_choice_Extensions + + template (omit) IntersystemUnnecessaryHO m_intersystemUnnecessaryHO( + in template (value) NGRAN_CGI p_sourcecellID, + in template (value) EUTRA_CGI p_targetcellID, + in template (value) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := true_, + in template (value) CandidateCellList p_candidateCellList, + in template (omit) IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := omit + ) := { + sourcecellID := p_sourcecellID, + targetcellID := p_targetcellID, + earlyIRATHO := p_earlyIRATHO, + candidateCellList := p_candidateCellList, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemUnnecessaryHO - // type integer Hysteresis (0 .. 30); - // type enumerated IAB_Authorized { - // type enumerated IAB_Supported { - // type enumerated IABNodeIndication { - // type enumerated IMSVoiceSupportIndicator { - // type integer IndexToRFSP ( - // type record InfoOnRecommendedCellsAndRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InfoOnRecommendedCellsAndRANNodesForPaging_ExtIEs (?); - // type enumerated IntegrityProtectionIndication { - // type enumerated IntegrityProtectionResult { - // type integer IntendedNumberOfPagingAttempts ( - // type bitstring InterfacesToTrace length (8); - // type record ImmediateMDTNr { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ImmediateMDTNr_ExtIEs (?); - // type record InterSystemFailureIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemFailureIndication_ExtIEs (?); - // type record IntersystemSONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONConfigurationTransfer_ExtIEs (?); - // type union IntersystemSONTransferType { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONTransferType_ExtIEs (?); - // type record IntersystemSONeNBID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONeNBID_ExtIEs (?); - // type record IntersystemSONNGRANnodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONNGRANnodeID_ExtIEs (?); - // type union IntersystemSONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformation_ExtIEs ( - // type union IntersystemSONInformationRequest { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationRequest_ExtIEs (?); - // type record IntersystemCellActivationRequest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationRequest_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI CellsToActivateList; - // type record IntersystemResourceStatusRequest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusRequest_ExtIEs (?); - // type union ReportingSystem { - // type NGAP_Containers.NGAP_PROTOCOL_IES ReportingSystem_ExtIEs (?); - // type record EUTRAN_ReportingSystemIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingSystemIEs_ExtIEs (?); - // type record NGRAN_ReportingSystemIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingSystemIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellToReportItem EUTRAN_CellToReportList; - // type record EUTRAN_CellToReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellToReportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellToReportItem NGRAN_CellToReportList; - // type record NGRAN_CellToReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellToReportItem_ExtIEs (?); - // type bitstring ReportCharacteristics length (32); - // type union ReportType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ReportType_ExtIEs (?); - // type record EventBasedReportingIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventBasedReportingIEs_ExtIEs (?); - // type integer IntersystemResourceThreshold (0 .. 100); - // type enumerated NumberOfMeasurementReportingLevels { - // type record PeriodicReportingIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PeriodicReportingIEs_ExtIEs (?); - // type enumerated ReportingPeriodicity { - // type union IntersystemSONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReply_ExtIEs (?); - // type record IntersystemCellActivationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationReply_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI ActivatedCellList; - // type record IntersystemResourceStatusReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReply_ExtIEs (?); - // type union IntersystemSONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReport_ExtIEs ( - // type record IntersystemCellStateIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellStateIndication_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NotificationCell_Item NotificationCellList; - // type record NotificationCell_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NotificationCell_Item_ExtIEs (?); - // type record IntersystemResourceStatusReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReport_ExtIEs (?); - // type union ResourceStatusReportingSystem { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResourceStatusReportingSystem_ExtIEs (?); - // type record EUTRAN_ReportingStatusIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingStatusIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellReportItem EUTRAN_CellReportList; - // type record EUTRAN_CellReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellReportItem_ExtIEs (?); - // type record EUTRAN_CompositeAvailableCapacityGroup { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CompositeAvailableCapacityGroup_ExtIEs (?); - // type record CompositeAvailableCapacity { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompositeAvailableCapacity_ExtIEs (?); - // type integer EUTRAN_NumberOfActiveUEs ( - // type record EUTRAN_RadioResourceStatus { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_RadioResourceStatus_ExtIEs (?); - // type record NGRAN_ReportingStatusIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingStatusIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellReportItem NGRAN_CellReportList; - // type record NGRAN_CellReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellReportItem_ExtIEs (?); - // type integer NGRAN_NumberOfActiveUEs ( - // type integer NGRAN_NoofRRCConnections ( - // type record NGRAN_RadioResourceStatus { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_RadioResourceStatus_ExtIEs (?); - // type record InterSystemHOReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemHOReport_ExtIEs (?); - // type union InterSystemHandoverReportType { - // type NGAP_Containers.NGAP_PROTOCOL_IES InterSystemHandoverReportType_ExtIEs (?); - // type record IntersystemUnnecessaryHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemUnnecessaryHO_ExtIEs (?); - // type octetstring LAC length (2); // type record LAI { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); // type union LastVisitedCellInformation { @@ -6477,107 +6898,517 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_hOReport - // type integer Hysteresis (0 .. 30); - // type enumerated IAB_Authorized { - // type enumerated IAB_Supported { - // type enumerated IABNodeIndication { - // type enumerated IMSVoiceSupportIndicator { - // type integer IndexToRFSP ( - // type record InfoOnRecommendedCellsAndRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InfoOnRecommendedCellsAndRANNodesForPaging_ExtIEs (?); - // type enumerated IntegrityProtectionIndication { - // type enumerated IntegrityProtectionResult { - // type integer IntendedNumberOfPagingAttempts ( - // type bitstring InterfacesToTrace length (8); - // type record ImmediateMDTNr { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ImmediateMDTNr_ExtIEs (?); - // type record InterSystemFailureIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemFailureIndication_ExtIEs (?); - // type record IntersystemSONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONConfigurationTransfer_ExtIEs (?); - // type union IntersystemSONTransferType { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONTransferType_ExtIEs (?); - // type record IntersystemSONeNBID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONeNBID_ExtIEs (?); - // type record IntersystemSONNGRANnodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemSONNGRANnodeID_ExtIEs (?); - // type union IntersystemSONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformation_ExtIEs ( - // type union IntersystemSONInformationRequest { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationRequest_ExtIEs (?); - // type record IntersystemCellActivationRequest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationRequest_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI CellsToActivateList; - // type record IntersystemResourceStatusRequest { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusRequest_ExtIEs (?); - // type union ReportingSystem { - // type NGAP_Containers.NGAP_PROTOCOL_IES ReportingSystem_ExtIEs (?); - // type record EUTRAN_ReportingSystemIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingSystemIEs_ExtIEs (?); - // type record NGRAN_ReportingSystemIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingSystemIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellToReportItem EUTRAN_CellToReportList; - // type record EUTRAN_CellToReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellToReportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellToReportItem NGRAN_CellToReportList; - // type record NGRAN_CellToReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellToReportItem_ExtIEs (?); - // type bitstring ReportCharacteristics length (32); - // type union ReportType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ReportType_ExtIEs (?); - // type record EventBasedReportingIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EventBasedReportingIEs_ExtIEs (?); - // type integer IntersystemResourceThreshold (0 .. 100); - // type enumerated NumberOfMeasurementReportingLevels { - // type record PeriodicReportingIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PeriodicReportingIEs_ExtIEs (?); - // type enumerated ReportingPeriodicity { - // type union IntersystemSONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReply_ExtIEs (?); - // type record IntersystemCellActivationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellActivationReply_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NGRAN_CGI ActivatedCellList; - // type record IntersystemResourceStatusReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReply_ExtIEs (?); - // type union IntersystemSONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES IntersystemSONInformationReport_ExtIEs ( - // type record IntersystemCellStateIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemCellStateIndication_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinNGRANNode) of NotificationCell_Item NotificationCellList; - // type record NotificationCell_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NotificationCell_Item_ExtIEs (?); - // type record IntersystemResourceStatusReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemResourceStatusReport_ExtIEs (?); - // type union ResourceStatusReportingSystem { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResourceStatusReportingSystem_ExtIEs (?); - // type record EUTRAN_ReportingStatusIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_ReportingStatusIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of EUTRAN_CellReportItem EUTRAN_CellReportList; - // type record EUTRAN_CellReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CellReportItem_ExtIEs (?); - // type record EUTRAN_CompositeAvailableCapacityGroup { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_CompositeAvailableCapacityGroup_ExtIEs (?); - // type record CompositeAvailableCapacity { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION CompositeAvailableCapacity_ExtIEs (?); - // type integer EUTRAN_NumberOfActiveUEs ( - // type record EUTRAN_RadioResourceStatus { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION EUTRAN_RadioResourceStatus_ExtIEs (?); - // type record NGRAN_ReportingStatusIEs { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_ReportingStatusIEs_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofReportedCells) of NGRAN_CellReportItem NGRAN_CellReportList; - // type record NGRAN_CellReportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_CellReportItem_ExtIEs (?); - // type integer NGRAN_NumberOfActiveUEs ( - // type integer NGRAN_NoofRRCConnections ( - // type record NGRAN_RadioResourceStatus { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_RadioResourceStatus_ExtIEs (?); - // type record InterSystemHOReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION InterSystemHOReport_ExtIEs (?); - // type union InterSystemHandoverReportType { - // type NGAP_Containers.NGAP_PROTOCOL_IES InterSystemHandoverReportType_ExtIEs (?); - // type record IntersystemUnnecessaryHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION IntersystemUnnecessaryHO_ExtIEs (?); - // type octetstring LAC length (2); + template (present) IAB_Authorized mw_iAB_Authorized(template (present) IAB_Authorized p_value := ?) := p_value; + + template (present) IAB_Supported mw_iAB_Supported(template (present) IAB_Supported p_value := true_) := p_value; + + template (present) IABNodeIndication mw_iABNodeIndication(template (present) IABNodeIndication p_value := true_) := p_value; + + template (present) IMSVoiceSupportIndicator mw_iMSVoiceSupportIndicator(template (present) IMSVoiceSupportIndicator p_value := ?) := p_value; + + template (present) InfoOnRecommendedCellsAndRANNodesForPaging mw_infoOnRecommendedCellsAndRANNodesForPaging( + template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, + template (present) RecommendedRANNodesForPaging p_recommendRANNodesForPaging := ?, + template InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + recommendRANNodesForPaging := p_recommendRANNodesForPaging, + iE_Extensions := p_iE_Extensions + } // End of template mw_infoOnRecommendedCellsAndRANNodesForPaging + + template (present) IntegrityProtectionIndication mw_integrityProtectionIndication(template (present) IntegrityProtectionIndication p_value := ?) := p_value; + + template (present) IntegrityProtectionResult mw_integrityProtectionResult(template (present) IntegrityProtectionResult p_value := ?) := p_value; + + template (present) ImmediateMDTNr mw_immediateMDTNr( + template (present) MeasurementsToActivate p_measurementsToActivate := ?, + template M1Configuration p_m1Configuration := *, + template M4Configuration p_m4Configuration := *, + template M5Configuration p_m5Configuration := *, + template M6Configuration p_m6Configuration := *, + template M7Configuration p_m7Configuration := *, + template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, + template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, + template MDT_Location_Info p_mDT_Location_Info := *, + template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, + template ImmediateMDTNr.iE_Extensions p_iE_Extensions := * + ) := { + measurementsToActivate := p_measurementsToActivate, + m1Configuration := p_m1Configuration, + // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” + m4Configuration := p_m4Configuration, + // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” + m5Configuration := p_m5Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” + m6Configuration := p_m6Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” + m7Configuration := p_m7Configuration, + // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + mDT_Location_Info := p_mDT_Location_Info, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + iE_Extensions := p_iE_Extensions + } // End of template mw_immediateMDTNr + + template InterSystemFailureIndication mw_interSystemFailureIndication( + template UERLFReportContainer p_uERLFReportContainer := *, + template InterSystemFailureIndication.iE_Extensions p_iE_Extensions := * + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_interSystemFailureIndication + + template (present) IntersystemSONConfigurationTransfer mw_intersystemSONConfigurationTransfer( + template (present) IntersystemSONTransferType p_transferType := ?, + template (present) IntersystemSONInformation p_intersystemSONInformation := ?, + template IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + transferType := p_transferType, + intersystemSONInformation := p_intersystemSONInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONConfigurationTransfer + + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromEUTRANtoNGRAN( + template (present) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN := ? + ) := { + fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN + } // End of template mw_intersystemSONTransferType_fromEUTRANtoNGRAN + + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromNGRANtoEUTRAN( + template (present) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN := ? + ) := { + fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN + } // End of template mw_intersystemSONTransferType_fromNGRANtoEUTRAN + + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_choice_Extensions( + template (present) IntersystemSONTransferType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONTransferType_choice_Extensions + + template (present) IntersystemSONeNBID mw_intersystemSONeNBID( + template (present) GlobalENB_ID p_globaleNBID := ?, + template (present) EPS_TAI p_selectedEPSTAI := ?, + template IntersystemSONeNBID.iE_Extensions p_iE_Extensions := * + ) := { + globaleNBID := p_globaleNBID, + selectedEPSTAI := p_selectedEPSTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONeNBID + + template (present) IntersystemSONNGRANnodeID mw_intersystemSONNGRANnodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONNGRANnodeID + + template (present) IntersystemSONInformation mw_intersystemSONInformation_intersystemSONInformationReport( + in template (present) IntersystemSONInformationReport p_intersystemSONInformationReport := ? + ) := { + intersystemSONInformationReport := p_intersystemSONInformationReport + } // End of template mw_intersystemSONInformation_intersystemSONInformationReport + + template (present) IntersystemSONInformation mw_intersystemSONInformation_choice_Extensions( + template (present) IntersystemSONInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformation_choice_Extensions + + template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationRequest( + template (present) IntersystemSONInformationRequest p_intersystemSONInformationRequest := ? + ) := { + id := id_IntersystemSONInformationRequest, + criticality := ignore, + value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } + } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationRequest + + template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationReply( + template (present) IntersystemSONInformationReply p_intersystemSONInformationReply := ? + ) := { + id := id_IntersystemSONInformationReply, + criticality := ignore, + value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } + } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationReply + + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_nGRAN_CellActivation( + template (present) IntersystemCellActivationRequest p_nGRAN_CellActivation := ? + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template mw_intersystemSONInformationRequest_nGRAN_CellActivation + + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_resourceStatus( + template (present) IntersystemResourceStatusRequest p_resourceStatus := ? + ) := { + resourceStatus := p_resourceStatus + } // End of template mw_intersystemSONInformationRequest_resourceStatus + + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_choice_Extensions( + template (present) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationRequest_choice_Extensions + + template (present) IntersystemCellActivationRequest mw_intersystemCellActivationRequest( + template (present) IntersystemCellActivationRequest.activationID p_activationID := ?, + template (present) CellsToActivateList p_cellsToActivateList := ?, + template IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := * + ) := { + activationID := p_activationID, + cellsToActivateList := p_cellsToActivateList, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemCellActivationRequest + + template (present) IntersystemResourceStatusRequest mw_intersystemResourceStatusRequest( + template (present) ReportingSystem p_reportingSystem := ?, + template (present) ReportCharacteristics p_reportCharacteristics := ?, + template (present) ReportType p_reportType := ?, + template IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := * + ) := { + reportingSystem := p_reportingSystem, + reportCharacteristics := p_reportCharacteristics, + reportType := p_reportType, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusRequest + + template (present) ReportingSystem mw_reportingSystem_eUTRAN( + template (present) EUTRAN_ReportingSystemIEs p_eUTRAN := ? + ) := { + eUTRAN := p_eUTRAN + } // End of template mw_reportingSystem_eUTRAN + + template (present) ReportingSystem mw_reportingSystem_nGRAN( + template (present) NGRAN_ReportingSystemIEs p_nGRAN := ? + ) := { + nGRAN := p_nGRAN + } // End of template mw_reportingSystem_nGRAN + + template (present) ReportingSystem mw_reportingSystem_choice_Extensions( + template (present) ReportingSystem.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_reportingSystem_choice_Extensions + + template (present) EUTRAN_ReportingSystemIEs mw_eUTRAN_ReportingSystemIEs( + template (present) EUTRAN_CellToReportList p_eUTRAN_CellToReportList := ?, + template EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * + ) := { + eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingSystemIEs + + template (present) NGRAN_ReportingSystemIEs mw_nGRAN_ReportingSystemIEs( + template (present) NGRAN_CellToReportList p_nGRAN_CellToReportList := ?, + template NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CellToReportList := p_nGRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_ReportingSystemIEs + + template (present) EUTRAN_CellToReportItem mw_eUTRAN_CellToReportItem( + template (present) EUTRA_CGI p_eCGI := ?, + template EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * + ) := { + eCGI := p_eCGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_CellToReportItem + + template (present) NGRAN_CellToReportItem mw_nGRAN_CellToReportItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * + ):= { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_CellToReportItem + + template (present) ReportType mw_reportType_eventBasedReporting( + template (present) EventBasedReportingIEs p_eventBasedReporting := ? + ) := { + eventBasedReporting := p_eventBasedReporting + } // End of template mw_reportType_eventBasedReporting + + template (present) ReportType mw_reportType_periodicReporting( + template (present) PeriodicReportingIEs p_periodicReporting := ? + ) := { + periodicReporting := p_periodicReporting + } // End of template mw_reportType_periodicReporting + + template (present) ReportType mw_reportType_choice_Extensions( + template (present) ReportType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_reportType_choice_Extensions + + template (present) NumberOfMeasurementReportingLevels mw_numberOfMeasurementReportingLevels(template (present) NumberOfMeasurementReportingLevels p_value := ?) := p_value; + + template (present) PeriodicReportingIEs mw_PeriodicReportingIEs( + template (present) ReportingPeriodicity p_reportingPeriodicity := ?, + template PeriodicReportingIEs.iE_Extensions p_iE_Extensions := * + ) := { + reportingPeriodicity := p_reportingPeriodicity, + iE_Extensions := p_iE_Extensions + } // End of template mw_PeriodicReportingIEs + + template (present) ReportingPeriodicity mw_reportingPeriodicity(template (present) ReportingPeriodicity p_value := ?) := p_value; + + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_nGRAN_CellActivation( + template (present) IntersystemCellActivationReply p_nGRAN_CellActivation := ? + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template mw_intersystemSONInformationReply_nGRAN_CellActivation + + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_resourceStatus( + template (present) IntersystemResourceStatusReply p_resourceStatus := ? + ) := { + resourceStatus := p_resourceStatus + } // End of template mw_intersystemSONInformationReply_resourceStatus + + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_choice_Extensions( + template (present) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationReply_choice_Extensions + + template (present) IntersystemCellActivationReply mw_intersystemCellActivationReply( + template (present) ActivatedCellList p_activatedCellList := ?, + template (present) IntersystemCellActivationReply.activation_ID p_activation_ID := ?, + template IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := * + ) := { + activatedCellList := p_activatedCellList, + activation_ID := p_activation_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemCellActivationReply + + template (present) IntersystemResourceStatusReply mw_intersystemResourceStatusReply( + template (present) ReportingSystem p_reportingsystem := ?, + template IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := * + ) := { + reportingsystem := p_reportingsystem, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusReply + + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_hOReportInformation( + template (present) InterSystemHOReport p_hOReportInformation := ? + ) := { + hOReportInformation := p_hOReportInformation + } // End of template mw_intersystemSONInformationReport_hOReportInformation + + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_failureIndicationInformation( + template (present) InterSystemFailureIndication p_failureIndicationInformation := ? + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template mw_intersystemSONInformationReport_failureIndicationInformation + + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_choice_Extensions( + template (present) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationReport_choice_Extensions + + template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_EnergySavingIndication( + template (present) IntersystemCellStateIndication p_intersystemCellStateIndication := ? + ) := { + id := id_EnergySavingIndication, + criticality := ignore, + value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } + } // End of template mw_intersystemSONInformationReport_id_EnergySavingIndication + + template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( + template (present) IntersystemResourceStatusReport p_intersystemResourceStatusReport := ? + ) := { + id := id_IntersystemResourceStatusUpdate, + criticality := ignore, + value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } + } // End of template mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate + + template (present) NotificationCell_Item mw_notificationCell_Item( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) NotificationCell_Item.notifyFlag p_notifyFlag := ?, + template NotificationCell_Item.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + notifyFlag := p_notifyFlag, + iE_Extensions := p_iE_Extensions + } // End of template mw_notificationCell_Item + + template (present) IntersystemResourceStatusReport mw_intersystemResourceStatusReport( + template (present) ResourceStatusReportingSystem p_reportingSystem := ?, + template IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := * + ) := { + reportingSystem := p_reportingSystem, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusReport + + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( + template (present) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus := ? + ) := { + eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus + } // End of template mw_resourceStatusReportingSystem_eUTRAN_ReportingStatus + + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_nGRAN_ReportingStatus( + template (present) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus := ? + ) := { + nGRAN_ReportingStatus := p_nGRAN_ReportingStatus + } // End of template mw_resourceStatusReportingSystem_nGRAN_ReportingStatus + + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystem_choice_Extensions( + template (present) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_resourceStatusReportingSystem_choice_Extensions + + template (present) EUTRAN_ReportingStatusIEs mw_eUTRAN_ReportingStatusIEs( + template (present) EUTRAN_CellReportList p_eUTRAN_CellReportList := ?, + template EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * + ) := { + eUTRAN_CellReportList := p_eUTRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingStatusIEs + + template (present) EUTRAN_CellReportItem mw_eUTRAN_CellReportItem ( + template (present) EUTRA_CGI p_eCGI, + template (present) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup := ?, + template EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := *, + template NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := *, + template EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := *, + template EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := * + ):= { + eCGI := p_eCGI, + eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, + eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, + eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, + eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingStatusIEs + + template (present) EUTRAN_CompositeAvailableCapacityGroup mw_EUTRAN_CompositeAvailableCapacityGroup( + template (present) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity := ?, + template (present) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity := ?, + template EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := * + ) := { + dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, + uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, + iE_Extensions := p_iE_Extensions + } // End of template mw_EUTRAN_CompositeAvailableCapacityGroup + + template (present) CompositeAvailableCapacity mw_compositeAvailableCapacity( + template (present) CompositeAvailableCapacity.capacityValue p_capacityValue := ?, + template CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := *, + template CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := * + ) := { + cellCapacityClassValue := p_cellCapacityClassValue, + capacityValue := p_capacityValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_compositeAvailableCapacity + + template (present) EUTRAN_RadioResourceStatus mw_eUTRAN_RadioResourceStatus( + template (present) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage := ?, + template EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := *, + template EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := *, + template EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * + ) := { + dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, + uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, + dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, + uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, + dL_Total_PRB_usage := p_dL_Total_PRB_usage, + uL_Total_PRB_usage := p_uL_Total_PRB_usage, + dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, + uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_RadioResourceStatus + + template (present) NGRAN_ReportingStatusIEs mw_nGRAN_ReportingStatusIEs( + template (present) NGRAN_CellReportList p_nGRAN_CellReportList := ?, + template NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CellReportList := p_nGRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_ReportingStatusIEs + + template (present) NGRAN_CellReportItem mw_nGRAN_CellReportItem( + template (present) NGRAN_CGI p_nGRAN_CGI, + template (present) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup := ?, + template NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := *, + template NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := *, + template NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := *, + template NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, + nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, + nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, + nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_CellReportItem + + template (present) NGRAN_RadioResourceStatus mw_nGRAN_RadioResourceStatus( + template (present) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO := ?, + template NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * + ) := { + dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, + uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, + dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, + uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, + dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, + uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_RadioResourceStatus + + template (present) InterSystemHOReport mw_interSystemHOReport( + template (present) InterSystemHandoverReportType p_handoverReportType := ?, + template InterSystemHOReport.iE_Extensions p_iE_Extensions := * + ) := { + handoverReportType := p_handoverReportType, + iE_Extensions := p_iE_Extensions + } // End of template mw_interSystemHOReport + + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_tooearlyIntersystemHO( + template (present) TooearlyIntersystemHO p_tooearlyIntersystemHO := ? + ) := { + tooearlyIntersystemHO := p_tooearlyIntersystemHO + } // End of template mw_interSystemHandoverReportType_tooearlyIntersystemHO + + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_intersystemUnnecessaryHO( + template (present) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO := ? + ) := { + intersystemUnnecessaryHO := p_intersystemUnnecessaryHO + } // End of template mw_interSystemHandoverReportType_intersystemUnnecessaryHO + + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_choice_Extensions( + template (present) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_interSystemHandoverReportType_choice_Extensions + + template (present) IntersystemUnnecessaryHO mw_intersystemUnnecessaryHO( + template (present) NGRAN_CGI p_sourcecellID := ?, + template (present) EUTRA_CGI p_targetcellID := ?, + template (present) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := ?, + template (present) CandidateCellList p_candidateCellList := ?, + template IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := * + ) := { + sourcecellID := p_sourcecellID, + targetcellID := p_targetcellID, + earlyIRATHO := p_earlyIRATHO, + candidateCellList := p_candidateCellList, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemUnnecessaryHO + // type record LAI { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); // type union LastVisitedCellInformation { -- GitLab From 290a260dbf4f045969949b987ed5ad1010a89b9b Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 29 Jan 2024 15:21:27 +0100 Subject: [PATCH 131/365] TTF T033: Implement ASN.1 send/receive templates L --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 406 ++++++++++++++++++++---- 1 file changed, 342 insertions(+), 64 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index a277b3a..5cc5f24 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3766,38 +3766,177 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_intersystemUnnecessaryHO - // type record LAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); - // type union LastVisitedCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES LastVisitedCellInformation_ExtIEs (?); - // type record LastVisitedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedCellItem_ExtIEs (?); - // type octetstring LastVisitedEUTRANCellInformation; - // type octetstring LastVisitedGERANCellInformation; - // type record LastVisitedNGRANCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedNGRANCellInformation_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPSCellsPerPrimaryCellinUEHistoryInfo) of LastVisitedPSCellInformation LastVisitedPSCellList; - // type record LastVisitedPSCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedPSCellInformation_ExtIEs (?); - // type octetstring LastVisitedUTRANCellInformation; - // type enumerated LineType { - // type enumerated LocationReportingAdditionalInfo { - // type integer LocationReportingReferenceID ( - // type record LocationReportingRequestType { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LocationReportingRequestType_ExtIEs ( - // type record LoggedMDTNr { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LoggedMDTNr_ExtIEs ( - // type enumerated LoggingInterval { - // type enumerated LoggingDuration { - // type enumerated Links_to_log { - // type union LoggedMDTTrigger { - // type NGAP_Containers.NGAP_PROTOCOL_IES LoggedMDTTrigger_ExtIEs (?); - // type enumerated LTEM_Indication { - // type octetstring LTEUERLFReportContainer; - // type record LTEV2XServicesAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEV2XServicesAuthorized_ExtIEs (?); - // type record LTEUESidelinkAggregateMaximumBitrate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEUE_Sidelink_Aggregate_MaximumBitrates_ExtIEs (?); + template (omit) LAI m_lai( + in template (value) PLMNIdentity p_pLMNidentity, + in template (value) LAC p_lAC, + in template (omit) LAI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNidentity := p_pLMNidentity, + lAC := p_lAC, + iE_Extensions := p_iE_Extensions + } // End of template m_lai + + template (value) LastVisitedCellInformation m_interSystemHandoverReportType_nGRANCell( + in template (value) LastVisitedNGRANCellInformation p_nGRANCell + ) := { + nGRANCell := p_nGRANCell + } // End of template m_interSystemHandoverReportType_nGRANCell + + template (value) LastVisitedCellInformation m_interSystemHandoverReportType_eUTRANCell( + in template (value) LastVisitedEUTRANCellInformation p_eUTRANCell + ) := { + eUTRANCell := p_eUTRANCell + } // End of template m_interSystemHandoverReportType_eUTRANCell + + template (value) LastVisitedCellInformation m_interSystemHandoverReportType_uTRANCell( + in template (value) LastVisitedUTRANCellInformation p_uTRANCell + ) := { + uTRANCell := p_uTRANCell + } // End of template m_interSystemHandoverReportType_uTRANCell + + template (value) LastVisitedCellInformation m_interSystemHandoverReportType_gERANCell( + in template (value) LastVisitedGERANCellInformation p_gERANCell + ) := { + gERANCell := p_gERANCell + } // End of template m_interSystemHandoverReportType_gERANCell + + template (value) LastVisitedCellInformation m_lastVisitedCellInformation_choice_Extensions( + in template (value) LastVisitedCellInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_lastVisitedCellInformation_choice_Extensions + + template (omit) LastVisitedCellItem m_lastVisitedCellItem( + in template (value) LastVisitedCellInformation p_lastVisitedCellInformation, + in template (omit) LastVisitedCellItem.iE_Extensions p_iE_Extensions := omit + ) := { + lastVisitedCellInformation := p_lastVisitedCellInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_lastVisitedCellItem + + template (omit) LastVisitedNGRANCellInformation m_lastVisitedNGRANCellInformation( + in template (value) NGRAN_CGI p_globalCellID, + in template (value) CellType p_cellType, + in template (value) TimeUEStayedInCell p_timeUEStayedInCell, + in template (omit) TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := omit, + in template (omit) Cause p_hOCauseValue := omit, + in template (omit) LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := omit + ) := { + globalCellID := p_globalCellID, + cellType := p_cellType, + timeUEStayedInCell := p_timeUEStayedInCell, + timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, + hOCauseValue := p_hOCauseValue, + iE_Extensions := p_iE_Extensions + } // End of template m_lastVisitedNGRANCellInformation + + template (value) LastVisitedNGRANCellInformation.iE_Extensions m_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( + in template (value) LastVisitedPSCellList p_lastVisitedPSCellList + ) := { + { + id := id_LastVisitedPSCellList, + criticality := ignore, + extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } + } + } // End of template m_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList + + template (omit) LastVisitedPSCellInformation m_LastVisitedPSCellInformation( + in template (value) NGRAN_CGI p_pSCellID, + in template (value) LastVisitedPSCellInformation.timeStay p_timeStay, + in template (omit) LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := omit + ) := { + pSCellID := p_pSCellID, + timeStay := p_timeStay, + iE_Extensions := p_iE_Extensions + } // End of template m_LastVisitedPSCellInformation + + template (value) LineType m_lineType(in LineType p_value := pon) := p_value; + + template (value) LocationReportingAdditionalInfo m_locationReportingAdditionalInfo(in LocationReportingAdditionalInfo p_value := includePSCell) := p_value; + + template (omit) LocationReportingRequestType m_locationReportingRequestType( + in template (value) EventType p_eventType, + in template (value) ReportArea p_reportArea, + in template (omit) AreaOfInterestList p_areaOfInterestList := omit, + in template (omit) LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := omit, + in template (omit) LocationReportingRequestType.iE_Extensions p_iE_Extensions := omit + ) := { + eventType := p_eventType, + reportArea := p_reportArea, + areaOfInterestList := p_areaOfInterestList, + locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, + // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” + iE_Extensions := p_iE_Extensions + } // End of template m_locationReportingRequestType + + template (value) LocationReportingRequestType.iE_Extensions m_locationReportingRequestType_id_LocationReportingAdditionalInfo( + in template (value) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo + ) := { + { + id := id_LocationReportingAdditionalInfo, + criticality := ignore, + extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } + } + } // End of template m_locationReportingRequestType_id_LocationReportingAdditionalInfo + + template (omit) LoggedMDTNr m_loggedMDTNr( + in template (value) LoggingInterval p_loggingInterval, + in template (value) LoggingDuration p_loggingDuration, + in template (value) LoggedMDTTrigger p_loggedMDTTrigger, + in template (omit) BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := omit, + in template (omit) WLANMeasurementConfiguration p_wLANMeasurementConfiguration := omit, + in template (omit) SensorMeasurementConfiguration p_sensorMeasurementConfiguration := omit, + in template (omit) AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := omit, + in template (omit) LoggedMDTNr.iE_Extensions p_iE_Extensions := omit + ) := { + loggingInterval := p_loggingInterval, + loggingDuration := p_loggingDuration, + loggedMDTTrigger := p_loggedMDTTrigger, + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, + iE_Extensions := p_iE_Extensions + } // End of template m_loggedMDTNr + + template (value) LoggingInterval m_loggingInterval(in LoggingInterval p_value := ms320) := p_value; + + template (value) LoggingDuration m_loggingDuration(in LoggingDuration p_value := m10) := p_value; + + template (value) Links_to_log m_Links_to_log(in Links_to_log p_value := uplink) := p_value; + + template (value) LoggedMDTTrigger m_loggedMDTTrigger_gERANCell( + in template (value) EventTrigger p_eventTrigger + ) := { + eventTrigger := p_eventTrigger + } // End of template m_loggedMDTTrigger_gERANCell + + template (value) LoggedMDTTrigger m_loggedMDTTrigger_choice_Extensions( + in template (value) LoggedMDTTrigger.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_loggedMDTTrigger_choice_Extensions + + template (value) LTEM_Indication m_lTEM_Indication(in LTEM_Indication p_value := lte_m) := p_value; + + template (omit) LTEV2XServicesAuthorized m_lTEV2XServicesAuthorized( + in template (omit) VehicleUE p_vehicleUE := omit, + in template (omit) PedestrianUE p_pedestrianUE:= omit, + in template (omit) LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit + ) := { + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template m_lTEV2XServicesAuthorized + + template (omit) LTEUESidelinkAggregateMaximumBitrate m_lTEUESidelinkAggregateMaximumBitrate( + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, + in template (omit) LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template m_lTEUESidelinkAggregateMaximumBitrate + // type bitstring MaskedIMEISV length (64); // type integer MaximumDataBurstVolume ( // type bitstring MessageIdentifier length (16); @@ -7409,38 +7548,177 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_intersystemUnnecessaryHO - // type record LAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LAI_ExtIEs (?); - // type union LastVisitedCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES LastVisitedCellInformation_ExtIEs (?); - // type record LastVisitedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedCellItem_ExtIEs (?); - // type octetstring LastVisitedEUTRANCellInformation; - // type octetstring LastVisitedGERANCellInformation; - // type record LastVisitedNGRANCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedNGRANCellInformation_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPSCellsPerPrimaryCellinUEHistoryInfo) of LastVisitedPSCellInformation LastVisitedPSCellList; - // type record LastVisitedPSCellInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LastVisitedPSCellInformation_ExtIEs (?); - // type octetstring LastVisitedUTRANCellInformation; - // type enumerated LineType { - // type enumerated LocationReportingAdditionalInfo { - // type integer LocationReportingReferenceID ( - // type record LocationReportingRequestType { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LocationReportingRequestType_ExtIEs ( - // type record LoggedMDTNr { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LoggedMDTNr_ExtIEs ( - // type enumerated LoggingInterval { - // type enumerated LoggingDuration { - // type enumerated Links_to_log { - // type union LoggedMDTTrigger { - // type NGAP_Containers.NGAP_PROTOCOL_IES LoggedMDTTrigger_ExtIEs (?); - // type enumerated LTEM_Indication { - // type octetstring LTEUERLFReportContainer; - // type record LTEV2XServicesAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEV2XServicesAuthorized_ExtIEs (?); - // type record LTEUESidelinkAggregateMaximumBitrate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION LTEUE_Sidelink_Aggregate_MaximumBitrates_ExtIEs (?); + template (present) LAI mw_lai( + template (present) PLMNIdentity p_pLMNidentity := ?, + template (present) LAC p_lAC := ?, + template LAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNidentity := p_pLMNidentity, + lAC := p_lAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_lai + + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_nGRANCell( + template (present) LastVisitedNGRANCellInformation p_nGRANCell := ? + ) := { + nGRANCell := p_nGRANCell + } // End of template mw_interSystemHandoverReportType_nGRANCell + + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_eUTRANCell( + template (present) LastVisitedEUTRANCellInformation p_eUTRANCell := ? + ) := { + eUTRANCell := p_eUTRANCell + } // End of template mw_interSystemHandoverReportType_eUTRANCell + + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_uTRANCell( + template (present) LastVisitedUTRANCellInformation p_uTRANCell := ? + ) := { + uTRANCell := p_uTRANCell + } // End of template mw_interSystemHandoverReportType_uTRANCell + + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_gERANCell( + template (present) LastVisitedGERANCellInformation p_gERANCell := ? + ) := { + gERANCell := p_gERANCell + } // End of template mw_interSystemHandoverReportType_gERANCell + + template (present) LastVisitedCellInformation mw_lastVisitedCellInformation_choice_Extensions( + template (present) LastVisitedCellInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_lastVisitedCellInformation_choice_Extensions + + template (present) LastVisitedCellItem mw_lastVisitedCellItem( + template (present) LastVisitedCellInformation p_lastVisitedCellInformation := ?, + template LastVisitedCellItem.iE_Extensions p_iE_Extensions := * + ) := { + lastVisitedCellInformation := p_lastVisitedCellInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_lastVisitedCellItem + + template (present) LastVisitedNGRANCellInformation mw_lastVisitedNGRANCellInformation( + template (present) NGRAN_CGI p_globalCellID := ?, + template (present) CellType p_cellType := ?, + template (present) TimeUEStayedInCell p_timeUEStayedInCell := ?, + template TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := *, + template Cause p_hOCauseValue := *, + template LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := * + ) := { + globalCellID := p_globalCellID, + cellType := p_cellType, + timeUEStayedInCell := p_timeUEStayedInCell, + timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, + hOCauseValue := p_hOCauseValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_lastVisitedNGRANCellInformation + + template (present) LastVisitedNGRANCellInformation.iE_Extensions mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( + template (present) LastVisitedPSCellList p_lastVisitedPSCellList := ? + ) := { + { + id := id_LastVisitedPSCellList, + criticality := ignore, + extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } + } + } // End of template mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList + + template (present) LastVisitedPSCellInformation mw_LastVisitedPSCellInformation( + template (present) NGRAN_CGI p_pSCellID := ?, + template (present) LastVisitedPSCellInformation.timeStay p_timeStay := ?, + template LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := * + ) := { + pSCellID := p_pSCellID, + timeStay := p_timeStay, + iE_Extensions := p_iE_Extensions + } // End of template mw_LastVisitedPSCellInformation + + template (present) LineType mw_lineType(template (present) LineType p_value := pon) := p_value; + + template (present) LocationReportingAdditionalInfo mw_locationReportingAdditionalInfo(template (present) LocationReportingAdditionalInfo p_value := includePSCell) := p_value; + + template (present) LocationReportingRequestType mw_locationReportingRequestType( + template (present) EventType p_eventType := ?, + template (present) ReportArea p_reportArea := ?, + template AreaOfInterestList p_areaOfInterestList := *, + template LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := *, + template LocationReportingRequestType.iE_Extensions p_iE_Extensions := * + ) := { + eventType := p_eventType, + reportArea := p_reportArea, + areaOfInterestList := p_areaOfInterestList, + locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, + // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” + iE_Extensions := p_iE_Extensions + } // End of template mw_locationReportingRequestType + + template (present) LocationReportingRequestType.iE_Extensions mw_locationReportingRequestType_id_LocationReportingAdditionalInfo( + template (present) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo := ? + ) := { + { + id := id_LocationReportingAdditionalInfo, + criticality := ignore, + extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } + } + } // End of template mw_locationReportingRequestType_id_LocationReportingAdditionalInfo + + template (present) LoggedMDTNr mw_loggedMDTNr( + template (present) LoggingInterval p_loggingInterval := ?, + template (present) LoggingDuration p_loggingDuration := ?, + template (present) LoggedMDTTrigger p_loggedMDTTrigger := ?, + template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, + template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, + template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, + template AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := *, + template LoggedMDTNr.iE_Extensions p_iE_Extensions := * + ) := { + loggingInterval := p_loggingInterval, + loggingDuration := p_loggingDuration, + loggedMDTTrigger := p_loggedMDTTrigger, + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, + iE_Extensions := p_iE_Extensions + } // End of template mw_loggedMDTNr + + template (present) LoggingInterval mw_loggingInterval(template (present) LoggingInterval p_value := ?) := p_value; + + template (present) LoggingDuration mw_loggingDuration(template (present) LoggingDuration p_value := ?) := p_value; + + template (present) Links_to_log mw_Links_to_log(template (present) Links_to_log p_value := ?) := p_value; + + template (present) LoggedMDTTrigger mw_loggedMDTTrigger_gERANCell( + template (present) EventTrigger p_eventTrigger := ? + ) := { + eventTrigger := p_eventTrigger + } // End of template mw_loggedMDTTrigger_gERANCell + + template (present) LoggedMDTTrigger mw_loggedMDTTrigger_choice_Extensions( + template (present) LoggedMDTTrigger.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_loggedMDTTrigger_choice_Extensions + + template (present) LTEM_Indication mw_lTEM_Indication(template (present) LTEM_Indication p_value := lte_m) := p_value; + + template LTEV2XServicesAuthorized mw_lTEV2XServicesAuthorized( + template VehicleUE p_vehicleUE := *, + template PedestrianUE p_pedestrianUE:= *, + template LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * + ) := { + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_lTEV2XServicesAuthorized + + template (present) LTEUESidelinkAggregateMaximumBitrate mw_lTEUESidelinkAggregateMaximumBitrate( + template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, + template LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_lTEUESidelinkAggregateMaximumBitrate + // type bitstring MaskedIMEISV length (64); // type integer MaximumDataBurstVolume ( // type bitstring MessageIdentifier length (16); -- GitLab From 317ee5dad9f42c63a7b759d3ff725f1fe948dd4e Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 30 Jan 2024 14:53:05 +0100 Subject: [PATCH 132/365] TTF T033: Implement ASN.1 send/receive templates M --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 8283 +++++++++++++---------- 1 file changed, 4795 insertions(+), 3488 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 5cc5f24..7750fd6 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3937,404 +3937,1057 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_lTEUESidelinkAggregateMaximumBitrate - // type bitstring MaskedIMEISV length (64); - // type integer MaximumDataBurstVolume ( - // type bitstring MessageIdentifier length (16); - // type enumerated MaximumIntegrityProtectedDataRate { - // type integer MBS_AreaSessionID ( - // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_DataForwardingResponseMRBItem MBS_DataForwardingResponseMRBList; - // type record MBS_DataForwardingResponseMRBItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DataForwardingResponseMRBItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_MappingandDataForwardingRequestItem MBS_MappingandDataForwardingRequestList; - // type record MBS_MappingandDataForwardingRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_MappingandDataForwardingRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of QosFlowIdentifier MBS_QoSFlowList; - // type union MRB_ProgressInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES MRB_ProgressInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of MBS_QoSFlowsToBeSetupItem MBS_QoSFlowsToBeSetupList; - // type record MBS_QoSFlowsToBeSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_QoSFlowsToBeSetupItem_ExtIEs (?); - // type union MBS_ServiceArea { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_ServiceArea_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_ServiceAreaInformationItem MBS_ServiceAreaInformationList; - // type record MBS_ServiceAreaInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformationItem_ExtIEs (?); - // type record MBS_ServiceAreaInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsforMBS) of NR_CGI MBS_ServiceAreaCellList; - // type record length (1 .. NGAP_Constants.maxnoofTAIforMBS) of TAI MBS_ServiceAreaTAIList; - // type record MBS_SessionID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionID_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionFailedtoSetupItem MBSSessionFailedtoSetupList; - // type record MBSSessionFailedtoSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionFailedtoSetupItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_SourcetoTargetItem MBS_ActiveSessionInformation_SourcetoTargetList; - // type record MBS_ActiveSessionInformation_SourcetoTargetItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_SourcetoTargetItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_TargettoSourceItem MBS_ActiveSessionInformation_TargettoSourceList; - // type record MBS_ActiveSessionInformation_TargettoSourceItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_TargettoSourceItem_ExtIEs (?); - // type record MBSSessionSetupOrModFailureTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModFailureTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupResponseItem MBSSessionSetupResponseList; - // type record MBSSessionSetupResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupResponseItem_ExtIEs (?); - // type record MBSSessionSetupOrModRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBSSessionSetupOrModRequestTransferIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMBSFSAs) of MBS_SessionFSAID MBS_SessionFSAIDList; - // type octetstring MBS_SessionFSAID length (3); - // type record MBSSessionReleaseResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionReleaseResponseTransfer_ExtIEs (?); - // type record MBSSessionSetupOrModResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModResponseTransfer_ExtIEs (?); - // type enumerated MBS_SupportIndicator { - // type union MBS_SessionTNLInfo5GC { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfo5GC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfo5GCItem MBS_SessionTNLInfo5GCList; - // type record MBS_SessionTNLInfo5GCItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfo5GCItem_ExtIEs (?); - // type union MBS_SessionTNLInfoNGRAN { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfoNGRAN_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfoNGRANItem MBS_SessionTNLInfoNGRANList; - // type record MBS_SessionTNLInfoNGRANItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfoNGRANItem_ExtIEs (?); - // type record MBS_DistributionReleaseRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionReleaseRequesTransfer_ExtIEs (?); - // type record MBS_DistributionSetupRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupRequestTransfer_ExtIEs (?); - // type record MBS_DistributionSetupResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupResponseTransfer_ExtIEs (?); - // type record MBS_DistributionSetupUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupRequestItem MBSSessionSetupRequestList; - // type record MBSSessionSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetuporModifyRequestItem MBSSessionSetuporModifyRequestList; - // type record MBSSessionSetuporModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetuporModifyRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionToReleaseItem MBSSessionToReleaseList; - // type record MBSSessionToReleaseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionToReleaseItem_ExtIEs (?); - // type enumerated MBSSessionStatus { - // type enumerated MicoAllPLMN { - // type enumerated MICOModeIndication { - // type bitstring MobilityInformation length (16); - // type record MobilityRestrictionList { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MobilityRestrictionList_ExtIEs ( - // type union MDT_AlignmentInfo { - // type NGAP_Containers.NGAP_PROTOCOL_IES MDT_AlignmentInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNList; - // type record length (0 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNModificationList; - // type record MDT_Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_ExtIEs (?); - // type record MDT_Configuration_NR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_NR_ExtIEs (?); - // type record MDT_Configuration_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_EUTRA_ExtIEs (?); - // type enumerated MDT_Activation { - // type union MDTModeNr { - // type NGAP_Containers.NGAP_PROTOCOL_IES MDTModeNr_ExtIEs (?); - // type octetstring MDTModeEutra; - // type bitstring MeasurementsToActivate length (8); - // type integer MRB_ID ( - // type record MulticastSessionActivationRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionActivationRequestTransfer_ExtIEs (?); - // type record MulticastSessionDeactivationRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionDeactivationRequestTransfer_ExtIEs (?); - // type record MulticastSessionUpdateRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES MulticastSessionUpdateRequestTransferIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPagingAreas) of MulticastGroupPagingAreaItem MulticastGroupPagingAreaList; - // type record MulticastGroupPagingAreaItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingAreaItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAI MBS_AreaTAIList; - // type record MulticastGroupPagingArea { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingArea_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEsforPaging) of UE_PagingItem UE_PagingList; - // type record UE_PagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_PagingItem_ExtIEs (?); - // type record M1Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1Configuration_ExtIEs ( - // type enumerated IncludeBeamMeasurementsIndication { - // type integer MaxNrofRS_IndexesToReport ( - // type enumerated M1ReportingTrigger { - // type record M1ThresholdEventA2 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1ThresholdEventA2_ExtIEs (?); - // type union M1ThresholdType { - // type NGAP_Containers.NGAP_PROTOCOL_IES M1ThresholdType_ExtIEs (?); - // type record M1PeriodicReporting { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1PeriodicReporting_ExtIEs ( - // type record M4Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M4Configuration_ExtIEs ( - // type enumerated M4ReportAmountMDT { - // type enumerated M4period { - // type record M5Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M5Configuration_ExtIEs ( - // type enumerated M5ReportAmountMDT { - // type enumerated M5period { - // type record M6Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M6Configuration_ExtIEs ( - // type enumerated M6ReportAmountMDT { - // type enumerated M6report_Interval { - // type record M7Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M7Configuration_ExtIEs ( - // type enumerated M7ReportAmountMDT { - // type integer M7period ( - // type record MDT_Location_Info { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Location_Info_ExtIEs (?); - // type bitstring MDT_Location_Information length (8); - // type union N3IWF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); - // type octetstring NAS_PDU; - // type octetstring NASSecurityParametersFromNGRAN; - // type enumerated NB_IoT_DefaultPagingDRX { - // type enumerated NB_IoT_PagingDRX { - // type enumerated NB_IoT_Paging_eDRXCycle { - // type enumerated NB_IoT_Paging_TimeWindow { - // type record NB_IoT_Paging_eDRXInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); - // type integer NB_IoT_UEPriority ( - // type integer NetworkInstance ( - // type enumerated NewSecurityContextInd { - // type integer NextHopChainingCount (0 .. 7); - // type enumerated NextPagingAreaScope { - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; - // type record NGAPIESupportInformationRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; - // type record NGAPIESupportInformationResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); - // type union NgENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); - // type enumerated NotifySourceNGRANNode { - // type union NGRAN_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; - // type record NGRAN_TNLAssociationToRemoveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); - // type octetstring NGRANTraceID length (8); - // type bitstring NID length (44); - // type record NonDynamic5QIDescriptor { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; - // type enumerated NotificationCause { - // type enumerated NotificationControl { - // type union NPN_AccessInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); - // type union NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); - // type union NPN_PagingAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); - // type union NPN_Support { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); - // type bitstring NRCellIdentity length (36); - template (value) NRCellIdentity m_ie_nRCellId(template (value) NRCellIdentity p_nrCId:='000000000000000000000000000000000000'B):= p_nrCId; - // type record NR_CGI { - template (value) NR_CGI m_ie_nrCgi( - template (value) PLMNIdentity p_PlmnId, - template (value) NRCellIdentity p_nrCellId, - in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_PlmnId, - nRCellIdentity := p_nrCellId, - iE_Extensions := p_iE_Extensions - } //End of template m_ie_nrCgi - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; - // type record NR_PagingeDRXInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); - // type enumerated NR_Paging_eDRX_Cycle { - // type enumerated NR_Paging_Time_Window { - // type bitstring NRencryptionAlgorithms length ( - // type bitstring NRintegrityProtectionAlgorithms length ( - // type octetstring NRMobilityHistoryReport; - // type octetstring NRPPa_PDU; - // type octetstring NRUERLFReportContainer; - // type record NRNTNTAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); - // type integer NumberOfBroadcasts (0 .. 65535); - // type integer NumberOfBroadcastsRequested (0 .. 65535); - // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); - // type integer NRFrequencyBand ( - // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; - // type record NRFrequencyBandItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); - // type record NRFrequencyInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); - // type integer NR_PCI ( - // type record NRV2XServicesAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); - // type enumerated VehicleUE { - // type enumerated PedestrianUE { - // type record NRUESidelinkAggregateMaximumBitrate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); - // type integer NSAG_ID ( - // type enumerated OnboardingSupport { - // type enumerated OverloadAction { - // type union OverloadResponse { - // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; - // type record OverloadStartNSSAIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); - // type integer PacketDelayBudget ( - // type record PacketErrorRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); - // type integer PacketLossRate ( - // type record PagingAssisDataforCEcapabUE { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); - // type record PagingAttemptInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); - // type integer PagingAttemptCount ( - // type enumerated PagingCause { - // type enumerated PagingCauseIndicationForVoiceService { + template (value) MaximumIntegrityProtectedDataRate m_maximumIntegrityProtectedDataRate(in MaximumIntegrityProtectedDataRate p_value := bitrate64kbs) := p_value; - // type enumerated PagingDRX { - template (value) PagingDRX m_ie_defaultPagingDRX(in PagingDRX p_drx := v256) := p_drx; + template (omit) MBS_DataForwardingResponseMRBItem m_mBS_DataForwardingResponseMRBItem( + in template (value) MRB_ID p_mRB_ID, + in template (value) UPTransportLayerInformation p_dL_Forwarding_UPTNLInformation, + in template (omit) MRB_ProgressInformation p_mRB_ProgressInformation := omit, + in template (omit) MBS_DataForwardingResponseMRBItem.iE_Extensions p_iE_Extensions := omit + ) := { + mRB_ID := p_mRB_ID, + dL_Forwarding_UPTNLInformation := p_dL_Forwarding_UPTNLInformation, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DataForwardingResponseMRBItem - // type enumerated PagingOrigin { - // type enumerated PagingPriority { - // type enumerated PagingProbabilityInformation { - // type record PathSwitchRequestAcknowledgeTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( - // type record PathSwitchRequestSetupFailedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); - // type record PathSwitchRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( - // type record PathSwitchRequestUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); - // type record PC5QoSParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; - // type record PC5QoSFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); - // type record PC5FlowBitRates { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; - // type enumerated PrivacyIndicator { - // type record PDUSessionAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); + template (omit) MBS_MappingandDataForwardingRequestItem m_mBS_MappingandDataForwardingRequestItem( + in template (value) MRB_ID p_mRB_ID, + in template (value) MBS_QoSFlowList p_mBS_QoSFlowList, + in template (omit) MRB_ProgressInformation p_mRB_ProgressInformation := omit, + in template (omit) MBS_MappingandDataForwardingRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + mRB_ID := p_mRB_ID, + mBS_QoSFlowList := p_mBS_QoSFlowList, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_MappingandDataForwardingRequestItem - // type integer PDUSessionID (0 .. 255); - template (value) PDUSessionID m_ie_pDUSessId(in PDUSessionID p_val := 0) := p_val; + template (value) MRB_ProgressInformation m_mRB_ProgressInformation_pDCP_SN_Length12( + in template (value) MRB_ProgressInformation.pDCP_SN_Length12 p_pDCP_SN_Length12 + ) := { + pDCP_SN_Length12 := p_pDCP_SN_Length12 + } // End of template m_mRB_ProgressInformation_pDCP_SN_Length12 - // type integer PDUSessionPairID ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; - // type record PDUSessionResourceAdmittedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; - // type record PDUSessionResourceFailedToModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; - // type record PDUSessionResourceFailedToModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; - // type record PDUSessionResourceFailedToResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; - // type record PDUSessionResourceFailedToResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; - // type record PDUSessionResourceFailedToSetupItemCxtFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; - // type record PDUSessionResourceFailedToSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; - // type record PDUSessionResourceFailedToSetupItemHOAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; - // type record PDUSessionResourceFailedToSetupItemPSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; - // type record PDUSessionResourceFailedToSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; - // type record PDUSessionResourceHandoverItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; - // type record PDUSessionResourceInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; - // type record PDUSessionResourceItemCxtRelCpl { - // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; - // type record PDUSessionResourceItemCxtRelReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; - // type record PDUSessionResourceItemHORqd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); - // type record PDUSessionResourceModifyConfirmTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); - // type record PDUSessionResourceModifyRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( - // type record PDUSessionResourceModifyResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; - // type record PDUSessionResourceModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; - // type record PDUSessionResourceModifyItemModInd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; - // type record PDUSessionResourceModifyItemModReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; - // type record PDUSessionResourceModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); - // type record PDUSessionResourceModifyUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; - // type record PDUSessionResourceNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); - // type record PDUSessionResourceNotifyReleasedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( - // type record PDUSessionResourceNotifyTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( - // type record PDUSessionResourceReleaseCommandTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; - // type record PDUSessionResourceReleasedItemNot { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; - // type record PDUSessionResourceReleasedItemPSAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; - // type record PDUSessionResourceReleasedItemPSFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; - // type record PDUSessionResourceReleasedItemRelRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); - // type record PDUSessionResourceReleaseResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; - // type record PDUSessionResourceResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; - // type record PDUSessionResourceResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; - // type record PDUSessionResourceSecondaryRATUsageItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; - // type record PDUSessionResourceSetupItemCxtReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; - // type record PDUSessionResourceSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; - // type record PDUSessionResourceSetupItemHOReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( + template (value) MRB_ProgressInformation m_mRB_ProgressInformation_pDCP_SN_Length18( + in template (value) MRB_ProgressInformation.pDCP_SN_Length18 p_pDCP_SN_Length18 + ) := { + pDCP_SN_Length18 := p_pDCP_SN_Length18 + } // End of template m_mRB_ProgressInformation_pDCP_SN_Length18 - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; - template (value) PDUSessionResourceSetupListSUReq m_ie_pDUSessionResourceSetupListSUReq( - in template (value) PDUSessionResourceSetupListSUReq p_list - ) := p_list; + template (value) MRB_ProgressInformation m_mRB_ProgressInformation_choice_Extensions( + in template (value) MRB_ProgressInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mRB_ProgressInformation_choice_Extensions + + template (omit) MBS_QoSFlowsToBeSetupItem m_mBS_QoSFlowsToBeSetupItem( + in template (value)QosFlowIdentifier p_mBSqosFlowIdentifier, + in template (value)QosFlowLevelQosParameters p_mBSqosFlowLevelQosParameters, + in template (omit) MBS_QoSFlowsToBeSetupItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBSqosFlowIdentifier := p_mBSqosFlowIdentifier, + mBSqosFlowLevelQosParameters := p_mBSqosFlowLevelQosParameters, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_QoSFlowsToBeSetupItem + + template (value) MBS_ServiceArea m_mBS_ServiceArea_locationindependent( + in template (value) MBS_ServiceAreaInformation p_locationindependent + ) := { + locationindependent := p_locationindependent + } // End of template m_mBS_ServiceArea_locationindependent + + template (value) MBS_ServiceArea m_mBS_ServiceArea_locationdependent( + in template (value) MBS_ServiceAreaInformationList p_locationdependent + ) := { + locationdependent := p_locationdependent + } // End of template m_mBS_ServiceArea_locationdependent + + template (value) MBS_ServiceArea m_mBS_ServiceArea_choice_Extensions( + in template (value) MBS_ServiceArea.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mBS_ServiceArea_choice_Extensions + + template (omit) MBS_ServiceAreaInformationItem m_mBS_ServiceAreaInformationItem( + in template (value) MBS_AreaSessionID p_mBS_AreaSessionID, + in template (value) MBS_ServiceAreaInformation p_mBS_ServiceAreaInformation, + in template (omit) MBS_ServiceAreaInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceAreaInformation := p_mBS_ServiceAreaInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_ServiceAreaInformationItem + + template (omit) MBS_ServiceAreaInformation m_mBS_ServiceAreaInformation( + in template (omit) MBS_ServiceAreaCellList p_mBS_ServiceAreaCellList := omit, + in template (omit) MBS_ServiceAreaTAIList p_mBS_ServiceAreaTAIList := omit, + in template (omit) MBS_ServiceAreaInformation.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_ServiceAreaCellList := p_mBS_ServiceAreaCellList, + mBS_ServiceAreaTAIList := p_mBS_ServiceAreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_ServiceAreaInformation + + template (omit) MBS_SessionID m_mBS_SessionID( + in template (value) TMGI p_tMGI, + in template (omit) NID p_nID := omit, + in template (omit) MBS_SessionID.iE_Extensions p_iE_Extensions := omit + ) := { + tMGI := p_tMGI, + nID := p_nID, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_SessionID + + template (omit) MBSSessionFailedtoSetupItem m_mBSSessionFailedtoSetupItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) Cause p_cause, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) MBSSessionFailedtoSetupItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionFailedtoSetupItem + + template (omit) MBS_ActiveSessionInformation_SourcetoTargetItem m_mBS_ActiveSessionInformation_SourcetoTargetItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) MBS_ServiceArea p_mBS_ServiceArea := omit, + in template (omit) MBS_MappingandDataForwardingRequestList p_mBS_MappingandDataForwardingRequestList := omit, + in template (omit) MBS_ActiveSessionInformation_SourcetoTargetItem.iE_Extensions p_iE_Extensions := omit + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceArea := p_mBS_ServiceArea, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBS_MappingandDataForwardingRequestList := p_mBS_MappingandDataForwardingRequestList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_ActiveSessionInformation_SourcetoTargetItem + + template (omit) MBS_ActiveSessionInformation_TargettoSourceItem m_mBS_ActiveSessionInformation_TargettoSourceItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_DataForwardingResponseMRBList p_mBS_DataForwardingResponseMRBList := omit, + in template (omit) MBS_ActiveSessionInformation_TargettoSourceItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_DataForwardingResponseMRBList := p_mBS_DataForwardingResponseMRBList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_ActiveSessionInformation_TargettoSourceItem + + template (omit) MBSSessionSetupOrModFailureTransfer m_mBSSessionSetupOrModFailureTransfer( + in template (value) Cause p_cause, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) MBSSessionSetupOrModFailureTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetupOrModFailureTransfer + + template (omit) MBSSessionSetupResponseItem m_mBSSessionSetupResponseItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) MBSSessionSetupResponseItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetupResponseItem + + template (value) MBSSessionSetupOrModRequestTransfer m_mBSSessionSetupOrModRequestTransfer( + in template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs + ) := { + protocolIEs := p_protocolIEs + } // End of template m_mBSSessionSetupOrModRequestTransfer + + template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( + in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC + + template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + + template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( + in template (value) MBS_SessionFSAIDList p_mBS_SessionFSAIDList + ) := { + { + id := id_MBS_SessionFSAIDList, + criticality := ignore, + value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + } + } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList + + template (omit) MBSSessionReleaseResponseTransfer m_mBSSessionReleaseResponseTransfer( + in template (omit) MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := omit, + in template (omit) MBSSessionReleaseResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionReleaseResponseTransfer + + template (omit) MBSSessionSetupOrModResponseTransfer m_mBSSessionSetupOrModResponseTransfer( + in template (omit) MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := omit, + in template (omit) MBSSessionSetupOrModResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetupOrModResponseTransfer + + template (value) MBS_SupportIndicator m_mBS_SupportIndicator(in MBS_SupportIndicator p_value := true_) := p_value; + + template (value) MBS_SessionTNLInfo5GC m_mBS_SessionTNLInfo5GC_locationindependent( + in template (value) SharedNGU_MulticastTNLInformation p_locationindependent + ) := { + locationindependent := p_locationindependent + } // End of template m_mBS_SessionTNLInfo5GC_locationindependent + + template (value) MBS_SessionTNLInfo5GC m_mBS_SessionTNLInfo5GC_locationdependent( + in template (value) MBS_SessionTNLInfo5GCList p_locationdependent + ) := { + locationdependent := p_locationdependent + } // End of template m_mBS_SessionTNLInfo5GC_locationdependent + + template (value) MBS_SessionTNLInfo5GC m_mBS_SessionTNLInfo5GC_choice_Extensions( + in template (value) MBS_SessionTNLInfo5GC.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mBS_SessionTNLInfo5GC_choice_Extensions + + template (omit) MBS_SessionTNLInfo5GCItem m_mBS_SessionTNLInfo5GCItem( + in template (value) MBS_AreaSessionID p_mBS_AreaSessionID, + in template (value) SharedNGU_MulticastTNLInformation p_sharedNGU_MulticastTNLInformation, + in template (omit) MBS_SessionTNLInfo5GCItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_SessionTNLInfo5GCItem + + template (value) MBS_SessionTNLInfoNGRAN m_mBS_SessionTNLInfoNGRAN_locationindependent( + in template (value) UPTransportLayerInformation p_locationindependent + ) := { + locationindependent := p_locationindependent + } // End of template m_mBS_SessionTNLInfoNGRAN_locationindependent + + template (value) MBS_SessionTNLInfoNGRAN m_mBS_SessionTNLInfoNGRAN_locationdependent( + in template (value) MBS_SessionTNLInfoNGRANList p_locationdependent + ) := { + locationdependent := p_locationdependent + } // End of template m_mBS_SessionTNLInfoNGRAN_locationdependent + + template (value) MBS_SessionTNLInfoNGRAN m_mBS_SessionTNLInfoNGRAN_choice_Extensions( + in template (value) MBS_SessionTNLInfoNGRAN.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mBS_SessionTNLInfoNGRAN_choice_Extensions + + template (omit) MBS_SessionTNLInfoNGRANItem m_mBS_SessionTNLInfoNGRANItem( + in template (value) MBS_AreaSessionID p_mBS_AreaSessionID, + in template (omit) UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := omit, + in template (omit) MBS_SessionTNLInfoNGRANItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_SessionTNLInfoNGRANItem + + template (omit) MBS_DistributionReleaseRequestTransfer m_mBS_DistributionReleaseRequestTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) Cause p_cause, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := omit, + in template (omit) MBS_DistributionReleaseRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DistributionReleaseRequestTransfer + + template (omit) MBS_DistributionSetupRequestTransfer m_mBS_DistributionSetupRequestTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := omit, + in template (omit) MBS_DistributionSetupRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DistributionSetupRequestTransfer + + template (omit) MBS_DistributionSetupResponseTransfer m_mBS_DistributionSetupResponseTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList, + in template (value) MBSSessionStatus p_mBSSessionStatus, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) MBS_SessionTNLInfo5GCItem p_sharedNGU_MulticastTNLInformation := omit, + in template (omit) MBS_ServiceArea p_mBS_ServiceArea := omit, + in template (omit) MBS_DistributionSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBSSessionStatus := p_mBSSessionStatus, + mBS_ServiceArea := p_mBS_ServiceArea, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DistributionSetupResponseTransfer + + template (omit) MBS_DistributionSetupUnsuccessfulTransfer m_mBS_DistributionSetupUnsuccessfulTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) Cause p_cause, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) MBS_DistributionSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DistributionSetupUnsuccessfulTransfer + + template (omit) MBSSessionSetupRequestItem m_mBSSessionSetupRequestItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := omit, + in template (omit) MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := omit + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetupRequestList := p_associatedMBSQosFlowSetupRequestList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetupRequestItem + + template (omit) MBSSessionSetuporModifyRequestItem m_mBSSessionSetuporModifyRequestItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) AssociatedMBSQosFlowSetuporModifyRequestList p_associatedMBSQosFlowSetuporModifyRequestList := omit, + in template (omit) QosFlowListWithCause p_mBS_QosFlowToReleaseList := omit, + in template (omit) MBSSessionSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetuporModifyRequestList := p_associatedMBSQosFlowSetuporModifyRequestList, + mBS_QosFlowToReleaseList := p_mBS_QosFlowToReleaseList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetuporModifyRequestItem + + template (omit) MBSSessionToReleaseItem m_mBSSessionToReleaseItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) Cause p_cause, + in template (omit) MBSSessionToReleaseItem.iE_Extensions p_iE_Extensions := omit + ):= { + mBS_SessionID := p_mBS_SessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionToReleaseItem + + template (value) MBSSessionStatus m_mBSSessionStatus(in MBSSessionStatus p_value := activated) := p_value; + + template (value) MicoAllPLMN m_micoAllPLMN(in MicoAllPLMN p_value := true_) := p_value; + + template (value) MICOModeIndication m_mICOModeIndication(in MICOModeIndication p_value := true_) := p_value; + + template (omit) MobilityRestrictionList m_mobilityRestrictionList( + in template (value) PLMNIdentity p_servingPLMN, + in template (omit) EquivalentPLMNs p_equivalentPLMNs := omit, + in template (omit) RATRestrictions p_rATRestrictions := omit, + in template (omit) ForbiddenAreaInformation p_forbiddenAreaInformation := omit, + in template (omit) ServiceAreaInformation p_serviceAreaInformation := omit, + in template (omit) MobilityRestrictionList.iE_Extensions p_iE_Extensions := omit + ) := { + servingPLMN := p_servingPLMN, + equivalentPLMNs := p_equivalentPLMNs, + rATRestrictions := p_rATRestrictions, + forbiddenAreaInformation := p_forbiddenAreaInformation, + serviceAreaInformation := p_serviceAreaInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mobilityRestrictionList + + template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( + in template (value) PLMNIdentity p_pLMNIdentity + ) := { + { + id := id_LastEUTRAN_PLMNIdentity, + criticality := ignore, + extensionValue := { PLMNIdentity := p_pLMNIdentity } + } + } // End of template m_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity + + template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_CNTypeRestrictionsForServing( + in template (value) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing + ) := { + { + id := id_CNTypeRestrictionsForServing, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } + } + } // End of template m_mobilityRestrictionList_id_CNTypeRestrictionsForServing + + template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( + in template (value) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent + ) := { + { + id := id_CNTypeRestrictionsForEquivalent, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } + } + } // End of template m_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent + + template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_NPN_MobilityInformation( + in template (value) NPN_MobilityInformation p_nPN_MobilityInformation + ) := { + { + id := id_NPN_MobilityInformation, + criticality := reject, + extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } + } + } // End of template m_mobilityRestrictionList_id_NPN_MobilityInformation + + template (value) MDT_AlignmentInfo m_mDT_AlignmentInfo_s_basedMDT( + in template (value) NGRANTraceID p_s_basedMDT + ) := { + s_basedMDT := p_s_basedMDT + } // End of template m_mDT_AlignmentInfo_s_basedMDT + + template (value) MDT_AlignmentInfo m_mDT_AlignmentInfo_choice_Extensions( + in template (value) MDT_AlignmentInfo.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mDT_AlignmentInfo_choice_Extensions + + template (omit) MDT_Configuration m_mDT_Configuration( + in template (omit) MDT_Configuration_NR p_mdt_Config_NR := omit, + in template (omit) MDT_Configuration_EUTRA p_mdt_Config_EUTRA := omit, + in template (omit) MDT_Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + mdt_Config_NR := p_mdt_Config_NR, + mdt_Config_EUTRA := p_mdt_Config_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_mDT_Configuration + + template (omit) MDT_Configuration_NR m_mDT_Configuration_NR( + in template (value) MDT_Activation p_mdt_Activation, + in template (value) AreaScopeOfMDT_NR p_areaScopeOfMDT, + in template (value) MDTModeNr p_mDTModeNr, + in template (omit) MDTPLMNList p_signallingBasedMDTPLMNList := omit, + in template (omit) MDT_Configuration_NR.iE_Extensions p_iE_Extensions := omit + ) := { + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTModeNr := p_mDTModeNr, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template m_mDT_Configuration_NR + + template (omit) MDT_Configuration_EUTRA m_mDT_Configuration_EUTRA( + in template (value) MDT_Activation p_mdt_Activation, + in template (value) AreaScopeOfMDT_EUTRA p_areaScopeOfMDT, + in template (value) MDTModeEutra p_mDTMode, + in template (omit) MDTPLMNList p_signallingBasedMDTPLMNList := omit, + in template (omit) MDT_Configuration_EUTRA.iE_Extensions p_iE_Extensions := omit + ) := { + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTMode := p_mDTMode, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template m_mDT_Configuration_EUTRA + + template (value) MDT_Activation m_mDT_Activation(in MDT_Activation p_value := immediate_MDT_only) := p_value; + + template (value) MDTModeNr m_mDTModeNro_immediateMDTNr( + in template (value) ImmediateMDTNr p_immediateMDTNr + ) := { + immediateMDTNr := p_immediateMDTNr + } // End of template m_mDTModeNr_immediateMDTNr + + template (value) MDTModeNr m_mDTModeNro_loggedMDTNr( + in template (value) LoggedMDTNr p_loggedMDTNr + ) := { + loggedMDTNr := p_loggedMDTNr + } // End of template m_mDTModeNr_loggedMDTNr + + template (value) MDTModeNr m_mDTModeNr_choice_Extensions( + in template (value) MDTModeNr.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mDTModeNr_choice_Extensions + + template (omit) MulticastSessionActivationRequestTransfer m_multicastSessionActivationRequestTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MulticastSessionActivationRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_multicastSessionActivationRequestTransfer + + template (omit) MulticastSessionDeactivationRequestTransfer m_multicastSessionDeactivationRequestTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MulticastSessionDeactivationRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_multicastSessionDeactivationRequestTransfer + + template (value) MulticastSessionUpdateRequestTransfer m_multicastSessionUpdateRequestTransfer( + in template (value) MulticastSessionUpdateRequestTransfer.protocolIEs p_protocolIEs + ) := { + protocolIEs := p_protocolIEs + } // End of template m_multicastSessionUpdateRequestTransfer + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( + in template (value) MBS_SessionID p_mBS_SessionID + ) := { + { + id := id_MBS_SessionID, + criticality := reject, + value_ := { MBS_SessionID := p_mBS_SessionID } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_SessionID + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( + in template (value) MBS_ServiceArea p_mBS_ServiceArea + ) := { + { + id := id_MBS_ServiceArea, + criticality := reject, + value_ := { MBS_ServiceArea := p_mBS_ServiceArea } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( + in template (value) QosFlowListWithCause p_qosFlowListWithCause + ) := { + { + id := id_MBS_QoSFlowToReleaseList, + criticality := reject, + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( + in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC + + template (omit) MulticastGroupPagingAreaItem m_multicastGroupPagingAreaItem( + in template (value) MulticastGroupPagingArea p_multicastGroupPagingArea, + in template (omit) UE_PagingList p_uE_PagingList := omit, + in template (omit) MulticastGroupPagingAreaItem.iE_Extensions p_iE_Extensions := omit + ) := { + multicastGroupPagingArea := p_multicastGroupPagingArea, + uE_PagingList := p_uE_PagingList, + iE_Extensions := p_iE_Extensions + } // End of template m_multicastGroupPagingAreaItem + + template (omit) MulticastGroupPagingArea m_multicastGroupPagingArea( + in template (value) MBS_AreaTAIList p_mBS_AreaTAIList, + in template (omit) MulticastGroupPagingArea.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_AreaTAIList := p_mBS_AreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template m_multicastGroupPagingArea + + template (omit) UE_PagingItem m_uE_PagingItem( + in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, + in template (omit) PagingDRX p_pagingDRX := omit, + in template (omit) UE_PagingItem.iE_Extensions p_iE_Extensions := omit + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + pagingDRX := p_pagingDRX, + iE_Extensions := p_iE_Extensions + } // End of template m_uE_PagingItem + + template (omit) M1Configuration m_m1Configuration( + in template (value) M1ReportingTrigger p_m1reportingTrigger, + in template (omit) M1ThresholdEventA2 p_m1thresholdEventA2 := omit, + in template (omit) M1PeriodicReporting p_m1periodicReporting := omit, + in template (omit) M1Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m1reportingTrigger := p_m1reportingTrigger, + m1thresholdEventA2 := p_m1thresholdEventA2, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” + m1periodicReporting := p_m1periodicReporting, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” + iE_Extensions := p_iE_Extensions + } // End of template m_m1Configuration + + template (value) M1Configuration.iE_Extensions m_m1Configuration_id_IncludeBeamMeasurementsIndication( + in template (value) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication + ) := { + { + id := id_IncludeBeamMeasurementsIndication, + criticality := ignore, + extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } + } + } // End of template m_m1Configuration_id_IncludeBeamMeasurementsIndication + + template (value) M1Configuration.iE_Extensions m_m1Configuration_id_BeamMeasurementsReportConfiguration( + in template (value) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration + ) := { + { + id := id_BeamMeasurementsReportConfiguration, + criticality := ignore, + extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } + } + } // End of template m_m1Configuration_id_BeamMeasurementsReportConfiguration + + template (value) IncludeBeamMeasurementsIndication m_includeBeamMeasurementsIndication(in IncludeBeamMeasurementsIndication p_value := true_) := p_value; + + template (value) M1ReportingTrigger m_m1ReportingTrigger(in M1ReportingTrigger p_value := periodic) := p_value; + + template (omit) M1ThresholdEventA2 m_m1ThresholdEventA2( + in template (value) M1ThresholdType p_m1ThresholdType, + in template (omit) M1ThresholdEventA2.iE_Extensions p_iE_Extensions := omit + ) := { + m1ThresholdType := p_m1ThresholdType, + iE_Extensions := p_iE_Extensions + } // End of template m_m1ThresholdEventA2 + + template (value) M1ThresholdType m_m1ThresholdType_threshold_RSRP( + in template (value) Threshold_RSRP p_threshold_RSRP + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template m_m1ThresholdType_threshold_RSRP + + template (value) M1ThresholdType m_m1ThresholdType_threshold_RSRQ( + in template (value) Threshold_RSRQ p_threshold_RSRQ + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template m_m1ThresholdType_threshold_RSRQ + + template (value) M1ThresholdType m_m1ThresholdType_threshold_SINR( + in template (value) Threshold_SINR p_threshold_SINR + ) := { + threshold_SINR := p_threshold_SINR + } // End of template m_m1ThresholdType_threshold_SINR + + template (value) M1ThresholdType m_m1ThresholdType_choice_Extensions( + in template (value) M1ThresholdType.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_m1ThresholdType_choice_Extensions + + template (omit) M1PeriodicReporting m_m1PeriodicReporting( + in template (value) ReportIntervalMDT p_reportInterval, + in template (value) ReportAmountMDT p_reportAmount, + in template (omit) M1PeriodicReporting.iE_Extensions p_iE_Extensions := omit + ) := { + reportInterval := p_reportInterval, + reportAmount := p_reportAmount, + iE_Extensions := p_iE_Extensions + } // End of template m_m1PeriodicReporting + + template (value) M1PeriodicReporting.iE_Extensions m_m1PeriodicReporting_id_ExtendedReportIntervalMDT( + in template (value) ExtendedReportIntervalMDT p_extendedReportIntervalMDT + ) := { + { + id := id_ExtendedReportIntervalMDT, + criticality := ignore, + extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } + } + } // End of template m_m1PeriodicReporting_id_ExtendedReportIntervalMDT + + template (omit) M4Configuration m_m4Configuration( + in template (value) M4period p_m4period, + in template (value) Links_to_log p_m4_links_to_log, + in template (omit) M4Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m4period := p_m4period, + m4_links_to_log := p_m4_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template m_m4Configuration + + template (value) M4Configuration.iE_Extensions m_m4Configuration_id_M4ReportAmount( + in template (value) M4ReportAmountMDT p_m4ReportAmountMDT + ) := { + { + id := id_ExtendedReportIntervalMDT, + criticality := ignore, + extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } + } + } // End of template m_m4Configuration_id_M4ReportAmount + + template (value) M4ReportAmountMDT m_m4ReportAmountMDT(in M4ReportAmountMDT p_value := r1) := p_value; + + template (value) M4period m_m4period(in M4period p_value := ms1024) := p_value; + + template (omit) M5Configuration m_m5Configuration( + in template (value) M5period p_m5period, + in template (value) Links_to_log p_m5_links_to_log, + in template (omit) M5Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m5period := p_m5period, + m5_links_to_log := p_m5_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template m_m5Configuration + + template (value) M5Configuration.iE_Extensions m_m5Configuration_id_M5ReportAmount( + in template (value) M5ReportAmountMDT p_m5ReportAmountMDT + ) := { + { + id := id_M5ReportAmount, + criticality := ignore, + extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } + } + } // End of template m_m5Configuration_id_M5ReportAmount + + template (value) M5ReportAmountMDT m_m5ReportAmountMDT(in M5ReportAmountMDT p_value := r1) := p_value; + + template (value) M5period m_m5period(in M5period p_value := ms1024) := p_value; + + template (omit) M6Configuration m_m6Configuration( + in template (value) M6report_Interval p_m6report_Interval, + in template (value) Links_to_log p_m6_links_to_log, + in template (omit) M6Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m6report_Interval := p_m6report_Interval, + m6_links_to_log := p_m6_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template m_m6Configuration + + template (value) M6Configuration.iE_Extensions m_m6Configuration_id_M6ReportAmount( + in template (value) M6ReportAmountMDT p_m6ReportAmountMDT + ) := { + { + id := id_M6ReportAmount, + criticality := ignore, + extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } + } + } // End of template m_m6Configuration_id_M6ReportAmount + + template (value) M6Configuration.iE_Extensions m_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( + in template (value) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration + ) := { + { + id := id_ExcessPacketDelayThresholdConfiguration, + criticality := ignore, + extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } + } + } // End of template m_m6Configuration_id_ExcessPacketDelayThresholdConfiguration + + template (value) M6ReportAmountMDT m_m6ReportAmountMDT(in M6ReportAmountMDT p_value := r1) := p_value; + + template (value) M6report_Interval m_m6report_Interval(in M6report_Interval p_value := ms120) := p_value; + + template (omit) M7Configuration m_m7Configuration( + in template (value) M7period p_m7period, + in template (value) Links_to_log p_m7_links_to_log, + in template (omit) M7Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m7period := p_m7period, + m7_links_to_log := p_m7_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template m_m7Configuration + + template (value) M7Configuration.iE_Extensions m_m7Configuration_id_M7ReportAmount( + in template (value) M7ReportAmountMDT p_m7ReportAmountMDT + ) := { + { + id := id_M7ReportAmount, + criticality := ignore, + extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } + } + } // End of template m_m7Configuration_id_M7ReportAmount + + template (value) M7ReportAmountMDT m_m7ReportAmountMDT(in M7ReportAmountMDT p_value := r1) := p_value; + + template (omit) MDT_Location_Info m_mDT_Location_Info( + in template (value) MDT_Location_Information p_mDT_Location_Information, + in template (omit) MDT_Location_Info.iE_Extensions p_iE_Extensions := omit + ) := { + mDT_Location_Information := p_mDT_Location_Information, + iE_Extensions := p_iE_Extensions + } // End of template m_mDT_Location_Info + + // type union N3IWF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); + // type octetstring NAS_PDU; + // type octetstring NASSecurityParametersFromNGRAN; + // type enumerated NB_IoT_DefaultPagingDRX { + // type enumerated NB_IoT_PagingDRX { + // type enumerated NB_IoT_Paging_eDRXCycle { + // type enumerated NB_IoT_Paging_TimeWindow { + // type record NB_IoT_Paging_eDRXInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); + // type integer NB_IoT_UEPriority ( + // type integer NetworkInstance ( + // type enumerated NewSecurityContextInd { + // type integer NextHopChainingCount (0 .. 7); + // type enumerated NextPagingAreaScope { + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; + // type record NGAPIESupportInformationRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; + // type record NGAPIESupportInformationResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); + // type union NgENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); + // type enumerated NotifySourceNGRANNode { + // type union NGRAN_CGI { + // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; + // type record NGRAN_TNLAssociationToRemoveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); + // type octetstring NGRANTraceID length (8); + // type bitstring NID length (44); + // type record NonDynamic5QIDescriptor { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; + // type enumerated NotificationCause { + // type enumerated NotificationControl { + // type union NPN_AccessInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); + // type union NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); + // type union NPN_PagingAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); + // type union NPN_Support { + // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); + // type bitstring NRCellIdentity length (36); + template (value) NRCellIdentity m_ie_nRCellId(template (value) NRCellIdentity p_nrCId:='000000000000000000000000000000000000'B):= p_nrCId; + // type record NR_CGI { + template (value) NR_CGI m_ie_nrCgi( + template (value) PLMNIdentity p_PlmnId, + template (value) NRCellIdentity p_nrCellId, + in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_PlmnId, + nRCellIdentity := p_nrCellId, + iE_Extensions := p_iE_Extensions + } //End of template m_ie_nrCgi + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; + // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; + // type record NR_PagingeDRXInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); + // type enumerated NR_Paging_eDRX_Cycle { + // type enumerated NR_Paging_Time_Window { + // type bitstring NRencryptionAlgorithms length ( + // type bitstring NRintegrityProtectionAlgorithms length ( + // type octetstring NRMobilityHistoryReport; + // type octetstring NRPPa_PDU; + // type octetstring NRUERLFReportContainer; + // type record NRNTNTAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); + // type integer NumberOfBroadcasts (0 .. 65535); + // type integer NumberOfBroadcastsRequested (0 .. 65535); + // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); + // type integer NRFrequencyBand ( + // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; + // type record NRFrequencyBandItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); + // type record NRFrequencyInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); + // type integer NR_PCI ( + // type record NRV2XServicesAuthorized { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); + // type enumerated VehicleUE { + // type enumerated PedestrianUE { + // type record NRUESidelinkAggregateMaximumBitrate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); + // type integer NSAG_ID ( + // type enumerated OnboardingSupport { + // type enumerated OverloadAction { + // type union OverloadResponse { + // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; + // type record OverloadStartNSSAIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); + // type integer PacketDelayBudget ( + // type record PacketErrorRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); + // type integer PacketLossRate ( + // type record PagingAssisDataforCEcapabUE { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); + // type record PagingAttemptInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); + // type integer PagingAttemptCount ( + // type enumerated PagingCause { + // type enumerated PagingCauseIndicationForVoiceService { + + // type enumerated PagingDRX { + template (value) PagingDRX m_ie_defaultPagingDRX(in PagingDRX p_drx := v256) := p_drx; + + // type enumerated PagingOrigin { + // type enumerated PagingPriority { + // type enumerated PagingProbabilityInformation { + // type record PathSwitchRequestAcknowledgeTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( + // type record PathSwitchRequestSetupFailedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); + // type record PathSwitchRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( + // type record PathSwitchRequestUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); + // type record PC5QoSParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; + // type record PC5QoSFlowItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); + // type record PC5FlowBitRates { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; + // type enumerated PrivacyIndicator { + // type record PDUSessionAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); + + // type integer PDUSessionID (0 .. 255); + template (value) PDUSessionID m_ie_pDUSessId(in PDUSessionID p_val := 0) := p_val; + + // type integer PDUSessionPairID ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; + // type record PDUSessionResourceAdmittedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; + // type record PDUSessionResourceFailedToModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; + // type record PDUSessionResourceFailedToModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; + // type record PDUSessionResourceFailedToResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; + // type record PDUSessionResourceFailedToResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; + // type record PDUSessionResourceFailedToSetupItemCxtFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; + // type record PDUSessionResourceFailedToSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; + // type record PDUSessionResourceFailedToSetupItemHOAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; + // type record PDUSessionResourceFailedToSetupItemPSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; + // type record PDUSessionResourceFailedToSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; + // type record PDUSessionResourceHandoverItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; + // type record PDUSessionResourceInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; + // type record PDUSessionResourceItemCxtRelCpl { + // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; + // type record PDUSessionResourceItemCxtRelReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; + // type record PDUSessionResourceItemHORqd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); + // type record PDUSessionResourceModifyConfirmTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); + // type record PDUSessionResourceModifyRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( + // type record PDUSessionResourceModifyResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( + // type record PDUSessionResourceModifyIndicationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; + // type record PDUSessionResourceModifyItemModCfm { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; + // type record PDUSessionResourceModifyItemModInd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; + // type record PDUSessionResourceModifyItemModReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; + // type record PDUSessionResourceModifyItemModRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); + // type record PDUSessionResourceModifyUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; + // type record PDUSessionResourceNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); + // type record PDUSessionResourceNotifyReleasedTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( + // type record PDUSessionResourceNotifyTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( + // type record PDUSessionResourceReleaseCommandTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; + // type record PDUSessionResourceReleasedItemNot { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; + // type record PDUSessionResourceReleasedItemPSAck { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; + // type record PDUSessionResourceReleasedItemPSFail { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; + // type record PDUSessionResourceReleasedItemRelRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); + // type record PDUSessionResourceReleaseResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; + // type record PDUSessionResourceResumeItemRESReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; + // type record PDUSessionResourceResumeItemRESRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; + // type record PDUSessionResourceSecondaryRATUsageItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; + // type record PDUSessionResourceSetupItemCxtReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; + // type record PDUSessionResourceSetupItemCxtRes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; + // type record PDUSessionResourceSetupItemHOReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( + + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; + template (value) PDUSessionResourceSetupListSUReq m_ie_pDUSessionResourceSetupListSUReq( + in template (value) PDUSessionResourceSetupListSUReq p_list + ) := p_list; // type record PDUSessionResourceSetupItemSUReq { template (omit) PDUSessionResourceSetupItemSUReq m_ie_pDUSessionResourceSetupItemSUReq( @@ -4351,3519 +5004,4173 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_ie_pDUSessionResourceSetupItemSUReq - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; - // type record PDUSessionResourceSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; + // type record PDUSessionResourceSetupItemSURes { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); + + // type record PDUSessionResourceSetupRequestTransfer { + template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrEmpty:={protocolIEs:={}}; + // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( + template (value) PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrIEs( + in template (value) UPTransportLayerInformation p_utli, + in template (value) PDUSessionType p_pst, + in template (value) QosFlowSetupRequestList p_qfsrl + ) := { + protocolIEs:={ +// { +// id := id_PDUSessionAggregateMaximumBitRate, +// criticality := reject, +// value_ := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", +// //presence := optional_ +// }, + { + id := id_UL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformation := p_utli} + //presence := mandatory + }, +// { +// id := id_AdditionalUL_NGU_UP_TNLInformation, +// criticality := reject, +// value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", +// //presence := optional_ +// }, +// { +// id := id_DataForwardingNotPossible, +// criticality := reject, +// value_ := omit //"NGAP_IEs.DataForwardingNotPossible", +// //presence := optional_ +// }, + { + id := id_PDUSessionType, + criticality := reject, + value_ := { PDUSessionType := p_pst} + //presence := mandatory + }, +// { +// id := id_SecurityIndication, +// criticality := reject, +// value_ := omit //"NGAP_IEs.SecurityIndication", +// //presence := optional_ +// }, +// { +// id := id_NetworkInstance, +// criticality := reject, +// value_ := omit //"NGAP_IEs.NetworkInstance", +// //presence := optional_ +// }, + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qfsrl} + //presence := mandatory + }//, +// { +// id := id_CommonNetworkInstance, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.CommonNetworkInstance", +// //presence := optional_ +// }, +// { +// id := id_DirectForwardingPathAvailability, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.DirectForwardingPathAvailability", +// //presence := optional_ +// }, +// { +// id := id_RedundantUL_NGU_UP_TNLInformation, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.UPTransportLayerInformation", +// //presence := optional_ +// }, +// { +// id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", +// //presence := optional_ +// }, +// { +// id := id_RedundantCommonNetworkInstance, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.CommonNetworkInstance", +// //presence := optional_ +// }, +// { +// id := id_RedundantPDUSessionInformation, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.RedundantPDUSessionInformation", +// //presence := optional_ +// }, +// { +// id := id_MBSSessionSetupRequestList, +// criticality := ignore, +// value_ := omit //"NGAP_IEs.MBSSessionSetupRequestList", +// //presence := optional_ +// } + } + } // End of template m_ie_pDUSessResSetReqTrIEs + + // type record PDUSessionResourceSetupResponseTransfer { + template (omit) PDUSessionResourceSetupResponseTransfer m_ie_pDUSessResSetRespTr( + in template (value) QosFlowPerTNLInformation p_qosfTnlInf, + in template (omit) QosFlowPerTNLInformationList p_qosfList := omit, + in template (omit) SecurityResult p_secRes := omit, + in template (omit) QosFlowListWithCause p_qosfCause := omit, + in template (omit) PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dLQosFlowPerTNLInformation := p_qosfTnlInf, + additionalDLQosFlowPerTNLInformation := p_qosfList, + securityResult := p_secRes, + qosFlowFailedToSetupList := p_qosfCause, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_pDUSessResSetRespTr + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( + // type record PDUSessionResourceSetupUnsuccessfulTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; + // type record PDUSessionResourceSuspendItemSUSReq { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; + // type record PDUSessionResourceSwitchedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; + // type record PDUSessionResourceToBeSwitchedDLItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; + // type record PDUSessionResourceToReleaseItemHOCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; + // type record PDUSessionResourceToReleaseItemRelCmd { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); + + // type enumerated PDUSessionType { + template (value) PDUSessionType m_ie_PDUSessionType(in PDUSessionType p_val := unstructured) := p_val; + + // type record PDUSessionUsageReport { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); + // type record PEIPSassistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); + // type integer Periodicity ( + // type bitstring PeriodicRegistrationUpdateTimer length (8); + + // type octetstring PLMNIdentity length (3); + template (value) PLMNIdentity m_ie_pLMNIdentity(in PLMNIdentity p_val) := p_val; + + // type record PLMNAreaBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; + // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; + // type record PLMNSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( + // type record PNI_NPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); + // type octetstring PortNumber length (2); + // type enumerated Pre_emptionCapability { + // type enumerated Pre_emptionVulnerability { + // type integer PriorityLevelARP (1 .. 15); + // type integer PriorityLevelQos ( + // type union PWSFailedCellIDList { + // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); + // type record QMCConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); + // type record QMCDeactivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; + // type octetstring QoEReference length (6); + // type union QosCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; + // type record QosFlowAcceptedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; + // type record QosFlowAddOrModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; + // type record QosFlowAddOrModifyResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; + // type record QosFlowFeedbackItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); + template (value) QosFlowIdentifier m_qosFlowIdentifier(in QosFlowIdentifier p_value := 0) := p_value; + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; + // type record QosFlowInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( + // type record QosFlowLevelQosParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( + // type enumerated QosMonitoringRequest { + // type integer QosMonitoringReportingFrequency ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; + // type record QosFlowWithCauseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; + // type record QosFlowModifyConfirmItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; + // type record QosFlowNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; + // type record QosFlowParametersItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( + // type record QosFlowPerTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; + // type record QosFlowPerTNLInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); + + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; + template (value) QosFlowSetupRequestList m_ie_qosFlowSetReqList(in QosFlowSetupRequestList p_list) := p_list; + // type record QosFlowSetupRequestItem { + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( + template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, + in template (omit) QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dataForwardingAccepted := p_dataForwardingAccepted, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowItemWithDataForwarding + + template (omit) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; + // type record QosFlowToBeForwardedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; + // type record QoSFlowsUsageReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); + // type enumerated Range { + // type ASNAUX.PrintableString RANNodeName length ( + // type ASNAUX.VisibleString RANNodeNameVisibleString length ( + // type ASNAUX.UTF8String RANNodeNameUTF8String length ( + // type integer RANPagingPriority (1 .. 256); + // type record RANStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); + + // type integer RAN_UE_NGAP_ID (0 .. 4294967295); + template (value) RAN_UE_NGAP_ID m_ie_rANUeNgapId(in integer p_val := 1) := p_val; + + // type enumerated RAT_Information { + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; + // type record RATRestrictions_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( + // type bitstring RATRestrictionInformation length ( + // type record RecommendedCellsForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; + // type record RecommendedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); + // type record RecommendedRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; + // type record RecommendedRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); + // type enumerated RedCapIndication { + // type enumerated RedirectionVoiceFallback { + // type record RedundantPDUSessionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( + // type enumerated RedundantQosFlowIndicator { + // type enumerated ReflectiveQosAttribute { + // type integer RelativeAMFCapacity (0 .. 255); + // type enumerated ReportArea { + // type integer RepetitionPeriod (0 .. 131071); + // type enumerated ResetAll { + // type enumerated ReportAmountMDT { + // type enumerated ReportIntervalMDT { + // type enumerated ExtendedReportIntervalMDT { + // type union ResetType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); + // type octetstring RGLevelWirelineAccessCharacteristics; + // type integer RNC_ID (0 .. 4095); + // type octetstring RoutingID; + // type octetstring RRCContainer; + // type enumerated RRCEstablishmentCause { + template (value) RRCEstablishmentCause m_ie_rrcEstCause(template (value) RRCEstablishmentCause p_rrcEstCause:=mo_Signalling):=p_rrcEstCause; + + // type enumerated RRCInactiveTransitionReportRequest { + // type enumerated RRCState { + // type enumerated RSN { + // type record RIMInformationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); + // type record RIMInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); + // type bitstring GNBSetID length (22); + // type record ScheduledCommunicationTime { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; + + // type octetstring SD length (3); + template (value) SD m_ie_sD(in SD p_val := '000000'O) := p_val; + + // type record SecondaryRATUsageInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); + // type record SecondaryRATDataUsageReportTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); + // type record SecurityContext { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); + // type record SecurityIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( + // type bitstring SecurityKey length (256); + // type record SecurityResult { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); + // type record SensorMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; + // type record SensorMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); + // type enumerated SensorMeasConfig { + // type union SensorNameConfig { + // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); + // type bitstring SerialNumber length (16); + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; + // type record ServedGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; + // type record ServiceAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); + // type enumerated ServiceType { + // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); + // type record SharedNGU_MulticastTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; + // type record SliceOverloadItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); + + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; + template (value) SliceSupportList m_ie_sliceSupportList(in template (value) SliceSupportList p_list) := p_list; + + // type record SliceSupportItem { + template (omit) SliceSupportItem m_ie_sliceSupportItem( + in template (value) S_NSSAI p_S_NSSAI, + in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_S_NSSAI, + iE_Extensions :=p_iE_Extensions + } // End of template m_ie_sliceSupportItem + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; + // type record SliceSupportQMC_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); + // type record SNPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); + // type record S_NSSAI { + template (omit) S_NSSAI m_ie_sNSSAI( + in template (value) SST p_sST, + in template (value) SD p_sD, + in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ) := { + sST := p_sST,//'00'O, + sD := p_sD,//'000000'O, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_sNSSAI + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); + // type record SONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); + // type union SONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( + // type record SONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); + // type union SONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; + // type record SuccessfulHandoverReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); + // type enumerated SONInformationRequest { + // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( + // type union SourceNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); + // type enumerated SourceOfUEActivityBehaviourInformation { + // type record SourceRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); + // type octetstring SourceToTarget_TransparentContainer; + // type record SourceToTarget_AMFInformationReroute { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); + // type enumerated SRVCCOperationPossible { + // type octetstring ConfiguredNSSAI length (128); + // type octetstring RejectedNSSAIinPLMN length (32); + // type octetstring RejectedNSSAIinTA length (32); + // type octetstring SST length (1); + template (value) SST m_ie_sST(in SST p_val := '00'O) := p_val; + + // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; + template (value) SupportedTAList m_ie_supportedTAList(in template (value) SupportedTAList p_list) := p_list; + + // type record SupportedTAItem { + template (omit) SupportedTAItem m_ie_supportedTAItem( + in template (value) TAC p_tAC, + in template (value) BroadcastPLMNList p_broadcastPLMNList, + in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ) := { + tAC := p_tAC, + broadcastPLMNList := p_broadcastPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_supportedTAItem + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( + + // type enumerated SuspendIndicator { + // type enumerated Suspend_Request_Indication { + // type enumerated Suspend_Response_Indication { + // type integer SurvivalTime ( + + // type octetstring TAC length (3); + template (value) TAC m_ie_tAC(in template (value) TAC p_val) := p_val; + + // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; + // type record TAI { + template (value) TAI m_ie_tAI( + template (value) PLMNIdentity p_plmnId, + template (value) TAC p_tac, + in template (omit) TAI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_plmnId, + tAC := p_tac, + iE_Extensions := p_iE_Extensions + } //End of template m_ie_tAI + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; + // type record TAIBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; + // type record TAIBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; + // type record TAICancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; + // type record TAICancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; + // type record TAIListForInactiveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; + // type record TAIListForPagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; + // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; + // type record TAINSAGSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); + // type record TargeteNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); + // type record TargetHomeENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); + // type union TargetID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; + // type record TargetNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); + // type record TargetNSSAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); + // type record TargetRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); + // type record TargetRANNodeID_RIM { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); + // type record TargetRANNodeID_SON { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( + // type record TargetRNC_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); + // type octetstring TargetToSource_TransparentContainer; + // type octetstring TargettoSource_Failure_TransparentContainer; + // type enumerated TimerApproachForGUAMIRemoval { + // type octetstring TimeStamp length (4); + // type record TimeSyncAssistanceInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); + // type enumerated TimeToWait { + // type integer TimeUEStayedInCell (0 .. 4095); + // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); + // type octetstring TMGI length (6); + // type octetstring TNAP_ID; + // type union TNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); + // type integer TNLAddressWeightFactor (0 .. 255); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; + // type record TNLAssociationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); + // type enumerated TNLAssociationUsage { + // type record TooearlyIntersystemHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); + // type record TraceActivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( + // type enumerated TraceDepth { + // type integer TrafficLoadReductionIndication (1 .. 99); + + template (value) TransportLayerAddress m_ie_tla(in bitstring p_val := '0'B) := p_val; + + // type enumerated TypeOfError { + // type record TAIBasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; + // type record TAIBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; + // type record TABasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; + // type record TABasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; + // type integer Threshold_RSRP (0 .. 127); + // type integer Threshold_RSRQ (0 .. 127); + // type integer Threshold_SINR (0 .. 127); + // type enumerated TimeToTrigger { + // type octetstring TWAP_ID; + // type union TWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); + // type record TSCAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( + // type record TSCTrafficCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); + // type record UEAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; + // type record UEAppLayerMeasInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); + // type record UEAppLayerMeasConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; + // type record UE_associatedLogicalNG_connectionItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); + // type enumerated UECapabilityInfoRequest { + // type enumerated UEContextRequest { + // type record UEContextResumeRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); + // type record UEContextResumeResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); + // type record UEContextSuspendRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); + // type record UE_DifferentiationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; + // type union UEHistoryInformationFromTheUE { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); + // type union UEIdentityIndexValue { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); + // type union UE_NGAP_IDs { + // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); + // type record UE_NGAP_ID_pair { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); + // type union UEPagingIdentity { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); + // type enumerated UEPresence { + // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; + // type record UEPresenceInAreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); + // type octetstring UERadioCapability; + // type record UERadioCapabilityForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( + // type octetstring UERadioCapabilityForPagingOfNB_IoT; + // type octetstring UERadioCapabilityForPagingOfNR; + // type octetstring UERadioCapabilityForPagingOfEUTRA; + // type octetstring UERadioCapabilityID; + // type enumerated UERetentionInformation { + // type union UERLFReportContainer { + // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); + // type record UESecurityCapabilities { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; + // type record UESliceMaximumBitRateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); + // type enumerated UE_UP_CIoT_Support { + // type record UL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); + // type bitstring UL_NAS_MAC length (16); + // type bitstring UL_NAS_Count length (5); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; + // type record UL_NGU_UP_TNLModifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; + // type record UnavailableGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); + // type enumerated ULForwarding { + // type bitstring UpdateFeedback length ( + + // type union UPTransportLayerInformation { + template (value) UPTransportLayerInformation m_ie_uPTLInf( + in template (value) GTPTunnel p_gtpt + ) := { + gTPTunnel := p_gtpt + } // End of template m_ie_uPTLInf - // type record PDUSessionResourceSetupRequestTransfer { - template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrEmpty:={protocolIEs:={}}; - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( - template (value) PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrIEs( - in template (value) UPTransportLayerInformation p_utli, - in template (value) PDUSessionType p_pst, - in template (value) QosFlowSetupRequestList p_qfsrl - ) := { - protocolIEs:={ -// { -// id := id_PDUSessionAggregateMaximumBitRate, -// criticality := reject, -// value_ := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", -// //presence := optional_ -// }, - { - id := id_UL_NGU_UP_TNLInformation, - criticality := reject, - value_ := { UPTransportLayerInformation := p_utli} - //presence := mandatory - }, -// { -// id := id_AdditionalUL_NGU_UP_TNLInformation, -// criticality := reject, -// value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", -// //presence := optional_ -// }, -// { -// id := id_DataForwardingNotPossible, -// criticality := reject, -// value_ := omit //"NGAP_IEs.DataForwardingNotPossible", -// //presence := optional_ -// }, - { - id := id_PDUSessionType, - criticality := reject, - value_ := { PDUSessionType := p_pst} - //presence := mandatory - }, -// { -// id := id_SecurityIndication, -// criticality := reject, -// value_ := omit //"NGAP_IEs.SecurityIndication", -// //presence := optional_ -// }, -// { -// id := id_NetworkInstance, -// criticality := reject, -// value_ := omit //"NGAP_IEs.NetworkInstance", -// //presence := optional_ -// }, - { - id := id_QosFlowSetupRequestList, - criticality := reject, - value_ := { QosFlowSetupRequestList := p_qfsrl} - //presence := mandatory - }//, -// { -// id := id_CommonNetworkInstance, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.CommonNetworkInstance", -// //presence := optional_ -// }, -// { -// id := id_DirectForwardingPathAvailability, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.DirectForwardingPathAvailability", -// //presence := optional_ -// }, -// { -// id := id_RedundantUL_NGU_UP_TNLInformation, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.UPTransportLayerInformation", -// //presence := optional_ -// }, -// { -// id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", -// //presence := optional_ -// }, -// { -// id := id_RedundantCommonNetworkInstance, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.CommonNetworkInstance", -// //presence := optional_ -// }, -// { -// id := id_RedundantPDUSessionInformation, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.RedundantPDUSessionInformation", -// //presence := optional_ -// }, -// { -// id := id_MBSSessionSetupRequestList, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.MBSSessionSetupRequestList", -// //presence := optional_ -// } - } - } // End of template m_ie_pDUSessResSetReqTrIEs + // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; + // type record UPTransportLayerInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; + // type record UPTransportLayerInformationPairItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); + // type ASNAUX.VisibleString URI_address; + // type union UserLocationInformation { + template (value) UserLocationInformation m_ie_userLocInf_NR(template (value) UserLocationInformationNR p_ulinr) := { + userLocationInformationNR := p_ulinr + } // End of template m_ie_userLocInf + + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( + // type record UserLocationInformationEUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( + // type record UserLocationInformationN3IWF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( + // type record UserLocationInformationTNGF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( + // type record UserLocationInformationTWIF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( + // type union UserLocationInformationW_AGF { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( + // type record UserLocationInformationNR { + template (value) UserLocationInformationNR m_ie_userLocInfNR( + template (value) NR_CGI p_nrcgi, + template (value) TAI p_tai, + in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nrcgi, + tAI := p_tai, + timeStamp := omit, // optional, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_userLocInfNR + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( + // type record UserPlaneSecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; + // type record VolumeTimedReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); + // type union W_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); + // type octetstring WarningAreaCoordinates length (1 .. 1024); + // type union WarningAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); + // type octetstring WarningMessageContents length (1 .. 9600); + // type octetstring WarningSecurityInfo length (50); + // type octetstring WarningType length (2); + // type record WLANMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; + // type record WLANMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); + // type enumerated WLANMeasConfig { + // type octetstring WLANName length (1 .. 32); + // type record WUS_Assistance_Information { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; + // type record XnExtTLA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; + // type record XnTNLConfigurationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); + + } // End of group send + + group Receive{ + + template (present) AdditionalDLUPTNLInformationForHOItem mw_additionalDLUPTNLInformationForHOItem( + template (present) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation := ?, + template (present) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList := ?, + template UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := *, + template AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := * + ) := { + additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, + additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, + additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_additionalDLUPTNLInformationForHOItem - // type record PDUSessionResourceSetupResponseTransfer { - template (omit) PDUSessionResourceSetupResponseTransfer m_ie_pDUSessResSetRespTr( - in template (value) QosFlowPerTNLInformation p_qosfTnlInf, - in template (omit) QosFlowPerTNLInformationList p_qosfList := omit, - in template (omit) SecurityResult p_secRes := omit, - in template (omit) QosFlowListWithCause p_qosfCause := omit, - in template (omit) PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - dLQosFlowPerTNLInformation := p_qosfTnlInf, - additionalDLQosFlowPerTNLInformation := p_qosfList, - securityResult := p_secRes, - qosFlowFailedToSetupList := p_qosfCause, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_pDUSessResSetRespTr + template (present) AdditionalDLUPTNLInformationForHOItem.iE_Extensions mw_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_additionalDLUPTNLInformationForHOItem_iE_Extensions - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( - // type record PDUSessionResourceSetupUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; - // type record PDUSessionResourceSuspendItemSUSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; - // type record PDUSessionResourceSwitchedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; - // type record PDUSessionResourceToBeSwitchedDLItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; - // type record PDUSessionResourceToReleaseItemHOCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; - // type record PDUSessionResourceToReleaseItemRelCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); + template (present) AdditionalQosFlowInformation mw_additionalQosFlowInformation(template (present) AdditionalQosFlowInformation p_value := ?) := p_value; - // type enumerated PDUSessionType { - template (value) PDUSessionType m_ie_PDUSessionType(in PDUSessionType p_val := unstructured) := p_val; + template (present) AllocationAndRetentionPriority mw_allocationAndRetentionPriority( + template (present) PriorityLevelARP p_priorityLevelARP := ?, + template (present) Pre_emptionCapability p_pre_emptionCapability := ?, + template (present) Pre_emptionVulnerability p_pre_emptionVulnerability := ?, + template AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := * + ) := { + priorityLevelARP := p_priorityLevelARP, + pre_emptionCapability := p_pre_emptionCapability, + pre_emptionVulnerability := p_pre_emptionVulnerability, + iE_Extensions := p_iE_Extensions + } // End of template mw_allocationAndRetentionPriority + // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; + // type record AllowedNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; + // type record Allowed_PNI_NPN_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; + template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(in template (present) integer p_value := ?) := p_value; - // type record PDUSessionUsageReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); - // type record PEIPSassistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); - // type integer Periodicity ( - // type bitstring PeriodicRegistrationUpdateTimer length (8); + template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(in template (present) integer p_value := ?) := p_value; - // type octetstring PLMNIdentity length (3); - template (value) PLMNIdentity m_ie_pLMNIdentity(in PLMNIdentity p_val) := p_val; + template (present) AlternativeQoSParaSetItem mw_alternativeQoSParaSetItem( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ?, + template BitRate p_guaranteedFlowBitRateDL := *, + template BitRate p_guaranteedFlowBitRateUL := *, + template PacketDelayBudget p_packetDelayBudget := *, + template PacketErrorRate p_packetErrorRate := *, + template AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := * + ) := { + alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_alternativeQoSParaSetItem - // type record PLMNAreaBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; - // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; - // type record PLMNSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( - // type record PNI_NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); - // type octetstring PortNumber length (2); - // type enumerated Pre_emptionCapability { - // type enumerated Pre_emptionVulnerability { - // type integer PriorityLevelARP (1 .. 15); - // type integer PriorityLevelQos ( - // type union PWSFailedCellIDList { - // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); - // type record QMCConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); - // type record QMCDeactivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; - // type octetstring QoEReference length (6); - // type union QosCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; - // type record QosFlowAcceptedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; - // type record QosFlowAddOrModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; - // type record QosFlowAddOrModifyResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; - // type record QosFlowFeedbackItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); - template (value) QosFlowIdentifier m_qosFlowIdentifier(in QosFlowIdentifier p_value := 0) := p_value; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; - // type record QosFlowInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( - // type record QosFlowLevelQosParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( - // type enumerated QosMonitoringRequest { - // type integer QosMonitoringReportingFrequency ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; - // type record QosFlowWithCauseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; - // type record QosFlowModifyConfirmItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; - // type record QosFlowNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; - // type record QosFlowParametersItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( - // type record QosFlowPerTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; - // type record QosFlowPerTNLInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); + template (present) AMFName mw_aMFName(template (present) AMFName p_value := ?) := p_value; + + template (present) AMFNameVisibleString mw_aMFNameVisibleString(template (present) AMFNameVisibleString p_value := ?) := p_value; + + template (present) AMFNameUTF8String mw_aMFNameUTF8String(template (present) AMFNameUTF8String p_value := ?) := p_value; + + template (present) AMFPagingTarget mw_aMFPagingTarget_globalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + globalRANNodeID := p_globalRANNodeID + } // End of template mw_aMFPagingTarget_globalRANNodeID + template (present) AMFPagingTarget mw_aMFPagingTarget_tAI( + template (present) TAI p_tAI := ? + ) := { + tAI := p_tAI + } // End of template mw_aMFPagingTarget_tAI + template (present) AMFPagingTarget mw_aMFPagingTarget_ext( + template (present) AMFPagingTarget.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_aMFPagingTarget_ext + + template (present) AMF_TNLAssociationSetupItem mw_aMF_TNLAssociationSetupItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationSetupItem + + template (present) AMF_TNLAssociationToAddItem mw_aMF_TNLAssociationToAddItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template (present) TNLAddressWeightFactor p_tNLAddressWeightFactor := ?, + template TNLAssociationUsage p_tNLAssociationUsage := *, + template AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := * + ):= { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToAddItem + + template (present) AMF_TNLAssociationToRemoveItem mw_aMF_TNLAssociationToRemoveItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToRemoveItem + + template (present) AMF_TNLAssociationToUpdateItem mw_aMF_TNLAssociationToUpdateItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template TNLAssociationUsage p_tNLAssociationUsage := *, + template TNLAddressWeightFactor p_tNLAddressWeightFactor := *, + template AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToUpdateItem + + template (present) AMF_UE_NGAP_ID mw_ie_aMFUeNgapId(template (present) integer p_val := ?) := p_val; + + template AreaOfInterest mw_areaOfInterest( + template AreaOfInterestTAIList p_areaOfInterestTAIList := *, + template AreaOfInterestCellList p_areaOfInterestCellList := *, + template AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := *, + template AreaOfInterest.iE_Extensions p_iE_Extensions := * + ) := { + areaOfInterestTAIList := p_areaOfInterestTAIList, + areaOfInterestCellList := p_areaOfInterestCellList, + areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterest + + template (present) AreaOfInterestCellItem mw_areaOfInterestCellItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestCellItem + + template (present) AreaOfInterestItem mw_reaOfInterestItem( + template (present) AreaOfInterest p_areaOfInterest := ?, + template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, + template AreaOfInterestItem.iE_Extensions p_iE_Extensions := * + ) := { + areaOfInterest := p_areaOfInterest, + locationReportingReferenceID := p_locationReportingReferenceID, + iE_Extensions := p_iE_Extensions + } // End of template mw_reaOfInterestItem + + template (present) AreaOfInterestRANNodeItem mw_areaOfInterestRANNodeItem( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := * + ):= { + globalRANNodeID := p_globalRANNodeID, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestRANNodeItem - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; - template (value) QosFlowSetupRequestList m_ie_qosFlowSetReqList(in QosFlowSetupRequestList p_list) := p_list; - // type record QosFlowSetupRequestItem { + template (present) AreaOfInterestTAIItem mw_areaOfInterestTAIItem( + template (present) TAI p_tAI := ?, + template AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestTAIItem - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( - template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding( - in template (value) QosFlowIdentifier p_qosFlowIdentifier, - in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, - in template (omit) QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - dataForwardingAccepted := p_dataForwardingAccepted, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowItemWithDataForwarding + template AssistanceDataForPaging mw_assistanceDataForPaging( + template AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := *, + template PagingAttemptInformation p_pagingAttemptInformation := *, + template AssistanceDataForPaging.iE_Extensions p_iE_Extensions := * + ) := { + assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, + pagingAttemptInformation := p_pagingAttemptInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_assistanceDataForPaging - template (omit) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( - in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex - ) := { + template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_NPN_PagingAssistanceInformation( + template (present) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation := ? + ) := { { - id := id_CurrentQoSParaSetIndex, + id := id_NPN_PagingAssistanceInformation, criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } } - } // End of template m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; - // type record QosFlowToBeForwardedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; - // type record QoSFlowsUsageReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); - // type enumerated Range { - // type ASNAUX.PrintableString RANNodeName length ( - // type ASNAUX.VisibleString RANNodeNameVisibleString length ( - // type ASNAUX.UTF8String RANNodeNameUTF8String length ( - // type integer RANPagingPriority (1 .. 256); - // type record RANStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); + } // End of template mw_assistanceDataForPaging_NPN_PagingAssistanceInformation - // type integer RAN_UE_NGAP_ID (0 .. 4294967295); - template (value) RAN_UE_NGAP_ID m_ie_rANUeNgapId(in integer p_val := 1) := p_val; + template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE( + template (present) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE := ? + ) := { + { + id := id_PagingAssisDataforCEcapabUE, + criticality := ignore, + extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } + } + } // End of template mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE - // type enumerated RAT_Information { - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; - // type record RATRestrictions_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( - // type bitstring RATRestrictionInformation length ( - // type record RecommendedCellsForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; - // type record RecommendedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); - // type record RecommendedRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; - // type record RecommendedRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); - // type enumerated RedCapIndication { - // type enumerated RedirectionVoiceFallback { - // type record RedundantPDUSessionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( - // type enumerated RedundantQosFlowIndicator { - // type enumerated ReflectiveQosAttribute { - // type integer RelativeAMFCapacity (0 .. 255); - // type enumerated ReportArea { - // type integer RepetitionPeriod (0 .. 131071); - // type enumerated ResetAll { - // type enumerated ReportAmountMDT { - // type enumerated ReportIntervalMDT { - // type enumerated ExtendedReportIntervalMDT { - // type union ResetType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); - // type octetstring RGLevelWirelineAccessCharacteristics; - // type integer RNC_ID (0 .. 4095); - // type octetstring RoutingID; - // type octetstring RRCContainer; - // type enumerated RRCEstablishmentCause { - template (value) RRCEstablishmentCause m_ie_rrcEstCause(template (value) RRCEstablishmentCause p_rrcEstCause:=mo_Signalling):=p_rrcEstCause; - - // type enumerated RRCInactiveTransitionReportRequest { - // type enumerated RRCState { - // type enumerated RSN { - // type record RIMInformationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); - // type record RIMInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); - // type bitstring GNBSetID length (22); - // type record ScheduledCommunicationTime { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; + template (present) AssistanceDataForRecommendedCells mw_assistanceDataForRecommendedCells( + template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, + template AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + iE_Extensions := p_iE_Extensions + } // End of template mw_assistanceDataForRecommendedCells - // type octetstring SD length (3); - template (value) SD m_ie_sD(in SD p_val := '000000'O) := p_val; + template (present) AssociatedMBSQosFlowSetupRequestItem mw_associatedMBSQosFlowSetupRequestItem( + template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, + template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, + template AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedMBSQosFlowSetupRequestItem - // type record SecondaryRATUsageInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); - // type record SecondaryRATDataUsageReportTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); - // type record SecurityContext { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); - // type record SecurityIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( - // type bitstring SecurityKey length (256); - // type record SecurityResult { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); - // type record SensorMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; - // type record SensorMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); - // type enumerated SensorMeasConfig { - // type union SensorNameConfig { - // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); - // type bitstring SerialNumber length (16); - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; - // type record ServedGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; - // type record ServiceAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); - // type enumerated ServiceType { - // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); - // type record SharedNGU_MulticastTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; - // type record SliceOverloadItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); + template (present) AssociatedMBSQosFlowSetuporModifyRequestItem mw_associatedMBSQosFlowSetuporModifyRequestItem( + template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, + template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, + template AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedMBSQosFlowSetuporModifyRequestItem - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; - template (value) SliceSupportList m_ie_sliceSupportList(in template (value) SliceSupportList p_list) := p_list; + template (present) AssociatedQosFlowItem mw_associatedQosFlowItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := *, + template AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowMappingIndication := p_qosFlowMappingIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedQosFlowItem - // type record SliceSupportItem { - template (omit) SliceSupportItem m_ie_sliceSupportItem( - in template (value) S_NSSAI p_S_NSSAI, - in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit - ) := { - s_NSSAI := p_S_NSSAI, - iE_Extensions :=p_iE_Extensions - } // End of template m_ie_sliceSupportItem + template (present) AssociatedQosFlowItem.iE_Extensions mw_associatedQosFlowItem_alternativeQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_associatedQosFlowItem_alternativeQoSParaSetIndex - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; - // type record SliceSupportQMC_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); - // type record SNPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); - // type record S_NSSAI { - template (omit) S_NSSAI m_ie_sNSSAI( - in template (value) SST p_sST, - in template (value) SD p_sD, - in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit - ) := { - sST := p_sST,//'00'O, - sD := p_sD,//'000000'O, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_sNSSAI + template (present) AuthenticatedIndication mw_authenticatedIndication(template (present) AuthenticatedIndication p_value := true_) := p_value; - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); - // type record SONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); - // type union SONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( - // type record SONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); - // type union SONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; - // type record SuccessfulHandoverReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); - // type enumerated SONInformationRequest { - // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( - // type union SourceNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); - // type enumerated SourceOfUEActivityBehaviourInformation { - // type record SourceRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); - // type octetstring SourceToTarget_TransparentContainer; - // type record SourceToTarget_AMFInformationReroute { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); - // type enumerated SRVCCOperationPossible { - // type octetstring ConfiguredNSSAI length (128); - // type octetstring RejectedNSSAIinPLMN length (32); - // type octetstring RejectedNSSAIinTA length (32); - // type octetstring SST length (1); - template (value) SST m_ie_sST(in SST p_val := '00'O) := p_val; + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_NR_cellBased( + template (present) CellBasedMDT_NR p_cellBased := ? + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfMDT_cellBased + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tABased( + template (present) TABasedMDT p_tABased := ? + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfMDT_tABased - // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; - template (value) SupportedTAList m_ie_supportedTAList(in template (value) SupportedTAList p_list) := p_list; + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_pLMNWide := { + pLMNWide := NULL + } // End of template mw_areaScopeOfMDT_pLMNWide - // type record SupportedTAItem { - template (omit) SupportedTAItem m_ie_supportedTAItem( - in template (value) TAC p_tAC, - in template (value) BroadcastPLMNList p_broadcastPLMNList, - in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit - ) := { - tAC := p_tAC, - broadcastPLMNList := p_broadcastPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_supportedTAItem + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tAIBased( + template (present) TAIBasedMDT p_tAIBased := ? + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfMDT_tAIBased - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_ext( + template (present) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfMDT_ext - // type enumerated SuspendIndicator { - // type enumerated Suspend_Request_Indication { - // type enumerated Suspend_Response_Indication { - // type integer SurvivalTime ( + template (present) AreaScopeOfNeighCellsItem mw_areaScopeOfNeighCellsItem( + template (present) NRFrequencyInfo p_nrFrequencyInfo := ?, + template PCIListForMDT p_pciListForMDT := *, + template AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := * + ) := { + nrFrequencyInfo := p_nrFrequencyInfo, + pciListForMDT := p_pciListForMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaScopeOfNeighCellsItem - // type octetstring TAC length (3); - template (value) TAC m_ie_tAC(in template (value) TAC p_val) := p_val; + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_cellBased( + template (present) CellBasedQMC p_cellBased := ? + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfQMC_cellBased - // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; - // type record TAI { - template (value) TAI m_ie_tAI( - template (value) PLMNIdentity p_plmnId, - template (value) TAC p_tac, - in template (omit) TAI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_plmnId, - tAC := p_tac, - iE_Extensions := p_iE_Extensions - } //End of template m_ie_tAI - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; - // type record TAIBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; - // type record TAIBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; - // type record TAICancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; - // type record TAICancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; - // type record TAIListForInactiveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; - // type record TAIListForPagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; - // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; - // type record TAINSAGSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); - // type record TargeteNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); - // type record TargetHomeENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); - // type union TargetID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; - // type record TargetNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); - // type record TargetNSSAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); - // type record TargetRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); - // type record TargetRANNodeID_RIM { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); - // type record TargetRANNodeID_SON { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( - // type record TargetRNC_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); - // type octetstring TargetToSource_TransparentContainer; - // type octetstring TargettoSource_Failure_TransparentContainer; - // type enumerated TimerApproachForGUAMIRemoval { - // type octetstring TimeStamp length (4); - // type record TimeSyncAssistanceInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); - // type enumerated TimeToWait { - // type integer TimeUEStayedInCell (0 .. 4095); - // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); - // type octetstring TMGI length (6); - // type octetstring TNAP_ID; - // type union TNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); - // type integer TNLAddressWeightFactor (0 .. 255); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; - // type record TNLAssociationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); - // type enumerated TNLAssociationUsage { - // type record TooearlyIntersystemHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); - // type record TraceActivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( - // type enumerated TraceDepth { - // type integer TrafficLoadReductionIndication (1 .. 99); + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tABased( + template (present) TABasedQMC p_tABased := ? + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfQMC_tABased - template (value) TransportLayerAddress m_ie_tla(in bitstring p_val := '0'B) := p_val; + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tAIBased( + template (present) TAIBasedQMC p_tAIBased := ? + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfQMC_tAIBased - // type enumerated TypeOfError { - // type record TAIBasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; - // type record TAIBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; - // type record TABasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; - // type record TABasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; - // type integer Threshold_RSRP (0 .. 127); - // type integer Threshold_RSRQ (0 .. 127); - // type integer Threshold_SINR (0 .. 127); - // type enumerated TimeToTrigger { - // type octetstring TWAP_ID; - // type union TWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); - // type record TSCAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( - // type record TSCTrafficCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); - // type record UEAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; - // type record UEAppLayerMeasInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); - // type record UEAppLayerMeasConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; - // type record UE_associatedLogicalNG_connectionItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); - // type enumerated UECapabilityInfoRequest { - // type enumerated UEContextRequest { - // type record UEContextResumeRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); - // type record UEContextResumeResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); - // type record UEContextSuspendRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); - // type record UE_DifferentiationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; - // type union UEHistoryInformationFromTheUE { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); - // type union UEIdentityIndexValue { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); - // type union UE_NGAP_IDs { - // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); - // type record UE_NGAP_ID_pair { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); - // type union UEPagingIdentity { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); - // type enumerated UEPresence { - // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; - // type record UEPresenceInAreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); - // type octetstring UERadioCapability; - // type record UERadioCapabilityForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( - // type octetstring UERadioCapabilityForPagingOfNB_IoT; - // type octetstring UERadioCapabilityForPagingOfNR; - // type octetstring UERadioCapabilityForPagingOfEUTRA; - // type octetstring UERadioCapabilityID; - // type enumerated UERetentionInformation { - // type union UERLFReportContainer { - // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); - // type record UESecurityCapabilities { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; - // type record UESliceMaximumBitRateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); - // type enumerated UE_UP_CIoT_Support { - // type record UL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); - // type bitstring UL_NAS_MAC length (16); - // type bitstring UL_NAS_Count length (5); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; - // type record UL_NGU_UP_TNLModifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; - // type record UnavailableGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); - // type enumerated ULForwarding { - // type bitstring UpdateFeedback length ( + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_pLMNAreaBased( + template (present) PLMNAreaBasedQMC p_pLMNAreaBased := ? + ) := { + pLMNAreaBased := p_pLMNAreaBased + } // End of template mw_areaScopeOfQMC_pLMNAreaBased + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_ext( + template (present) AreaScopeOfQMC.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfQMC_ext + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_cellBased( + template (present) CellBasedMDT_EUTRA p_cellBased + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfMDT_EUTRA_cellBased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tABased( + template (present) TABasedMDT p_tABased + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfMDT_EUTRA_tABased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_pLMNWide := { + pLMNWide := NULL + } // End of template mw_areaScopeOfMDT_EUTRA_pLMNWide - // type union UPTransportLayerInformation { - template (value) UPTransportLayerInformation m_ie_uPTLInf( - in template (value) GTPTunnel p_gtpt - ) := { - gTPTunnel := p_gtpt - } // End of template m_ie_uPTLInf + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tAIBased( + template (present) TAIBasedMDT p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfMDT_EUTRA_tAIBased - // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; - // type record UPTransportLayerInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; - // type record UPTransportLayerInformationPairItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); - // type ASNAUX.VisibleString URI_address; - // type union UserLocationInformation { - template (value) UserLocationInformation m_ie_userLocInf_NR(template (value) UserLocationInformationNR p_ulinr) := { - userLocationInformationNR := p_ulinr - } // End of template m_ie_userLocInf - - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( - // type record UserLocationInformationEUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( - // type record UserLocationInformationN3IWF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( - // type record UserLocationInformationTNGF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( - // type record UserLocationInformationTWIF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( - // type union UserLocationInformationW_AGF { - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( - // type record UserLocationInformationNR { - template (value) UserLocationInformationNR m_ie_userLocInfNR( - template (value) NR_CGI p_nrcgi, - template (value) TAI p_tai, - in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nrcgi, - tAI := p_tai, - timeStamp := omit, // optional, + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_ext( + template (present) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfMDT_EUTRA_ext + + template AvailableRANVisibleQoEMetrics mw_availableRANVisibleQoEMetrics( + template AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := *, + template AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := *, + template AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := * + ) := { + applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, + playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, + iE_Extensions := p_iE_Extensions + } // End of template mw_availableRANVisibleQoEMetrics + + template BeamMeasurementsReportConfiguration mw_beamMeasurementsReportConfiguration( + template BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := *, + template MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := *, + template BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, + maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, + iE_Extensions := p_iE_Extensions + } // End of template mw_beamMeasurementsReportConfiguration + + template BeamMeasurementsReportQuantity mw_beamMeasurementsReportQuantity( + template BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, + template BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, + template BeamMeasurementsReportQuantity.sINR p_sINR := true_, + template BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := * + ) := { + rSRP := p_rSRP, + rSRQ := p_rSRQ, + sINR := p_sINR, iE_Extensions := p_iE_Extensions - } // End of template m_ie_userLocInfNR - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( - // type record UserPlaneSecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; - // type record VolumeTimedReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); - // type union W_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); - // type octetstring WarningAreaCoordinates length (1 .. 1024); - // type union WarningAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); - // type octetstring WarningMessageContents length (1 .. 9600); - // type octetstring WarningSecurityInfo length (50); - // type octetstring WarningType length (2); - // type record WLANMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; - // type record WLANMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); - // type enumerated WLANMeasConfig { - // type octetstring WLANName length (1 .. 32); - // type record WUS_Assistance_Information { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; - // type record XnExtTLA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; - // type record XnTNLConfigurationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); + } // End of template mw_beamMeasurementsReportQuantity - } // End of group send + template (present) BitRate mw_bitRate (template (present) BitRate p_value := ?) := p_value; - group Receive{ + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledEUTRA( + template (present) CellIDCancelledEUTRA p_cellIDCancelledEUTRA := ? + ) := { + cellIDCancelledEUTRA := p_cellIDCancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_cellIDCancelledEUTRA - template (present) AdditionalDLUPTNLInformationForHOItem mw_additionalDLUPTNLInformationForHOItem( - template (present) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation := ?, - template (present) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList := ?, - template UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := *, - template AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := * - ) := { - additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, - additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, - additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_additionalDLUPTNLInformationForHOItem + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledEUTRA( + template (present) TAICancelledEUTRA p_tAICancelledEUTRA := ? + ) := { + tAICancelledEUTRA := p_tAICancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_tAICancelledEUTRA - template (present) AdditionalDLUPTNLInformationForHOItem.iE_Extensions mw_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_additionalDLUPTNLInformationForHOItem_iE_Extensions + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( + template (present) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA := ? + ) := { + emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA - template (present) AdditionalQosFlowInformation mw_additionalQosFlowInformation(template (present) AdditionalQosFlowInformation p_value := ?) := p_value; + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledNR( + template (present) CellIDCancelledNR p_cellIDCancelledNR := ? + ) := { + cellIDCancelledNR := p_cellIDCancelledNR + } // End of template mw_broadcastCancelledAreaList_cellIDCancelledNR - template (present) AllocationAndRetentionPriority mw_allocationAndRetentionPriority( - template (present) PriorityLevelARP p_priorityLevelARP := ?, - template (present) Pre_emptionCapability p_pre_emptionCapability := ?, - template (present) Pre_emptionVulnerability p_pre_emptionVulnerability := ?, - template AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := * - ) := { - priorityLevelARP := p_priorityLevelARP, - pre_emptionCapability := p_pre_emptionCapability, - pre_emptionVulnerability := p_pre_emptionVulnerability, - iE_Extensions := p_iE_Extensions - } // End of template mw_allocationAndRetentionPriority - // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; - // type record AllowedNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; - // type record Allowed_PNI_NPN_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; - template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(in template (present) integer p_value := ?) := p_value; + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledNR( + template (present) TAICancelledNR p_tAICancelledNR := ? + ) := { + tAICancelledNR := p_tAICancelledNR + } // End of template mw_broadcastCancelledAreaList_tAICancelledNR - template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(in template (present) integer p_value := ?) := p_value; + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( + template (present) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR := ? + ) := { + emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR + } // End of template mw_broadcastCancelledAreaList_ext - template (present) AlternativeQoSParaSetItem mw_alternativeQoSParaSetItem( - template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ?, - template BitRate p_guaranteedFlowBitRateDL := *, - template BitRate p_guaranteedFlowBitRateUL := *, - template PacketDelayBudget p_packetDelayBudget := *, - template PacketErrorRate p_packetErrorRate := *, - template AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := * - ) := { - alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, - guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, - guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, - packetDelayBudget := p_packetDelayBudget, - packetErrorRate := p_packetErrorRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_alternativeQoSParaSetItem + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_ext( + template (present) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_broadcastCancelledAreaList_ext - template (present) AMFName mw_aMFName(template (present) AMFName p_value := ?) := p_value; + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastEUTRA( + template (present) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA + ) := { + cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_cellIDCancelledEUTRA + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastEUTRA( + template (present) TAIBroadcastEUTRA p_tAIBroadcastEUTRA + ) := { + tAIBroadcastEUTRA := p_tAIBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_tAIBroadcastEUTRA + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( + template (present) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA + ) := { + emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastNR( + template (present) CellIDBroadcastNR p_cellIDBroadcastNR + ) := { + cellIDBroadcastNR := p_cellIDBroadcastNR + } // End of template mw_broadcastCompletedAreaList_cellIDBroadcastNR + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastNR( + template (present) TAIBroadcastNR p_tAIBroadcastNR + ) := { + tAIBroadcastNR := p_tAIBroadcastNR + } // End of template mw_broadcastCompletedAreaList_tAIBroadcastNR + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( + template (present) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR + ) := { + emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR + } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_ext( + template (present) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_broadcastCompletedAreaList_ext + + template (present) BroadcastPLMNItem mw_ie_broadcastPLMNItem( + template (present) PLMNIdentity p_plmnId := ?, + template (present) SliceSupportList p_ssl := ?, + template BroadcastPLMNItem.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_plmnId, + tAISliceSupportList := p_ssl, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_broadcastPLMNItem - template (present) AMFNameVisibleString mw_aMFNameVisibleString(template (present) AMFNameVisibleString p_value := ?) := p_value; + template (present) BluetoothMeasurementConfiguration mw_bluetoothMeasurementConfiguration( + template (present) BluetoothMeasConfig p_bluetoothMeasConfig := ?, + template BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := *, + template BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := *, + template BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + bluetoothMeasConfig := p_bluetoothMeasConfig, + bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, + bt_rssi := p_bt_rssi, + iE_Extensions := p_iE_Extensions + } // End of template mw_bluetoothMeasurementConfiguration - template (present) AMFNameUTF8String mw_aMFNameUTF8String(template (present) AMFNameUTF8String p_value := ?) := p_value; + template (present) BluetoothMeasConfigNameItem mw_bluetoothMeasConfigNameItem( + template (present) BluetoothName p_bluetoothName := ?, + template BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := * + ) := { + bluetoothName := p_bluetoothName, + iE_Extensions := p_iE_Extensions + } // End of template mw_bluetoothMeasConfigNameItem - template (present) AMFPagingTarget mw_aMFPagingTarget_globalRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ? - ) := { - globalRANNodeID := p_globalRANNodeID - } // End of template mw_aMFPagingTarget_globalRANNodeID - template (present) AMFPagingTarget mw_aMFPagingTarget_tAI( - template (present) TAI p_tAI := ? - ) := { - tAI := p_tAI - } // End of template mw_aMFPagingTarget_tAI - template (present) AMFPagingTarget mw_aMFPagingTarget_ext( - template (present) AMFPagingTarget.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_aMFPagingTarget_ext + template (present) BluetoothMeasConfig mw_bluetoothMeasConfig(template (present) BluetoothMeasConfig p_value := setup) := p_value; - template (present) AMF_TNLAssociationSetupItem mw_aMF_TNLAssociationSetupItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := * - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationSetupItem + template (present) CancelAllWarningMessages mw_cancelAllWarningMessages(template (present) CancelAllWarningMessages p_value := true_) := p_value; - template (present) AMF_TNLAssociationToAddItem mw_aMF_TNLAssociationToAddItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template (present) TNLAddressWeightFactor p_tNLAddressWeightFactor := ?, - template TNLAssociationUsage p_tNLAssociationUsage := *, - template AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := * - ):= { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - tNLAssociationUsage := p_tNLAssociationUsage, - tNLAddressWeightFactor := p_tNLAddressWeightFactor, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationToAddItem - template (present) AMF_TNLAssociationToRemoveItem mw_aMF_TNLAssociationToRemoveItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * + template (present) CancelledCellsInEAI_EUTRA_Item mw_cancelledCellsInEAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationToRemoveItem + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInEAI_EUTRA_Item - template (present) AMF_TNLAssociationToUpdateItem mw_aMF_TNLAssociationToUpdateItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template TNLAssociationUsage p_tNLAssociationUsage := *, - template TNLAddressWeightFactor p_tNLAddressWeightFactor := *, - template AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := * + template (present) CancelledCellsInEAI_NR_Item mw_cancelledCellsInEAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInEAI_NR_Item + + template (present) CancelledCellsInTAI_EUTRA_Item mw_cancelledCellsInTAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - tNLAssociationUsage := p_tNLAssociationUsage, - tNLAddressWeightFactor := p_tNLAddressWeightFactor, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationToUpdateItem + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInTAI_EUTRA_Item - template (present) AMF_UE_NGAP_ID mw_ie_aMFUeNgapId(template (present) integer p_val := ?) := p_val; + template (present) CancelledCellsInTAI_NR_Item mw_CancelledCellsInTAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_CancelledCellsInTAI_NR_Item - template AreaOfInterest mw_areaOfInterest( - template AreaOfInterestTAIList p_areaOfInterestTAIList := *, - template AreaOfInterestCellList p_areaOfInterestCellList := *, - template AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := *, - template AreaOfInterest.iE_Extensions p_iE_Extensions := * - ) := { - areaOfInterestTAIList := p_areaOfInterestTAIList, - areaOfInterestCellList := p_areaOfInterestCellList, - areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterest - - template (present) AreaOfInterestCellItem mw_areaOfInterestCellItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, + template (present) CandidateCellItem mw_candidateCellItem( + template (present) CandidateCell p_candidateCell := ?, + template CandidateCellItem.iE_Extensions p_iE_Extensions := * + ) := { + candidateCell := p_candidateCell, iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterestCellItem + } // End of template mw_candidateCellItem - template (present) AreaOfInterestItem mw_reaOfInterestItem( - template (present) AreaOfInterest p_areaOfInterest := ?, - template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, - template AreaOfInterestItem.iE_Extensions p_iE_Extensions := * - ) := { - areaOfInterest := p_areaOfInterest, - locationReportingReferenceID := p_locationReportingReferenceID, - iE_Extensions := p_iE_Extensions - } // End of template mw_reaOfInterestItem + template (present) CandidateCell mw_candidateCell_candidateCGI( + template (present) CandidateCellID p_candidateCGI := ? + ) := { + candidateCGI := p_candidateCGI + } // End of template mw_candidateCell_candidateCGI - template (present) AreaOfInterestRANNodeItem mw_areaOfInterestRANNodeItem( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := * - ):= { - globalRANNodeID := p_globalRANNodeID, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterestRANNodeItem + template (present) CandidateCell mw_candidateCell_candidatePCI( + template (present) CandidatePCI p_candidatePCI := ? + ) := { + candidatePCI := p_candidatePCI + } // End of template mw_candidateCell_candidatePCI - template (present) AreaOfInterestTAIItem mw_areaOfInterestTAIItem( - template (present) TAI p_tAI := ?, - template AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := * - ) := { - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterestTAIItem + template (present) CandidateCell mw_candidateCell_ext( + template (present) CandidateCell.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_candidateCell_ext - template AssistanceDataForPaging mw_assistanceDataForPaging( - template AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := *, - template PagingAttemptInformation p_pagingAttemptInformation := *, - template AssistanceDataForPaging.iE_Extensions p_iE_Extensions := * - ) := { - assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, - pagingAttemptInformation := p_pagingAttemptInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_assistanceDataForPaging + template (present) CandidatePCI mw_candidatePCI( + template (present) CandidatePCI.candidatePCI p_candidatePCI := ?, + template (present) CandidatePCI.candidateNRARFCN p_candidateNRARFCN := ?, + template CandidatePCI.iE_Extensions p_iE_Extensions := * + ) := { + candidatePCI := p_candidatePCI, + candidateNRARFCN := p_candidateNRARFCN, + iE_Extensions := p_iE_Extensions + } // End of template mw_candidatePCI - template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_NPN_PagingAssistanceInformation( - template (present) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation := ? - ) := { - { - id := id_NPN_PagingAssistanceInformation, - criticality := ignore, - extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } - } - } // End of template mw_assistanceDataForPaging_NPN_PagingAssistanceInformation + template (present) Cause mw_cause_radioNetwork( + template (present) CauseRadioNetwork p_radioNetwork + ) := { + radioNetwork := p_radioNetwork + } // End of template mw_cause_radioNetwork - template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE( - template (present) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE := ? - ) := { - { - id := id_PagingAssisDataforCEcapabUE, - criticality := ignore, - extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } - } - } // End of template mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE + template (present) Cause mw_cause_transport( + template (present) CauseTransport p_transport + ) := { + transport := p_transport + } // End of template mw_cause_transport - template (present) AssistanceDataForRecommendedCells mw_assistanceDataForRecommendedCells( - template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, - template AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := * - ) := { - recommendedCellsForPaging := p_recommendedCellsForPaging, - iE_Extensions := p_iE_Extensions - } // End of template mw_assistanceDataForRecommendedCells + template (present) Cause mw_cause_nas( + template (present) CauseNas p_nas + ) := { + nas := p_nas + } // End of template mw_cause_nas - template (present) AssociatedMBSQosFlowSetupRequestItem mw_associatedMBSQosFlowSetupRequestItem( - template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, - template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, - template AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, - associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template mw_associatedMBSQosFlowSetupRequestItem + template (present) Cause mw_cause_protocol( + template (present) CauseProtocol p_protocol + ) := { + protocol := p_protocol + } // End of template mw_cause_protocol - template (present) AssociatedMBSQosFlowSetuporModifyRequestItem mw_associatedMBSQosFlowSetuporModifyRequestItem( - template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, - template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, - template AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, - associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template mw_associatedMBSQosFlowSetuporModifyRequestItem + template (present) Cause mw_cause_misc( + template (present) CauseMisc p_misc + ) := { + misc := p_misc + } // End of template mw_cause_misc - template (present) AssociatedQosFlowItem mw_associatedQosFlowItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := *, - template AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - qosFlowMappingIndication := p_qosFlowMappingIndication, - iE_Extensions := p_iE_Extensions - } // End of template mw_associatedQosFlowItem + template (present) Cause mw_cause_ext( + template (present) Cause.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cause_ext - template (present) AssociatedQosFlowItem.iE_Extensions mw_associatedQosFlowItem_alternativeQoSParaSetIndex( - template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template mw_associatedQosFlowItem_alternativeQoSParaSetIndex + template (present) CauseMisc mw_causeMisc(template (present) CauseMisc p_value := ?) := p_value; + template (present) CauseNas mw_causeNas(template (present) CauseNas p_value := ?) := p_value; + template (present) CauseProtocol mw_causeProtocol(template (present) CauseProtocol p_value := ?) := p_value; + template (present) CauseRadioNetwork mww_causeRadioNetwork(template (present) CauseRadioNetwork p_value := ?) := p_value; + template (present) CauseTransport mw_causeTransport(template (present) CauseTransport p_value := ?) := p_value; - template (present) AuthenticatedIndication mw_authenticatedIndication(template (present) AuthenticatedIndication p_value := true_) := p_value; + template (present) Cell_CAGInformation mw_cell_CAGInformation( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) CellCAGList p_cellCAGList := ?, + template Cell_CAGInformation.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + cellCAGList := p_cellCAGList, + iE_Extensions := p_iE_Extensions + } // End of template mw_cell_CAGInformation - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_NR_cellBased( - template (present) CellBasedMDT_NR p_cellBased := ? + template (present) CellIDBroadcastEUTRA_Item mw_cellIDBroadcastEUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDBroadcastEUTRA_Item + + template (present) CellIDBroadcastNR_Item mw_cellIDBroadcastNR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * ) := { - cellBased := p_cellBased - } // End of template mw_areaScopeOfMDT_cellBased + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDBroadcastNR_Item - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tABased( - template (present) TABasedMDT p_tABased := ? - ) := { - tABased := p_tABased - } // End of template mw_areaScopeOfMDT_tABased + template (present) CellIDCancelledEUTRA_Item mw_cellIDCancelledEUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDCancelledEUTRA_Item - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_pLMNWide := { - pLMNWide := NULL - } // End of template mw_areaScopeOfMDT_pLMNWide + template (present) CellIDCancelledNR_Item mw_cellIDCancelledNR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDCancelledNR_Item - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tAIBased( - template (present) TAIBasedMDT p_tAIBased := ? - ) := { - tAIBased := p_tAIBased - } // End of template mw_areaScopeOfMDT_tAIBased + template (present) CellIDListForRestart mw_cellIDListForRestart_eUTRA_CGIListforRestart( + template (present) EUTRA_CGIList p_eUTRA_CGIListforRestart := ? + ) := { + eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart + } // End of template mw_cellIDListForRestart_misc - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_ext( - template (present) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) CellIDListForRestart mw_cellIDListForRestart_nR_CGIListforRestart( + template (present) NR_CGIList p_nR_CGIListforRestart := ? + ) := { + nR_CGIListforRestart := p_nR_CGIListforRestart + } // End of template mw_cellIDListForRestart_nR_CGIListforRestart + + template (present) CellIDListForRestart mw_cellIDListForRestart_ext( + template (present) CellIDListForRestart.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_areaScopeOfMDT_ext + } // End of template mw_cellIDListForRestart_ext - template (present) AreaScopeOfNeighCellsItem mw_areaScopeOfNeighCellsItem( - template (present) NRFrequencyInfo p_nrFrequencyInfo := ?, - template PCIListForMDT p_pciListForMDT := *, - template AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := * - ) := { - nrFrequencyInfo := p_nrFrequencyInfo, - pciListForMDT := p_pciListForMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaScopeOfNeighCellsItem + template (present) CellSize mw_cellSize(template (present) CellSize p_value := ?) := p_value; - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_cellBased( - template (present) CellBasedQMC p_cellBased := ? - ) := { - cellBased := p_cellBased - } // End of template mw_areaScopeOfQMC_cellBased + template (present) CellType mw_cellType( + template (present) CellSize p_cellSize:= ?, + template CellType.iE_Extensions p_iE_Extensions := * + ) := { + cellSize := p_cellSize, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellType - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tABased( - template (present) TABasedQMC p_tABased := ? - ) := { - tABased := p_tABased - } // End of template mw_areaScopeOfQMC_tABased + template (present) CEmodeBSupport_Indicator mw_cEmodeBSupport_Indicator(template (present) CEmodeBSupport_Indicator p_value := ?) := p_value; + template (present) CEmodeBrestricted mw_cEmodeBrestricted(template (present) CEmodeBrestricted p_value := ?) := p_value; - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tAIBased( - template (present) TAIBasedQMC p_tAIBased := ? - ) := { - tAIBased := p_tAIBased - } // End of template mw_areaScopeOfQMC_tAIBased + template CNAssistedRANTuning mw_cNAssistedRANTuning( + template ExpectedUEBehaviour p_expectedUEBehaviour := *, + template CNAssistedRANTuning.iE_Extensions p_iE_Extensions := * + ) := { + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template mw_cNAssistedRANTuning - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_pLMNAreaBased( - template (present) PLMNAreaBasedQMC p_pLMNAreaBased := ? - ) := { - pLMNAreaBased := p_pLMNAreaBased - } // End of template mw_areaScopeOfQMC_pLMNAreaBased + template (present) CNTypeRestrictionsForEquivalentItem mw_cNTypeRestrictionsForEquivalentItem( + template (present) PLMNIdentity p_plmnIdentity := ?, + template (present) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type := ?, + template CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := * + ) := { + plmnIdentity := p_plmnIdentity, + cn_Type := p_cn_Type, + iE_Extensions := p_iE_Extensions + } // End of template mw_cNTypeRestrictionsForEquivalentItem - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_ext( - template (present) AreaScopeOfQMC.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_areaScopeOfQMC_ext + template (present) CNTypeRestrictionsForServing mw_cNTypeRestrictionsForServing(template (present) CNTypeRestrictionsForServing p_value := ?) := p_value; - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_cellBased( - template (present) CellBasedMDT_EUTRA p_cellBased - ) := { - cellBased := p_cellBased - } // End of template mw_areaScopeOfMDT_EUTRA_cellBased + template (present) CompletedCellsInEAI_EUTRA_Item mw_completedCellsInEAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInEAI_EUTRA_Item - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tABased( - template (present) TABasedMDT p_tABased - ) := { - tABased := p_tABased - } // End of template mw_areaScopeOfMDT_EUTRA_tABased + template (present) CompletedCellsInEAI_NR_Item mw_completedCellsInEAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInEAI_NR_Item - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_pLMNWide := { - pLMNWide := NULL - } // End of template mw_areaScopeOfMDT_EUTRA_pLMNWide + template (present) CompletedCellsInTAI_EUTRA_Item mw_completedCellsInTAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInTAI_EUTRA_Item - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tAIBased( - template (present) TAIBasedMDT p_tAIBased - ) := { - tAIBased := p_tAIBased - } // End of template mw_areaScopeOfMDT_EUTRA_tAIBased + template (present) CompletedCellsInTAI_NR_Item mw_completedCellsInTAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInTAI_NR_Item + + template (present) ConcurrentWarningMessageInd mw_concurrentWarningMessageInd(template (present) ConcurrentWarningMessageInd p_value := true_) := p_value; + template (present) ConfidentialityProtectionIndication mw_confidentialityProtectionIndication(template (present) ConfidentialityProtectionIndication p_value := ?) := p_value; + template (present) ConfidentialityProtectionResult mw_confidentialityProtectionResult(template (present) ConfidentialityProtectionResult p_value := ?) := p_value; + template (present) ConfiguredTACIndication mw_configuredTACIndication(template (present) ConfiguredTACIndication p_value := true_) := p_value; + + template (present) CoreNetworkAssistanceInformationForInactive mw_coreNetworkAssistanceInformationForInactive( + template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, + template (present) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := ?, + template (present) TAIListForInactive p_tAIListForInactive := ?, + template PagingDRX p_uESpecificDRX := *, + template MICOModeIndication p_mICOModeIndication := *, + template ExpectedUEBehaviour p_expectedUEBehaviour := *, + template CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := * + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + uESpecificDRX := p_uESpecificDRX, + periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, + mICOModeIndication := p_mICOModeIndication, + tAIListForInactive := p_tAIListForInactive, + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template mw_coreNetworkAssistanceInformationForInactive + + template (present) CoreNetworkAssistanceInformationForInactive.iE_Extensions mw_coreNetworkAssistanceInformationForInactive_paging( + template (present) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation := ?, + template (present) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue := ?, + template (present) UERadioCapabilityForPaging p_uERadioCapabilityForPaging := ?, + template (present) MicoAllPLMN p_micoAllPLMN := ? + ) := { + { + id := id_EUTRA_PagingeDRXInformation, + criticality := ignore, + extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } + }, + { + id := id_ExtendedUEIdentityIndexValue, + criticality := ignore, + extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } + }, + { + id := id_UERadioCapabilityForPaging, + criticality := ignore, + extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } + }, + { + id := id_MicoAllPLMN, + criticality := ignore, + extensionValue := { MicoAllPLMN := p_micoAllPLMN } + } + // TODO To be enhanced + } // End of template mw_coreNetworkAssistanceInformationForInactive_paging - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_ext( - template (present) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions + template (present) COUNTValueForPDCP_SN12 mw_cOUNTValueForPDCP_SN12( + template (present) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12 := ?, + template (present) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12 := ?, + template COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := * ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_areaScopeOfMDT_EUTRA_ext - - template AvailableRANVisibleQoEMetrics mw_availableRANVisibleQoEMetrics( - template AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := *, - template AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := *, - template AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := * - ) := { - applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, - playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, - iE_Extensions := p_iE_Extensions - } // End of template mw_availableRANVisibleQoEMetrics - - template BeamMeasurementsReportConfiguration mw_beamMeasurementsReportConfiguration( - template BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := *, - template MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := *, - template BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := * - ) := { - beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, - maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, - iE_Extensions := p_iE_Extensions - } // End of template mw_beamMeasurementsReportConfiguration - - template BeamMeasurementsReportQuantity mw_beamMeasurementsReportQuantity( - template BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, - template BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, - template BeamMeasurementsReportQuantity.sINR p_sINR := true_, - template BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := * - ) := { - rSRP := p_rSRP, - rSRQ := p_rSRQ, - sINR := p_sINR, + pDCP_SN12 := p_pDCP_SN12, + hFN_PDCP_SN12 := p_hFN_PDCP_SN12, iE_Extensions := p_iE_Extensions - } // End of template mw_beamMeasurementsReportQuantity - - template (present) BitRate mw_bitRate (template (present) BitRate p_value := ?) := p_value; + } // End of template mw_cOUNTValueForPDCP_SN12 - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledEUTRA( - template (present) CellIDCancelledEUTRA p_cellIDCancelledEUTRA := ? - ) := { - cellIDCancelledEUTRA := p_cellIDCancelledEUTRA - } // End of template mw_broadcastCancelledAreaList_cellIDCancelledEUTRA + template (present) COUNTValueForPDCP_SN18 mw_cOUNTValueForPDCP_SN18( + template (present) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18 := ?, + template (present) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18 := ?, + template COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := * + ) := { + pDCP_SN18 := p_pDCP_SN18, + hFN_PDCP_SN18 := p_hFN_PDCP_SN18, + iE_Extensions := p_iE_Extensions + } // End of template mw_cOUNTValueForPDCP_SN18 - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledEUTRA( - template (present) TAICancelledEUTRA p_tAICancelledEUTRA := ? - ) := { - tAICancelledEUTRA := p_tAICancelledEUTRA - } // End of template mw_broadcastCancelledAreaList_tAICancelledEUTRA + template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_endpointIPAddress( + template (present) TransportLayerAddress p_endpointIPAddress := ? + ) := { + endpointIPAddress := p_endpointIPAddress + } // End of template mw_cPTransportLayerInformation_endpointIPAddress - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( - template (present) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA := ? - ) := { - emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA - } // End of template mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA + template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_choice_Extensions( + template (present) CPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cPTransportLayerInformation_choice_Extensions - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledNR( - template (present) CellIDCancelledNR p_cellIDCancelledNR := ? - ) := { - cellIDCancelledNR := p_cellIDCancelledNR - } // End of template mw_broadcastCancelledAreaList_cellIDCancelledNR + template (present) CPTransportLayerInformation.choice_Extensions mw_cPTransportLayerInformation_ext( + template (present) EndpointIPAddressAndPort p_EndpointIPAddressAndPort := ? + ) := { + id := id_EndpointIPAddressAndPort, + criticality := reject, + value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } + } // End of template mw_cPTransportLayerInformation_ext - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledNR( - template (present) TAICancelledNR p_tAICancelledNR := ? - ) := { - tAICancelledNR := p_tAICancelledNR - } // End of template mw_broadcastCancelledAreaList_tAICancelledNR + template CriticalityDiagnostics mw_criticalityDiagnostics( + template ProcedureCode p_procedureCode := *, + template TriggeringMessage p_triggeringMessage := *, + template Criticality p_procedureCriticality := *, + template CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := *, + template CriticalityDiagnostics.iE_Extensions p_iE_Extensions := * + ) := { + procedureCode := p_procedureCode, + triggeringMessage := p_triggeringMessage, + procedureCriticality := p_procedureCriticality, + iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, + iE_Extensions := p_iE_Extensions + } // End of template mw_criticalityDiagnostics - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( - template (present) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR := ? - ) := { - emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR - } // End of template mw_broadcastCancelledAreaList_ext + template (present) CriticalityDiagnostics_IE_Item mw_criticalityDiagnostics_IE_Item( + template (present) Criticality p_iECriticality := ?, + template (present) ProtocolIE_ID p_iE_ID := ?, + template (present) TypeOfError p_typeOfError := ?, + template CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := * + ) := { + iECriticality := p_iECriticality, + iE_ID := p_iE_ID, + typeOfError := p_typeOfError, + iE_Extensions := p_iE_Extensions + } // End of template mw_criticalityDiagnostics_IE_Item - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_ext( - template (present) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_broadcastCancelledAreaList_ext + template (present) CellBasedMDT_NR mw_cellBasedMDT_NR( + in template (present) CellIdListforMDT_NR p_cellIdListforMDT := ?, + in template CellBasedMDT_NR.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedMDT_NR - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastEUTRA( - template (present) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA - ) := { - cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA - } // End of template mw_broadcastCompletedAreaList_cellIDCancelledEUTRA + template (present) CellBasedMDT_EUTRA mw_cellBasedMDT_EUTRA( + template (present) CellIdListforMDT_EUTRA p_cellIdListforMDT := ?, + template CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedMDT_EUTRA - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastEUTRA( - template (present) TAIBroadcastEUTRA p_tAIBroadcastEUTRA - ) := { - tAIBroadcastEUTRA := p_tAIBroadcastEUTRA - } // End of template mw_broadcastCompletedAreaList_tAIBroadcastEUTRA + template (present) CellBasedQMC mw_cellBasedQMC( + template (present) CellIdListforQMC p_cellIdListforQMC := ?, + template CellBasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforQMC := p_cellIdListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedQMC - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( - template (present) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA - ) := { - emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA - } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA + template (present) DataForwardingNotPossible mw_DataForwardingNotPossible(template (present) DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastNR( - template (present) CellIDBroadcastNR p_cellIDBroadcastNR - ) := { - cellIDBroadcastNR := p_cellIDBroadcastNR - } // End of template mw_broadcastCompletedAreaList_cellIDBroadcastNR + template (present) DataForwardingAccepted mw_dataForwardingAccepted(template (present) DataForwardingAccepted p_value := ?) := p_value; - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastNR( - template (present) TAIBroadcastNR p_tAIBroadcastNR - ) := { - tAIBroadcastNR := p_tAIBroadcastNR - } // End of template mw_broadcastCompletedAreaList_tAIBroadcastNR + template (present) DataForwardingResponseDRBItem mw_dataForwardingResponseDRBItem( + template (present) DRB_ID p_dRB_ID := ?, + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template UPTransportLayerInformation p_uLForwardingUP_TNLInformation := *, + template DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := * + ) := { + dRB_ID := p_dRB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_dataForwardingResponseDRBItem - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( - template (present) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR - ) := { - emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR - } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR + template (present) DAPSRequestInfo mw_dAPSRequestInfo( + template (present) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, + template DAPSRequestInfo.iE_Extensions p_iE_Extensions := * + ) := { + dAPSIndicator := p_dAPSIndicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_dAPSRequestInfo - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_ext( - template (present) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_broadcastCompletedAreaList_ext + template (present) DAPSResponseInfoItem mw_dAPSResponseInfoItem( + template (present) DRB_ID p_dRB_ID := ?, + template (present) DAPSResponseInfo p_dAPSResponseInfo := ?, + template DAPSResponseInfoItem.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + dAPSResponseInfo := p_dAPSResponseInfo, + iE_Extension := p_iE_Extension + } // End of template mw_dAPSResponseInfoItem - template (present) BroadcastPLMNItem mw_ie_broadcastPLMNItem( - template (present) PLMNIdentity p_plmnId := ?, - template (present) SliceSupportList p_ssl := ?, - template BroadcastPLMNItem.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_plmnId, - tAISliceSupportList := p_ssl, - iE_Extensions := p_iE_Extensions - } // End of template mw_ie_broadcastPLMNItem + template (present) DAPSResponseInfo mw_dAPSResponseInfo( + template (present) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator := ?, + template DAPSResponseInfo.iE_Extensions p_iE_Extensions := * + ) := { + dapsresponseindicator := p_dapsresponseindicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_dAPSResponseInfo - template (present) BluetoothMeasurementConfiguration mw_bluetoothMeasurementConfiguration( - template (present) BluetoothMeasConfig p_bluetoothMeasConfig := ?, - template BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := *, - template BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := *, - template BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := * - ) := { - bluetoothMeasConfig := p_bluetoothMeasConfig, - bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, - bt_rssi := p_bt_rssi, - iE_Extensions := p_iE_Extensions - } // End of template mw_bluetoothMeasurementConfiguration + template (present) DataForwardingResponseERABListItem mw_DataForwardingResponseERABListItem( + template (present) E_RAB_ID p_e_RAB_ID := ?, + template (present) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := ?, + template DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := * + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_DataForwardingResponseERABListItem - template (present) BluetoothMeasConfigNameItem mw_bluetoothMeasConfigNameItem( - template (present) BluetoothName p_bluetoothName := ?, - template BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := * - ) := { - bluetoothName := p_bluetoothName, + template (present) DelayCritical mw_delayCritical(template (present) DelayCritical p_value := ?) := p_value; + + template (present) DL_CP_SecurityInformation mw_dL_CP_SecurityInformation( + template (present) DL_NAS_MAC p_dl_NAS_MAC := ?, + template DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * + ) := { + dl_NAS_MAC := p_dl_NAS_MAC, iE_Extensions := p_iE_Extensions - } // End of template mw_bluetoothMeasConfigNameItem + } // End of template mw_dL_CP_SecurityInformation - template (present) BluetoothMeasConfig mw_bluetoothMeasConfig(template (present) BluetoothMeasConfig p_value := setup) := p_value; + template (present) DLForwarding mw_dLForwarding(template (present) DLForwarding p_value := dl_forwarding_proposed) := p_value; - template (present) CancelAllWarningMessages mw_cancelAllWarningMessages(template (present) CancelAllWarningMessages p_value := true_) := p_value; + template (present) DL_NGU_TNLInformationReused mw_dL_NGU_TNLInformationReused(template (present) DL_NGU_TNLInformationReused p_value := true_) := p_value; + template (present) DirectForwardingPathAvailability mw_directForwardingPathAvailability(template (present) DirectForwardingPathAvailability p_value := direct_path_available) := p_value; - template (present) CancelledCellsInEAI_EUTRA_Item mw_cancelledCellsInEAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cancelledCellsInEAI_EUTRA_Item + template (present) DRBsSubjectToStatusTransferItem mw_dRBsSubjectToStatusTransferItem( + in template (present) DRB_ID p_dRB_ID := ?, + in template (present) DRBStatusUL p_dRBStatusUL := ?, + in template (present) DRBStatusDL p_dRBStatusDL := ?, + in template DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + dRBStatusUL := p_dRBStatusUL, + dRBStatusDL := p_dRBStatusDL, + iE_Extension := p_iE_Extension + } // End of template mw_dRBsSubjectToStatusTransferItem - template (present) CancelledCellsInEAI_NR_Item mw_cancelledCellsInEAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cancelledCellsInEAI_NR_Item + template (present) DRBsSubjectToStatusTransferItem.iE_Extension mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList( + template (present) AssociatedQosFlowList p_AssociatedQosFlowList := ? + ) := { + { + id := id_OldAssociatedQosFlowList_ULendmarkerexpected, + criticality := ignore, + extensionValue := { AssociatedQosFlowList := p_AssociatedQosFlowList } + } + } // End of template mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList - template (present) CancelledCellsInTAI_EUTRA_Item mw_cancelledCellsInTAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cancelledCellsInTAI_EUTRA_Item + template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL12( + template (present) DRBStatusDL12 p_dRBStatusDL12 := ? + ) := { + dRBStatusDL12 := p_dRBStatusDL12 + } // End of template mw_dRBStatusDL_dRBStatusDL12 - template (present) CancelledCellsInTAI_NR_Item mw_CancelledCellsInTAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_CancelledCellsInTAI_NR_Item + template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL18( + template (present) DRBStatusDL18 p_dRBStatusDL18 := ? + ) := { + dRBStatusDL18 := p_dRBStatusDL18 + } // End of template mw_dRBStatusDL_dRBStatusDL18 - template (present) CandidateCellItem mw_candidateCellItem( - template (present) CandidateCell p_candidateCell := ?, - template CandidateCellItem.iE_Extensions p_iE_Extensions := * - ) := { - candidateCell := p_candidateCell, - iE_Extensions := p_iE_Extensions - } // End of template mw_candidateCellItem + template (present) DRBStatusDL mw_dRBStatusDL_choice_Extensions( + template (present) DRBStatusDL.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_dRBStatusDL_choice_Extensions - template (present) CandidateCell mw_candidateCell_candidateCGI( - template (present) CandidateCellID p_candidateCGI := ? - ) := { - candidateCGI := p_candidateCGI - } // End of template mw_candidateCell_candidateCGI + template (present) DRBStatusDL12 mw_dRBStatusDL12( + template (present) COUNTValueForPDCP_SN12 p_dL_COUNTValue := ?, + template DRBStatusDL12.iE_Extension p_iE_Extension := * + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusDL12 - template (present) CandidateCell mw_candidateCell_candidatePCI( - template (present) CandidatePCI p_candidatePCI := ? - ) := { - candidatePCI := p_candidatePCI - } // End of template mw_candidateCell_candidatePCI + template (present) DRBStatusDL18 mw_dRBStatusDL18( + template (present) COUNTValueForPDCP_SN18 p_dL_COUNTValue := ?, + template DRBStatusDL18.iE_Extension p_iE_Extension := * + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusDL18 - template (present) CandidateCell mw_candidateCell_ext( - template (present) CandidateCell.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL12( + template (present) DRBStatusUL12 p_dRBStatusUL12 := ? + ) := { + dRBStatusUL12 := p_dRBStatusUL12 + } // End of template mw_dRBStatusUL_dRBStatusUL12 + + template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL18( + template (present) DRBStatusUL18 p_dRBStatusUL18 := ? + ) := { + dRBStatusUL18 := p_dRBStatusUL18 + } // End of template mw_dRBStatusUL_dRBStatusUL18 + + template (present) DRBStatusUL mw_dRBStatusUL_choice_Extensions( + template (present) DRBStatusUL.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_candidateCell_ext + } // End of template mw_dRBStatusUL_choice_Extensions - template (present) CandidatePCI mw_candidatePCI( - template (present) CandidatePCI.candidatePCI p_candidatePCI := ?, - template (present) CandidatePCI.candidateNRARFCN p_candidateNRARFCN := ?, - template CandidatePCI.iE_Extensions p_iE_Extensions := * - ) := { - candidatePCI := p_candidatePCI, - candidateNRARFCN := p_candidateNRARFCN, - iE_Extensions := p_iE_Extensions - } // End of template mw_candidatePCI + template (present) DRBStatusUL12 mw_dRBStatusUL12( + template (present) COUNTValueForPDCP_SN12 p_uL_COUNTValue := ?, + template DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, + template DRBStatusUL12.iE_Extension p_iE_Extension := * + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusUL12 - template (present) Cause mw_cause_radioNetwork( - template (present) CauseRadioNetwork p_radioNetwork - ) := { - radioNetwork := p_radioNetwork - } // End of template mw_cause_radioNetwork + template (present) DRBStatusUL18 mw_dRBStatusUL18( + template (present) COUNTValueForPDCP_SN18 p_uL_COUNTValue := ?, + template DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, + template DRBStatusUL18.iE_Extension p_iE_Extension := * + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusUL18 - template (present) Cause mw_cause_transport( - template (present) CauseTransport p_transport - ) := { - transport := p_transport - } // End of template mw_cause_transport + template (present) DRBsToQosFlowsMappingItem mw_dRBsToQosFlowsMappingItem( + template (present) DRB_ID p_dRB_ID := ?, + template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, + template DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := * + ) := { + dRB_ID := p_dRB_ID, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template mw_dRBsToQosFlowsMappingItem - template (present) Cause mw_cause_nas( - template (present) CauseNas p_nas - ) := { - nas := p_nas - } // End of template mw_cause_nas + template (present) DRBsToQosFlowsMappingItem.iE_Extensions mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo( + template (present) DAPSRequestInfo p_dAPSRequestInfo := ? + ) := { + { + id := id_DAPSRequestInfo, + criticality := ignore, + extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } + } + } // End of template mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo + + template (present) Dynamic5QIDescriptor mw_dynamic5QIDescriptor( + template (present) PriorityLevelQos p_priorityLevelQos := ?, + template (present) PacketDelayBudget p_packetDelayBudget := ?, + template (present) PacketErrorRate p_packetErrorRate := ?, + template FiveQI p_fiveQI := *, + template DelayCritical p_delayCritical := *, + template AveragingWindow p_averagingWindow := *, + template MaximumDataBurstVolume p_maximumDataBurstVolume := *, + template Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * + ) := { + priorityLevelQos := p_priorityLevelQos, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + fiveQI := p_fiveQI, + delayCritical := p_delayCritical, + // The above IE shall be present in case of GBR QoS flow + averagingWindow := p_averagingWindow, + // The above IE shall be present in case of GBR QoS flow + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template mw_dynamic5QIDescriptor + + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_extendedPacketDelayBudget( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_ExtendedPacketDelayBudget, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_extendedPacketDelayBudget + + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL + + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL - template (present) Cause mw_cause_protocol( - template (present) CauseProtocol p_protocol - ) := { - protocol := p_protocol - } // End of template mw_cause_protocol + template (present) EarlyMeasurement mw_earlyMeasurement(template (present) EarlyMeasurement p_value := true_) := p_value; - template (present) Cause mw_cause_misc( - template (present) CauseMisc p_misc - ) := { - misc := p_misc - } // End of template mw_cause_misc + template (present) EarlyStatusTransfer_TransparentContainer mw_earlyStatusTransfer_TransparentContainer( + template (present) ProcedureStageChoice p_procedureStage := ?, + template EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * + ) := { + procedureStage := p_procedureStage, + iE_Extensions := p_iE_Extensions + } // End of template mw_earlyStatusTransfer_TransparentContainer - template (present) Cause mw_cause_ext( - template (present) Cause.choice_Extensions p_choice_Extensions - ) := { + template (present) ProcedureStageChoice mw_procedureStageChoice_firstDLCount( + template (present) FirstDLCount p_firstDLCount := ? + ) := { + first_dl_count := p_firstDLCount + } // End of template mw_procedureStageChoice_firstDLCount + + template (present) ProcedureStageChoice mw_procedureStageChoice_choice_Extensions( + template (present) ProcedureStageChoice.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_cause_ext + } // End of template mw_procedureStageChoice_choice_Extensions - template (present) CauseMisc mw_causeMisc(template (present) CauseMisc p_value := ?) := p_value; - template (present) CauseNas mw_causeNas(template (present) CauseNas p_value := ?) := p_value; - template (present) CauseProtocol mw_causeProtocol(template (present) CauseProtocol p_value := ?) := p_value; - template (present) CauseRadioNetwork mww_causeRadioNetwork(template (present) CauseRadioNetwork p_value := ?) := p_value; - template (present) CauseTransport mw_causeTransport(template (present) CauseTransport p_value := ?) := p_value; + template (present) FirstDLCount mw_firstDLCount( + template (present) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer := ?, + template FirstDLCount.iE_Extension p_iE_Extension := * + ) := { + dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, + iE_Extension := p_iE_Extension + } // End of template mw_firstDLCount - template (present) Cell_CAGInformation mw_cell_CAGInformation( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template (present) CellCAGList p_cellCAGList := ?, - template Cell_CAGInformation.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - cellCAGList := p_cellCAGList, - iE_Extensions := p_iE_Extensions - } // End of template mw_cell_CAGInformation + template (present) DRBsSubjectToEarlyStatusTransfer_Item mw_dRBsSubjectToEarlyStatusTransfer_Item( + template (present) DRB_ID p_dRB_ID := ?, + template (present) DRBStatusDL p_firstDLCOUNT := ?, + template DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + firstDLCOUNT := p_firstDLCOUNT, + iE_Extension := p_iE_Extension + } // End of template mw_dRBsSubjectToEarlyStatusTransfer_Item - template (present) CellIDBroadcastEUTRA_Item mw_cellIDBroadcastEUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDBroadcastEUTRA_Item + template (present) EDT_Session mw_eDT_Session(template (present) EDT_Session p_value := true_) := p_value; - template (present) CellIDBroadcastNR_Item mw_cellIDBroadcastNR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDBroadcastNR_Item + template (present) EmergencyAreaIDBroadcastEUTRA_Item mw_emergencyAreaIDBroadcastEUTRA_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA := ?, + template EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDBroadcastEUTRA_Item - template (present) CellIDCancelledEUTRA_Item mw_cellIDCancelledEUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDCancelledEUTRA_Item + template (present) EmergencyAreaIDBroadcastNR_Item mw_emergencyAreaIDBroadcastNR_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CompletedCellsInEAI_NR p_completedCellsInEAI_NR := ?, + template EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_NR := p_completedCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDBroadcastNR_Item - template (present) CellIDCancelledNR_Item mw_cellIDCancelledNR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDCancelledNR_Item + template (present) EmergencyAreaIDCancelledEUTRA_Item mw_emergencyAreaIDCancelledEUTRA_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA := ?, + template EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDCancelledEUTRA_Item - template (present) CellIDListForRestart mw_cellIDListForRestart_eUTRA_CGIListforRestart( - template (present) EUTRA_CGIList p_eUTRA_CGIListforRestart := ? - ) := { - eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart - } // End of template mw_cellIDListForRestart_misc + template (present) EmergencyAreaIDCancelledNR_Item mw_emergencyAreaIDCancelledNR_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR := ?, + template EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDCancelledNR_Item - template (present) CellIDListForRestart mw_cellIDListForRestart_nR_CGIListforRestart( - template (present) NR_CGIList p_nR_CGIListforRestart := ? - ) := { - nR_CGIListforRestart := p_nR_CGIListforRestart - } // End of template mw_cellIDListForRestart_nR_CGIListforRestart + template (present) EmergencyFallbackIndicator mw_emergencyFallbackIndicator( + template (present) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator := ?, + template EmergencyServiceTargetCN p_emergencyServiceTargetCN := *, + template EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := * + ) := { + emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, + emergencyServiceTargetCN := p_emergencyServiceTargetCN, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyFallbackIndicator - template (present) CellIDListForRestart mw_cellIDListForRestart_ext( - template (present) CellIDListForRestart.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_cellIDListForRestart_ext + template (present) EmergencyFallbackRequestIndicator mw_emergencyFallbackRequestIndicator(template (present) EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; - template (present) CellSize mw_cellSize(template (present) CellSize p_value := ?) := p_value; + template (present) EmergencyServiceTargetCN mw_emergencyServiceTargetCN(template (present) EmergencyServiceTargetCN p_value := ?) := p_value; - template (present) CellType mw_cellType( - template (present) CellSize p_cellSize:= ?, - template CellType.iE_Extensions p_iE_Extensions := * - ) := { - cellSize := p_cellSize, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellType + template (present) ENB_ID mw_eNB_ID_macroENB_ID( + template (present) Bit20 p_macroENB_ID := ? + ) := { + macroENB_ID := p_macroENB_ID + } // End of template mw_eNB_ID_macroENB_ID - template (present) CEmodeBSupport_Indicator mw_cEmodeBSupport_Indicator(template (present) CEmodeBSupport_Indicator p_value := ?) := p_value; - template (present) CEmodeBrestricted mw_cEmodeBrestricted(template (present) CEmodeBrestricted p_value := ?) := p_value; + template (present) ENB_ID mw_eNB_ID_homeENB_ID( + template (present) Bit28 p_homeENB_ID := ? + ) := { + homeENB_ID := p_homeENB_ID + } // End of template mw_eNB_ID_homeENB_ID - template CNAssistedRANTuning mw_cNAssistedRANTuning( - template ExpectedUEBehaviour p_expectedUEBehaviour := *, - template CNAssistedRANTuning.iE_Extensions p_iE_Extensions := * - ) := { - expectedUEBehaviour := p_expectedUEBehaviour, - iE_Extensions := p_iE_Extensions - } // End of template mw_cNAssistedRANTuning + template (present) ENB_ID mw_eNB_ID_short_macroENB_ID( + template (present) Bit18 p_short_macroENB_ID := ? + ) := { + short_macroENB_ID := p_short_macroENB_ID + } // End of template mw_eNB_ID_short_macroENB_ID - template (present) CNTypeRestrictionsForEquivalentItem mw_cNTypeRestrictionsForEquivalentItem( - template (present) PLMNIdentity p_plmnIdentity := ?, - template (present) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type := ?, - template CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := * - ) := { - plmnIdentity := p_plmnIdentity, - cn_Type := p_cn_Type, - iE_Extensions := p_iE_Extensions - } // End of template mw_cNTypeRestrictionsForEquivalentItem + template (present) ENB_ID mw_eNB_ID_long_macroENB_ID( + template (present) Bit21 p_long_macroENB_ID := ? + ) := { + long_macroENB_ID := p_long_macroENB_ID + } // End of template mw_eNB_ID_long_macroENB_ID - template (present) CNTypeRestrictionsForServing mw_cNTypeRestrictionsForServing(template (present) CNTypeRestrictionsForServing p_value := ?) := p_value; + template (present) ENB_ID mw_eNB_ID_choice_Extensions( + template (present) ENB_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_eNB_ID_choice_Extensions - template (present) CompletedCellsInEAI_EUTRA_Item mw_completedCellsInEAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInEAI_EUTRA_Item + template (present) Enhanced_CoverageRestriction mw_enhanced_CoverageRestriction(template (present) Enhanced_CoverageRestriction p_value := restricted) := p_value; - template (present) CompletedCellsInEAI_NR_Item mw_completedCellsInEAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInEAI_NR_Item + template (present) EndpointIPAddressAndPort mw_endpointIPAddressAndPort( + template (present) TransportLayerAddress p_endpointIPAddress := ?, + template (present) PortNumber p_portNumber := ?, + template EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := * + ) := { + endpointIPAddress := p_endpointIPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_endpointIPAddressAndPort - template (present) CompletedCellsInTAI_EUTRA_Item mw_completedCellsInTAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInTAI_EUTRA_Item + template (present) EndIndication mw_endIndication(template (present) EndIndication p_value := ?) := p_value; - template (present) CompletedCellsInTAI_NR_Item mw_completedCellsInTAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, + template (present) EPS_TAI mw_ePS_TAI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) EPS_TAC p_ePS_TAC := ?, + template EPS_TAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + ePS_TAC := p_ePS_TAC, iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInTAI_NR_Item - - template (present) ConcurrentWarningMessageInd mw_concurrentWarningMessageInd(template (present) ConcurrentWarningMessageInd p_value := true_) := p_value; - template (present) ConfidentialityProtectionIndication mw_confidentialityProtectionIndication(template (present) ConfidentialityProtectionIndication p_value := ?) := p_value; - template (present) ConfidentialityProtectionResult mw_confidentialityProtectionResult(template (present) ConfidentialityProtectionResult p_value := ?) := p_value; - template (present) ConfiguredTACIndication mw_configuredTACIndication(template (present) ConfiguredTACIndication p_value := true_) := p_value; + } // End of template mw_ePS_TAI - template (present) CoreNetworkAssistanceInformationForInactive mw_coreNetworkAssistanceInformationForInactive( - template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, - template (present) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := ?, - template (present) TAIListForInactive p_tAIListForInactive := ?, - template PagingDRX p_uESpecificDRX := *, - template MICOModeIndication p_mICOModeIndication := *, - template ExpectedUEBehaviour p_expectedUEBehaviour := *, - template CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := * - ) := { - uEIdentityIndexValue := p_uEIdentityIndexValue, - uESpecificDRX := p_uESpecificDRX, - periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, - mICOModeIndication := p_mICOModeIndication, - tAIListForInactive := p_tAIListForInactive, - expectedUEBehaviour := p_expectedUEBehaviour, - iE_Extensions := p_iE_Extensions - } // End of template mw_coreNetworkAssistanceInformationForInactive + template (present) E_RABInformationItem mw_e_RABInformationItem( + template (present) E_RAB_ID p_e_RAB_ID := ?, + template (present) DLForwarding p_dLForwarding := ?, + template E_RABInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwarding := p_dLForwarding, + iE_Extensions := p_iE_Extensions + } // End of template mw_e_RABInformationItem - template (present) CoreNetworkAssistanceInformationForInactive.iE_Extensions mw_coreNetworkAssistanceInformationForInactive_paging( - template (present) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation := ?, - template (present) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue := ?, - template (present) UERadioCapabilityForPaging p_uERadioCapabilityForPaging := ?, - template (present) MicoAllPLMN p_micoAllPLMN := ? - ) := { - { - id := id_EUTRA_PagingeDRXInformation, - criticality := ignore, - extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } - }, - { - id := id_ExtendedUEIdentityIndexValue, - criticality := ignore, - extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } - }, + template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { { - id := id_UERadioCapabilityForPaging, + id := id_SourceTNLAddrInfo, criticality := ignore, - extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } - }, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_e_RABInformationItem_id_SourceTNLAddrInfo + + template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { { - id := id_MicoAllPLMN, + id := id_SourceNodeTNLAddrInfo, criticality := ignore, - extensionValue := { MicoAllPLMN := p_micoAllPLMN } + extensionValue := { TransportLayerAddress := p_transportLayerAddress } } - // TODO To be enhanced - } // End of template mw_coreNetworkAssistanceInformationForInactive_paging - - template (present) COUNTValueForPDCP_SN12 mw_cOUNTValueForPDCP_SN12( - template (present) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12 := ?, - template (present) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12 := ?, - template COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := * - ) := { - pDCP_SN12 := p_pDCP_SN12, - hFN_PDCP_SN12 := p_hFN_PDCP_SN12, - iE_Extensions := p_iE_Extensions - } // End of template mw_cOUNTValueForPDCP_SN12 + } // End of template mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo - template (present) COUNTValueForPDCP_SN18 mw_cOUNTValueForPDCP_SN18( - template (present) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18 := ?, - template (present) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18 := ?, - template COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := * - ) := { - pDCP_SN18 := p_pDCP_SN18, - hFN_PDCP_SN18 := p_hFN_PDCP_SN18, - iE_Extensions := p_iE_Extensions - } // End of template mw_cOUNTValueForPDCP_SN18 + template (present) EUTRA_CGI mw_uUTRA_CGI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) EUTRACellIdentity p_eUTRACellIdentity := ?, + template EUTRA_CGI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + eUTRACellIdentity := p_eUTRACellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template mw_uUTRA_CGI - template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_endpointIPAddress( - template (present) TransportLayerAddress p_endpointIPAddress := ? - ) := { - endpointIPAddress := p_endpointIPAddress - } // End of template mw_cPTransportLayerInformation_endpointIPAddress + template (present) EUTRA_PagingeDRXInformation mw_eUTRA_PagingeDRXInformation( + template (present) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle := ?, + template EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := *, + template EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, + eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRA_PagingeDRXInformation - template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_choice_Extensions( - template (present) CPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_cPTransportLayerInformation_choice_Extensions + template (present) EUTRA_Paging_eDRX_Cycle mw_eUTRA_Paging_eDRX_Cycle(template (present) EUTRA_Paging_eDRX_Cycle p_value := ?) := p_value; - template (present) CPTransportLayerInformation.choice_Extensions mw_cPTransportLayerInformation_ext( - template (present) EndpointIPAddressAndPort p_EndpointIPAddressAndPort := ? - ) := { - id := id_EndpointIPAddressAndPort, - criticality := reject, - value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } - } // End of template mw_cPTransportLayerInformation_ext + template (present) EUTRA_Paging_Time_Window mw_eUTRA_Paging_Time_Window(template (present) EUTRA_Paging_Time_Window p_value := ?) := p_value; - template CriticalityDiagnostics mw_criticalityDiagnostics( - template ProcedureCode p_procedureCode := *, - template TriggeringMessage p_triggeringMessage := *, - template Criticality p_procedureCriticality := *, - template CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := *, - template CriticalityDiagnostics.iE_Extensions p_iE_Extensions := * - ) := { - procedureCode := p_procedureCode, - triggeringMessage := p_triggeringMessage, - procedureCriticality := p_procedureCriticality, - iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, - iE_Extensions := p_iE_Extensions - } // End of template mw_criticalityDiagnostics + template (present) EventType mw_eventType(template (present) EventType p_value := ?) := p_value; - template (present) CriticalityDiagnostics_IE_Item mw_criticalityDiagnostics_IE_Item( - template (present) Criticality p_iECriticality := ?, - template (present) ProtocolIE_ID p_iE_ID := ?, - template (present) TypeOfError p_typeOfError := ?, - template CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := * + template (present) ExcessPacketDelayThresholdItem mw_excessPacketDelayThresholdItem( + template (present) FiveQI p_fiveQi := ?, + template (present) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue := ?, + template ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := * ) := { - iECriticality := p_iECriticality, - iE_ID := p_iE_ID, - typeOfError := p_typeOfError, - iE_Extensions := p_iE_Extensions - } // End of template mw_criticalityDiagnostics_IE_Item - - template (present) CellBasedMDT_NR mw_cellBasedMDT_NR( - in template (present) CellIdListforMDT_NR p_cellIdListforMDT := ?, - in template CellBasedMDT_NR.iE_Extensions p_iE_Extensions := * - ) := { - cellIdListforMDT := p_cellIdListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellBasedMDT_NR - - template (present) CellBasedMDT_EUTRA mw_cellBasedMDT_EUTRA( - template (present) CellIdListforMDT_EUTRA p_cellIdListforMDT := ?, - template CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions := * - ) := { - cellIdListforMDT := p_cellIdListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellBasedMDT_EUTRA - - template (present) CellBasedQMC mw_cellBasedQMC( - template (present) CellIdListforQMC p_cellIdListforQMC := ?, - template CellBasedQMC.iE_Extensions p_iE_Extensions := * - ) := { - cellIdListforQMC := p_cellIdListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellBasedQMC - - template (present) DataForwardingNotPossible mw_DataForwardingNotPossible(template (present) DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; - - template (present) DataForwardingAccepted mw_dataForwardingAccepted(template (present) DataForwardingAccepted p_value := ?) := p_value; + fiveQi := p_fiveQi, + excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_excessPacketDelayThresholdItem - template (present) DataForwardingResponseDRBItem mw_dataForwardingResponseDRBItem( - template (present) DRB_ID p_dRB_ID := ?, - template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, - template UPTransportLayerInformation p_uLForwardingUP_TNLInformation := *, - template DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := * - ) := { - dRB_ID := p_dRB_ID, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_dataForwardingResponseDRBItem + template (present) ExcessPacketDelayThresholdValue mw_excessPacketDelayThresholdValue(template (present) ExcessPacketDelayThresholdValue p_value := ?) := p_value; - template (present) DAPSRequestInfo mw_dAPSRequestInfo( - template (present) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, - template DAPSRequestInfo.iE_Extensions p_iE_Extensions := * - ) := { - dAPSIndicator := p_dAPSIndicator, - iE_Extensions := p_iE_Extensions - } // End of template mw_dAPSRequestInfo + template (present) ExpectedHOInterval mw_expectedHOInterval(template (present) ExpectedHOInterval p_value := ?) := p_value; - template (present) DAPSResponseInfoItem mw_dAPSResponseInfoItem( - template (present) DRB_ID p_dRB_ID := ?, - template (present) DAPSResponseInfo p_dAPSResponseInfo := ?, - template DAPSResponseInfoItem.iE_Extension p_iE_Extension := * - ) := { - dRB_ID := p_dRB_ID, - dAPSResponseInfo := p_dAPSResponseInfo, - iE_Extension := p_iE_Extension - } // End of template mw_dAPSResponseInfoItem + template ExpectedUEActivityBehaviour mw_expectedUEActivityBehaviour( + template ExpectedActivityPeriod p_expectedActivityPeriod := *, + template ExpectedIdlePeriod p_expectedIdlePeriod := *, + template SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := *, + template ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := * + ) := { + expectedActivityPeriod := p_expectedActivityPeriod, + expectedIdlePeriod := p_expectedIdlePeriod, + sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_expectedUEActivityBehaviour - template (present) DAPSResponseInfo mw_dAPSResponseInfo( - template (present) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator := ?, - template DAPSResponseInfo.iE_Extensions p_iE_Extensions := * - ) := { - dapsresponseindicator := p_dapsresponseindicator, - iE_Extensions := p_iE_Extensions - } // End of template mw_dAPSResponseInfo + template ExpectedUEBehaviour mw_expectedUEBehaviour( + template ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := *, + template ExpectedHOInterval p_expectedHOInterval := *, + template ExpectedUEMobility p_expectedUEMobility := *, + template ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= *, + template ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := * + ) := { + expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, + expectedHOInterval := p_expectedHOInterval, + expectedUEMobility := p_expectedUEMobility, + expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEBehaviour - template (present) DataForwardingResponseERABListItem mw_DataForwardingResponseERABListItem( - template (present) E_RAB_ID p_e_RAB_ID := ?, - template (present) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := ?, - template DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := * - ) := { - e_RAB_ID := p_e_RAB_ID, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_DataForwardingResponseERABListItem + template (present) ExpectedUEMobility mw_expectedUEMobility(template (present) ExpectedUEMobility p_value := ?) := p_value; - template (present) DelayCritical mw_delayCritical(template (present) DelayCritical p_value := ?) := p_value; + template (present) ExpectedUEMovingTrajectoryItem mw_expectedUEMovingTrajectoryItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := *, + template ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template mw_expectedUEMovingTrajectoryItem - template (present) DL_CP_SecurityInformation mw_dL_CP_SecurityInformation( - template (present) DL_NAS_MAC p_dl_NAS_MAC := ?, - template DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * - ) := { - dl_NAS_MAC := p_dl_NAS_MAC, - iE_Extensions := p_iE_Extensions - } // End of template mw_dL_CP_SecurityInformation + template Extended_AMFName mw_extended_AMFName( + template AMFNameVisibleString p_aMFNameVisibleString := *, + template AMFNameUTF8String p_aMFNameUTF8String := *, + template Extended_AMFName.iE_Extensions p_iE_Extensions := * + ) := { + aMFNameVisibleString := p_aMFNameVisibleString, + aMFNameUTF8String := p_aMFNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template mw_extended_AMFName - template (present) DLForwarding mw_dLForwarding(template (present) DLForwarding p_value := dl_forwarding_proposed) := p_value; + template Extended_RANNodeName mw_extended_RANNodeName( + template RANNodeNameVisibleString p_rANNodeNameVisibleString := *, + template RANNodeNameUTF8String p_rANNodeNameUTF8String := *, + template Extended_RANNodeName.iE_Extensions p_iE_Extensions := * + ) := { + rANNodeNameVisibleString := p_rANNodeNameVisibleString, + rANNodeNameUTF8String := p_rANNodeNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template mw_extended_RANNodeName - template (present) DL_NGU_TNLInformationReused mw_dL_NGU_TNLInformationReused(template (present) DL_NGU_TNLInformationReused p_value := true_) := p_value; + template (present) ExtendedRATRestrictionInformation mw_extendedRATRestrictionInformation( + template (present) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction := ?, + template (present) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction := ?, + template ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := * + ) := { + primaryRATRestriction := p_primaryRATRestriction, + secondaryRATRestriction := p_secondaryRATRestriction, + iE_Extensions := p_iE_Extensions + } // End of template mw_extendedRATRestrictionInformation - template (present) DirectForwardingPathAvailability mw_directForwardingPathAvailability(template (present) DirectForwardingPathAvailability p_value := direct_path_available) := p_value; + template (present) EventTrigger mw_eventTrigger_outOfCoverage( + template (present) EventTrigger.outOfCoverage p_outOfCoverage := true_ + ) := { + outOfCoverage := p_outOfCoverage + } // End of template mw_eventTrigger_outOfCoverage - template (present) DRBsSubjectToStatusTransferItem mw_dRBsSubjectToStatusTransferItem( - in template (present) DRB_ID p_dRB_ID := ?, - in template (present) DRBStatusUL p_dRBStatusUL := ?, - in template (present) DRBStatusDL p_dRBStatusDL := ?, - in template DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := * - ) := { - dRB_ID := p_dRB_ID, - dRBStatusUL := p_dRBStatusUL, - dRBStatusDL := p_dRBStatusDL, - iE_Extension := p_iE_Extension - } // End of template mw_dRBsSubjectToStatusTransferItem + template (present) EventTrigger mw_eventTrigger_eventL1LoggedMDTConfig( + template (present) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig := ? + ) := { + eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig + } // End of template mw_eventTrigger_eventL1LoggedMDTConfig - template (present) DRBsSubjectToStatusTransferItem.iE_Extension mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList( - template (present) AssociatedQosFlowList p_AssociatedQosFlowList := ? - ) := { - { - id := id_OldAssociatedQosFlowList_ULendmarkerexpected, - criticality := ignore, - extensionValue := { AssociatedQosFlowList := p_AssociatedQosFlowList } - } - } // End of template mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList + template (present) EventTrigger mw_eventTrigger_choice_Extensions( + template (present) EventTrigger.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_eventTrigger_choice_Extensions - template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL12( - template (present) DRBStatusDL12 p_dRBStatusDL12 := ? - ) := { - dRBStatusDL12 := p_dRBStatusDL12 - } // End of template mw_dRBStatusDL_dRBStatusDL12 + template (present) EventL1LoggedMDTConfig mw_eventL1LoggedMDTConfig( + template (present) MeasurementThresholdL1LoggedMDT p_l1Threshold := ?, + template (present) Hysteresis p_hysteresis := ?, + template (present) TimeToTrigger p_timeToTrigger := ?, + template EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := * + ) := { + l1Threshold := p_l1Threshold, + hysteresis := p_hysteresis, + timeToTrigger := p_timeToTrigger, + iE_Extensions := p_iE_Extensions + } // End of template mw_eventL1LoggedMDTConfig - template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL18( - template (present) DRBStatusDL18 p_dRBStatusDL18 := ? - ) := { - dRBStatusDL18 := p_dRBStatusDL18 - } // End of template mw_dRBStatusDL_dRBStatusDL18 + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRP( + template (present) Threshold_RSRP p_threshold_RSRP := ? + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRP - template (present) DRBStatusDL mw_dRBStatusDL_choice_Extensions( - template (present) DRBStatusDL.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRQ( + template (present) Threshold_RSRQ p_threshold_RSRQ := ? + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRQ + + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_choice_Extensions( + template (present) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_dRBStatusDL_choice_Extensions + } // End of template mw_measurementThresholdL1LoggedMDT_choice_Extensions - template (present) DRBStatusDL12 mw_dRBStatusDL12( - template (present) COUNTValueForPDCP_SN12 p_dL_COUNTValue := ?, - template DRBStatusDL12.iE_Extension p_iE_Extension := * - ) := { - dL_COUNTValue := p_dL_COUNTValue, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusDL12 + template (present) FailureIndication mw_failureIndication( + template (present) UERLFReportContainer p_uERLFReportContainer := ?, + template FailureIndication.iE_Extensions p_iE_Extensions := * + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_failureIndication - template (present) DRBStatusDL18 mw_dRBStatusDL18( - template (present) COUNTValueForPDCP_SN18 p_dL_COUNTValue := ?, - template DRBStatusDL18.iE_Extension p_iE_Extension := * - ) := { - dL_COUNTValue := p_dL_COUNTValue, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusDL18 + template FiveG_ProSeAuthorized mw_FiveG_ProSeAuthorized( + template FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := *, + template FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := *, + template FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := *, + template FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := *, + template FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := *, + template FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := * + ) := { + fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, + fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, + fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, + fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, + fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_FiveG_ProSeAuthorized - template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL12( - template (present) DRBStatusUL12 p_dRBStatusUL12 := ? - ) := { - dRBStatusUL12 := p_dRBStatusUL12 - } // End of template mw_dRBStatusUL_dRBStatusUL12 + template (present) FiveGProSeDirectDiscovery mw_fiveGProSeDirectDiscovery(template (present) FiveGProSeDirectDiscovery p_value := ?) := p_value; - template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL18( - template (present) DRBStatusUL18 p_dRBStatusUL18 := ? - ) := { - dRBStatusUL18 := p_dRBStatusUL18 - } // End of template mw_dRBStatusUL_dRBStatusUL18 + template (present) FiveGProSeDirectCommunication mw_fiveGProSeDirectCommunication(template (present) FiveGProSeDirectCommunication p_value := ?) := p_value; - template (present) DRBStatusUL mw_dRBStatusUL_choice_Extensions( - template (present) DRBStatusUL.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_dRBStatusUL_choice_Extensions + template (present) FiveGProSeLayer2UEtoNetworkRelay mw_fiveGProSeLayer2UEtoNetworkRelay(template (present) FiveGProSeLayer2UEtoNetworkRelay p_value := ?) := p_value; - template (present) DRBStatusUL12 mw_dRBStatusUL12( - template (present) COUNTValueForPDCP_SN12 p_uL_COUNTValue := ?, - template DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, - template DRBStatusUL12.iE_Extension p_iE_Extension := * - ) := { - uL_COUNTValue := p_uL_COUNTValue, - receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusUL12 + template (present) FiveGProSeLayer3UEtoNetworkRelay mw_fiveGProSeLayer3UEtoNetworkRelay(template (present) FiveGProSeLayer3UEtoNetworkRelay p_value := ?) := p_value; - template (present) DRBStatusUL18 mw_dRBStatusUL18( - template (present) COUNTValueForPDCP_SN18 p_uL_COUNTValue := ?, - template DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, - template DRBStatusUL18.iE_Extension p_iE_Extension := * - ) := { - uL_COUNTValue := p_uL_COUNTValue, - receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusUL18 + template (present) FiveGProSeLayer2RemoteUE mw_fiveGProSeLayer2RemoteUE(template (present) FiveGProSeLayer2RemoteUE p_value := ?) := p_value; - template (present) DRBsToQosFlowsMappingItem mw_dRBsToQosFlowsMappingItem( - template (present) DRB_ID p_dRB_ID := ?, - template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, - template DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := * + template (present) FiveG_ProSePC5QoSParameters mw_fiveG_ProSePC5QoSParameters( + template (present) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList := ?, + template BitRate p_fiveGProSepc5LinkAggregateBitRates := *, + template FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := * + ) := { + fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, + fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveG_ProSePC5QoSParameters + + template (present) FiveGProSePC5QoSFlowItem mw_fiveGProSePC5QoSFlowItem( + template (present) FiveQI p_fiveGproSepQI := ?, + template FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := *, + template Range p_fiveGproSerange := *, + template FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := * + ) := { + fiveGproSepQI := p_fiveGproSepQI, + fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, + fiveGproSerange := p_fiveGproSerange, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveGProSePC5QoSFlowItem + + template (present) FiveGProSePC5FlowBitRates mw_fiveGProSePC5FlowBitRates( + template (present) BitRate p_fiveGproSeguaranteedFlowBitRate := ?, + template (present) BitRate p_fiveGproSemaximumFlowBitRate := ?, + template FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := * ) := { - dRB_ID := p_dRB_ID, - associatedQosFlowList := p_associatedQosFlowList, - iE_Extensions := p_iE_Extensions - } // End of template mw_dRBsToQosFlowsMappingItem + fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, + fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveGProSePC5FlowBitRates - template (present) DRBsToQosFlowsMappingItem.iE_Extensions mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo( - template (present) DAPSRequestInfo p_dAPSRequestInfo := ? - ) := { - { - id := id_DAPSRequestInfo, - criticality := ignore, - extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } - } - } // End of template mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo + template (present) FiveG_S_TMSI mw_fiveG_S_TMSI( + template (present) AMFSetID p_aMFSetID := ?, + template (present) AMFPointer p_aMFPointer := ?, + template (present) FiveG_TMSI p_fiveG_TMSI := ?, + template FiveG_S_TMSI.iE_Extensions p_iE_Extensions := * + ) := { + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + fiveG_TMSI := p_fiveG_TMSI, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveG_S_TMSI + + template (present) ForbiddenAreaInformation_Item mw_forbiddenAreaInformation_Item( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) ForbiddenTACs p_forbiddenTACs := ?, + template ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + forbiddenTACs := p_forbiddenTACs, + iE_Extensions := p_iE_Extensions + } // End of template mw_forbiddenAreaInformation_Item - template (present) Dynamic5QIDescriptor mw_dynamic5QIDescriptor( - template (present) PriorityLevelQos p_priorityLevelQos := ?, - template (present) PacketDelayBudget p_packetDelayBudget := ?, - template (present) PacketErrorRate p_packetErrorRate := ?, - template FiveQI p_fiveQI := *, - template DelayCritical p_delayCritical := *, - template AveragingWindow p_averagingWindow := *, - template MaximumDataBurstVolume p_maximumDataBurstVolume := *, - template Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * - ) := { - priorityLevelQos := p_priorityLevelQos, - packetDelayBudget := p_packetDelayBudget, - packetErrorRate := p_packetErrorRate, - fiveQI := p_fiveQI, - delayCritical := p_delayCritical, - // The above IE shall be present in case of GBR QoS flow - averagingWindow := p_averagingWindow, - // The above IE shall be present in case of GBR QoS flow - maximumDataBurstVolume := p_maximumDataBurstVolume, - iE_Extensions := p_iE_Extensions - } // End of template mw_dynamic5QIDescriptor + template (present) FromEUTRANtoNGRAN mw_fromEUTRANtoNGRAN( + template (present) IntersystemSONeNBID p_sourceeNBID := ?, + template (present) IntersystemSONNGRANnodeID p_targetNGRANnodeID := ?, + template FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := * + ) := { + sourceeNBID := p_sourceeNBID, + targetNGRANnodeID := p_targetNGRANnodeID, + iE_Extensions := p_iE_Extensions + } // End of template mw_fromEUTRANtoNGRAN - template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_extendedPacketDelayBudget( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_ExtendedPacketDelayBudget, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_dynamic5QIDescriptor_extendedPacketDelayBudget + template (present) FromNGRANtoEUTRAN mw_fromNGRANtoEUTRAN( + template (present) IntersystemSONNGRANnodeID p_sourceNGRANnodeID := ?, + template (present) IntersystemSONeNBID p_targeteNBID := ?, + template FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := * + ) := { + sourceNGRANnodeID := p_sourceNGRANnodeID, + targeteNBID := p_targeteNBID, + iE_Extensions := p_iE_Extensions + } // End of template mw_fromNGRANtoEUTRAN - template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_CNPacketDelayBudgetDL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL + template (present) GBR_QosInformation mw_gBR_QosInformation( + template (present) BitRate p_maximumFlowBitRateDL := ?, + template (present) BitRate p_maximumFlowBitRateUL := ?, + template (present) BitRate p_guaranteedFlowBitRateDL := ?, + template (present) BitRate p_guaranteedFlowBitRateUL := ?, + template NotificationControl p_notificationControl := *, + template PacketLossRate p_maximumPacketLossRateDL := *, + template PacketLossRate p_maximumPacketLossRateUL := *, + template GBR_QosInformation.iE_Extensions p_iE_Extensions := * + ) := { + maximumFlowBitRateDL := p_maximumFlowBitRateDL, + maximumFlowBitRateUL := p_maximumFlowBitRateUL, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + notificationControl := p_notificationControl, + maximumPacketLossRateDL := p_maximumPacketLossRateDL, + maximumPacketLossRateUL := p_maximumPacketLossRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_gBR_QosInformation - template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_CNPacketDelayBudgetUL, + template (present) GBR_QosInformation.iE_Extensions mw_gBR_QosInformation_id_AlternativeQoSParaSetList( + template (present) AlternativeQoSParaSetList p_alternativeQoSParaSetList := ? + ) := { + { + id := id_AlternativeQoSParaSetList, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} } - } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL - - template (present) EarlyMeasurement mw_earlyMeasurement(template (present) EarlyMeasurement p_value := true_) := p_value; + } // End of template mw_gBR_QosInformation_id_AlternativeQoSParaSetList - template (present) EarlyStatusTransfer_TransparentContainer mw_earlyStatusTransfer_TransparentContainer( - template (present) ProcedureStageChoice p_procedureStage := ?, - template EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * - ) := { - procedureStage := p_procedureStage, + template (present) GlobalCable_ID_new mw_globalCable_ID_new( + template (present) GlobalCable_ID p_globalCable_ID := ?, + template (present) TAI p_tAI := ?, + template GlobalCable_ID_new.iE_Extensions p_iE_Extensions := * + ) := { + globalCable_ID := p_globalCable_ID, + tAI := p_tAI, iE_Extensions := p_iE_Extensions - } // End of template mw_earlyStatusTransfer_TransparentContainer + } // End of template mw_globalCable_ID_new - template (present) ProcedureStageChoice mw_procedureStageChoice_firstDLCount( - template (present) FirstDLCount p_firstDLCount := ? - ) := { - first_dl_count := p_firstDLCount - } // End of template mw_procedureStageChoice_firstDLCount + template (present) GlobalGNB_ID mw_ie_globalGnbId( + template (present) PLMNIdentity p_plmnId := ?, + template (present) bitstring p_gnbId := ?, + template GlobalGNB_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_plmnId,//'010001'O, + gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_globalGnbId - template (present) ProcedureStageChoice mw_procedureStageChoice_choice_Extensions( - template (present) ProcedureStageChoice.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_procedureStageChoice_choice_Extensions + template (present) GlobalN3IWF_ID mw_globalN3IWF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) N3IWF_ID p_n3IWF_ID := ?, + template GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + n3IWF_ID := p_n3IWF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalN3IWF_ID - template (present) FirstDLCount mw_firstDLCount( - template (present) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer := ?, - template FirstDLCount.iE_Extension p_iE_Extension := * - ) := { - dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, - iE_Extension := p_iE_Extension - } // End of template mw_firstDLCount + template (present) GlobalLine_ID mw_globalLine_ID( + template (present) GlobalLineIdentity p_globalLineIdentity := ?, + template LineType p_lineType := *, + template GlobalLine_ID.iE_Extensions p_iE_Extensions := * + ) := { + globalLineIdentity := p_globalLineIdentity, + lineType := p_lineType, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalLine_ID - template (present) DRBsSubjectToEarlyStatusTransfer_Item mw_dRBsSubjectToEarlyStatusTransfer_Item( - template (present) DRB_ID p_dRB_ID := ?, - template (present) DRBStatusDL p_firstDLCOUNT := ?, - template DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := * - ) := { - dRB_ID := p_dRB_ID, - firstDLCOUNT := p_firstDLCOUNT, - iE_Extension := p_iE_Extension - } // End of template mw_dRBsSubjectToEarlyStatusTransfer_Item + template (present) GlobalLine_ID.iE_Extensions mw_globalLine_ID_id_TAI(template TAI p_tAI := *) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template mw_globalLine_ID_id_TAI - template (present) EDT_Session mw_eDT_Session(template (present) EDT_Session p_value := true_) := p_value; + template (present) GlobalNgENB_ID mw_globalNgENB_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) NgENB_ID p_ngENB_ID := ?, + template GlobalNgENB_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + ngENB_ID := p_ngENB_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalNgENB_ID - template (present) EmergencyAreaIDBroadcastEUTRA_Item mw_emergencyAreaIDBroadcastEUTRA_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA := ?, - template EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDBroadcastEUTRA_Item + template (present) GlobalRANNodeID mw_globalRANNodeID_globalGNB_ID( + template (present) GlobalGNB_ID p_globalGNB_ID := ? + ) := { + globalGNB_ID := p_globalGNB_ID + } // End of template mw_globalRANNodeID_globalGNB_ID - template (present) EmergencyAreaIDBroadcastNR_Item mw_emergencyAreaIDBroadcastNR_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CompletedCellsInEAI_NR p_completedCellsInEAI_NR := ?, - template EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - completedCellsInEAI_NR := p_completedCellsInEAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDBroadcastNR_Item + template (present) GlobalRANNodeID mw_globalRANNodeID_globalNgENB_ID( + template (present) GlobalNgENB_ID p_globalNgENB_ID := ? + ) := { + globalNgENB_ID := p_globalNgENB_ID + } // End of template mw_globalRANNodeID_globalNgENB_ID - template (present) EmergencyAreaIDCancelledEUTRA_Item mw_emergencyAreaIDCancelledEUTRA_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA := ?, - template EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDCancelledEUTRA_Item + template (present) GlobalRANNodeID mw_globalRANNodeID_globalN3IWF_ID( + template (present) GlobalN3IWF_ID p_globalN3IWF_ID := ? + ) := { + globalN3IWF_ID := p_globalN3IWF_ID + } // End of template mw_globalRANNodeID_globalN3IWF_ID - template (present) EmergencyAreaIDCancelledNR_Item mw_emergencyAreaIDCancelledNR_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR := ?, - template EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDCancelledNR_Item + template (present) GlobalRANNodeID mw_globalRANNodeID_choice_Extensions( + template (present) GlobalRANNodeID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_globalRANNodeID_choice_Extensions - template (present) EmergencyFallbackIndicator mw_emergencyFallbackIndicator( - template (present) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator := ?, - template EmergencyServiceTargetCN p_emergencyServiceTargetCN := *, - template EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := * - ) := { - emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, - emergencyServiceTargetCN := p_emergencyServiceTargetCN, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyFallbackIndicator + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTNGF_ID( + template (present) GlobalTNGF_ID p_globalTNGF_ID := ? + ) := { + id := id_GlobalTNGF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTNGF_ID } + } // End of template mw_globalRANNodeID_id_GlobalTNGF_ID - template (present) EmergencyFallbackRequestIndicator mw_emergencyFallbackRequestIndicator(template (present) EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTWIF_ID( + template (present) GlobalTNGF_ID p_globalTWIF_ID := ? + ) := { + id := id_GlobalTWIF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTWIF_ID } + } // End of template mw_globalRANNodeID_id_GlobalTWIF_ID - template (present) EmergencyServiceTargetCN mw_emergencyServiceTargetCN(template (present) EmergencyServiceTargetCN p_value := ?) := p_value; + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalW_AGF_ID( + template (present) GlobalW_AGF_ID p_globalW_AGF_ID := ? + ) := { + id := id_GlobalW_AGF_ID, + criticality := reject, + value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } + } // End of template mw_globalRANNodeID_id_GlobalW_AGF_ID - template (present) ENB_ID mw_eNB_ID_macroENB_ID( - template (present) Bit20 p_macroENB_ID := ? - ) := { - macroENB_ID := p_macroENB_ID - } // End of template mw_eNB_ID_macroENB_ID + template (present) GlobalTNGF_ID mw_globalTNGF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TNGF_ID p_tNGF_ID := ?, + template GlobalTNGF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tNGF_ID := p_tNGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalTNGF_ID - template (present) ENB_ID mw_eNB_ID_homeENB_ID( - template (present) Bit28 p_homeENB_ID := ? - ) := { - homeENB_ID := p_homeENB_ID - } // End of template mw_eNB_ID_homeENB_ID + template (present) GlobalTWIF_ID mw_globalTWIF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TWIF_ID p_tWIF_ID := ?, + template GlobalTWIF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tWIF_ID := p_tWIF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalTWIF_ID - template (present) ENB_ID mw_eNB_ID_short_macroENB_ID( - template (present) Bit18 p_short_macroENB_ID := ? - ) := { - short_macroENB_ID := p_short_macroENB_ID - } // End of template mw_eNB_ID_short_macroENB_ID + template (present) GlobalW_AGF_ID mw_GlobalW_AGF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) W_AGF_ID p_w_AGF_ID := ?, + template GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + w_AGF_ID := p_w_AGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_GlobalW_AGF_ID - template (present) ENB_ID mw_eNB_ID_long_macroENB_ID( - template (present) Bit21 p_long_macroENB_ID := ? - ) := { - long_macroENB_ID := p_long_macroENB_ID - } // End of template mw_eNB_ID_long_macroENB_ID + template (present) GNB_ID mw_gNB_ID_gNB_ID( + template (present) GNB_ID.gNB_ID p_gNB_ID := ? + ) := { + gNB_ID := p_gNB_ID + } // End of template mw_gNB_ID_gNB_ID - template (present) ENB_ID mw_eNB_ID_choice_Extensions( - template (present) ENB_ID.choice_Extensions p_choice_Extensions := ? + template (present) GNB_ID mw_gNB_ID_choice_Extensions( + template (present) GNB_ID.choice_Extensions p_choice_Extensions := ? ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_eNB_ID_choice_Extensions + } // End of template mw_gNB_ID_choice_Extensions - template (present) Enhanced_CoverageRestriction mw_enhanced_CoverageRestriction(template (present) Enhanced_CoverageRestriction p_value := restricted) := p_value; + template (present) GTP_TEID mw_ie_gtpTeId(template (present) GTP_TEID p_val := ?) := p_val; - template (present) EndpointIPAddressAndPort mw_endpointIPAddressAndPort( - template (present) TransportLayerAddress p_endpointIPAddress := ?, - template (present) PortNumber p_portNumber := ?, - template EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := * - ) := { - endpointIPAddress := p_endpointIPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template mw_endpointIPAddressAndPort + template (present) GTPTunnel mw_ie_gTPTunnel( + in template (present) TransportLayerAddress p_tla := ?, + in template (present) GTP_TEID p_gtp_teid := ?, + in template GTPTunnel.iE_Extensions p_iE_Extensions := * + ):= { + transportLayerAddress := p_tla, + gTP_TEID := p_gtp_teid, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_gTPTunnel - template (present) EndIndication mw_endIndication(template (present) EndIndication p_value := ?) := p_value; + template (present) UPTransportLayerInformation mw_ie_uPTLInf( + template (present) GTPTunnel p_gtpt := ? + ) := { + gTPTunnel := p_gtpt + } // End of template mw_ie_uPTLInf - template (present) EPS_TAI mw_ePS_TAI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) EPS_TAC p_ePS_TAC := ?, - template EPS_TAI.iE_Extensions p_iE_Extensions := * - ) := { + template (present) GUAMI mw_gUAMI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) AMFRegionID p_aMFRegionID := ?, + template (present) AMFSetID p_aMFSetID := ?, + template (present) AMFPointer p_aMFPointer := ?, + template GUAMI.iE_Extensions p_iE_Extensions := * + ) := { pLMNIdentity := p_pLMNIdentity, - ePS_TAC := p_ePS_TAC, + aMFRegionID := p_aMFRegionID, + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, iE_Extensions := p_iE_Extensions - } // End of template mw_ePS_TAI + } // End of template mw_gUAMI - template (present) E_RABInformationItem mw_e_RABInformationItem( - template (present) E_RAB_ID p_e_RAB_ID := ?, - template (present) DLForwarding p_dLForwarding := ?, - template E_RABInformationItem.iE_Extensions p_iE_Extensions := * - ) := { - e_RAB_ID := p_e_RAB_ID, - dLForwarding := p_dLForwarding, - iE_Extensions := p_iE_Extensions - } // End of template mw_e_RABInformationItem + template (present) GUAMIType mw_gUAMIType(template (present) GUAMIType p_val := ?) := p_val; - template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceTNLAddrInfo( - template (present) TransportLayerAddress p_transportLayerAddress := ? - ) := { - { - id := id_SourceTNLAddrInfo, - criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } - } - } // End of template mw_e_RABInformationItem_id_SourceTNLAddrInfo + template HandoverCommandTransfer mw_handoverCommandTransfer( + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template QosFlowToBeForwardedList p_qosFlowToBeForwardedList := *, + template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, + template HandoverCommandTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverCommandTransfer - template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo( - template (present) TransportLayerAddress p_transportLayerAddress := ? - ) := { - { - id := id_SourceNodeTNLAddrInfo, + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalDLForwardingUPTNLInformation, criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } - } // End of template mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo + } // End of template mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation - template (present) EUTRA_CGI mw_uUTRA_CGI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) EUTRACellIdentity p_eUTRACellIdentity := ?, - template EUTRA_CGI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - eUTRACellIdentity := p_eUTRACellIdentity, - iE_Extensions := p_iE_Extensions - } // End of template mw_uUTRA_CGI + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation - template (present) EUTRA_PagingeDRXInformation mw_eUTRA_PagingeDRXInformation( - template (present) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle := ?, - template EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := *, - template EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, - eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRA_PagingeDRXInformation + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation - template (present) EUTRA_Paging_eDRX_Cycle mw_eUTRA_Paging_eDRX_Cycle(template (present) EUTRA_Paging_eDRX_Cycle p_value := ?) := p_value; + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_DataForwardingResponseERABList( + template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template mw_handoverCommandTransfer_id_DataForwardingResponseERABList - template (present) EUTRA_Paging_Time_Window mw_eUTRA_Paging_Time_Window(template (present) EUTRA_Paging_Time_Window p_value := ?) := p_value; + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_QosFlowFailedToSetupList( + template (present) QosFlowListWithCause p_qosFlowListWithCause := ? + ) := { + { + id := id_QosFlowFailedToSetupList, + criticality := ignore, + extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template mwhandoverCommandTransfer_id_QosFlowFailedToSetupList - template (present) EventType mw_eventType(template (present) EventType p_value := ?) := p_value; + template (present) HandoverFlag mw_handoverFlag(template (present) HandoverFlag p_val := handover_preparation) := p_val; - template (present) ExcessPacketDelayThresholdItem mw_excessPacketDelayThresholdItem( - template (present) FiveQI p_fiveQi := ?, - template (present) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue := ?, - template ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := * - ) := { - fiveQi := p_fiveQi, - excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, - iE_Extensions := p_iE_Extensions - } // End of template mw_excessPacketDelayThresholdItem + template (present) HandoverPreparationUnsuccessfulTransfer mw_mandoverPreparationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mandoverPreparationUnsuccessfulTransfer - template (present) ExcessPacketDelayThresholdValue mw_excessPacketDelayThresholdValue(template (present) ExcessPacketDelayThresholdValue p_value := ?) := p_value; + template (present) HandoverRequestAcknowledgeTransfer mw_handoverRequestAcknowledgeTransfer( + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template (present) QosFlowListWithDataForwarding p_qosFlowSetupResponseList := ?, + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template SecurityResult p_securityResult := *, + template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, + template HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + securityResult := p_securityResult, + qosFlowSetupResponseList := p_qosFlowSetupResponseList, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverRequestAcknowledgeTransfer - template (present) ExpectedHOInterval mw_expectedHOInterval(template (present) ExpectedHOInterval p_value := ?) := p_value; + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( + template (present) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList := ? + ) := { + { + id := id_AdditionalDLUPTNLInformationForHOList, + criticality := reject, + extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList - template ExpectedUEActivityBehaviour mw_expectedUEActivityBehaviour( - template ExpectedActivityPeriod p_expectedActivityPeriod := *, - template ExpectedIdlePeriod p_expectedIdlePeriod := *, - template SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := *, - template ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := * - ) := { - expectedActivityPeriod := p_expectedActivityPeriod, - expectedIdlePeriod := p_expectedIdlePeriod, - sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_expectedUEActivityBehaviour + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation - template ExpectedUEBehaviour mw_expectedUEBehaviour( - template ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := *, - template ExpectedHOInterval p_expectedHOInterval := *, - template ExpectedUEMobility p_expectedUEMobility := *, - template ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= *, - template ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := * - ) := { - expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, - expectedHOInterval := p_expectedHOInterval, - expectedUEMobility := p_expectedUEMobility, - expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, - iE_Extensions := p_iE_Extensions - } // End of template m_expectedUEBehaviour + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation - template (present) ExpectedUEMobility mw_expectedUEMobility(template (present) ExpectedUEMobility p_value := ?) := p_value; + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( + template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList - template (present) ExpectedUEMovingTrajectoryItem mw_expectedUEMovingTrajectoryItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := *, - template ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - timeStayedInCell := p_timeStayedInCell, - iE_Extensions := p_iE_Extensions - } // End of template mw_expectedUEMovingTrajectoryItem + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation - template Extended_AMFName mw_extended_AMFName( - template AMFNameVisibleString p_aMFNameVisibleString := *, - template AMFNameUTF8String p_aMFNameUTF8String := *, - template Extended_AMFName.iE_Extensions p_iE_Extensions := * - ) := { - aMFNameVisibleString := p_aMFNameVisibleString, - aMFNameUTF8String := p_aMFNameUTF8String, - iE_Extensions := p_iE_Extensions - } // End of template mw_extended_AMFName + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation - template Extended_RANNodeName mw_extended_RANNodeName( - template RANNodeNameVisibleString p_rANNodeNameVisibleString := *, - template RANNodeNameUTF8String p_rANNodeNameUTF8String := *, - template Extended_RANNodeName.iE_Extensions p_iE_Extensions := * - ) := { - rANNodeNameVisibleString := p_rANNodeNameVisibleString, - rANNodeNameUTF8String := p_rANNodeNameUTF8String, - iE_Extensions := p_iE_Extensions - } // End of template mw_extended_RANNodeName + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID - template (present) ExtendedRATRestrictionInformation mw_extendedRATRestrictionInformation( - template (present) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction := ?, - template (present) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction := ?, - template ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := * - ) := { - primaryRATRestriction := p_primaryRATRestriction, - secondaryRATRestriction := p_secondaryRATRestriction, - iE_Extensions := p_iE_Extensions - } // End of template mw_extendedRATRestrictionInformation + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator - template (present) EventTrigger mw_eventTrigger_outOfCoverage( - template (present) EventTrigger.outOfCoverage p_outOfCoverage := true_ + template HandoverRequiredTransfer mw_handoverRequiredTransfer( + template DirectForwardingPathAvailability p_directForwardingPathAvailability := *, + template HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := * ) := { - outOfCoverage := p_outOfCoverage - } // End of template mw_eventTrigger_outOfCoverage + directForwardingPathAvailability := p_directForwardingPathAvailability, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverRequiredTransfer - template (present) EventTrigger mw_eventTrigger_eventL1LoggedMDTConfig( - template (present) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig := ? - ) := { - eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig - } // End of template mw_eventTrigger_eventL1LoggedMDTConfig + template (present) HandoverResourceAllocationUnsuccessfulTransfer mw_handoverResourceAllocationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverResourceAllocationUnsuccessfulTransfer - template (present) EventTrigger mw_eventTrigger_choice_Extensions( - template (present) EventTrigger.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_eventTrigger_choice_Extensions + template (present) HandoverType mw_handoverType(template (present) HandoverType p_value := ?) := p_value; - template (present) EventL1LoggedMDTConfig mw_eventL1LoggedMDTConfig( - template (present) MeasurementThresholdL1LoggedMDT p_l1Threshold := ?, - template (present) Hysteresis p_hysteresis := ?, - template (present) TimeToTrigger p_timeToTrigger := ?, - template EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := * - ) := { - l1Threshold := p_l1Threshold, - hysteresis := p_hysteresis, - timeToTrigger := p_timeToTrigger, + template (present) HFCNode_ID_new mw_hFCNode_ID_new( + template (present) HFCNode_ID p_hFCNode_ID := ?, + template (present) TAI p_tAI := ?, + template HFCNode_ID_new.iE_Extensions p_iE_Extensions := * + ) := { + hFCNode_ID := p_hFCNode_ID, + tAI := p_tAI, iE_Extensions := p_iE_Extensions - } // End of template mw_eventL1LoggedMDTConfig + } // End of template mw_hFCNode_ID_new - template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRP( - template (present) Threshold_RSRP p_threshold_RSRP := ? - ) := { - threshold_RSRP := p_threshold_RSRP - } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRP + template (present) HOReport mw_hOReport( + template (present) HOReport.handoverReportType p_handoverReportType := ?, + template (present) Cause p_handoverCause := ?, + template (present) NGRAN_CGI p_sourcecellCGI := ?, + template (present) NGRAN_CGI p_targetcellCGI := ?, + template NGRAN_CGI p_reestablishmentcellCGI := ?, + template Bit16 p_sourcecellC_RNTI := *, + template EUTRA_CGI p_targetcellinE_UTRAN := *, + template MobilityInformation p_mobilityInformation := *, + template UERLFReportContainer p_uERLFReportContainer := *, + template HOReport.iE_Extensions p_iE_Extensions := * + ) := { + handoverReportType := p_handoverReportType, + handoverCause := p_handoverCause, + sourcecellCGI := p_sourcecellCGI, + targetcellCGI := p_targetcellCGI, + reestablishmentcellCGI := p_reestablishmentcellCGI, + // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" + sourcecellC_RNTI := p_sourcecellC_RNTI, + targetcellinE_UTRAN := p_targetcellinE_UTRAN, + // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" + mobilityInformation := p_mobilityInformation, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_hOReport - template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRQ( - template (present) Threshold_RSRQ p_threshold_RSRQ := ? - ) := { - threshold_RSRQ := p_threshold_RSRQ - } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRQ + template (present) IAB_Authorized mw_iAB_Authorized(template (present) IAB_Authorized p_value := ?) := p_value; - template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_choice_Extensions( - template (present) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_measurementThresholdL1LoggedMDT_choice_Extensions + template (present) IAB_Supported mw_iAB_Supported(template (present) IAB_Supported p_value := true_) := p_value; - template (present) FailureIndication mw_failureIndication( - template (present) UERLFReportContainer p_uERLFReportContainer := ?, - template FailureIndication.iE_Extensions p_iE_Extensions := * - ) := { - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_failureIndication + template (present) IABNodeIndication mw_iABNodeIndication(template (present) IABNodeIndication p_value := true_) := p_value; - template FiveG_ProSeAuthorized mw_FiveG_ProSeAuthorized( - template FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := *, - template FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := *, - template FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := *, - template FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := *, - template FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := *, - template FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := * - ) := { - fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, - fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, - fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, - fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, - fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, - iE_Extensions := p_iE_Extensions - } // End of template mw_FiveG_ProSeAuthorized + template (present) IMSVoiceSupportIndicator mw_iMSVoiceSupportIndicator(template (present) IMSVoiceSupportIndicator p_value := ?) := p_value; + + template (present) InfoOnRecommendedCellsAndRANNodesForPaging mw_infoOnRecommendedCellsAndRANNodesForPaging( + template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, + template (present) RecommendedRANNodesForPaging p_recommendRANNodesForPaging := ?, + template InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + recommendRANNodesForPaging := p_recommendRANNodesForPaging, + iE_Extensions := p_iE_Extensions + } // End of template mw_infoOnRecommendedCellsAndRANNodesForPaging - template (present) FiveGProSeDirectDiscovery mw_fiveGProSeDirectDiscovery(template (present) FiveGProSeDirectDiscovery p_value := ?) := p_value; + template (present) IntegrityProtectionIndication mw_integrityProtectionIndication(template (present) IntegrityProtectionIndication p_value := ?) := p_value; - template (present) FiveGProSeDirectCommunication mw_fiveGProSeDirectCommunication(template (present) FiveGProSeDirectCommunication p_value := ?) := p_value; + template (present) IntegrityProtectionResult mw_integrityProtectionResult(template (present) IntegrityProtectionResult p_value := ?) := p_value; - template (present) FiveGProSeLayer2UEtoNetworkRelay mw_fiveGProSeLayer2UEtoNetworkRelay(template (present) FiveGProSeLayer2UEtoNetworkRelay p_value := ?) := p_value; + template (present) ImmediateMDTNr mw_immediateMDTNr( + template (present) MeasurementsToActivate p_measurementsToActivate := ?, + template M1Configuration p_m1Configuration := *, + template M4Configuration p_m4Configuration := *, + template M5Configuration p_m5Configuration := *, + template M6Configuration p_m6Configuration := *, + template M7Configuration p_m7Configuration := *, + template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, + template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, + template MDT_Location_Info p_mDT_Location_Info := *, + template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, + template ImmediateMDTNr.iE_Extensions p_iE_Extensions := * + ) := { + measurementsToActivate := p_measurementsToActivate, + m1Configuration := p_m1Configuration, + // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” + m4Configuration := p_m4Configuration, + // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” + m5Configuration := p_m5Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” + m6Configuration := p_m6Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” + m7Configuration := p_m7Configuration, + // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + mDT_Location_Info := p_mDT_Location_Info, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + iE_Extensions := p_iE_Extensions + } // End of template mw_immediateMDTNr - template (present) FiveGProSeLayer3UEtoNetworkRelay mw_fiveGProSeLayer3UEtoNetworkRelay(template (present) FiveGProSeLayer3UEtoNetworkRelay p_value := ?) := p_value; + template InterSystemFailureIndication mw_interSystemFailureIndication( + template UERLFReportContainer p_uERLFReportContainer := *, + template InterSystemFailureIndication.iE_Extensions p_iE_Extensions := * + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_interSystemFailureIndication - template (present) FiveGProSeLayer2RemoteUE mw_fiveGProSeLayer2RemoteUE(template (present) FiveGProSeLayer2RemoteUE p_value := ?) := p_value; + template (present) IntersystemSONConfigurationTransfer mw_intersystemSONConfigurationTransfer( + template (present) IntersystemSONTransferType p_transferType := ?, + template (present) IntersystemSONInformation p_intersystemSONInformation := ?, + template IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + transferType := p_transferType, + intersystemSONInformation := p_intersystemSONInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONConfigurationTransfer - template (present) FiveG_ProSePC5QoSParameters mw_fiveG_ProSePC5QoSParameters( - template (present) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList := ?, - template BitRate p_fiveGProSepc5LinkAggregateBitRates := *, - template FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := * - ) := { - fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, - fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveG_ProSePC5QoSParameters + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromEUTRANtoNGRAN( + template (present) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN := ? + ) := { + fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN + } // End of template mw_intersystemSONTransferType_fromEUTRANtoNGRAN - template (present) FiveGProSePC5QoSFlowItem mw_fiveGProSePC5QoSFlowItem( - template (present) FiveQI p_fiveGproSepQI := ?, - template FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := *, - template Range p_fiveGproSerange := *, - template FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := * - ) := { - fiveGproSepQI := p_fiveGproSepQI, - fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, - fiveGproSerange := p_fiveGproSerange, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveGProSePC5QoSFlowItem + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromNGRANtoEUTRAN( + template (present) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN := ? + ) := { + fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN + } // End of template mw_intersystemSONTransferType_fromNGRANtoEUTRAN - template (present) FiveGProSePC5FlowBitRates mw_fiveGProSePC5FlowBitRates( - template (present) BitRate p_fiveGproSeguaranteedFlowBitRate := ?, - template (present) BitRate p_fiveGproSemaximumFlowBitRate := ?, - template FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := * + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_choice_Extensions( + template (present) IntersystemSONTransferType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONTransferType_choice_Extensions + + template (present) IntersystemSONeNBID mw_intersystemSONeNBID( + template (present) GlobalENB_ID p_globaleNBID := ?, + template (present) EPS_TAI p_selectedEPSTAI := ?, + template IntersystemSONeNBID.iE_Extensions p_iE_Extensions := * + ) := { + globaleNBID := p_globaleNBID, + selectedEPSTAI := p_selectedEPSTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONeNBID + + template (present) IntersystemSONNGRANnodeID mw_intersystemSONNGRANnodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := * ) := { - fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, - fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveGProSePC5FlowBitRates + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONNGRANnodeID - template (present) FiveG_S_TMSI mw_fiveG_S_TMSI( - template (present) AMFSetID p_aMFSetID := ?, - template (present) AMFPointer p_aMFPointer := ?, - template (present) FiveG_TMSI p_fiveG_TMSI := ?, - template FiveG_S_TMSI.iE_Extensions p_iE_Extensions := * - ) := { - aMFSetID := p_aMFSetID, - aMFPointer := p_aMFPointer, - fiveG_TMSI := p_fiveG_TMSI, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveG_S_TMSI + template (present) IntersystemSONInformation mw_intersystemSONInformation_intersystemSONInformationReport( + in template (present) IntersystemSONInformationReport p_intersystemSONInformationReport := ? + ) := { + intersystemSONInformationReport := p_intersystemSONInformationReport + } // End of template mw_intersystemSONInformation_intersystemSONInformationReport - template (present) ForbiddenAreaInformation_Item mw_forbiddenAreaInformation_Item( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) ForbiddenTACs p_forbiddenTACs := ?, - template ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - forbiddenTACs := p_forbiddenTACs, - iE_Extensions := p_iE_Extensions - } // End of template mw_forbiddenAreaInformation_Item + template (present) IntersystemSONInformation mw_intersystemSONInformation_choice_Extensions( + template (present) IntersystemSONInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformation_choice_Extensions - template (present) FromEUTRANtoNGRAN mw_fromEUTRANtoNGRAN( - template (present) IntersystemSONeNBID p_sourceeNBID := ?, - template (present) IntersystemSONNGRANnodeID p_targetNGRANnodeID := ?, - template FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := * - ) := { - sourceeNBID := p_sourceeNBID, - targetNGRANnodeID := p_targetNGRANnodeID, - iE_Extensions := p_iE_Extensions - } // End of template mw_fromEUTRANtoNGRAN + template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationRequest( + template (present) IntersystemSONInformationRequest p_intersystemSONInformationRequest := ? + ) := { + id := id_IntersystemSONInformationRequest, + criticality := ignore, + value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } + } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationRequest - template (present) FromNGRANtoEUTRAN mw_fromNGRANtoEUTRAN( - template (present) IntersystemSONNGRANnodeID p_sourceNGRANnodeID := ?, - template (present) IntersystemSONeNBID p_targeteNBID := ?, - template FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := * - ) := { - sourceNGRANnodeID := p_sourceNGRANnodeID, - targeteNBID := p_targeteNBID, - iE_Extensions := p_iE_Extensions - } // End of template mw_fromNGRANtoEUTRAN + template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationReply( + template (present) IntersystemSONInformationReply p_intersystemSONInformationReply := ? + ) := { + id := id_IntersystemSONInformationReply, + criticality := ignore, + value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } + } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationReply - template (present) GBR_QosInformation mw_gBR_QosInformation( - template (present) BitRate p_maximumFlowBitRateDL := ?, - template (present) BitRate p_maximumFlowBitRateUL := ?, - template (present) BitRate p_guaranteedFlowBitRateDL := ?, - template (present) BitRate p_guaranteedFlowBitRateUL := ?, - template NotificationControl p_notificationControl := *, - template PacketLossRate p_maximumPacketLossRateDL := *, - template PacketLossRate p_maximumPacketLossRateUL := *, - template GBR_QosInformation.iE_Extensions p_iE_Extensions := * - ) := { - maximumFlowBitRateDL := p_maximumFlowBitRateDL, - maximumFlowBitRateUL := p_maximumFlowBitRateUL, - guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, - guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, - notificationControl := p_notificationControl, - maximumPacketLossRateDL := p_maximumPacketLossRateDL, - maximumPacketLossRateUL := p_maximumPacketLossRateUL, - iE_Extensions := p_iE_Extensions - } // End of template mw_gBR_QosInformation + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_nGRAN_CellActivation( + template (present) IntersystemCellActivationRequest p_nGRAN_CellActivation := ? + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template mw_intersystemSONInformationRequest_nGRAN_CellActivation - template (present) GBR_QosInformation.iE_Extensions mw_gBR_QosInformation_id_AlternativeQoSParaSetList( - template (present) AlternativeQoSParaSetList p_alternativeQoSParaSetList := ? + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_resourceStatus( + template (present) IntersystemResourceStatusRequest p_resourceStatus := ? ) := { - { - id := id_AlternativeQoSParaSetList, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} - } - } // End of template mw_gBR_QosInformation_id_AlternativeQoSParaSetList + resourceStatus := p_resourceStatus + } // End of template mw_intersystemSONInformationRequest_resourceStatus - template (present) GlobalCable_ID_new mw_globalCable_ID_new( - template (present) GlobalCable_ID p_globalCable_ID := ?, - template (present) TAI p_tAI := ?, - template GlobalCable_ID_new.iE_Extensions p_iE_Extensions := * - ) := { - globalCable_ID := p_globalCable_ID, - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalCable_ID_new + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_choice_Extensions( + template (present) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationRequest_choice_Extensions - template (present) GlobalGNB_ID mw_ie_globalGnbId( - template (present) PLMNIdentity p_plmnId := ?, - template (present) bitstring p_gnbId := ?, - template GlobalGNB_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_plmnId,//'010001'O, - gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, - iE_Extensions := p_iE_Extensions - } // End of template mw_ie_globalGnbId + template (present) IntersystemCellActivationRequest mw_intersystemCellActivationRequest( + template (present) IntersystemCellActivationRequest.activationID p_activationID := ?, + template (present) CellsToActivateList p_cellsToActivateList := ?, + template IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := * + ) := { + activationID := p_activationID, + cellsToActivateList := p_cellsToActivateList, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemCellActivationRequest + + template (present) IntersystemResourceStatusRequest mw_intersystemResourceStatusRequest( + template (present) ReportingSystem p_reportingSystem := ?, + template (present) ReportCharacteristics p_reportCharacteristics := ?, + template (present) ReportType p_reportType := ?, + template IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := * + ) := { + reportingSystem := p_reportingSystem, + reportCharacteristics := p_reportCharacteristics, + reportType := p_reportType, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusRequest - template (present) GlobalN3IWF_ID mw_globalN3IWF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) N3IWF_ID p_n3IWF_ID := ?, - template GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - n3IWF_ID := p_n3IWF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalN3IWF_ID + template (present) ReportingSystem mw_reportingSystem_eUTRAN( + template (present) EUTRAN_ReportingSystemIEs p_eUTRAN := ? + ) := { + eUTRAN := p_eUTRAN + } // End of template mw_reportingSystem_eUTRAN - template (present) GlobalLine_ID mw_globalLine_ID( - template (present) GlobalLineIdentity p_globalLineIdentity := ?, - template LineType p_lineType := *, - template GlobalLine_ID.iE_Extensions p_iE_Extensions := * - ) := { - globalLineIdentity := p_globalLineIdentity, - lineType := p_lineType, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalLine_ID + template (present) ReportingSystem mw_reportingSystem_nGRAN( + template (present) NGRAN_ReportingSystemIEs p_nGRAN := ? + ) := { + nGRAN := p_nGRAN + } // End of template mw_reportingSystem_nGRAN - template (present) GlobalLine_ID.iE_Extensions mw_globalLine_ID_id_TAI(template TAI p_tAI := *) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template mw_globalLine_ID_id_TAI + template (present) ReportingSystem mw_reportingSystem_choice_Extensions( + template (present) ReportingSystem.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_reportingSystem_choice_Extensions - template (present) GlobalNgENB_ID mw_globalNgENB_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) NgENB_ID p_ngENB_ID := ?, - template GlobalNgENB_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - ngENB_ID := p_ngENB_ID, + template (present) EUTRAN_ReportingSystemIEs mw_eUTRAN_ReportingSystemIEs( + template (present) EUTRAN_CellToReportList p_eUTRAN_CellToReportList := ?, + template EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * + ) := { + eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingSystemIEs + + template (present) NGRAN_ReportingSystemIEs mw_nGRAN_ReportingSystemIEs( + template (present) NGRAN_CellToReportList p_nGRAN_CellToReportList := ?, + template NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CellToReportList := p_nGRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_ReportingSystemIEs + + template (present) EUTRAN_CellToReportItem mw_eUTRAN_CellToReportItem( + template (present) EUTRA_CGI p_eCGI := ?, + template EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * + ) := { + eCGI := p_eCGI, iE_Extensions := p_iE_Extensions - } // End of template mw_globalNgENB_ID + } // End of template mw_eUTRAN_CellToReportItem - template (present) GlobalRANNodeID mw_globalRANNodeID_globalGNB_ID( - template (present) GlobalGNB_ID p_globalGNB_ID := ? - ) := { - globalGNB_ID := p_globalGNB_ID - } // End of template mw_globalRANNodeID_globalGNB_ID + template (present) NGRAN_CellToReportItem mw_nGRAN_CellToReportItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * + ):= { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_CellToReportItem - template (present) GlobalRANNodeID mw_globalRANNodeID_globalNgENB_ID( - template (present) GlobalNgENB_ID p_globalNgENB_ID := ? - ) := { - globalNgENB_ID := p_globalNgENB_ID - } // End of template mw_globalRANNodeID_globalNgENB_ID + template (present) ReportType mw_reportType_eventBasedReporting( + template (present) EventBasedReportingIEs p_eventBasedReporting := ? + ) := { + eventBasedReporting := p_eventBasedReporting + } // End of template mw_reportType_eventBasedReporting - template (present) GlobalRANNodeID mw_globalRANNodeID_globalN3IWF_ID( - template (present) GlobalN3IWF_ID p_globalN3IWF_ID := ? - ) := { - globalN3IWF_ID := p_globalN3IWF_ID - } // End of template mw_globalRANNodeID_globalN3IWF_ID + template (present) ReportType mw_reportType_periodicReporting( + template (present) PeriodicReportingIEs p_periodicReporting := ? + ) := { + periodicReporting := p_periodicReporting + } // End of template mw_reportType_periodicReporting - template (present) GlobalRANNodeID mw_globalRANNodeID_choice_Extensions( - template (present) GlobalRANNodeID.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) ReportType mw_reportType_choice_Extensions( + template (present) ReportType.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_globalRANNodeID_choice_Extensions + } // End of template mw_reportType_choice_Extensions - template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTNGF_ID( - template (present) GlobalTNGF_ID p_globalTNGF_ID := ? - ) := { - id := id_GlobalTNGF_ID, - criticality := reject, - value_ := { GlobalTNGF_ID := p_globalTNGF_ID } - } // End of template mw_globalRANNodeID_id_GlobalTNGF_ID + template (present) NumberOfMeasurementReportingLevels mw_numberOfMeasurementReportingLevels(template (present) NumberOfMeasurementReportingLevels p_value := ?) := p_value; - template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTWIF_ID( - template (present) GlobalTNGF_ID p_globalTWIF_ID := ? - ) := { - id := id_GlobalTWIF_ID, - criticality := reject, - value_ := { GlobalTNGF_ID := p_globalTWIF_ID } - } // End of template mw_globalRANNodeID_id_GlobalTWIF_ID + template (present) PeriodicReportingIEs mw_PeriodicReportingIEs( + template (present) ReportingPeriodicity p_reportingPeriodicity := ?, + template PeriodicReportingIEs.iE_Extensions p_iE_Extensions := * + ) := { + reportingPeriodicity := p_reportingPeriodicity, + iE_Extensions := p_iE_Extensions + } // End of template mw_PeriodicReportingIEs - template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalW_AGF_ID( - template (present) GlobalW_AGF_ID p_globalW_AGF_ID := ? - ) := { - id := id_GlobalW_AGF_ID, - criticality := reject, - value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } - } // End of template mw_globalRANNodeID_id_GlobalW_AGF_ID + template (present) ReportingPeriodicity mw_reportingPeriodicity(template (present) ReportingPeriodicity p_value := ?) := p_value; - template (present) GlobalTNGF_ID mw_globalTNGF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) TNGF_ID p_tNGF_ID := ?, - template GlobalTNGF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - tNGF_ID := p_tNGF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalTNGF_ID + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_nGRAN_CellActivation( + template (present) IntersystemCellActivationReply p_nGRAN_CellActivation := ? + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template mw_intersystemSONInformationReply_nGRAN_CellActivation - template (present) GlobalTWIF_ID mw_globalTWIF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) TWIF_ID p_tWIF_ID := ?, - template GlobalTWIF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - tWIF_ID := p_tWIF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalTWIF_ID + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_resourceStatus( + template (present) IntersystemResourceStatusReply p_resourceStatus := ? + ) := { + resourceStatus := p_resourceStatus + } // End of template mw_intersystemSONInformationReply_resourceStatus - template (present) GlobalW_AGF_ID mw_GlobalW_AGF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) W_AGF_ID p_w_AGF_ID := ?, - template GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - w_AGF_ID := p_w_AGF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_GlobalW_AGF_ID + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_choice_Extensions( + template (present) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationReply_choice_Extensions - template (present) GNB_ID mw_gNB_ID_gNB_ID( - template (present) GNB_ID.gNB_ID p_gNB_ID := ? - ) := { - gNB_ID := p_gNB_ID - } // End of template mw_gNB_ID_gNB_ID + template (present) IntersystemCellActivationReply mw_intersystemCellActivationReply( + template (present) ActivatedCellList p_activatedCellList := ?, + template (present) IntersystemCellActivationReply.activation_ID p_activation_ID := ?, + template IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := * + ) := { + activatedCellList := p_activatedCellList, + activation_ID := p_activation_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemCellActivationReply - template (present) GNB_ID mw_gNB_ID_choice_Extensions( - template (present) GNB_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_gNB_ID_choice_Extensions + template (present) IntersystemResourceStatusReply mw_intersystemResourceStatusReply( + template (present) ReportingSystem p_reportingsystem := ?, + template IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := * + ) := { + reportingsystem := p_reportingsystem, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusReply - template (present) GTP_TEID mw_ie_gtpTeId(template (present) GTP_TEID p_val := ?) := p_val; + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_hOReportInformation( + template (present) InterSystemHOReport p_hOReportInformation := ? + ) := { + hOReportInformation := p_hOReportInformation + } // End of template mw_intersystemSONInformationReport_hOReportInformation - template (present) GTPTunnel mw_ie_gTPTunnel( - in template (present) TransportLayerAddress p_tla := ?, - in template (present) GTP_TEID p_gtp_teid := ?, - in template GTPTunnel.iE_Extensions p_iE_Extensions := * - ):= { - transportLayerAddress := p_tla, - gTP_TEID := p_gtp_teid, - iE_Extensions := p_iE_Extensions - } // End of template mw_ie_gTPTunnel + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_failureIndicationInformation( + template (present) InterSystemFailureIndication p_failureIndicationInformation := ? + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template mw_intersystemSONInformationReport_failureIndicationInformation - template (present) UPTransportLayerInformation mw_ie_uPTLInf( - template (present) GTPTunnel p_gtpt := ? - ) := { - gTPTunnel := p_gtpt - } // End of template mw_ie_uPTLInf + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_choice_Extensions( + template (present) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationReport_choice_Extensions - template (present) GUAMI mw_gUAMI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) AMFRegionID p_aMFRegionID := ?, - template (present) AMFSetID p_aMFSetID := ?, - template (present) AMFPointer p_aMFPointer := ?, - template GUAMI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - aMFRegionID := p_aMFRegionID, - aMFSetID := p_aMFSetID, - aMFPointer := p_aMFPointer, - iE_Extensions := p_iE_Extensions - } // End of template mw_gUAMI + template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_EnergySavingIndication( + template (present) IntersystemCellStateIndication p_intersystemCellStateIndication := ? + ) := { + id := id_EnergySavingIndication, + criticality := ignore, + value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } + } // End of template mw_intersystemSONInformationReport_id_EnergySavingIndication - template (present) GUAMIType mw_gUAMIType(template (present) GUAMIType p_val := ?) := p_val; + template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( + template (present) IntersystemResourceStatusReport p_intersystemResourceStatusReport := ? + ) := { + id := id_IntersystemResourceStatusUpdate, + criticality := ignore, + value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } + } // End of template mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate - template HandoverCommandTransfer mw_handoverCommandTransfer( - template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, - template QosFlowToBeForwardedList p_qosFlowToBeForwardedList := *, - template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, - template HandoverCommandTransfer.iE_Extensions p_iE_Extensions := * - ) := { - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, - dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverCommandTransfer + template (present) NotificationCell_Item mw_notificationCell_Item( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) NotificationCell_Item.notifyFlag p_notifyFlag := ?, + template NotificationCell_Item.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + notifyFlag := p_notifyFlag, + iE_Extensions := p_iE_Extensions + } // End of template mw_notificationCell_Item - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( - template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? - ) := { - { - id := id_AdditionalDLForwardingUPTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation + template (present) IntersystemResourceStatusReport mw_intersystemResourceStatusReport( + template (present) ResourceStatusReportingSystem p_reportingSystem := ?, + template IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := * + ) := { + reportingSystem := p_reportingSystem, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusReport - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_ULForwardingUP_TNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( + template (present) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus := ? + ) := { + eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus + } // End of template mw_resourceStatusReportingSystem_eUTRAN_ReportingStatus - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalULForwardingUPTNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_nGRAN_ReportingStatus( + template (present) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus := ? + ) := { + nGRAN_ReportingStatus := p_nGRAN_ReportingStatus + } // End of template mw_resourceStatusReportingSystem_nGRAN_ReportingStatus - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_DataForwardingResponseERABList( - template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? - ) := { - { - id := id_DataForwardingResponseERABList, - criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } - } - } // End of template mw_handoverCommandTransfer_id_DataForwardingResponseERABList + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystem_choice_Extensions( + template (present) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_resourceStatusReportingSystem_choice_Extensions - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_QosFlowFailedToSetupList( - template (present) QosFlowListWithCause p_qosFlowListWithCause := ? - ) := { - { - id := id_QosFlowFailedToSetupList, - criticality := ignore, - extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template mwhandoverCommandTransfer_id_QosFlowFailedToSetupList + template (present) EUTRAN_ReportingStatusIEs mw_eUTRAN_ReportingStatusIEs( + template (present) EUTRAN_CellReportList p_eUTRAN_CellReportList := ?, + template EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * + ) := { + eUTRAN_CellReportList := p_eUTRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingStatusIEs - template (present) HandoverFlag mw_handoverFlag(template (present) HandoverFlag p_val := handover_preparation) := p_val; + template (present) EUTRAN_CellReportItem mw_eUTRAN_CellReportItem ( + template (present) EUTRA_CGI p_eCGI, + template (present) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup := ?, + template EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := *, + template NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := *, + template EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := *, + template EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := * + ):= { + eCGI := p_eCGI, + eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, + eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, + eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, + eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingStatusIEs - template (present) HandoverPreparationUnsuccessfulTransfer mw_mandoverPreparationUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_mandoverPreparationUnsuccessfulTransfer + template (present) EUTRAN_CompositeAvailableCapacityGroup mw_EUTRAN_CompositeAvailableCapacityGroup( + template (present) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity := ?, + template (present) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity := ?, + template EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := * + ) := { + dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, + uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, + iE_Extensions := p_iE_Extensions + } // End of template mw_EUTRAN_CompositeAvailableCapacityGroup - template (present) HandoverRequestAcknowledgeTransfer mw_handoverRequestAcknowledgeTransfer( - template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, - template (present) QosFlowListWithDataForwarding p_qosFlowSetupResponseList := ?, - template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, - template SecurityResult p_securityResult := *, - template QosFlowListWithCause p_qosFlowFailedToSetupList := *, - template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, - template HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * - ) := { - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - securityResult := p_securityResult, - qosFlowSetupResponseList := p_qosFlowSetupResponseList, - qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, - dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + template (present) CompositeAvailableCapacity mw_compositeAvailableCapacity( + template (present) CompositeAvailableCapacity.capacityValue p_capacityValue := ?, + template CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := *, + template CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := * + ) := { + cellCapacityClassValue := p_cellCapacityClassValue, + capacityValue := p_capacityValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_compositeAvailableCapacity + + template (present) EUTRAN_RadioResourceStatus mw_eUTRAN_RadioResourceStatus( + template (present) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage := ?, + template EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := *, + template EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := *, + template EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * + ) := { + dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, + uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, + dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, + uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, + dL_Total_PRB_usage := p_dL_Total_PRB_usage, + uL_Total_PRB_usage := p_uL_Total_PRB_usage, + dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, + uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, iE_Extensions := p_iE_Extensions - } // End of template mw_handoverRequestAcknowledgeTransfer + } // End of template mw_eUTRAN_RadioResourceStatus - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( - template (present) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList := ? - ) := { - { - id := id_AdditionalDLUPTNLInformationForHOList, - criticality := reject, - extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList + template (present) NGRAN_ReportingStatusIEs mw_nGRAN_ReportingStatusIEs( + template (present) NGRAN_CellReportList p_nGRAN_CellReportList := ?, + template NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CellReportList := p_nGRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_ReportingStatusIEs - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_ULForwardingUP_TNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation + template (present) NGRAN_CellReportItem mw_nGRAN_CellReportItem( + template (present) NGRAN_CGI p_nGRAN_CGI, + template (present) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup := ?, + template NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := *, + template NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := *, + template NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := *, + template NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, + nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, + nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, + nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_CellReportItem - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalULForwardingUPTNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation + template (present) NGRAN_RadioResourceStatus mw_nGRAN_RadioResourceStatus( + template (present) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO := ?, + template NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * + ) := { + dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, + uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, + dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, + uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, + dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, + uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_RadioResourceStatus + + template (present) InterSystemHOReport mw_interSystemHOReport( + template (present) InterSystemHandoverReportType p_handoverReportType := ?, + template InterSystemHOReport.iE_Extensions p_iE_Extensions := * + ) := { + handoverReportType := p_handoverReportType, + iE_Extensions := p_iE_Extensions + } // End of template mw_interSystemHOReport - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( - template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? - ) := { - { - id := id_DataForwardingResponseERABList, - criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_tooearlyIntersystemHO( + template (present) TooearlyIntersystemHO p_tooearlyIntersystemHO := ? + ) := { + tooearlyIntersystemHO := p_tooearlyIntersystemHO + } // End of template mw_interSystemHandoverReportType_tooearlyIntersystemHO - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_intersystemUnnecessaryHO( + template (present) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO := ? + ) := { + intersystemUnnecessaryHO := p_intersystemUnnecessaryHO + } // End of template mw_interSystemHandoverReportType_intersystemUnnecessaryHO - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( - template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? - ) := { - { - id := id_UsedRSNInformation, - criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_choice_Extensions( + template (present) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_interSystemHandoverReportType_choice_Extensions - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ? - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID + template (present) IntersystemUnnecessaryHO mw_intersystemUnnecessaryHO( + template (present) NGRAN_CGI p_sourcecellID := ?, + template (present) EUTRA_CGI p_targetcellID := ?, + template (present) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := ?, + template (present) CandidateCellList p_candidateCellList := ?, + template IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := * + ) := { + sourcecellID := p_sourcecellID, + targetcellID := p_targetcellID, + earlyIRATHO := p_earlyIRATHO, + candidateCellList := p_candidateCellList, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemUnnecessaryHO - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( - template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator + template (present) LAI mw_lai( + template (present) PLMNIdentity p_pLMNidentity := ?, + template (present) LAC p_lAC := ?, + template LAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNidentity := p_pLMNidentity, + lAC := p_lAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_lai - template HandoverRequiredTransfer mw_handoverRequiredTransfer( - template DirectForwardingPathAvailability p_directForwardingPathAvailability := *, - template HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := * - ) := { - directForwardingPathAvailability := p_directForwardingPathAvailability, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverRequiredTransfer + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_nGRANCell( + template (present) LastVisitedNGRANCellInformation p_nGRANCell := ? + ) := { + nGRANCell := p_nGRANCell + } // End of template mw_interSystemHandoverReportType_nGRANCell - template (present) HandoverResourceAllocationUnsuccessfulTransfer mw_handoverResourceAllocationUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template CriticalityDiagnostics p_criticalityDiagnostics := *, - template HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverResourceAllocationUnsuccessfulTransfer + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_eUTRANCell( + template (present) LastVisitedEUTRANCellInformation p_eUTRANCell := ? + ) := { + eUTRANCell := p_eUTRANCell + } // End of template mw_interSystemHandoverReportType_eUTRANCell - template (present) HandoverType mw_handoverType(template (present) HandoverType p_value := ?) := p_value; + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_uTRANCell( + template (present) LastVisitedUTRANCellInformation p_uTRANCell := ? + ) := { + uTRANCell := p_uTRANCell + } // End of template mw_interSystemHandoverReportType_uTRANCell - template (present) HFCNode_ID_new mw_hFCNode_ID_new( - template (present) HFCNode_ID p_hFCNode_ID := ?, - template (present) TAI p_tAI := ?, - template HFCNode_ID_new.iE_Extensions p_iE_Extensions := * - ) := { - hFCNode_ID := p_hFCNode_ID, - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_hFCNode_ID_new + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_gERANCell( + template (present) LastVisitedGERANCellInformation p_gERANCell := ? + ) := { + gERANCell := p_gERANCell + } // End of template mw_interSystemHandoverReportType_gERANCell - template (present) HOReport mw_hOReport( - template (present) HOReport.handoverReportType p_handoverReportType := ?, - template (present) Cause p_handoverCause := ?, - template (present) NGRAN_CGI p_sourcecellCGI := ?, - template (present) NGRAN_CGI p_targetcellCGI := ?, - template NGRAN_CGI p_reestablishmentcellCGI := ?, - template Bit16 p_sourcecellC_RNTI := *, - template EUTRA_CGI p_targetcellinE_UTRAN := *, - template MobilityInformation p_mobilityInformation := *, - template UERLFReportContainer p_uERLFReportContainer := *, - template HOReport.iE_Extensions p_iE_Extensions := * - ) := { - handoverReportType := p_handoverReportType, - handoverCause := p_handoverCause, - sourcecellCGI := p_sourcecellCGI, - targetcellCGI := p_targetcellCGI, - reestablishmentcellCGI := p_reestablishmentcellCGI, - // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" - sourcecellC_RNTI := p_sourcecellC_RNTI, - targetcellinE_UTRAN := p_targetcellinE_UTRAN, - // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" - mobilityInformation := p_mobilityInformation, - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_hOReport + template (present) LastVisitedCellInformation mw_lastVisitedCellInformation_choice_Extensions( + template (present) LastVisitedCellInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_lastVisitedCellInformation_choice_Extensions - template (present) IAB_Authorized mw_iAB_Authorized(template (present) IAB_Authorized p_value := ?) := p_value; + template (present) LastVisitedCellItem mw_lastVisitedCellItem( + template (present) LastVisitedCellInformation p_lastVisitedCellInformation := ?, + template LastVisitedCellItem.iE_Extensions p_iE_Extensions := * + ) := { + lastVisitedCellInformation := p_lastVisitedCellInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_lastVisitedCellItem - template (present) IAB_Supported mw_iAB_Supported(template (present) IAB_Supported p_value := true_) := p_value; + template (present) LastVisitedNGRANCellInformation mw_lastVisitedNGRANCellInformation( + template (present) NGRAN_CGI p_globalCellID := ?, + template (present) CellType p_cellType := ?, + template (present) TimeUEStayedInCell p_timeUEStayedInCell := ?, + template TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := *, + template Cause p_hOCauseValue := *, + template LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := * + ) := { + globalCellID := p_globalCellID, + cellType := p_cellType, + timeUEStayedInCell := p_timeUEStayedInCell, + timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, + hOCauseValue := p_hOCauseValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_lastVisitedNGRANCellInformation - template (present) IABNodeIndication mw_iABNodeIndication(template (present) IABNodeIndication p_value := true_) := p_value; + template (present) LastVisitedNGRANCellInformation.iE_Extensions mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( + template (present) LastVisitedPSCellList p_lastVisitedPSCellList := ? + ) := { + { + id := id_LastVisitedPSCellList, + criticality := ignore, + extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } + } + } // End of template mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList - template (present) IMSVoiceSupportIndicator mw_iMSVoiceSupportIndicator(template (present) IMSVoiceSupportIndicator p_value := ?) := p_value; + template (present) LastVisitedPSCellInformation mw_LastVisitedPSCellInformation( + template (present) NGRAN_CGI p_pSCellID := ?, + template (present) LastVisitedPSCellInformation.timeStay p_timeStay := ?, + template LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := * + ) := { + pSCellID := p_pSCellID, + timeStay := p_timeStay, + iE_Extensions := p_iE_Extensions + } // End of template mw_LastVisitedPSCellInformation - template (present) InfoOnRecommendedCellsAndRANNodesForPaging mw_infoOnRecommendedCellsAndRANNodesForPaging( - template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, - template (present) RecommendedRANNodesForPaging p_recommendRANNodesForPaging := ?, - template InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := * - ) := { - recommendedCellsForPaging := p_recommendedCellsForPaging, - recommendRANNodesForPaging := p_recommendRANNodesForPaging, - iE_Extensions := p_iE_Extensions - } // End of template mw_infoOnRecommendedCellsAndRANNodesForPaging + template (present) LineType mw_lineType(template (present) LineType p_value := pon) := p_value; - template (present) IntegrityProtectionIndication mw_integrityProtectionIndication(template (present) IntegrityProtectionIndication p_value := ?) := p_value; + template (present) LocationReportingAdditionalInfo mw_locationReportingAdditionalInfo(template (present) LocationReportingAdditionalInfo p_value := includePSCell) := p_value; - template (present) IntegrityProtectionResult mw_integrityProtectionResult(template (present) IntegrityProtectionResult p_value := ?) := p_value; + template (present) LocationReportingRequestType mw_locationReportingRequestType( + template (present) EventType p_eventType := ?, + template (present) ReportArea p_reportArea := ?, + template AreaOfInterestList p_areaOfInterestList := *, + template LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := *, + template LocationReportingRequestType.iE_Extensions p_iE_Extensions := * + ) := { + eventType := p_eventType, + reportArea := p_reportArea, + areaOfInterestList := p_areaOfInterestList, + locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, + // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” + iE_Extensions := p_iE_Extensions + } // End of template mw_locationReportingRequestType - template (present) ImmediateMDTNr mw_immediateMDTNr( - template (present) MeasurementsToActivate p_measurementsToActivate := ?, - template M1Configuration p_m1Configuration := *, - template M4Configuration p_m4Configuration := *, - template M5Configuration p_m5Configuration := *, - template M6Configuration p_m6Configuration := *, - template M7Configuration p_m7Configuration := *, - template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, - template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, - template MDT_Location_Info p_mDT_Location_Info := *, - template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, - template ImmediateMDTNr.iE_Extensions p_iE_Extensions := * - ) := { - measurementsToActivate := p_measurementsToActivate, - m1Configuration := p_m1Configuration, - // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” - m4Configuration := p_m4Configuration, - // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” - m5Configuration := p_m5Configuration, - // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” - m6Configuration := p_m6Configuration, - // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” - m7Configuration := p_m7Configuration, - // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” + template (present) LocationReportingRequestType.iE_Extensions mw_locationReportingRequestType_id_LocationReportingAdditionalInfo( + template (present) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo := ? + ) := { + { + id := id_LocationReportingAdditionalInfo, + criticality := ignore, + extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } + } + } // End of template mw_locationReportingRequestType_id_LocationReportingAdditionalInfo + + template (present) LoggedMDTNr mw_loggedMDTNr( + template (present) LoggingInterval p_loggingInterval := ?, + template (present) LoggingDuration p_loggingDuration := ?, + template (present) LoggedMDTTrigger p_loggedMDTTrigger := ?, + template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, + template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, + template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, + template AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := *, + template LoggedMDTNr.iE_Extensions p_iE_Extensions := * + ) := { + loggingInterval := p_loggingInterval, + loggingDuration := p_loggingDuration, + loggedMDTTrigger := p_loggedMDTTrigger, bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, - mDT_Location_Info := p_mDT_Location_Info, sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, iE_Extensions := p_iE_Extensions - } // End of template mw_immediateMDTNr + } // End of template mw_loggedMDTNr - template InterSystemFailureIndication mw_interSystemFailureIndication( - template UERLFReportContainer p_uERLFReportContainer := *, - template InterSystemFailureIndication.iE_Extensions p_iE_Extensions := * - ) := { - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_interSystemFailureIndication + template (present) LoggingInterval mw_loggingInterval(template (present) LoggingInterval p_value := ?) := p_value; - template (present) IntersystemSONConfigurationTransfer mw_intersystemSONConfigurationTransfer( - template (present) IntersystemSONTransferType p_transferType := ?, - template (present) IntersystemSONInformation p_intersystemSONInformation := ?, - template IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := * - ) := { - transferType := p_transferType, - intersystemSONInformation := p_intersystemSONInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemSONConfigurationTransfer + template (present) LoggingDuration mw_loggingDuration(template (present) LoggingDuration p_value := ?) := p_value; - template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromEUTRANtoNGRAN( - template (present) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN := ? - ) := { - fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN - } // End of template mw_intersystemSONTransferType_fromEUTRANtoNGRAN + template (present) Links_to_log mw_Links_to_log(template (present) Links_to_log p_value := ?) := p_value; - template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromNGRANtoEUTRAN( - template (present) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN := ? - ) := { - fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN - } // End of template mw_intersystemSONTransferType_fromNGRANtoEUTRAN + template (present) LoggedMDTTrigger mw_loggedMDTTrigger_gERANCell( + template (present) EventTrigger p_eventTrigger := ? + ) := { + eventTrigger := p_eventTrigger + } // End of template mw_loggedMDTTrigger_gERANCell - template (present) IntersystemSONTransferType mw_intersystemSONTransferType_choice_Extensions( - template (present) IntersystemSONTransferType.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) LoggedMDTTrigger mw_loggedMDTTrigger_choice_Extensions( + template (present) LoggedMDTTrigger.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONTransferType_choice_Extensions - - template (present) IntersystemSONeNBID mw_intersystemSONeNBID( - template (present) GlobalENB_ID p_globaleNBID := ?, - template (present) EPS_TAI p_selectedEPSTAI := ?, - template IntersystemSONeNBID.iE_Extensions p_iE_Extensions := * - ) := { - globaleNBID := p_globaleNBID, - selectedEPSTAI := p_selectedEPSTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemSONeNBID + } // End of template mw_loggedMDTTrigger_choice_Extensions - template (present) IntersystemSONNGRANnodeID mw_intersystemSONNGRANnodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template (present) TAI p_selectedTAI := ?, - template IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := * - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemSONNGRANnodeID + template (present) LTEM_Indication mw_lTEM_Indication(template (present) LTEM_Indication p_value := lte_m) := p_value; - template (present) IntersystemSONInformation mw_intersystemSONInformation_intersystemSONInformationReport( - in template (present) IntersystemSONInformationReport p_intersystemSONInformationReport := ? - ) := { - intersystemSONInformationReport := p_intersystemSONInformationReport - } // End of template mw_intersystemSONInformation_intersystemSONInformationReport + template LTEV2XServicesAuthorized mw_lTEV2XServicesAuthorized( + template VehicleUE p_vehicleUE := *, + template PedestrianUE p_pedestrianUE:= *, + template LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * + ) := { + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_lTEV2XServicesAuthorized - template (present) IntersystemSONInformation mw_intersystemSONInformation_choice_Extensions( - template (present) IntersystemSONInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformation_choice_Extensions + template (present) LTEUESidelinkAggregateMaximumBitrate mw_lTEUESidelinkAggregateMaximumBitrate( + template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, + template LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_lTEUESidelinkAggregateMaximumBitrate - template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationRequest( - template (present) IntersystemSONInformationRequest p_intersystemSONInformationRequest := ? - ) := { - id := id_IntersystemSONInformationRequest, - criticality := ignore, - value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } - } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationRequest + template (present) MaximumIntegrityProtectedDataRate mw_maximumIntegrityProtectedDataRate(template (present) MaximumIntegrityProtectedDataRate p_value := ?) := p_value; - template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationReply( - template (present) IntersystemSONInformationReply p_intersystemSONInformationReply := ? - ) := { - id := id_IntersystemSONInformationReply, - criticality := ignore, - value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } - } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationReply + template (present) MBS_DataForwardingResponseMRBItem mw_mBS_DataForwardingResponseMRBItem( + template (present) MRB_ID p_mRB_ID := ?, + template (present) UPTransportLayerInformation p_dL_Forwarding_UPTNLInformation := ?, + template MRB_ProgressInformation p_mRB_ProgressInformation := *, + template MBS_DataForwardingResponseMRBItem.iE_Extensions p_iE_Extensions := * + ) := { + mRB_ID := p_mRB_ID, + dL_Forwarding_UPTNLInformation := p_dL_Forwarding_UPTNLInformation, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DataForwardingResponseMRBItem - template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_nGRAN_CellActivation( - template (present) IntersystemCellActivationRequest p_nGRAN_CellActivation := ? - ) := { - nGRAN_CellActivation := p_nGRAN_CellActivation - } // End of template mw_intersystemSONInformationRequest_nGRAN_CellActivation + template (present) MBS_MappingandDataForwardingRequestItem mw_mBS_MappingandDataForwardingRequestItem( + template (present) MRB_ID p_mRB_ID := ?, + template (present) MBS_QoSFlowList p_mBS_QoSFlowList := ?, + template MRB_ProgressInformation p_mRB_ProgressInformation := *, + template MBS_MappingandDataForwardingRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mRB_ID := p_mRB_ID, + mBS_QoSFlowList := p_mBS_QoSFlowList, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_MappingandDataForwardingRequestItem - template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_resourceStatus( - template (present) IntersystemResourceStatusRequest p_resourceStatus := ? - ) := { - resourceStatus := p_resourceStatus - } // End of template mw_intersystemSONInformationRequest_resourceStatus + template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length12( + template (present) MRB_ProgressInformation.pDCP_SN_Length12 p_pDCP_SN_Length12 := ? + ) := { + pDCP_SN_Length12 := p_pDCP_SN_Length12 + } // End of template mw_mRB_ProgressInformation_pDCP_SN_Length12 - template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_choice_Extensions( - template (present) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformationRequest_choice_Extensions + template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length18( + template (present) MRB_ProgressInformation.pDCP_SN_Length18 p_pDCP_SN_Length18 := ? + ) := { + pDCP_SN_Length18 := p_pDCP_SN_Length18 + } // End of template m_mRB_ProgressInformation_pDCP_SN_Length18 - template (present) IntersystemCellActivationRequest mw_intersystemCellActivationRequest( - template (present) IntersystemCellActivationRequest.activationID p_activationID := ?, - template (present) CellsToActivateList p_cellsToActivateList := ?, - template IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := * + template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_choice_Extensions( + template (present) MRB_ProgressInformation.choice_Extensions p_choice_Extensions := ? ) := { - activationID := p_activationID, - cellsToActivateList := p_cellsToActivateList, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemCellActivationRequest + choice_Extensions := p_choice_Extensions + } // End of template mw_mRB_ProgressInformation_choice_Extensions - template (present) IntersystemResourceStatusRequest mw_intersystemResourceStatusRequest( - template (present) ReportingSystem p_reportingSystem := ?, - template (present) ReportCharacteristics p_reportCharacteristics := ?, - template (present) ReportType p_reportType := ?, - template IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := * - ) := { - reportingSystem := p_reportingSystem, - reportCharacteristics := p_reportCharacteristics, - reportType := p_reportType, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemResourceStatusRequest + template (present) MBS_QoSFlowsToBeSetupItem mw_mBS_QoSFlowsToBeSetupItem( + template (present)QosFlowIdentifier p_mBSqosFlowIdentifier := ?, + template (present)QosFlowLevelQosParameters p_mBSqosFlowLevelQosParameters := ?, + template MBS_QoSFlowsToBeSetupItem.iE_Extensions p_iE_Extensions := * + ) := { + mBSqosFlowIdentifier := p_mBSqosFlowIdentifier, + mBSqosFlowLevelQosParameters := p_mBSqosFlowLevelQosParameters, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_QoSFlowsToBeSetupItem - template (present) ReportingSystem mw_reportingSystem_eUTRAN( - template (present) EUTRAN_ReportingSystemIEs p_eUTRAN := ? - ) := { - eUTRAN := p_eUTRAN - } // End of template mw_reportingSystem_eUTRAN + template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationindependent( + template (present) MBS_ServiceAreaInformation p_locationindependent := ? + ) := { + locationindependent := p_locationindependent + } // End of template mw_mBS_ServiceArea_locationindependent - template (present) ReportingSystem mw_reportingSystem_nGRAN( - template (present) NGRAN_ReportingSystemIEs p_nGRAN := ? - ) := { - nGRAN := p_nGRAN - } // End of template mw_reportingSystem_nGRAN + template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationdependent( + template (present) MBS_ServiceAreaInformationList p_locationdependent := ? + ) := { + locationdependent := p_locationdependent + } // End of template mw_mBS_ServiceArea_locationdependent - template (present) ReportingSystem mw_reportingSystem_choice_Extensions( - template (present) ReportingSystem.choice_Extensions p_choice_Extensions := ? + template (present) MBS_ServiceArea mw_mBS_ServiceArea_choice_Extensions( + template (present) MBS_ServiceArea.choice_Extensions p_choice_Extensions := ? ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_reportingSystem_choice_Extensions + } // End of template mw_mBS_ServiceArea_choice_Extensions - template (present) EUTRAN_ReportingSystemIEs mw_eUTRAN_ReportingSystemIEs( - template (present) EUTRAN_CellToReportList p_eUTRAN_CellToReportList := ?, - template EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * - ) := { - eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_ReportingSystemIEs + template (present) MBS_ServiceAreaInformationItem mw_mBS_ServiceAreaInformationItem( + template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, + template (present) MBS_ServiceAreaInformation p_mBS_ServiceAreaInformation := ?, + template MBS_ServiceAreaInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceAreaInformation := p_mBS_ServiceAreaInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ServiceAreaInformationItem - template (present) NGRAN_ReportingSystemIEs mw_nGRAN_ReportingSystemIEs( - template (present) NGRAN_CellToReportList p_nGRAN_CellToReportList := ?, - template NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CellToReportList := p_nGRAN_CellToReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_ReportingSystemIEs + template MBS_ServiceAreaInformation mw_mBS_ServiceAreaInformation( + template MBS_ServiceAreaCellList p_mBS_ServiceAreaCellList := *, + template MBS_ServiceAreaTAIList p_mBS_ServiceAreaTAIList := *, + template MBS_ServiceAreaInformation.iE_Extensions p_iE_Extensions := * + ) := { + mBS_ServiceAreaCellList := p_mBS_ServiceAreaCellList, + mBS_ServiceAreaTAIList := p_mBS_ServiceAreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ServiceAreaInformation - template (present) EUTRAN_CellToReportItem mw_eUTRAN_CellToReportItem( - template (present) EUTRA_CGI p_eCGI := ?, - template EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * - ) := { - eCGI := p_eCGI, + template (present) MBS_SessionID mw_mBS_SessionID( + template (present) TMGI p_tMGI := ?, + template NID p_nID := *, + template MBS_SessionID.iE_Extensions p_iE_Extensions := * + ) := { + tMGI := p_tMGI, + nID := p_nID, iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_CellToReportItem + } // End of template mw_mBS_SessionID - template (present) NGRAN_CellToReportItem mw_nGRAN_CellToReportItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * - ):= { - nGRAN_CGI := p_nGRAN_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_CellToReportItem + template (present) MBSSessionFailedtoSetupItem mw_mBSSessionFailedtoSetupItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBSSessionFailedtoSetupItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionFailedtoSetupItem + + template (present) MBS_ActiveSessionInformation_SourcetoTargetItem mw_mBS_ActiveSessionInformation_SourcetoTargetItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBS_ServiceArea p_mBS_ServiceArea := *, + template MBS_MappingandDataForwardingRequestList p_mBS_MappingandDataForwardingRequestList := *, + template MBS_ActiveSessionInformation_SourcetoTargetItem.iE_Extensions p_iE_Extensions := * + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceArea := p_mBS_ServiceArea, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBS_MappingandDataForwardingRequestList := p_mBS_MappingandDataForwardingRequestList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ActiveSessionInformation_SourcetoTargetItem + + template (present) MBS_ActiveSessionInformation_TargettoSourceItem mw_mBS_ActiveSessionInformation_TargettoSourceItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_DataForwardingResponseMRBList p_mBS_DataForwardingResponseMRBList := *, + template MBS_ActiveSessionInformation_TargettoSourceItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_DataForwardingResponseMRBList := p_mBS_DataForwardingResponseMRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ActiveSessionInformation_TargettoSourceItem - template (present) ReportType mw_reportType_eventBasedReporting( - template (present) EventBasedReportingIEs p_eventBasedReporting := ? - ) := { - eventBasedReporting := p_eventBasedReporting - } // End of template mw_reportType_eventBasedReporting + template (present) MBSSessionSetupOrModFailureTransfer mw_mBSSessionSetupOrModFailureTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template MBSSessionSetupOrModFailureTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupOrModFailureTransfer - template (present) ReportType mw_reportType_periodicReporting( - template (present) PeriodicReportingIEs p_periodicReporting := ? - ) := { - periodicReporting := p_periodicReporting - } // End of template mw_reportType_periodicReporting + template (present) MBSSessionSetupResponseItem mw_mBSSessionSetupResponseItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBSSessionSetupResponseItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupResponseItem - template (present) ReportType mw_reportType_choice_Extensions( - template (present) ReportType.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_reportType_choice_Extensions + template (present) MBSSessionSetupOrModRequestTransfer mw_mBSSessionSetupOrModRequestTransfer( + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { + protocolIEs := p_protocolIEs + } // End of template mw_mBSSessionSetupOrModRequestTransfer - template (present) NumberOfMeasurementReportingLevels mw_numberOfMeasurementReportingLevels(template (present) NumberOfMeasurementReportingLevels p_value := ?) := p_value; + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( + template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC - template (present) PeriodicReportingIEs mw_PeriodicReportingIEs( - template (present) ReportingPeriodicity p_reportingPeriodicity := ?, - template PeriodicReportingIEs.iE_Extensions p_iE_Extensions := * - ) := { - reportingPeriodicity := p_reportingPeriodicity, - iE_Extensions := p_iE_Extensions - } // End of template mw_PeriodicReportingIEs + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList - template (present) ReportingPeriodicity mw_reportingPeriodicity(template (present) ReportingPeriodicity p_value := ?) := p_value; + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( + template (present) MBS_SessionFSAIDList p_mBS_SessionFSAIDList := ? + ) := { + { + id := id_MBS_SessionFSAIDList, + criticality := ignore, + value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList - template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_nGRAN_CellActivation( - template (present) IntersystemCellActivationReply p_nGRAN_CellActivation := ? - ) := { - nGRAN_CellActivation := p_nGRAN_CellActivation - } // End of template mw_intersystemSONInformationReply_nGRAN_CellActivation + template MBSSessionReleaseResponseTransfer mw_mBSSessionReleaseResponseTransfer( + template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, + template MBSSessionReleaseResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionReleaseResponseTransfer - template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_resourceStatus( - template (present) IntersystemResourceStatusReply p_resourceStatus := ? - ) := { - resourceStatus := p_resourceStatus - } // End of template mw_intersystemSONInformationReply_resourceStatus + template MBSSessionSetupOrModResponseTransfer mw_mBSSessionSetupOrModResponseTransfer( + template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, + template MBSSessionSetupOrModResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupOrModResponseTransfer - template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_choice_Extensions( - template (present) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformationReply_choice_Extensions + template (present) MBS_SupportIndicator mw_mBS_SupportIndicator(template (present) MBS_SupportIndicator p_value := true_) := p_value; - template (present) IntersystemCellActivationReply mw_intersystemCellActivationReply( - template (present) ActivatedCellList p_activatedCellList := ?, - template (present) IntersystemCellActivationReply.activation_ID p_activation_ID := ?, - template IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := * - ) := { - activatedCellList := p_activatedCellList, - activation_ID := p_activation_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemCellActivationReply + template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationindependent( + template (present) SharedNGU_MulticastTNLInformation p_locationindependent := ? + ) := { + locationindependent := p_locationindependent + } // End of template mw_mBS_SessionTNLInfo5GC_locationindependent - template (present) IntersystemResourceStatusReply mw_intersystemResourceStatusReply( - template (present) ReportingSystem p_reportingsystem := ?, - template IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := * + template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationdependent( + template (present) MBS_SessionTNLInfo5GCList p_locationdependent := ? ) := { - reportingsystem := p_reportingsystem, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemResourceStatusReply + locationdependent := p_locationdependent + } // End of template mw_mBS_SessionTNLInfo5GC_locationdependent - template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_hOReportInformation( - template (present) InterSystemHOReport p_hOReportInformation := ? - ) := { - hOReportInformation := p_hOReportInformation - } // End of template mw_intersystemSONInformationReport_hOReportInformation + template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_choice_Extensions( + template (present) MBS_SessionTNLInfo5GC.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mBS_SessionTNLInfo5GC_choice_Extensions - template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_failureIndicationInformation( - template (present) InterSystemFailureIndication p_failureIndicationInformation := ? - ) := { - failureIndicationInformation := p_failureIndicationInformation - } // End of template mw_intersystemSONInformationReport_failureIndicationInformation - template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_choice_Extensions( - template (present) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformationReport_choice_Extensions + template (present) MBS_SessionTNLInfo5GCItem mw_mBS_SessionTNLInfo5GCItem( + template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, + template (present) SharedNGU_MulticastTNLInformation p_sharedNGU_MulticastTNLInformation := ?, + template MBS_SessionTNLInfo5GCItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_SessionTNLInfo5GCItem - template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_EnergySavingIndication( - template (present) IntersystemCellStateIndication p_intersystemCellStateIndication := ? - ) := { - id := id_EnergySavingIndication, - criticality := ignore, - value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } - } // End of template mw_intersystemSONInformationReport_id_EnergySavingIndication + template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationindependent( + template (present) UPTransportLayerInformation p_locationindependent := ? + ) := { + locationindependent := p_locationindependent + } // End of template mw_mBS_SessionTNLInfoNGRAN_locationindependent - template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( - template (present) IntersystemResourceStatusReport p_intersystemResourceStatusReport := ? - ) := { - id := id_IntersystemResourceStatusUpdate, - criticality := ignore, - value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } - } // End of template mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate + template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationdependent( + template (present) MBS_SessionTNLInfoNGRANList p_locationdependent := ? + ) := { + locationdependent := p_locationdependent + } // End of template mw_mBS_SessionTNLInfoNGRAN_locationdependent - template (present) NotificationCell_Item mw_notificationCell_Item( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template (present) NotificationCell_Item.notifyFlag p_notifyFlag := ?, - template NotificationCell_Item.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - notifyFlag := p_notifyFlag, - iE_Extensions := p_iE_Extensions - } // End of template mw_notificationCell_Item + template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_choice_Extensions( + template (present) MBS_SessionTNLInfoNGRAN.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mBS_SessionTNLInfoNGRAN_choice_Extensions - template (present) IntersystemResourceStatusReport mw_intersystemResourceStatusReport( - template (present) ResourceStatusReportingSystem p_reportingSystem := ?, - template IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := * - ) := { - reportingSystem := p_reportingSystem, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemResourceStatusReport + template (present) MBS_SessionTNLInfoNGRANItem mw_mBS_SessionTNLInfoNGRANItem( + template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, + template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, + template MBS_SessionTNLInfoNGRANItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_SessionTNLInfoNGRANItem + + template (present) MBS_DistributionReleaseRequestTransfer mw_mBS_DistributionReleaseRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, + template MBS_DistributionReleaseRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionReleaseRequestTransfer - template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( - template (present) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus := ? + template (present) MBS_DistributionSetupRequestTransfer mw_mBS_DistributionSetupRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, + template MBS_DistributionSetupRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionSetupRequestTransfer + + template (present) MBS_DistributionSetupResponseTransfer mw_mBS_DistributionSetupResponseTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, + template (present) MBSSessionStatus p_mBSSessionStatus := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBS_SessionTNLInfo5GCItem p_sharedNGU_MulticastTNLInformation := *, + template MBS_ServiceArea p_mBS_ServiceArea := *, + template MBS_DistributionSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBSSessionStatus := p_mBSSessionStatus, + mBS_ServiceArea := p_mBS_ServiceArea, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionSetupResponseTransfer + + template (present) MBS_DistributionSetupUnsuccessfulTransfer mw_mBS_DistributionSetupUnsuccessfulTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template MBS_DistributionSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * ) := { - eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus - } // End of template mw_resourceStatusReportingSystem_eUTRAN_ReportingStatus + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionSetupUnsuccessfulTransfer + + template (present) MBSSessionSetupRequestItem mw_mBSSessionSetupRequestItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := *, + template MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := * + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetupRequestList := p_associatedMBSQosFlowSetupRequestList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupRequestItem + + template (present) MBSSessionSetuporModifyRequestItem mw_mBSSessionSetuporModifyRequestItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template AssociatedMBSQosFlowSetuporModifyRequestList p_associatedMBSQosFlowSetuporModifyRequestList := *, + template QosFlowListWithCause p_mBS_QosFlowToReleaseList := *, + template MBSSessionSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetuporModifyRequestList := p_associatedMBSQosFlowSetuporModifyRequestList, + mBS_QosFlowToReleaseList := p_mBS_QosFlowToReleaseList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetuporModifyRequestItem + + template (present) MBSSessionToReleaseItem mw_mBSSessionToReleaseItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBSSessionToReleaseItem.iE_Extensions p_iE_Extensions := * + ):= { + mBS_SessionID := p_mBS_SessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionToReleaseItem - template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_nGRAN_ReportingStatus( - template (present) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus := ? - ) := { - nGRAN_ReportingStatus := p_nGRAN_ReportingStatus - } // End of template mw_resourceStatusReportingSystem_nGRAN_ReportingStatus + template (present) MBSSessionStatus mw_mBSSessionStatus(template (present) MBSSessionStatus p_value := ?) := p_value; - template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystem_choice_Extensions( - template (present) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_resourceStatusReportingSystem_choice_Extensions + template (present) MicoAllPLMN mw_micoAllPLMN(template (present) MicoAllPLMN p_value := true_) := p_value; - template (present) EUTRAN_ReportingStatusIEs mw_eUTRAN_ReportingStatusIEs( - template (present) EUTRAN_CellReportList p_eUTRAN_CellReportList := ?, - template EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * - ) := { - eUTRAN_CellReportList := p_eUTRAN_CellReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_ReportingStatusIEs + template (present) MICOModeIndication mw_mICOModeIndication(template (present) MICOModeIndication p_value := true_) := p_value; - template (present) EUTRAN_CellReportItem mw_eUTRAN_CellReportItem ( - template (present) EUTRA_CGI p_eCGI, - template (present) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup := ?, - template EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := *, - template NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := *, - template EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := *, - template EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := * - ):= { - eCGI := p_eCGI, - eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, - eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, - eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, - eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_ReportingStatusIEs + template (present) MobilityRestrictionList mw_mobilityRestrictionList( + template (present) PLMNIdentity p_servingPLMN := ?, + template EquivalentPLMNs p_equivalentPLMNs := *, + template RATRestrictions p_rATRestrictions := *, + template ForbiddenAreaInformation p_forbiddenAreaInformation := *, + template ServiceAreaInformation p_serviceAreaInformation := *, + template MobilityRestrictionList.iE_Extensions p_iE_Extensions := * + ) := { + servingPLMN := p_servingPLMN, + equivalentPLMNs := p_equivalentPLMNs, + rATRestrictions := p_rATRestrictions, + forbiddenAreaInformation := p_forbiddenAreaInformation, + serviceAreaInformation := p_serviceAreaInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mobilityRestrictionList - template (present) EUTRAN_CompositeAvailableCapacityGroup mw_EUTRAN_CompositeAvailableCapacityGroup( - template (present) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity := ?, - template (present) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity := ?, - template EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := * - ) := { - dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, - uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, - iE_Extensions := p_iE_Extensions - } // End of template mw_EUTRAN_CompositeAvailableCapacityGroup + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( + template (present) PLMNIdentity p_pLMNIdentity := ? + ) := { + { + id := id_LastEUTRAN_PLMNIdentity, + criticality := ignore, + extensionValue := { PLMNIdentity := p_pLMNIdentity } + } + } // End of template mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity - template (present) CompositeAvailableCapacity mw_compositeAvailableCapacity( - template (present) CompositeAvailableCapacity.capacityValue p_capacityValue := ?, - template CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := *, - template CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := * - ) := { - cellCapacityClassValue := p_cellCapacityClassValue, - capacityValue := p_capacityValue, - iE_Extensions := p_iE_Extensions - } // End of template mw_compositeAvailableCapacity - - template (present) EUTRAN_RadioResourceStatus mw_eUTRAN_RadioResourceStatus( - template (present) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage := ?, - template EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := *, - template EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := *, - template EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * - ) := { - dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, - uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, - dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, - uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, - dL_Total_PRB_usage := p_dL_Total_PRB_usage, - uL_Total_PRB_usage := p_uL_Total_PRB_usage, - dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, - uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_RadioResourceStatus + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing( + template (present) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing := ? + ) := { + { + id := id_CNTypeRestrictionsForServing, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } + } + } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing - template (present) NGRAN_ReportingStatusIEs mw_nGRAN_ReportingStatusIEs( - template (present) NGRAN_CellReportList p_nGRAN_CellReportList := ?, - template NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CellReportList := p_nGRAN_CellReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_ReportingStatusIEs + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( + template (present) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent := ? + ) := { + { + id := id_CNTypeRestrictionsForEquivalent, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } + } + } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent - template (present) NGRAN_CellReportItem mw_nGRAN_CellReportItem( - template (present) NGRAN_CGI p_nGRAN_CGI, - template (present) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup := ?, - template NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := *, - template NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := *, - template NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := *, - template NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, - nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, - nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, - nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_CellReportItem + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_NPN_MobilityInformation( + template (present) NPN_MobilityInformation p_nPN_MobilityInformation := ? + ) := { + { + id := id_NPN_MobilityInformation, + criticality := reject, + extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } + } + } // End of template mw_mobilityRestrictionList_id_NPN_MobilityInformation - template (present) NGRAN_RadioResourceStatus mw_nGRAN_RadioResourceStatus( - template (present) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO := ?, - template NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * - ) := { - dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, - uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, - dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, - uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, - dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, - uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_RadioResourceStatus + template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_s_basedMDT( + template (present) NGRANTraceID p_s_basedMDT := ? + ) := { + s_basedMDT := p_s_basedMDT + } // End of template mw_mDT_AlignmentInfo_s_basedMDT - template (present) InterSystemHOReport mw_interSystemHOReport( - template (present) InterSystemHandoverReportType p_handoverReportType := ?, - template InterSystemHOReport.iE_Extensions p_iE_Extensions := * - ) := { - handoverReportType := p_handoverReportType, - iE_Extensions := p_iE_Extensions - } // End of template mw_interSystemHOReport + template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_choice_Extensions( + template (present) MDT_AlignmentInfo.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mDT_AlignmentInfo_choice_Extensions + + template MDT_Configuration mw_mDT_Configuration( + template MDT_Configuration_NR p_mdt_Config_NR := *, + template MDT_Configuration_EUTRA p_mdt_Config_EUTRA := *, + template MDT_Configuration.iE_Extensions p_iE_Extensions := * + ) := { + mdt_Config_NR := p_mdt_Config_NR, + mdt_Config_EUTRA := p_mdt_Config_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Configuration + + template (present) MDT_Configuration_NR mw_mDT_Configuration_NR( + template (present) MDT_Activation p_mdt_Activation := ?, + template (present) AreaScopeOfMDT_NR p_areaScopeOfMDT := ?, + template (present) MDTModeNr p_mDTModeNr := ?, + template MDTPLMNList p_signallingBasedMDTPLMNList := *, + template MDT_Configuration_NR.iE_Extensions p_iE_Extensions := * + ) := { + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTModeNr := p_mDTModeNr, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Configuration_NR + + template (present) MDT_Configuration_EUTRA mw_mDT_Configuration_EUTRA( + template (present) MDT_Activation p_mdt_Activation := ?, + template (present) AreaScopeOfMDT_EUTRA p_areaScopeOfMDT := ?, + template (present) MDTModeEutra p_mDTMode := ?, + template MDTPLMNList p_signallingBasedMDTPLMNList := *, + template MDT_Configuration_EUTRA.iE_Extensions p_iE_Extensions := * + ) := { + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTMode := p_mDTMode, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Configuration_EUTRA - template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_tooearlyIntersystemHO( - template (present) TooearlyIntersystemHO p_tooearlyIntersystemHO := ? - ) := { - tooearlyIntersystemHO := p_tooearlyIntersystemHO - } // End of template mw_interSystemHandoverReportType_tooearlyIntersystemHO + template (present) MDT_Activation mw_mDT_Activation(template (present) MDT_Activation p_value := ?) := p_value; - template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_intersystemUnnecessaryHO( - template (present) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO := ? - ) := { - intersystemUnnecessaryHO := p_intersystemUnnecessaryHO - } // End of template mw_interSystemHandoverReportType_intersystemUnnecessaryHO + template (present) MDTModeNr mw_mDTModeNro_immediateMDTNr( + template (present) ImmediateMDTNr p_immediateMDTNr := ? + ) := { + immediateMDTNr := p_immediateMDTNr + } // End of template mw_mDTModeNr_immediateMDTNr - template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_choice_Extensions( - template (present) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) MDTModeNr mw_mDTModeNro_loggedMDTNr( + template (present) LoggedMDTNr p_loggedMDTNr := ? + ) := { + loggedMDTNr := p_loggedMDTNr + } // End of template mw_mDTModeNr_loggedMDTNr + + template (present) MDTModeNr mw_mDTModeNr_choice_Extensions( + template (present) MDTModeNr.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_interSystemHandoverReportType_choice_Extensions + } // End of template mw_mDTModeNr_choice_Extensions - template (present) IntersystemUnnecessaryHO mw_intersystemUnnecessaryHO( - template (present) NGRAN_CGI p_sourcecellID := ?, - template (present) EUTRA_CGI p_targetcellID := ?, - template (present) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := ?, - template (present) CandidateCellList p_candidateCellList := ?, - template IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := * - ) := { - sourcecellID := p_sourcecellID, - targetcellID := p_targetcellID, - earlyIRATHO := p_earlyIRATHO, - candidateCellList := p_candidateCellList, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemUnnecessaryHO + template (present) MulticastSessionActivationRequestTransfer mw_multicastSessionActivationRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MulticastSessionActivationRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastSessionActivationRequestTransfer - template (present) LAI mw_lai( - template (present) PLMNIdentity p_pLMNidentity := ?, - template (present) LAC p_lAC := ?, - template LAI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNidentity := p_pLMNidentity, - lAC := p_lAC, + template (present) MulticastSessionDeactivationRequestTransfer mw_multicastSessionDeactivationRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MulticastSessionDeactivationRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, iE_Extensions := p_iE_Extensions - } // End of template mw_lai + } // End of template mw_multicastSessionDeactivationRequestTransfer - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_nGRANCell( - template (present) LastVisitedNGRANCellInformation p_nGRANCell := ? - ) := { - nGRANCell := p_nGRANCell - } // End of template mw_interSystemHandoverReportType_nGRANCell + template (present) MulticastSessionUpdateRequestTransfer mw_multicastSessionUpdateRequestTransfer( + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { + protocolIEs := p_protocolIEs + } // End of template mw_multicastSessionUpdateRequestTransfer - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_eUTRANCell( - template (present) LastVisitedEUTRANCellInformation p_eUTRANCell := ? - ) := { - eUTRANCell := p_eUTRANCell - } // End of template mw_interSystemHandoverReportType_eUTRANCell + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( + template (present) MBS_SessionID p_mBS_SessionID := ? + ) := { + { + id := id_MBS_SessionID, + criticality := reject, + value_ := { MBS_SessionID := p_mBS_SessionID } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_uTRANCell( - template (present) LastVisitedUTRANCellInformation p_uTRANCell := ? - ) := { - uTRANCell := p_uTRANCell - } // End of template mw_interSystemHandoverReportType_uTRANCell + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( + template (present) MBS_ServiceArea p_mBS_ServiceArea := ? + ) := { + { + id := id_MBS_ServiceArea, + criticality := reject, + value_ := { MBS_ServiceArea := p_mBS_ServiceArea } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_gERANCell( - template (present) LastVisitedGERANCellInformation p_gERANCell := ? - ) := { - gERANCell := p_gERANCell - } // End of template mw_interSystemHandoverReportType_gERANCell + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList - template (present) LastVisitedCellInformation mw_lastVisitedCellInformation_choice_Extensions( - template (present) LastVisitedCellInformation.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( + template (present) QosFlowListWithCause p_qosFlowListWithCause := ? + ) := { + { + id := id_MBS_QoSFlowToReleaseList, + criticality := reject, + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList + + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( + template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC + + template (present) MulticastGroupPagingAreaItem mw_multicastGroupPagingAreaItem( + template (present) MulticastGroupPagingArea p_multicastGroupPagingArea := ?, + template UE_PagingList p_uE_PagingList := *, + template MulticastGroupPagingAreaItem.iE_Extensions p_iE_Extensions := * + ) := { + multicastGroupPagingArea := p_multicastGroupPagingArea, + uE_PagingList := p_uE_PagingList, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastGroupPagingAreaItem + + template (present) MulticastGroupPagingArea mw_multicastGroupPagingArea( + template (present) MBS_AreaTAIList p_mBS_AreaTAIList := ?, + template MulticastGroupPagingArea.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaTAIList := p_mBS_AreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastGroupPagingArea + + template (present) UE_PagingItem mw_uE_PagingItem( + template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, + template PagingDRX p_pagingDRX := *, + template UE_PagingItem.iE_Extensions p_iE_Extensions := * + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + pagingDRX := p_pagingDRX, + iE_Extensions := p_iE_Extensions + } // End of template mw_uE_PagingItem + + template (present) M1Configuration mw_m1Configuration( + template (present) M1ReportingTrigger p_m1reportingTrigger := ?, + template M1ThresholdEventA2 p_m1thresholdEventA2 := *, + template M1PeriodicReporting p_m1periodicReporting := *, + template M1Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m1reportingTrigger := p_m1reportingTrigger, + m1thresholdEventA2 := p_m1thresholdEventA2, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” + m1periodicReporting := p_m1periodicReporting, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” + iE_Extensions := p_iE_Extensions + } // End of template mw_m1Configuration + + template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_IncludeBeamMeasurementsIndication( + template (present) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication := ? + ) := { + { + id := id_IncludeBeamMeasurementsIndication, + criticality := ignore, + extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } + } + } // End of template mw_m1Configuration_id_IncludeBeamMeasurementsIndication + + template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_BeamMeasurementsReportConfiguration( + template (present) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration := ? + ) := { + { + id := id_BeamMeasurementsReportConfiguration, + criticality := ignore, + extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } + } + } // End of template mw_m1Configuration_id_BeamMeasurementsReportConfiguration + + template (present) IncludeBeamMeasurementsIndication mw_includeBeamMeasurementsIndication(template (present) IncludeBeamMeasurementsIndication p_value := true_) := p_value; + + template (present) M1ReportingTrigger mw_m1ReportingTrigger(template (present) M1ReportingTrigger p_value := ?) := p_value; + + template (present) M1ThresholdEventA2 mw_m1ThresholdEventA2( + template (present) M1ThresholdType p_m1ThresholdType := ?, + template M1ThresholdEventA2.iE_Extensions p_iE_Extensions := * + ) := { + m1ThresholdType := p_m1ThresholdType, + iE_Extensions := p_iE_Extensions + } // End of template mw_m1ThresholdEventA2 + + template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRP( + template (present) Threshold_RSRP p_threshold_RSRP := ? + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template mw_m1ThresholdType_threshold_RSRP + + template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRQ( + template (present) Threshold_RSRQ p_threshold_RSRQ := ? + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template mw_m1ThresholdType_threshold_RSRQ + + template (present) M1ThresholdType mw_m1ThresholdType_threshold_SINR( + template (present) Threshold_SINR p_threshold_SINR := ? + ) := { + threshold_SINR := p_threshold_SINR + } // End of template mw_m1ThresholdType_threshold_SINR + + template (present) M1ThresholdType mw_m1ThresholdType_choice_Extensions( + template (present) M1ThresholdType.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_lastVisitedCellInformation_choice_Extensions + } // End of template mw_m1ThresholdType_choice_Extensions - template (present) LastVisitedCellItem mw_lastVisitedCellItem( - template (present) LastVisitedCellInformation p_lastVisitedCellInformation := ?, - template LastVisitedCellItem.iE_Extensions p_iE_Extensions := * + template (present) M1PeriodicReporting mw_m1PeriodicReporting( + template (present) ReportIntervalMDT p_reportInterval := ?, + template (present) ReportAmountMDT p_reportAmount := ?, + template M1PeriodicReporting.iE_Extensions p_iE_Extensions := * ) := { - lastVisitedCellInformation := p_lastVisitedCellInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_lastVisitedCellItem - - template (present) LastVisitedNGRANCellInformation mw_lastVisitedNGRANCellInformation( - template (present) NGRAN_CGI p_globalCellID := ?, - template (present) CellType p_cellType := ?, - template (present) TimeUEStayedInCell p_timeUEStayedInCell := ?, - template TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := *, - template Cause p_hOCauseValue := *, - template LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := * - ) := { - globalCellID := p_globalCellID, - cellType := p_cellType, - timeUEStayedInCell := p_timeUEStayedInCell, - timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, - hOCauseValue := p_hOCauseValue, - iE_Extensions := p_iE_Extensions - } // End of template mw_lastVisitedNGRANCellInformation + reportInterval := p_reportInterval, + reportAmount := p_reportAmount, + iE_Extensions := p_iE_Extensions + } // End of template mw_m1PeriodicReporting - template (present) LastVisitedNGRANCellInformation.iE_Extensions mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( - template (present) LastVisitedPSCellList p_lastVisitedPSCellList := ? - ) := { + template (present) M1PeriodicReporting.iE_Extensions mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT( + template (present) ExtendedReportIntervalMDT p_extendedReportIntervalMDT := ? + ) := { { - id := id_LastVisitedPSCellList, + id := id_ExtendedReportIntervalMDT, criticality := ignore, - extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } + extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } } - } // End of template mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList + } // End of template mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT - template (present) LastVisitedPSCellInformation mw_LastVisitedPSCellInformation( - template (present) NGRAN_CGI p_pSCellID := ?, - template (present) LastVisitedPSCellInformation.timeStay p_timeStay := ?, - template LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := * - ) := { - pSCellID := p_pSCellID, - timeStay := p_timeStay, - iE_Extensions := p_iE_Extensions - } // End of template mw_LastVisitedPSCellInformation + template (present) M4Configuration mw_m4Configuration( + template (present) M4period p_m4period := ?, + template (present) Links_to_log p_m4_links_to_log := ?, + template M4Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m4period := p_m4period, + m4_links_to_log := p_m4_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m4Configuration - template (present) LineType mw_lineType(template (present) LineType p_value := pon) := p_value; + template (present) M4Configuration.iE_Extensions mw_m4Configuration_id_M4ReportAmount( + template (present) M4ReportAmountMDT p_m4ReportAmountMDT := ? + ) := { + { + id := id_ExtendedReportIntervalMDT, + criticality := ignore, + extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } + } + } // End of template mw_m4Configuration_id_M4ReportAmount - template (present) LocationReportingAdditionalInfo mw_locationReportingAdditionalInfo(template (present) LocationReportingAdditionalInfo p_value := includePSCell) := p_value; + template (present) M4ReportAmountMDT mw_m4ReportAmountMDT(template (present) M4ReportAmountMDT p_value := ?) := p_value; - template (present) LocationReportingRequestType mw_locationReportingRequestType( - template (present) EventType p_eventType := ?, - template (present) ReportArea p_reportArea := ?, - template AreaOfInterestList p_areaOfInterestList := *, - template LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := *, - template LocationReportingRequestType.iE_Extensions p_iE_Extensions := * - ) := { - eventType := p_eventType, - reportArea := p_reportArea, - areaOfInterestList := p_areaOfInterestList, - locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, - // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” - iE_Extensions := p_iE_Extensions - } // End of template mw_locationReportingRequestType + template (present) M4period mw_m4period(template (present) M4period p_value := ?) := p_value; - template (present) LocationReportingRequestType.iE_Extensions mw_locationReportingRequestType_id_LocationReportingAdditionalInfo( - template (present) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo := ? - ) := { + template (present) M5Configuration mw_m5Configuration( + template (present) M5period p_m5period := ?, + template (present) Links_to_log p_m5_links_to_log := ?, + template M5Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m5period := p_m5period, + m5_links_to_log := p_m5_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m5Configuration + + template (present) M5Configuration.iE_Extensions mw_m5Configuration_id_M5ReportAmount( + template (present) M5ReportAmountMDT p_m5ReportAmountMDT := ? + ) := { { - id := id_LocationReportingAdditionalInfo, + id := id_M5ReportAmount, criticality := ignore, - extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } + extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } } - } // End of template mw_locationReportingRequestType_id_LocationReportingAdditionalInfo + } // End of template mw_m5Configuration_id_M5ReportAmount - template (present) LoggedMDTNr mw_loggedMDTNr( - template (present) LoggingInterval p_loggingInterval := ?, - template (present) LoggingDuration p_loggingDuration := ?, - template (present) LoggedMDTTrigger p_loggedMDTTrigger := ?, - template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, - template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, - template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, - template AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := *, - template LoggedMDTNr.iE_Extensions p_iE_Extensions := * - ) := { - loggingInterval := p_loggingInterval, - loggingDuration := p_loggingDuration, - loggedMDTTrigger := p_loggedMDTTrigger, - bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, - wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, - sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, - areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, - iE_Extensions := p_iE_Extensions - } // End of template mw_loggedMDTNr + template (present) M5ReportAmountMDT mw_m5ReportAmountMDT(template (present) M5ReportAmountMDT p_value := ?) := p_value; - template (present) LoggingInterval mw_loggingInterval(template (present) LoggingInterval p_value := ?) := p_value; + template (present) M5period mw_m5period(template (present) M5period p_value := ?) := p_value; - template (present) LoggingDuration mw_loggingDuration(template (present) LoggingDuration p_value := ?) := p_value; + template (present) M6Configuration mw_m6Configuration( + template (present) M6report_Interval p_m6report_Interval := ?, + template (present) Links_to_log p_m6_links_to_log := ?, + template M6Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m6report_Interval := p_m6report_Interval, + m6_links_to_log := p_m6_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m6Configuration - template (present) Links_to_log mw_Links_to_log(template (present) Links_to_log p_value := ?) := p_value; + template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_M6ReportAmount( + template (present) M6ReportAmountMDT p_m6ReportAmountMDT := ? + ) := { + { + id := id_M6ReportAmount, + criticality := ignore, + extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } + } + } // End of template mw_m6Configuration_id_M6ReportAmount - template (present) LoggedMDTTrigger mw_loggedMDTTrigger_gERANCell( - template (present) EventTrigger p_eventTrigger := ? - ) := { - eventTrigger := p_eventTrigger - } // End of template mw_loggedMDTTrigger_gERANCell + template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( + template (present) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration := ? + ) := { + { + id := id_ExcessPacketDelayThresholdConfiguration, + criticality := ignore, + extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } + } + } // End of template mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration - template (present) LoggedMDTTrigger mw_loggedMDTTrigger_choice_Extensions( - template (present) LoggedMDTTrigger.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_loggedMDTTrigger_choice_Extensions + template (present) M6ReportAmountMDT mw_m6ReportAmountMDT(template (present) M6ReportAmountMDT p_value := ?) := p_value; - template (present) LTEM_Indication mw_lTEM_Indication(template (present) LTEM_Indication p_value := lte_m) := p_value; + template (present) M6report_Interval mw_m6report_Interval(template (present) M6report_Interval p_value := ?) := p_value; - template LTEV2XServicesAuthorized mw_lTEV2XServicesAuthorized( - template VehicleUE p_vehicleUE := *, - template PedestrianUE p_pedestrianUE:= *, - template LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * - ) := { - vehicleUE := p_vehicleUE, - pedestrianUE := p_pedestrianUE, - iE_Extensions := p_iE_Extensions - } // End of template mw_lTEV2XServicesAuthorized + template (present) M7Configuration mw_m7Configuration( + template (present) M7period p_m7period := ?, + template (present) Links_to_log p_m7_links_to_log := ?, + template M7Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m7period := p_m7period, + m7_links_to_log := p_m7_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m7Configuration - template (present) LTEUESidelinkAggregateMaximumBitrate mw_lTEUESidelinkAggregateMaximumBitrate( - template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, - template LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * - ) := { - uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_lTEUESidelinkAggregateMaximumBitrate + template (present) M7Configuration.iE_Extensions mw_m7Configuration_id_M7ReportAmount( + template (present) M7ReportAmountMDT p_m7ReportAmountMDT := ? + ) := { + { + id := id_M7ReportAmount, + criticality := ignore, + extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } + } + } // End of template mw_m7Configuration_id_M7ReportAmount + + template (present) M7ReportAmountMDT mw_m7ReportAmountMDT(template (present) M7ReportAmountMDT p_value := ?) := p_value; + + template (present) MDT_Location_Info mw_mDT_Location_Info( + template (present) MDT_Location_Information p_mDT_Location_Information := ?, + template MDT_Location_Info.iE_Extensions p_iE_Extensions := * + ) := { + mDT_Location_Information := p_mDT_Location_Information, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Location_Info - // type bitstring MaskedIMEISV length (64); - // type integer MaximumDataBurstVolume ( - // type bitstring MessageIdentifier length (16); - // type enumerated MaximumIntegrityProtectedDataRate { - // type integer MBS_AreaSessionID ( - // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_DataForwardingResponseMRBItem MBS_DataForwardingResponseMRBList; - // type record MBS_DataForwardingResponseMRBItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DataForwardingResponseMRBItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMRBs) of MBS_MappingandDataForwardingRequestItem MBS_MappingandDataForwardingRequestList; - // type record MBS_MappingandDataForwardingRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_MappingandDataForwardingRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of QosFlowIdentifier MBS_QoSFlowList; - // type union MRB_ProgressInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES MRB_ProgressInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSQoSFlows) of MBS_QoSFlowsToBeSetupItem MBS_QoSFlowsToBeSetupList; - // type record MBS_QoSFlowsToBeSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_QoSFlowsToBeSetupItem_ExtIEs (?); - // type union MBS_ServiceArea { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_ServiceArea_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_ServiceAreaInformationItem MBS_ServiceAreaInformationList; - // type record MBS_ServiceAreaInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformationItem_ExtIEs (?); - // type record MBS_ServiceAreaInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ServiceAreaInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsforMBS) of NR_CGI MBS_ServiceAreaCellList; - // type record length (1 .. NGAP_Constants.maxnoofTAIforMBS) of TAI MBS_ServiceAreaTAIList; - // type record MBS_SessionID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionID_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionFailedtoSetupItem MBSSessionFailedtoSetupList; - // type record MBSSessionFailedtoSetupItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionFailedtoSetupItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_SourcetoTargetItem MBS_ActiveSessionInformation_SourcetoTargetList; - // type record MBS_ActiveSessionInformation_SourcetoTargetItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_SourcetoTargetItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessionsofUE) of MBS_ActiveSessionInformation_TargettoSourceItem MBS_ActiveSessionInformation_TargettoSourceList; - // type record MBS_ActiveSessionInformation_TargettoSourceItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_ActiveSessionInformation_TargettoSourceItem_ExtIEs (?); - // type record MBSSessionSetupOrModFailureTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModFailureTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupResponseItem MBSSessionSetupResponseList; - // type record MBSSessionSetupResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupResponseItem_ExtIEs (?); - // type record MBSSessionSetupOrModRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBSSessionSetupOrModRequestTransferIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMBSFSAs) of MBS_SessionFSAID MBS_SessionFSAIDList; - // type octetstring MBS_SessionFSAID length (3); - // type record MBSSessionReleaseResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionReleaseResponseTransfer_ExtIEs (?); - // type record MBSSessionSetupOrModResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupOrModResponseTransfer_ExtIEs (?); - // type enumerated MBS_SupportIndicator { - // type union MBS_SessionTNLInfo5GC { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfo5GC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfo5GCItem MBS_SessionTNLInfo5GCList; - // type record MBS_SessionTNLInfo5GCItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfo5GCItem_ExtIEs (?); - // type union MBS_SessionTNLInfoNGRAN { - // type NGAP_Containers.NGAP_PROTOCOL_IES MBS_SessionTNLInfoNGRAN_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSServiceAreaInformation) of MBS_SessionTNLInfoNGRANItem MBS_SessionTNLInfoNGRANList; - // type record MBS_SessionTNLInfoNGRANItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_SessionTNLInfoNGRANItem_ExtIEs (?); - // type record MBS_DistributionReleaseRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionReleaseRequesTransfer_ExtIEs (?); - // type record MBS_DistributionSetupRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupRequestTransfer_ExtIEs (?); - // type record MBS_DistributionSetupResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupResponseTransfer_ExtIEs (?); - // type record MBS_DistributionSetupUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBS_DistributionSetupUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetupRequestItem MBSSessionSetupRequestList; - // type record MBSSessionSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetupRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionSetuporModifyRequestItem MBSSessionSetuporModifyRequestList; - // type record MBSSessionSetuporModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionSetuporModifyRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMBSSessions) of MBSSessionToReleaseItem MBSSessionToReleaseList; - // type record MBSSessionToReleaseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MBSSessionToReleaseItem_ExtIEs (?); - // type enumerated MBSSessionStatus { - // type enumerated MicoAllPLMN { - // type enumerated MICOModeIndication { - // type bitstring MobilityInformation length (16); - // type record MobilityRestrictionList { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MobilityRestrictionList_ExtIEs ( - // type union MDT_AlignmentInfo { - // type NGAP_Containers.NGAP_PROTOCOL_IES MDT_AlignmentInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNList; - // type record length (0 .. NGAP_Constants.maxnoofMDTPLMNs) of PLMNIdentity MDTPLMNModificationList; - // type record MDT_Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_ExtIEs (?); - // type record MDT_Configuration_NR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_NR_ExtIEs (?); - // type record MDT_Configuration_EUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Configuration_EUTRA_ExtIEs (?); - // type enumerated MDT_Activation { - // type union MDTModeNr { - // type NGAP_Containers.NGAP_PROTOCOL_IES MDTModeNr_ExtIEs (?); - // type octetstring MDTModeEutra; - // type bitstring MeasurementsToActivate length (8); - // type integer MRB_ID ( - // type record MulticastSessionActivationRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionActivationRequestTransfer_ExtIEs (?); - // type record MulticastSessionDeactivationRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastSessionDeactivationRequestTransfer_ExtIEs (?); - // type record MulticastSessionUpdateRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES MulticastSessionUpdateRequestTransferIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPagingAreas) of MulticastGroupPagingAreaItem MulticastGroupPagingAreaList; - // type record MulticastGroupPagingAreaItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingAreaItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAI MBS_AreaTAIList; - // type record MulticastGroupPagingArea { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MulticastGroupPagingArea_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEsforPaging) of UE_PagingItem UE_PagingList; - // type record UE_PagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_PagingItem_ExtIEs (?); - // type record M1Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1Configuration_ExtIEs ( - // type enumerated IncludeBeamMeasurementsIndication { - // type integer MaxNrofRS_IndexesToReport ( - // type enumerated M1ReportingTrigger { - // type record M1ThresholdEventA2 { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1ThresholdEventA2_ExtIEs (?); - // type union M1ThresholdType { - // type NGAP_Containers.NGAP_PROTOCOL_IES M1ThresholdType_ExtIEs (?); - // type record M1PeriodicReporting { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M1PeriodicReporting_ExtIEs ( - // type record M4Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M4Configuration_ExtIEs ( - // type enumerated M4ReportAmountMDT { - // type enumerated M4period { - // type record M5Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M5Configuration_ExtIEs ( - // type enumerated M5ReportAmountMDT { - // type enumerated M5period { - // type record M6Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M6Configuration_ExtIEs ( - // type enumerated M6ReportAmountMDT { - // type enumerated M6report_Interval { - // type record M7Configuration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION M7Configuration_ExtIEs ( - // type enumerated M7ReportAmountMDT { - // type integer M7period ( - // type record MDT_Location_Info { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION MDT_Location_Info_ExtIEs (?); - // type bitstring MDT_Location_Information length (8); // type union N3IWF_ID { // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); // type octetstring NAS_PDU; -- GitLab From c4a02c825bc1cd9ce7739d28460442bd8512ee19 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 30 Jan 2024 16:32:23 +0100 Subject: [PATCH 133/365] TTF T033: Implement ASN.1 send/receive templates N --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 722 ++++++++++++++++++------ 1 file changed, 555 insertions(+), 167 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 7750fd6..66964ce 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -4541,9 +4541,9 @@ module LibNGAP_Templates { ) := { m1reportingTrigger := p_m1reportingTrigger, m1thresholdEventA2 := p_m1thresholdEventA2, - // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” + // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” m1periodicReporting := p_m1periodicReporting, - // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” + // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” iE_Extensions := p_iE_Extensions } // End of template m_m1Configuration @@ -4735,94 +4735,284 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_mDT_Location_Info - // type union N3IWF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); - // type octetstring NAS_PDU; - // type octetstring NASSecurityParametersFromNGRAN; - // type enumerated NB_IoT_DefaultPagingDRX { - // type enumerated NB_IoT_PagingDRX { - // type enumerated NB_IoT_Paging_eDRXCycle { - // type enumerated NB_IoT_Paging_TimeWindow { - // type record NB_IoT_Paging_eDRXInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); - // type integer NB_IoT_UEPriority ( - // type integer NetworkInstance ( - // type enumerated NewSecurityContextInd { - // type integer NextHopChainingCount (0 .. 7); - // type enumerated NextPagingAreaScope { - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; - // type record NGAPIESupportInformationRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; - // type record NGAPIESupportInformationResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); - // type union NgENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); - // type enumerated NotifySourceNGRANNode { - // type union NGRAN_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; - // type record NGRAN_TNLAssociationToRemoveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); - // type octetstring NGRANTraceID length (8); - // type bitstring NID length (44); - // type record NonDynamic5QIDescriptor { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; - // type enumerated NotificationCause { - // type enumerated NotificationControl { - // type union NPN_AccessInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); - // type union NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); - // type union NPN_PagingAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); - // type union NPN_Support { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); - // type bitstring NRCellIdentity length (36); - template (value) NRCellIdentity m_ie_nRCellId(template (value) NRCellIdentity p_nrCId:='000000000000000000000000000000000000'B):= p_nrCId; - // type record NR_CGI { - template (value) NR_CGI m_ie_nrCgi( - template (value) PLMNIdentity p_PlmnId, - template (value) NRCellIdentity p_nrCellId, - in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_PlmnId, - nRCellIdentity := p_nrCellId, + template (value) N3IWF_ID m_n3IWF_ID_n3IWF_ID( + in template (value) N3IWF_ID.n3IWF_ID p_n3IWF_ID + ) := { + n3IWF_ID := p_n3IWF_ID + } // End of template m_n3IWF_ID_n3IWF_ID + + template (value) N3IWF_ID m_n3IWF_ID_choice_Extensions( + in template (value) N3IWF_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_n3IWF_ID_choice_Extensions + + template (value) NB_IoT_DefaultPagingDRX m_nB_IoT_DefaultPagingDRX(in NB_IoT_DefaultPagingDRX p_value := rf128) := p_value; + + template (value) NB_IoT_PagingDRX m_nB_IoT_PagingDRX(in NB_IoT_PagingDRX p_value := rf32) := p_value; + + template (value) NB_IoT_Paging_eDRXCycle m_nB_IoT_Paging_eDRXCycle(in NB_IoT_Paging_eDRXCycle p_value := hf2) := p_value; + + template (value) NB_IoT_Paging_TimeWindow m_nB_IoT_Paging_TimeWindow(in NB_IoT_Paging_TimeWindow p_value := s1) := p_value; + + template (omit) NB_IoT_Paging_eDRXInfo m_nB_IoT_Paging_eDRXInfo( + in template (value) NB_IoT_Paging_eDRXCycle p_nB_IoT_Paging_eDRXCycle, + in template (omit) NB_IoT_Paging_TimeWindow p_nB_IoT_Paging_TimeWindow := omit, + in template (omit) NB_IoT_Paging_eDRXInfo.iE_Extensions p_iE_Extensions := omit + ) := { + nB_IoT_Paging_eDRXCycle := p_nB_IoT_Paging_eDRXCycle, + nB_IoT_Paging_TimeWindow := p_nB_IoT_Paging_TimeWindow, + iE_Extensions := p_iE_Extensions + } // End of template m_nB_IoT_Paging_eDRXInfo + + template (value) NewSecurityContextInd m_newSecurityContextInd(in NewSecurityContextInd p_value := true_) := p_value; + + template (value) NextPagingAreaScope m_nextPagingAreaScope(in NextPagingAreaScope p_value := same) := p_value; + + template (omit) NGAPIESupportInformationRequestItem m_nGAPIESupportInformationRequestItem( + in template (value) ProtocolIE_ID p_ngap_ProtocolIE_Id, + in template (omit) NGAPIESupportInformationRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + iE_Extensions := p_iE_Extensions + } // End of template m_nGAPIESupportInformationRequestItem + + template (omit) NGAPIESupportInformationResponseItem m_nGAPIESupportInformationResponseItem( + in template (value) ProtocolIE_ID p_ngap_ProtocolIE_Id, + in template (value) NGAPIESupportInformationResponseItem.ngap_ProtocolIESupportInfo p_ngap_ProtocolIESupportInfo, + in template (value) NGAPIESupportInformationResponseItem.ngap_ProtocolIEPresenceInfo p_ngap_ProtocolIEPresenceInfo, + in template (omit) NGAPIESupportInformationResponseItem.iE_Extensions p_iE_Extensions := omit + ) := { + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + ngap_ProtocolIESupportInfo := p_ngap_ProtocolIESupportInfo, + ngap_ProtocolIEPresenceInfo := p_ngap_ProtocolIEPresenceInfo, + iE_Extensions := p_iE_Extensions + } // End of template m_nGAPIESupportInformationResponseItem + + template (value) NgENB_ID m_ngENB_ID_macroNgENB_ID( + in template (value) NgENB_ID.macroNgENB_ID p_macroNgENB_ID + ) := { + macroNgENB_ID := p_macroNgENB_ID + } // End of template m_ngENB_ID_macroNgENB_ID + + template (value) NgENB_ID m_ngENB_ID_shortMacroNgENB_ID( + in template (value) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID + ) := { + shortMacroNgENB_ID := p_shortMacroNgENB_ID + } // End of template m_ngENB_ID_shortMacroNgENB_ID + + template (value) NgENB_ID m_ngENB_ID_longMacroNgENB_ID( + in template (value) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID + ) := { + longMacroNgENB_ID := p_longMacroNgENB_ID + } // End of template m_ngENB_ID_longMacroNgENB_ID + + template (value) NgENB_ID m_ngENB_ID_choice_Extensions( + in template (value) NgENB_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_ngENB_ID_choice_Extensions + + template (value) NotifySourceNGRANNode m_notifySourceNGRANNode(in NotifySourceNGRANNode p_value := notifySource) := p_value; + + template (value) NGRAN_CGI m_ngENB_ID_nR_CGI( + in template (value) NR_CGI p_nR_CGI + ) := { + nR_CGI := p_nR_CGI + } // End of template m_ngENB_ID_nR_CGI + + template (value) NGRAN_CGI m_ngENB_ID_eUTRA_CGI( + in template (value) EUTRA_CGI p_eUTRA_CGI + ) := { + eUTRA_CGI := p_eUTRA_CGI + } // End of template m_ngENB_ID_eUTRA_CGI + + template (value) NGRAN_CGI m_nGRAN_CGI_choice_Extensions( + in template (value) NGRAN_CGI.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nGRAN_CGI_choice_Extensions + + template (omit) NGRAN_TNLAssociationToRemoveItem m_nGRAN_TNLAssociationToRemoveItem( + in template (value) CPTransportLayerInformation p_tNLAssociationTransportLayerAddress, + in template (omit) CPTransportLayerInformation p_tNLAssociationTransportLayerAddressAMF := omit, + in template (omit) NGRAN_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := omit + ) := { + tNLAssociationTransportLayerAddress := p_tNLAssociationTransportLayerAddress, + tNLAssociationTransportLayerAddressAMF := p_tNLAssociationTransportLayerAddressAMF, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_TNLAssociationToRemoveItem + + template (omit) NonDynamic5QIDescriptor m_nonDynamic5QIDescriptor( + in template (value) FiveQI p_fiveQI, + in template (omit) PriorityLevelQos p_priorityLevelQos := omit, + in template (omit) AveragingWindow p_averagingWindow := omit, + in template (omit) MaximumDataBurstVolume p_maximumDataBurstVolume := omit, + in template (omit) NonDynamic5QIDescriptor.iE_Extensions p_iE_Extensions := omit + ) := { + fiveQI := p_fiveQI, + priorityLevelQos := p_priorityLevelQos, + averagingWindow := p_averagingWindow, + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template m_nonDynamic5QIDescriptor + + template (value) NonDynamic5QIDescriptor.iE_Extensions m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL + + template (value) NonDynamic5QIDescriptor.iE_Extensions m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL + + template (value) NotificationCause m_notificationCause(in NotificationCause p_value := fulfilled) := p_value; + + template (value) NotificationControl m_notificationControl(in NotificationControl p_value := notification_requested) := p_value; + + template (value) NPN_AccessInformation m_nPN_AccessInformation_pNI_NPN_Access_Information( + in template (value) CellCAGList p_pNI_NPN_Access_Information + ) := { + pNI_NPN_Access_Information := p_pNI_NPN_Access_Information + } // End of template m_nPN_AccessInformation_pNI_NPN_Access_Information + + template (value) NPN_AccessInformation m_nPN_AccessInformation_choice_Extensions( + in template (value) NPN_AccessInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nPN_AccessInformation_choice_Extensions + + template (value) NPN_MobilityInformation m_nPN_MobilityInformation_sNPN_MobilityInformation( + in template (value) SNPN_MobilityInformation p_sNPN_MobilityInformation + ) := { + sNPN_MobilityInformation := p_sNPN_MobilityInformation + } // End of template m_nPN_MobilityInformation_sNPN_MobilityInformation + + template (value) NPN_MobilityInformation m_nPN_MobilityInformation_pNI_NPN_MobilityInformation( + in template (value) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation + ) := { + pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation + } // End of template m_nPN_MobilityInformation_pNI_NPN_MobilityInformation + + template (value) NPN_MobilityInformation m_nPN_MobilityInformation_choice_Extensions( + in template (value) NPN_MobilityInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nPN_MobilityInformation_choice_Extensions + + template (value) NPN_PagingAssistanceInformation m_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance( + in template (value) Allowed_PNI_NPN_List p_pNI_NPN_PagingAssistance + ) := { + pNI_NPN_PagingAssistance := p_pNI_NPN_PagingAssistance + } // End of template m_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance + + template (value) NPN_PagingAssistanceInformation m_nPN_PagingAssistanceInformation_choice_Extensions( + in template (value) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nPN_PagingAssistanceInformation_choice_Extensions + + template (value) NPN_Support m_nPN_Support_sNPN( + in template (value) NID p_sNPN + ) := { + sNPN := p_sNPN + } // End of template m_nPN_Support_sNPN + + template (value) NPN_Support m_nPN_Support_choice_Extensions( + in template (value) NPN_Support.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nPN_Support_choice_Extensions + + template (omit) NR_CGI m_nR_CGI( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) NRCellIdentity p_nRCellIdentity, + in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + nRCellIdentity := p_nRCellIdentity, iE_Extensions := p_iE_Extensions - } //End of template m_ie_nrCgi - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; - // type record NR_PagingeDRXInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); - // type enumerated NR_Paging_eDRX_Cycle { - // type enumerated NR_Paging_Time_Window { - // type bitstring NRencryptionAlgorithms length ( - // type bitstring NRintegrityProtectionAlgorithms length ( - // type octetstring NRMobilityHistoryReport; - // type octetstring NRPPa_PDU; - // type octetstring NRUERLFReportContainer; - // type record NRNTNTAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); - // type integer NumberOfBroadcasts (0 .. 65535); - // type integer NumberOfBroadcastsRequested (0 .. 65535); - // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); - // type integer NRFrequencyBand ( - // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; - // type record NRFrequencyBandItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); - // type record NRFrequencyInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); - // type integer NR_PCI ( - // type record NRV2XServicesAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); - // type enumerated VehicleUE { - // type enumerated PedestrianUE { - // type record NRUESidelinkAggregateMaximumBitrate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); - // type integer NSAG_ID ( + } // End of template m_nR_CGI + + template (omit) NR_PagingeDRXInformation m_NR_PagingeDRXInformation( + in template (value) NR_Paging_eDRX_Cycle p_nR_paging_eDRX_Cycle, + in template (omit) NR_Paging_Time_Window p_nR_paging_Time_Window := omit, + in template (omit) NR_PagingeDRXInformation.iE_Extensions p_iE_Extensions := omit + ) := { + nR_paging_eDRX_Cycle := p_nR_paging_eDRX_Cycle, + nR_paging_Time_Window := p_nR_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template m_NR_PagingeDRXInformation + + template (value) NR_Paging_eDRX_Cycle m_nR_Paging_eDRX_Cycle(in NR_Paging_eDRX_Cycle p_value := hfquarter) := p_value; + + template (value) NR_Paging_Time_Window m_nR_Paging_Time_Window(in NR_Paging_Time_Window p_value := s1) := p_value; + + template (omit) NRNTNTAIInformation m_nRNTNTAIInformation( + in template (value) PLMNIdentity p_servingPLMN, + in template (value) TACListInNRNTN p_tACListInNRNTN, + in template (omit) TAC p_uELocationDerivedTACInNRNTN := omit, + in template (omit) NRNTNTAIInformation.iE_Extensions p_iE_Extensions := omit + ) := { + servingPLMN := p_servingPLMN, + tACListInNRNTN := p_tACListInNRNTN, + uELocationDerivedTACInNRNTN := p_uELocationDerivedTACInNRNTN, + iE_Extensions := p_iE_Extensions + } // End of template m_nRNTNTAIInformation + + template (omit) NRFrequencyBandItem m_nRFrequencyBandItem( + in template (value) NRFrequencyBand p_nr_frequency_band, + in template (omit) NRFrequencyBandItem.iE_Extension p_iE_Extension := omit + ) := { + nr_frequency_band := p_nr_frequency_band, + iE_Extension := p_iE_Extension + } // End of template m_nRFrequencyBandItem + + template (omit) NRFrequencyInfo m_nRFrequencyInfo( + in template (value) NRARFCN p_nrARFCN, + in template (value) NRFrequencyBand_List p_frequencyBand_List, + in template (omit) NRFrequencyInfo.iE_Extension p_iE_Extension := omit + ) := { + nrARFCN := p_nrARFCN, + frequencyBand_List := p_frequencyBand_List, + iE_Extension := p_iE_Extension + } // End of template m_nRFrequencyInfo + + template (omit) NRV2XServicesAuthorized m_nRV2XServicesAuthorized( + in template (omit) VehicleUE p_vehicleUE := omit, + in template (omit) PedestrianUE p_pedestrianUE := omit, + in template (omit) NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit + + ) := { + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template m_nRV2XServicesAuthorized + + template (value) VehicleUE m_vehicleUE(in VehicleUE p_value := authorized) := p_value; + + template (value) PedestrianUE m_pedestrianUE(in PedestrianUE p_value := authorized) := p_value; + + template (omit) NRUESidelinkAggregateMaximumBitrate m_nRUESidelinkAggregateMaximumBitrate( + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, + in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit + + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template m_nRUESidelinkAggregateMaximumBitrate + // type enumerated OnboardingSupport { // type enumerated OverloadAction { // type union OverloadResponse { @@ -9171,83 +9361,282 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_mDT_Location_Info - // type union N3IWF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES N3IWF_ID_ExtIEs (?); - // type octetstring NAS_PDU; - // type octetstring NASSecurityParametersFromNGRAN; - // type enumerated NB_IoT_DefaultPagingDRX { - // type enumerated NB_IoT_PagingDRX { - // type enumerated NB_IoT_Paging_eDRXCycle { - // type enumerated NB_IoT_Paging_TimeWindow { - // type record NB_IoT_Paging_eDRXInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NB_IoT_Paging_eDRXInfo_ExtIEs (?); - // type integer NB_IoT_UEPriority ( - // type integer NetworkInstance ( - // type enumerated NewSecurityContextInd { - // type integer NextHopChainingCount (0 .. 7); - // type enumerated NextPagingAreaScope { - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationRequestItem NGAPIESupportInformationRequestList; - // type record NGAPIESupportInformationRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationRequestItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGAPIESupportInfo) of NGAPIESupportInformationResponseItem NGAPIESupportInformationResponseList; - // type record NGAPIESupportInformationResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGAPIESupportInformationResponseItem_ExtIEs (?); - // type union NgENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES NgENB_ID_ExtIEs (?); - // type enumerated NotifySourceNGRANNode { - // type union NGRAN_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_IES NGRAN_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of NGRAN_TNLAssociationToRemoveItem NGRAN_TNLAssociationToRemoveList; - // type record NGRAN_TNLAssociationToRemoveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NGRAN_TNLAssociationToRemoveItem_ExtIEs (?); - // type octetstring NGRANTraceID length (8); - // type bitstring NID length (44); - // type record NonDynamic5QIDescriptor { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NonDynamic5QIDescriptor_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC NotAllowedTACs; - // type enumerated NotificationCause { - // type enumerated NotificationControl { - // type union NPN_AccessInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_AccessInformation_ExtIEs (?); - // type union NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_MobilityInformation_ExtIEs (?); - // type union NPN_PagingAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_PagingAssistanceInformation_ExtIEs (?); - // type union NPN_Support { - // type NGAP_Containers.NGAP_PROTOCOL_IES NPN_Support_ExtIEs (?); - // type bitstring NRCellIdentity length (36); - // type record NR_CGI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_CGI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsingNB) of NR_CGI NR_CGIList; - // type record length (1 .. NGAP_Constants.maxnoofCellIDforWarning) of NR_CGI NR_CGIListForWarning; - // type record NR_PagingeDRXInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NR_PagingeDRXInformation_ExtIEs (?); - // type enumerated NR_Paging_eDRX_Cycle { - // type enumerated NR_Paging_Time_Window { - // type bitstring NRencryptionAlgorithms length ( - // type bitstring NRintegrityProtectionAlgorithms length ( - // type octetstring NRMobilityHistoryReport; - // type octetstring NRPPa_PDU; - // type octetstring NRUERLFReportContainer; - // type record NRNTNTAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRNTNTAIInformation_ExtIEs (?); - // type integer NumberOfBroadcasts (0 .. 65535); - // type integer NumberOfBroadcastsRequested (0 .. 65535); - // type integer NRARFCN (0 .. NGAP_Constants.maxNRARFCN); - // type integer NRFrequencyBand ( - // type record length (1 .. NGAP_Constants.maxnoofNRCellBands) of NRFrequencyBandItem NRFrequencyBand_List; - // type record NRFrequencyBandItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyBandItem_ExtIEs (?); - // type record NRFrequencyInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRFrequencyInfo_ExtIEs (?); - // type integer NR_PCI ( - // type record NRV2XServicesAuthorized { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRV2XServicesAuthorized_ExtIEs (?); - // type enumerated VehicleUE { - // type enumerated PedestrianUE { - // type record NRUESidelinkAggregateMaximumBitrate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION NRUESidelinkAggregateMaximumBitrate_ExtIEs (?); - // type integer NSAG_ID ( + template (present) N3IWF_ID mw_n3IWF_ID_n3IWF_ID( + template (present) N3IWF_ID.n3IWF_ID p_n3IWF_ID := ? + ) := { + n3IWF_ID := p_n3IWF_ID + } // End of template mw_n3IWF_ID_n3IWF_ID + + template (present) N3IWF_ID mw_n3IWF_ID_choice_Extensions( + template (present) N3IWF_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_n3IWF_ID_choice_Extensions + + template (present) NB_IoT_DefaultPagingDRX mw_nB_IoT_DefaultPagingDRX(template (present) NB_IoT_DefaultPagingDRX p_value := ?) := p_value; + + template (present) NB_IoT_PagingDRX mw_nB_IoT_PagingDRX(template (present) NB_IoT_PagingDRX p_value := ?) := p_value; + + template (present) NB_IoT_Paging_eDRXCycle mw_nB_IoT_Paging_eDRXCycle(template (present) NB_IoT_Paging_eDRXCycle p_value := ?) := p_value; + + template (present) NB_IoT_Paging_TimeWindow mw_nB_IoT_Paging_TimeWindow(template (present) NB_IoT_Paging_TimeWindow p_value := ?) := p_value; + + template (present) NB_IoT_Paging_eDRXInfo mw_nB_IoT_Paging_eDRXInfo( + template (present) NB_IoT_Paging_eDRXCycle p_nB_IoT_Paging_eDRXCycle := ?, + template NB_IoT_Paging_TimeWindow p_nB_IoT_Paging_TimeWindow := *, + template NB_IoT_Paging_eDRXInfo.iE_Extensions p_iE_Extensions := * + ) := { + nB_IoT_Paging_eDRXCycle := p_nB_IoT_Paging_eDRXCycle, + nB_IoT_Paging_TimeWindow := p_nB_IoT_Paging_TimeWindow, + iE_Extensions := p_iE_Extensions + } // End of template mw_nB_IoT_Paging_eDRXInfo + + template (present) NewSecurityContextInd mw_newSecurityContextInd(template (present) NewSecurityContextInd p_value := true_) := p_value; + + template (present) NextPagingAreaScope mw_nextPagingAreaScope(template (present) NextPagingAreaScope p_value := ?) := p_value; + + template (present) NGAPIESupportInformationRequestItem mw_nGAPIESupportInformationRequestItem( + template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, + template NGAPIESupportInformationRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGAPIESupportInformationRequestItem + + template (present) NGAPIESupportInformationResponseItem mw_nGAPIESupportInformationResponseItem( + template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, + template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIESupportInfo p_ngap_ProtocolIESupportInfo := ?, + template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIEPresenceInfo p_ngap_ProtocolIEPresenceInfo := ?, + template NGAPIESupportInformationResponseItem.iE_Extensions p_iE_Extensions := * + ) := { + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + ngap_ProtocolIESupportInfo := p_ngap_ProtocolIESupportInfo, + ngap_ProtocolIEPresenceInfo := p_ngap_ProtocolIEPresenceInfo, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGAPIESupportInformationResponseItem + + template (present) NgENB_ID mw_ngENB_ID_macroNgENB_ID( + template (present) NgENB_ID.macroNgENB_ID p_macroNgENB_ID := ? + ) := { + macroNgENB_ID := p_macroNgENB_ID + } // End of template mw_ngENB_ID_macroNgENB_ID + + template (present) NgENB_ID mw_ngENB_ID_shortMacroNgENB_ID( + template (present) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID := ? + ) := { + shortMacroNgENB_ID := p_shortMacroNgENB_ID + } // End of template mw_ngENB_ID_shortMacroNgENB_ID + + template (present) NgENB_ID mw_ngENB_ID_longMacroNgENB_ID( + template (present) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID := ? + ) := { + longMacroNgENB_ID := p_longMacroNgENB_ID + } // End of template mw_ngENB_ID_longMacroNgENB_ID + + template (present) NgENB_ID mw_ngENB_ID_choice_Extensions( + template (present) NgENB_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_ngENB_ID_choice_Extensions + + template (present) NotifySourceNGRANNode mw_notifySourceNGRANNode(template (present) NotifySourceNGRANNode p_value := ?) := p_value; + + template (present) NGRAN_CGI mw_ngENB_ID_nR_CGI( + template (present) NR_CGI p_nR_CGI + ) := { + nR_CGI := p_nR_CGI + } // End of template mw_ngENB_ID_nR_CGI + + template (present) NGRAN_CGI mw_ngENB_ID_eUTRA_CGI( + template (present) EUTRA_CGI p_eUTRA_CGI := ? + ) := { + eUTRA_CGI := p_eUTRA_CGI + } // End of template mw_ngENB_ID_eUTRA_CGI + + template (present) NGRAN_CGI mw_nGRAN_CGI_choice_Extensions( + template (present) NGRAN_CGI.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nGRAN_CGI_choice_Extensions + + template (present) NGRAN_TNLAssociationToRemoveItem mw_nGRAN_TNLAssociationToRemoveItem( + template (present) CPTransportLayerInformation p_tNLAssociationTransportLayerAddress := ?, + template CPTransportLayerInformation p_tNLAssociationTransportLayerAddressAMF := *, + template NGRAN_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * + ) := { + tNLAssociationTransportLayerAddress := p_tNLAssociationTransportLayerAddress, + tNLAssociationTransportLayerAddressAMF := p_tNLAssociationTransportLayerAddressAMF, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_TNLAssociationToRemoveItem + + template (present) NonDynamic5QIDescriptor mw_nonDynamic5QIDescriptor( + template (present) FiveQI p_fiveQI := ?, + template PriorityLevelQos p_priorityLevelQos := *, + template AveragingWindow p_averagingWindow := *, + template MaximumDataBurstVolume p_maximumDataBurstVolume := *, + template NonDynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * + ) := { + fiveQI := p_fiveQI, + priorityLevelQos := p_priorityLevelQos, + averagingWindow := p_averagingWindow, + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template mw_nonDynamic5QIDescriptor + + template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL + + template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL + + template (present) NotificationCause mw_notificationCause(template (present) NotificationCause p_value := ?) := p_value; + + template (present) NotificationControl mw_notificationControl(template (present) NotificationControl p_value := ?) := p_value; + + template (present) NPN_AccessInformation mw_nPN_AccessInformation_pNI_NPN_Access_Information( + template (present) CellCAGList p_pNI_NPN_Access_Information := ? + ) := { + pNI_NPN_Access_Information := p_pNI_NPN_Access_Information + } // End of template mw_nPN_AccessInformation_pNI_NPN_Access_Information + + template (present) NPN_AccessInformation mw_nPN_AccessInformation_choice_Extensions( + template (present) NPN_AccessInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_AccessInformation_choice_Extensions + + template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_sNPN_MobilityInformation( + template (present) SNPN_MobilityInformation p_sNPN_MobilityInformation := ? + ) := { + sNPN_MobilityInformation := p_sNPN_MobilityInformation + } // End of template mw_nPN_MobilityInformation_sNPN_MobilityInformation + + template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation( + template (present) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation := ? + ) := { + pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation + } // End of template mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation + + template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_choice_Extensions( + template (present) NPN_MobilityInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_MobilityInformation_choice_Extensions + + template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance( + template (present) Allowed_PNI_NPN_List p_pNI_NPN_PagingAssistance := ? + ) := { + pNI_NPN_PagingAssistance := p_pNI_NPN_PagingAssistance + } // End of template mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance + + template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_choice_Extensions( + template (present) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_PagingAssistanceInformation_choice_Extensions + + template (present) NPN_Support mw_nPN_Support_sNPN( + template (present) NID p_sNPN := ? + ) := { + sNPN := p_sNPN + } // End of template mw_nPN_Support_sNPN + + template (present) NPN_Support mw_nPN_Support_choice_Extensions( + template (present) NPN_Support.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_Support_choice_Extensions + + template (present) NR_CGI mw_nR_CGI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) NRCellIdentity p_nRCellIdentity := ?, + template NR_CGI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + nRCellIdentity := p_nRCellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template mw_nR_CGI + + template (present) NR_PagingeDRXInformation mw_NR_PagingeDRXInformation( + template (present) NR_Paging_eDRX_Cycle p_nR_paging_eDRX_Cycle := ?, + template NR_Paging_Time_Window p_nR_paging_Time_Window := *, + template NR_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * + ) := { + nR_paging_eDRX_Cycle := p_nR_paging_eDRX_Cycle, + nR_paging_Time_Window := p_nR_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template mw_NR_PagingeDRXInformation + + template (present) NR_Paging_eDRX_Cycle mw_nR_Paging_eDRX_Cycle(template (present) NR_Paging_eDRX_Cycle p_value := ?) := p_value; + + template (present) NR_Paging_Time_Window mw_nR_Paging_Time_Window(template (present) NR_Paging_Time_Window p_value := ?) := p_value; + + template (present) NRNTNTAIInformation mw_nRNTNTAIInformation( + template (present) PLMNIdentity p_servingPLMN := ?, + template (present) TACListInNRNTN p_tACListInNRNTN := ?, + template TAC p_uELocationDerivedTACInNRNTN := *, + template NRNTNTAIInformation.iE_Extensions p_iE_Extensions := * + ) := { + servingPLMN := p_servingPLMN, + tACListInNRNTN := p_tACListInNRNTN, + uELocationDerivedTACInNRNTN := p_uELocationDerivedTACInNRNTN, + iE_Extensions := p_iE_Extensions + } // End of template mw_nRNTNTAIInformation + + template (present) NRFrequencyBandItem mw_nRFrequencyBandItem( + template (present) NRFrequencyBand p_nr_frequency_band := ?, + template NRFrequencyBandItem.iE_Extension p_iE_Extension := * + ) := { + nr_frequency_band := p_nr_frequency_band, + iE_Extension := p_iE_Extension + } // End of template mw_nRFrequencyBandItem + + template (present) NRFrequencyInfo mw_nRFrequencyInfo( + template (present) NRARFCN p_nrARFCN := ?, + template (present) NRFrequencyBand_List p_frequencyBand_List, + template NRFrequencyInfo.iE_Extension p_iE_Extension := * + ) := { + nrARFCN := p_nrARFCN, + frequencyBand_List := p_frequencyBand_List, + iE_Extension := p_iE_Extension + } // End of template mw_nRFrequencyInfo + + template NRV2XServicesAuthorized mw_nRV2XServicesAuthorized( + template VehicleUE p_vehicleUE := *, + template PedestrianUE p_pedestrianUE := *, + template NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * + ) := { + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_nRV2XServicesAuthorized + + template (present) VehicleUE mw_vehicleUE(template (present) VehicleUE p_value := ?) := p_value; + + template (present) PedestrianUE mw_pedestrianUE(template (present) PedestrianUE p_value := ?) := p_value; + + template (present) NRUESidelinkAggregateMaximumBitrate mw_nRUESidelinkAggregateMaximumBitrate( + template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, + template NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_nRUESidelinkAggregateMaximumBitrate + // type enumerated OnboardingSupport { // type enumerated OverloadAction { // type union OverloadResponse { @@ -9887,4 +10276,3 @@ module LibNGAP_Templates { } // End of group functionsForTemplates } // End of module LibNGAP_Templates - -- GitLab From 1bcb02fb18a33a72440a919bc4f6de1eb333abcb Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 31 Jan 2024 07:46:46 +0100 Subject: [PATCH 134/365] TTF T033: Implement ASN.1 send/receive templates O --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 77 +++++++++++++++++++------ 1 file changed, 60 insertions(+), 17 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 66964ce..d1764f7 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -4923,7 +4923,7 @@ module LibNGAP_Templates { choice_Extensions := p_choice_Extensions } // End of template m_nPN_PagingAssistanceInformation_choice_Extensions - template (value) NPN_Support m_nPN_Support_sNPN( + template (value) NPN_Support m_nPN_Support_sNPN( in template (value) NID p_sNPN ) := { sNPN := p_sNPN @@ -5007,19 +5007,40 @@ module LibNGAP_Templates { template (omit) NRUESidelinkAggregateMaximumBitrate m_nRUESidelinkAggregateMaximumBitrate( in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit - - ) := { + ) := { uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, iE_Extensions := p_iE_Extensions } // End of template m_nRUESidelinkAggregateMaximumBitrate - // type enumerated OnboardingSupport { - // type enumerated OverloadAction { - // type union OverloadResponse { - // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; - // type record OverloadStartNSSAIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); + template (value) OnboardingSupport m_onboardingSupport(in OnboardingSupport p_value := true_) := p_value; + + template (value) OverloadAction m_overloadAction(in OverloadAction p_value := reject_non_emergency_mo_dt) := p_value; + + template (value) OverloadResponse m_overloadResponse_overloadAction( + in template (value) OverloadAction p_overloadAction + ) := { + overloadAction := p_overloadAction + } // End of template m_overloadResponse_overloadAction + + template (value) OverloadResponse m_overloadResponse_choice_Extensions( + in template (value) OverloadResponse.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_overloadResponse_choice_Extensions + + + template (omit) OverloadStartNSSAIItem m_overloadStartNSSAIItem( + in template (value) SliceOverloadList p_sliceOverloadList, + in template (omit) OverloadResponse p_sliceOverloadResponse := omit, + in template (omit) TrafficLoadReductionIndication p_sliceTrafficLoadReductionIndication := omit, + in template (omit) OverloadStartNSSAIItem.iE_Extensions p_iE_Extensions := omit + ) := { + sliceOverloadList := p_sliceOverloadList, + sliceOverloadResponse := p_sliceOverloadResponse, + sliceTrafficLoadReductionIndication := p_sliceTrafficLoadReductionIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_overloadStartNSSAIItem + // type integer PacketDelayBudget ( // type record PacketErrorRate { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); @@ -9637,13 +9658,35 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_nRUESidelinkAggregateMaximumBitrate - // type enumerated OnboardingSupport { - // type enumerated OverloadAction { - // type union OverloadResponse { - // type NGAP_Containers.NGAP_PROTOCOL_IES OverloadResponse_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of OverloadStartNSSAIItem OverloadStartNSSAIList; - // type record OverloadStartNSSAIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION OverloadStartNSSAIItem_ExtIEs (?); + template (present) OnboardingSupport mw_onboardingSupport(template (present) OnboardingSupport p_value := true_) := p_value; + + template (present) OverloadAction mw_overloadAction(template (present) OverloadAction p_value := ?) := p_value; + + template (present) OverloadResponse mw_overloadResponse_overloadAction( + template (present) OverloadAction p_overloadAction := ? + ) := { + overloadAction := p_overloadAction + } // End of template mw_overloadResponse_overloadAction + + template (present) OverloadResponse mw_overloadResponse_choice_Extensions( + template (present) OverloadResponse.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_overloadResponse_choice_Extensions + + + template (present) OverloadStartNSSAIItem mw_overloadStartNSSAIItem( + template (present) SliceOverloadList p_sliceOverloadList := ?, + template OverloadResponse p_sliceOverloadResponse := *, + template TrafficLoadReductionIndication p_sliceTrafficLoadReductionIndication := *, + template OverloadStartNSSAIItem.iE_Extensions p_iE_Extensions := * + ) := { + sliceOverloadList := p_sliceOverloadList, + sliceOverloadResponse := p_sliceOverloadResponse, + sliceTrafficLoadReductionIndication := p_sliceTrafficLoadReductionIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_overloadStartNSSAIItem + // type integer PacketDelayBudget ( // type record PacketErrorRate { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); -- GitLab From ec5e04179db03635f81e5257beb7c5970a0fa7e6 Mon Sep 17 00:00:00 2001 From: pintar Date: Fri, 2 Feb 2024 10:38:03 +0100 Subject: [PATCH 135/365] Trace and Location TPs added --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 138 ++++++++++++++++++ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 188 +++++++++++++++++++++++++ 2 files changed, 326 insertions(+) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 7ba156d..0e4a2fe 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1822,11 +1822,149 @@ Package TP_AMF { Group "8.10 NRPPa Transport Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_NTP_01 + + Test objective "Verify that the IUT can send a DOWNLINK UE ASSOCIATED NRPPA TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + + Reference + "ETSI TS 138 413 [1], Clauses 8.10.2.1" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/9_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a NRPPA transport procedure + } + then { + the IUT entity sends a DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Routing_ID, + NRPPa_PDU; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_NTP_01 + + Test Purpose { + + TP Id TP_NGAP_AMF_NTP_02 + + Test objective "Verify that the IUT can send a DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + + Reference + "ETSI TS 138 413 [1], Clauses 8.10.2.3" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/9_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a NRPPA transport procedure + } + then { + the IUT entity sends a DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT containing + Routing_ID, + NRPPa_PDU; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_NTP_02 } // "8.10 NRPPa Transport Procedures" Group "8.11 Trace Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_TRP_01 + + Test objective "Verify that the IUT can send a TRACE_START to initiate a trace session for a UE." + + Reference + "ETSI TS 138 413 [1], Clauses 8.11.1.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/10_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a trace procedure + } + then { + the IUT entity sends a TRACE_START containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Trace_Activation containing + NG_RAN_Trace_ID, + Interfaces_to_Trace, + Trace_Depth, + Trace_Collection_Entity_IP_Address;; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_TRP_01 + + Test Purpose { + + TP Id TP_NGAP_AMF_TRP_02 + + Test objective "Verify that the IUT can send a DEACTIVATE_TRACE to deactivate a trace session for a UE." + + Reference + "ETSI TS 138 413 [1], Clauses 8.11.3.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/10_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a deactivate trace procedure + } + then { + the IUT entity sends a DEACTIVATE_TRACE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + NG_RAN_Trace_ID; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_TRP_02 } // "8.11 Trace Procedures" diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 1f7c5eb..b238146 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1834,11 +1834,199 @@ Package TP_GNB { Group "8.10 NRPPa Transport Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_NTP_01 + + Test objective "Verify that the IUT can send a UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + + Reference + "ETSI TS 138 413 [1], Clause 8.10.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/9_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a NRPPA transport procedure + } + then { + the IUT entity sends a UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Routing_ID, + NRPPa_PDU; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_NTP_01 + + Test Purpose { + + TP Id TP_NGAP_GNB_NTP_02 + + Test objective "Verify that the IUT can send a UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + + Reference + "ETSI TS 138 413 [1], Clause 8.10.2.4" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/9_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a NRPPA transport procedure + } + then { + the IUT entity sends a UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT containing + Routing_ID, + NRPPa_PDU; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_NTP_02 } // end "8.10 NRPPa Transport Procedures" Group "8.11 Trace Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_TRP_01 + + Test objective "Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that Trace Start procedure has failed due to an interaction with handover procedure." + + Reference + "ETSI TS 138 413 [1], Clauses 8.11.1.2 and 8.11.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/10_1 and PICS_A3/10_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a TRACE_START containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Trace_Activation containing + NG_RAN_Trace_ID, + Interfaces_to_Trace, + Trace_Depth, + Trace_Collection_Entity_IP_Address;; + from the AMF entity + } + then { + the IUT entity sends a TRACE_FAILURE_INDICATIONT containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + NG_RAN_Trace_ID, + Cause; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_TRP_01 + + Test Purpose { + + TP Id TP_NGAP_GNB_TRP_02 + + Test objective "Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that a Deactivate Trace procedure has failed due to an interaction with handover procedure." + + Reference + "ETSI TS 138 413 [1], Clauses 8.11.2.2 and 8.11.3.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/10_2 and PICS_A3/10_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a DEACTIVATE_TRACE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Trace_Activation containing + NG_RAN_Trace_ID, + Interfaces_to_Trace, + Trace_Depth, + Trace_Collection_Entity_IP_Address;; + from the AMF entity + } + then { + the IUT entity sends a TRACE_FAILURE_INDICATIONT containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + NG_RAN_Trace_ID, + Cause; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_TRP_02 + + Test Purpose { + + TP Id TP_NGAP_GNB_TRP_03 + + Test objective "Verify that the IUT can send a CELL_TRAFFIC_TRACE to send the allocated Trace Recording Session Reference and Trace Reference to AMF." + + Reference + "ETSI TS 138 413 [1], Clause 8.11.4.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/10_4 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + + the IUT entity indicate a cell traffic trace procedure + } + then { + the IUT entity sends a CELL_TRAFFIC_TRACE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + NG_RAN_Trace_ID, + NG_RAN_CGI, + Trace_Colection_Entity_IP_Address; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_TRP_03 } // end "8.11 Trace Procedures" -- GitLab From 9dbfeee54c8a45cd622207477abf7361319f0f63 Mon Sep 17 00:00:00 2001 From: pintar Date: Fri, 2 Feb 2024 11:58:38 +0100 Subject: [PATCH 136/365] WTP added again, clauses added --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 12 +- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 193 ++++++++++++++++++++++++- 2 files changed, 193 insertions(+), 12 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 224a0ae..6f08cfb 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1805,7 +1805,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a WRITE REPLACE WARNING REQUEST to start broadcasting of warning messages." Reference - "ETSI TS 138 413 [1], Clauses 8.9.1.2" + "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.1" Config Id CFG_AMF_01 @@ -1839,7 +1839,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a PWS CANCEL REQUEST to cancel broadcasting of warning messages." Reference - "ETSI TS 138 413 [1], Clauses 8.9.2.2" + "ETSI TS 138 413 [1], Clauses 8.9.2.2 and 9.2.8.3" Config Id CFG_AMF_01 @@ -1877,7 +1877,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a DOWNLINK UE ASSOCIATED NRPPA TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." Reference - "ETSI TS 138 413 [1], Clauses 8.10.2.1" + "ETSI TS 138 413 [1], Clauses 8.10.2.1 and 9.2.9.1" Config Id CFG_AMF_01 @@ -1911,7 +1911,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." Reference - "ETSI TS 138 413 [1], Clauses 8.10.2.3" + "ETSI TS 138 413 [1], Clauses 8.10.2.3 and 9.2.9.3" Config Id CFG_AMF_01 @@ -1949,7 +1949,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a TRACE_START to initiate a trace session for a UE." Reference - "ETSI TS 138 413 [1], Clauses 8.11.1.2" + "ETSI TS 138 413 [1], Clauses 8.11.1.2 and 9.2.10.1" Config Id CFG_AMF_01 @@ -1986,7 +1986,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a DEACTIVATE_TRACE to deactivate a trace session for a UE." Reference - "ETSI TS 138 413 [1], Clauses 8.11.3.2" + "ETSI TS 138 413 [1], Clauses 8.11.3.2 and 9.2.10.3" Config Id CFG_AMF_01 diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index dc65564..17d5522 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1603,7 +1603,188 @@ Package TP_GNB { } // end Group "8.8 Configuration Transfer Procedure" Group "8.9 Warning Message Transmission Procedures" - { + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_01 + + Test objective "Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing mandatory IEs and answers with WRITE-REPLACE WARNING RESPONSE to start broadcasting of warning messages." + + Reference + "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing + Message_Identifier, + Serial_Number, + Repetition_Period, + Number_of_Broadcasts_Requested; + from the AMF entity + } + then { + the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing + Message_Identifier, + Serial_Number; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_01 + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_02 + + Test objective "Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing Message Identifier IE and/or Serial Number IE different from those in the warning message being broadcast and if Concurent Warning Message Indicator is not present then IUT node answers with WRITE-REPLACE WARNING RESPONSE and replaces the warning message being broadcast with newly received one for that area." + + Reference + "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.2" //paragraph 3 + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing + Message_Identifier indicating value "different from already being broadcasted", + Serial_Number indicating value "different from already being broadcasted", + Repetition_Period, + Number_of_Broadcasts_Requested, + not Concurent_Warning_Message_Indicator; + from the AMF entity + } + then { + the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing + Message_Identifier, + Serial_Number; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_02 + + //TODO:possible to add additional tests from 8.9.1.2 paragraph 4 and on + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_03 + + Test objective "Verify that the NG-RAN node successfully processes a PWS CANCEL REQUEST containing mandatory IEs and answers with PWS CANCEL RESPONSE to cancel an already ongoing broadcast warning messages in all of the cells in the NG-RAN." + + Reference + "ETSI TS 138 413 [1], Clauses 8.9.2.2 and 9.2.8.4" //paragraph 3 + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_2 + + Initial conditions with { + the UE entity isNotRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PWS_CANCEL_REQUEST containing + Message_Identifier, + Serial_Number; + from the AMF entity + } + then { + the IUT entity sends a PWS_CANCEL_RESPONSE containing + Message_Identifier, + Serial_Number; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_03 + + //TODO:possible to add additional tests from 8.9.2.2 paragraph 3, 5 and on + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_04 + + Test objective "Verify that the IUT can send a PWS RESTART INDICATION to inform AMF that PWS information for some or all cells may be reloaded from the CBC if needed." + + Reference + "ETSI TS 138 413 [1], Clauses 8.9.3.2 and 9.2.8.5" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_3 + + Initial conditions with { + the UE entity isNotRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PWS restart indication + } + then { + the IUT entity sends a PWS_RESTART_INDICATION containing + Cell_List_for_Restart, + Global_RAN_Node_ID, + TAI_List_for_Restart, + Emergency_Area_ID_List_for_Restart; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_04 + + Test Purpose { + + TP Id TP_NGAP_GNB_WTP_05 + + Test objective "Verify that the IUT can send a PWS FAILURE INDICATION to inform AMF that ongoing PWS operation for one or more cells has failed." + + Reference + "ETSI TS 138 413 [1], Clauses 8.9.4.2 and 9.2.8.6" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/8_4 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PWS failure indication + } + then { + the IUT entity sends a PWS_FAILURE_INDICATION containing + PWS_Failed_Cell_List, + Global_RAN_Node_ID; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_WTP_05 } // end "8.9 Warning Message Transmission Procedures" @@ -1618,7 +1799,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." Reference - "ETSI TS 138 413 [1], Clause 8.10.2.2" + "ETSI TS 138 413 [1], Clauses 8.10.2.2 and 9.2.9.2" Config Id CFG_GNB_01 @@ -1652,7 +1833,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." Reference - "ETSI TS 138 413 [1], Clause 8.10.2.4" + "ETSI TS 138 413 [1], Clauses 8.10.2.4 and 9.2.9.4" Config Id CFG_GNB_01 @@ -1690,7 +1871,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that Trace Start procedure has failed due to an interaction with handover procedure." Reference - "ETSI TS 138 413 [1], Clauses 8.11.1.2 and 8.11.2.2" + "ETSI TS 138 413 [1], Clauses 8.11.1.2, 8.11.2.2, 9.2.10.1 and 9.2.10.2" Config Id CFG_GNB_01 @@ -1732,7 +1913,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that a Deactivate Trace procedure has failed due to an interaction with handover procedure." Reference - "ETSI TS 138 413 [1], Clauses 8.11.2.2 and 8.11.3.2" + "ETSI TS 138 413 [1], Clauses 8.11.2.2, 8.11.3.2, 9.2.10.2 and 9.2.10.3" Config Id CFG_GNB_01 @@ -1774,7 +1955,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a CELL_TRAFFIC_TRACE to send the allocated Trace Recording Session Reference and Trace Reference to AMF." Reference - "ETSI TS 138 413 [1], Clause 8.11.4.2" + "ETSI TS 138 413 [1], Clauses 8.11.4.2 and 9.2.10.4" Config Id CFG_GNB_01 -- GitLab From 149905219751bb617644f46709be6aa712a62f32 Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 5 Feb 2024 14:51:24 +0100 Subject: [PATCH 137/365] TTF T033: Implement ASN.1 send/receive templates P --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 9 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 10791 +++++++++++++--------- 2 files changed, 6582 insertions(+), 4218 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index fd116bb..024b5cf 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -82,11 +82,10 @@ module NGAP_TCFunctions { m_n2_PDUSessionResourceSetupRequest( m_ie_aMFUeNgapId(-), m_ie_aMFUeNgapId(-), - m_ie_pDUSessionResourceSetupListSUReq( + //m_ie_pDUSessionResourceSetupListSUReq( { - m_ie_pDUSessionResourceSetupItemSUReq( - m_ie_pDUSessId(-), - -, + m_pDUSessionResourceSetupItemSUReq( + 0, m_ie_sNSSAI(m_ie_sST(-),m_ie_sD(-)), '00'O //TODO replace with template /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( @@ -98,7 +97,7 @@ module NGAP_TCFunctions { )))*/ ) } - ) + //) ) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index d1764f7..fc45f66 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -5028,7 +5028,6 @@ module LibNGAP_Templates { choice_Extensions := p_choice_Extensions } // End of template m_overloadResponse_choice_Extensions - template (omit) OverloadStartNSSAIItem m_overloadStartNSSAIItem( in template (value) SliceOverloadList p_sliceOverloadList, in template (omit) OverloadResponse p_sliceOverloadResponse := omit, @@ -5041,4849 +5040,7215 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_overloadStartNSSAIItem - // type integer PacketDelayBudget ( - // type record PacketErrorRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); - // type integer PacketLossRate ( - // type record PagingAssisDataforCEcapabUE { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); - // type record PagingAttemptInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); - // type integer PagingAttemptCount ( - // type enumerated PagingCause { - // type enumerated PagingCauseIndicationForVoiceService { - - // type enumerated PagingDRX { - template (value) PagingDRX m_ie_defaultPagingDRX(in PagingDRX p_drx := v256) := p_drx; - - // type enumerated PagingOrigin { - // type enumerated PagingPriority { - // type enumerated PagingProbabilityInformation { - // type record PathSwitchRequestAcknowledgeTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( - // type record PathSwitchRequestSetupFailedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); - // type record PathSwitchRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( - // type record PathSwitchRequestUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); - // type record PC5QoSParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; - // type record PC5QoSFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); - // type record PC5FlowBitRates { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; - // type enumerated PrivacyIndicator { - // type record PDUSessionAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); - - // type integer PDUSessionID (0 .. 255); - template (value) PDUSessionID m_ie_pDUSessId(in PDUSessionID p_val := 0) := p_val; - - // type integer PDUSessionPairID ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; - // type record PDUSessionResourceAdmittedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; - // type record PDUSessionResourceFailedToModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; - // type record PDUSessionResourceFailedToModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; - // type record PDUSessionResourceFailedToResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; - // type record PDUSessionResourceFailedToResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; - // type record PDUSessionResourceFailedToSetupItemCxtFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; - // type record PDUSessionResourceFailedToSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; - // type record PDUSessionResourceFailedToSetupItemHOAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; - // type record PDUSessionResourceFailedToSetupItemPSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; - // type record PDUSessionResourceFailedToSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; - // type record PDUSessionResourceHandoverItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; - // type record PDUSessionResourceInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; - // type record PDUSessionResourceItemCxtRelCpl { - // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; - // type record PDUSessionResourceItemCxtRelReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; - // type record PDUSessionResourceItemHORqd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); - // type record PDUSessionResourceModifyConfirmTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); - // type record PDUSessionResourceModifyRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( - // type record PDUSessionResourceModifyResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; - // type record PDUSessionResourceModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; - // type record PDUSessionResourceModifyItemModInd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; - // type record PDUSessionResourceModifyItemModReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; - // type record PDUSessionResourceModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); - // type record PDUSessionResourceModifyUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; - // type record PDUSessionResourceNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); - // type record PDUSessionResourceNotifyReleasedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( - // type record PDUSessionResourceNotifyTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( - // type record PDUSessionResourceReleaseCommandTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; - // type record PDUSessionResourceReleasedItemNot { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; - // type record PDUSessionResourceReleasedItemPSAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; - // type record PDUSessionResourceReleasedItemPSFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; - // type record PDUSessionResourceReleasedItemRelRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); - // type record PDUSessionResourceReleaseResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; - // type record PDUSessionResourceResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; - // type record PDUSessionResourceResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; - // type record PDUSessionResourceSecondaryRATUsageItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; - // type record PDUSessionResourceSetupItemCxtReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; - // type record PDUSessionResourceSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; - // type record PDUSessionResourceSetupItemHOReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( - - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; - template (value) PDUSessionResourceSetupListSUReq m_ie_pDUSessionResourceSetupListSUReq( - in template (value) PDUSessionResourceSetupListSUReq p_list - ) := p_list; - - // type record PDUSessionResourceSetupItemSUReq { - template (omit) PDUSessionResourceSetupItemSUReq m_ie_pDUSessionResourceSetupItemSUReq( - in template (value) PDUSessionID p_pDUSessId, - in template (omit) NAS_PDU p_nASPdu := omit, - in template (value) S_NSSAI p_sNSSAI, - in template (value) octetstring p_pduSessResSetReqTra, - in template (omit) PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := omit - ):= { - pDUSessionID := p_pDUSessId, - pDUSessionNAS_PDU :=p_nASPdu, - s_NSSAI := p_sNSSAI, - pDUSessionResourceSetupRequestTransfer := p_pduSessResSetReqTra, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_pDUSessionResourceSetupItemSUReq - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; - // type record PDUSessionResourceSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); - - // type record PDUSessionResourceSetupRequestTransfer { - template PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrEmpty:={protocolIEs:={}}; - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( - template (value) PDUSessionResourceSetupRequestTransfer m_ie_pDUSessResSetReqTrIEs( - in template (value) UPTransportLayerInformation p_utli, - in template (value) PDUSessionType p_pst, - in template (value) QosFlowSetupRequestList p_qfsrl - ) := { - protocolIEs:={ -// { -// id := id_PDUSessionAggregateMaximumBitRate, -// criticality := reject, -// value_ := omit //"NGAP_IEs.PDUSessionAggregateMaximumBitRate", -// //presence := optional_ -// }, - { - id := id_UL_NGU_UP_TNLInformation, - criticality := reject, - value_ := { UPTransportLayerInformation := p_utli} - //presence := mandatory - }, -// { -// id := id_AdditionalUL_NGU_UP_TNLInformation, -// criticality := reject, -// value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", -// //presence := optional_ -// }, -// { -// id := id_DataForwardingNotPossible, -// criticality := reject, -// value_ := omit //"NGAP_IEs.DataForwardingNotPossible", -// //presence := optional_ -// }, - { - id := id_PDUSessionType, - criticality := reject, - value_ := { PDUSessionType := p_pst} - //presence := mandatory - }, -// { -// id := id_SecurityIndication, -// criticality := reject, -// value_ := omit //"NGAP_IEs.SecurityIndication", -// //presence := optional_ -// }, -// { -// id := id_NetworkInstance, -// criticality := reject, -// value_ := omit //"NGAP_IEs.NetworkInstance", -// //presence := optional_ -// }, - { - id := id_QosFlowSetupRequestList, - criticality := reject, - value_ := { QosFlowSetupRequestList := p_qfsrl} - //presence := mandatory - }//, -// { -// id := id_CommonNetworkInstance, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.CommonNetworkInstance", -// //presence := optional_ -// }, -// { -// id := id_DirectForwardingPathAvailability, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.DirectForwardingPathAvailability", -// //presence := optional_ -// }, -// { -// id := id_RedundantUL_NGU_UP_TNLInformation, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.UPTransportLayerInformation", -// //presence := optional_ -// }, -// { -// id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.UPTransportLayerInformationList", -// //presence := optional_ -// }, -// { -// id := id_RedundantCommonNetworkInstance, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.CommonNetworkInstance", -// //presence := optional_ -// }, -// { -// id := id_RedundantPDUSessionInformation, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.RedundantPDUSessionInformation", -// //presence := optional_ -// }, -// { -// id := id_MBSSessionSetupRequestList, -// criticality := ignore, -// value_ := omit //"NGAP_IEs.MBSSessionSetupRequestList", -// //presence := optional_ -// } - } - } // End of template m_ie_pDUSessResSetReqTrIEs - - // type record PDUSessionResourceSetupResponseTransfer { - template (omit) PDUSessionResourceSetupResponseTransfer m_ie_pDUSessResSetRespTr( - in template (value) QosFlowPerTNLInformation p_qosfTnlInf, - in template (omit) QosFlowPerTNLInformationList p_qosfList := omit, - in template (omit) SecurityResult p_secRes := omit, - in template (omit) QosFlowListWithCause p_qosfCause := omit, - in template (omit) PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - dLQosFlowPerTNLInformation := p_qosfTnlInf, - additionalDLQosFlowPerTNLInformation := p_qosfList, - securityResult := p_secRes, - qosFlowFailedToSetupList := p_qosfCause, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_pDUSessResSetRespTr - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( - // type record PDUSessionResourceSetupUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; - // type record PDUSessionResourceSuspendItemSUSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; - // type record PDUSessionResourceSwitchedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; - // type record PDUSessionResourceToBeSwitchedDLItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; - // type record PDUSessionResourceToReleaseItemHOCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; - // type record PDUSessionResourceToReleaseItemRelCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); - - // type enumerated PDUSessionType { - template (value) PDUSessionType m_ie_PDUSessionType(in PDUSessionType p_val := unstructured) := p_val; - - // type record PDUSessionUsageReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); - // type record PEIPSassistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); - // type integer Periodicity ( - // type bitstring PeriodicRegistrationUpdateTimer length (8); - - // type octetstring PLMNIdentity length (3); - template (value) PLMNIdentity m_ie_pLMNIdentity(in PLMNIdentity p_val) := p_val; - - // type record PLMNAreaBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; - // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; - // type record PLMNSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( - // type record PNI_NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); - // type octetstring PortNumber length (2); - // type enumerated Pre_emptionCapability { - // type enumerated Pre_emptionVulnerability { - // type integer PriorityLevelARP (1 .. 15); - // type integer PriorityLevelQos ( - // type union PWSFailedCellIDList { - // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); - // type record QMCConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); - // type record QMCDeactivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; - // type octetstring QoEReference length (6); - // type union QosCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; - // type record QosFlowAcceptedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; - // type record QosFlowAddOrModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; - // type record QosFlowAddOrModifyResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; - // type record QosFlowFeedbackItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); - template (value) QosFlowIdentifier m_qosFlowIdentifier(in QosFlowIdentifier p_value := 0) := p_value; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; - // type record QosFlowInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( - // type record QosFlowLevelQosParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( - // type enumerated QosMonitoringRequest { - // type integer QosMonitoringReportingFrequency ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; - // type record QosFlowWithCauseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; - // type record QosFlowModifyConfirmItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; - // type record QosFlowNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; - // type record QosFlowParametersItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( - // type record QosFlowPerTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; - // type record QosFlowPerTNLInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); + template (omit) PacketErrorRate m_PacketErrorRate( + in template (value) PacketErrorRate.pERScalar p_pERScalar, + in template (value) PacketErrorRate.pERExponent p_pERExponent, + in template (omit) PacketErrorRate.iE_Extensions p_iE_Extensions := omit + ) := { + pERScalar := p_pERScalar, + pERExponent := p_pERExponent, + iE_Extensions := p_iE_Extensions + } // End of template m_PacketErrorRate - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; - template (value) QosFlowSetupRequestList m_ie_qosFlowSetReqList(in QosFlowSetupRequestList p_list) := p_list; - // type record QosFlowSetupRequestItem { + template (omit) PagingAssisDataforCEcapabUE m_pagingAssisDataforCEcapabUE( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) CoverageEnhancementLevel p_coverageEnhancementLevel, + in template (omit) PagingAssisDataforCEcapabUE.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + coverageEnhancementLevel := p_coverageEnhancementLevel, + iE_Extensions := p_iE_Extensions + } // End of template m_pagingAssisDataforCEcapabUE - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( - template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding( - in template (value) QosFlowIdentifier p_qosFlowIdentifier, - in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, - in template (omit) QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - dataForwardingAccepted := p_dataForwardingAccepted, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowItemWithDataForwarding + template (omit) PagingAttemptInformation m_pagingAttemptInformation( + in template (value) PagingAttemptCount p_pagingAttemptCount, + in template (value) IntendedNumberOfPagingAttempts p_intendedNumberOfPagingAttempts, + in template (omit) NextPagingAreaScope p_nextPagingAreaScope := omit, + in template (omit) PagingAttemptInformation.iE_Extensions p_iE_Extensions := omit + ) := { + pagingAttemptCount := p_pagingAttemptCount, + intendedNumberOfPagingAttempts := p_intendedNumberOfPagingAttempts, + nextPagingAreaScope := p_nextPagingAreaScope, + iE_Extensions := p_iE_Extensions + } // End of template m_pagingAttemptInformation - template (omit) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( - in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; - // type record QosFlowToBeForwardedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; - // type record QoSFlowsUsageReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); - // type enumerated Range { - // type ASNAUX.PrintableString RANNodeName length ( - // type ASNAUX.VisibleString RANNodeNameVisibleString length ( - // type ASNAUX.UTF8String RANNodeNameUTF8String length ( - // type integer RANPagingPriority (1 .. 256); - // type record RANStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); + template (value) PagingCause m_pagingCause(in PagingCause p_value := voice) := p_value; - // type integer RAN_UE_NGAP_ID (0 .. 4294967295); - template (value) RAN_UE_NGAP_ID m_ie_rANUeNgapId(in integer p_val := 1) := p_val; + template (value) PagingCauseIndicationForVoiceService m_pagingCauseIndicationForVoiceService(in PagingCauseIndicationForVoiceService p_value := supported) := p_value; - // type enumerated RAT_Information { - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; - // type record RATRestrictions_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( - // type bitstring RATRestrictionInformation length ( - // type record RecommendedCellsForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; - // type record RecommendedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); - // type record RecommendedRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; - // type record RecommendedRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); - // type enumerated RedCapIndication { - // type enumerated RedirectionVoiceFallback { - // type record RedundantPDUSessionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( - // type enumerated RedundantQosFlowIndicator { - // type enumerated ReflectiveQosAttribute { - // type integer RelativeAMFCapacity (0 .. 255); - // type enumerated ReportArea { - // type integer RepetitionPeriod (0 .. 131071); - // type enumerated ResetAll { - // type enumerated ReportAmountMDT { - // type enumerated ReportIntervalMDT { - // type enumerated ExtendedReportIntervalMDT { - // type union ResetType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); - // type octetstring RGLevelWirelineAccessCharacteristics; - // type integer RNC_ID (0 .. 4095); - // type octetstring RoutingID; - // type octetstring RRCContainer; - // type enumerated RRCEstablishmentCause { - template (value) RRCEstablishmentCause m_ie_rrcEstCause(template (value) RRCEstablishmentCause p_rrcEstCause:=mo_Signalling):=p_rrcEstCause; - - // type enumerated RRCInactiveTransitionReportRequest { - // type enumerated RRCState { - // type enumerated RSN { - // type record RIMInformationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); - // type record RIMInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); - // type bitstring GNBSetID length (22); - // type record ScheduledCommunicationTime { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; + template (value) PagingDRX m_pagingDRX(in PagingDRX p_value := v256) := p_value; - // type octetstring SD length (3); - template (value) SD m_ie_sD(in SD p_val := '000000'O) := p_val; + template (value) PagingOrigin m_pagingOrigin(in PagingOrigin p_value := non_3gpp) := p_value; - // type record SecondaryRATUsageInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); - // type record SecondaryRATDataUsageReportTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); - // type record SecurityContext { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); - // type record SecurityIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( - // type bitstring SecurityKey length (256); - // type record SecurityResult { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); - // type record SensorMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; - // type record SensorMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); - // type enumerated SensorMeasConfig { - // type union SensorNameConfig { - // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); - // type bitstring SerialNumber length (16); - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; - // type record ServedGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; - // type record ServiceAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); - // type enumerated ServiceType { - // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); - // type record SharedNGU_MulticastTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; - // type record SliceOverloadItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); + template (value) PagingPriority m_pagingPriority(in PagingPriority p_value := priolevel1) := p_value; - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; - template (value) SliceSupportList m_ie_sliceSupportList(in template (value) SliceSupportList p_list) := p_list; + template (value) PagingProbabilityInformation m_pagingProbabilityInformation(in PagingProbabilityInformation p_value := p00) := p_value; - // type record SliceSupportItem { - template (omit) SliceSupportItem m_ie_sliceSupportItem( - in template (value) S_NSSAI p_S_NSSAI, - in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit - ) := { - s_NSSAI := p_S_NSSAI, - iE_Extensions :=p_iE_Extensions - } // End of template m_ie_sliceSupportItem + template (omit) PathSwitchRequestAcknowledgeTransfer m_PathSwitchRequestAcknowledgeTransfer( + in template (omit) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := omit, + in template (omit) SecurityIndication p_securityIndication := omit, + in template (omit) PathSwitchRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + securityIndication := p_securityIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_PathSwitchRequestAcknowledgeTransfer - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; - // type record SliceSupportQMC_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); - // type record SNPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); - // type record S_NSSAI { - template (omit) S_NSSAI m_ie_sNSSAI( - in template (value) SST p_sST, - in template (value) SD p_sD, - in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit - ) := { - sST := p_sST,//'00'O, - sD := p_sD,//'000000'O, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_sNSSAI + template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); - // type record SONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); - // type union SONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( - // type record SONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); - // type union SONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; - // type record SuccessfulHandoverReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); - // type enumerated SONInformationRequest { - // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( - // type union SourceNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); - // type enumerated SourceOfUEActivityBehaviourInformation { - // type record SourceRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); - // type octetstring SourceToTarget_TransparentContainer; - // type record SourceToTarget_AMFInformationReroute { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); - // type enumerated SRVCCOperationPossible { - // type octetstring ConfiguredNSSAI length (128); - // type octetstring RejectedNSSAIinPLMN length (32); - // type octetstring RejectedNSSAIinTA length (32); - // type octetstring SST length (1); - template (value) SST m_ie_sST(in SST p_val := '00'O) := p_val; + template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation - // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; - template (value) SupportedTAList m_ie_supportedTAList(in template (value) SupportedTAList p_list) := p_list; + template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation - // type record SupportedTAItem { - template (omit) SupportedTAItem m_ie_supportedTAItem( - in template (value) TAC p_tAC, - in template (value) BroadcastPLMNList p_broadcastPLMNList, - in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit - ) := { - tAC := p_tAC, - broadcastPLMNList := p_broadcastPLMNList, + template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList( + in template (value) QosFlowParametersList p_qosFlowParametersList + ) := { + { + id := id_QosFlowParametersList, + criticality := ignore, + extensionValue := { QosFlowParametersList := p_qosFlowParametersList } + } + } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList + + template (omit) PathSwitchRequestSetupFailedTransfer m_pathSwitchRequestSetupFailedTransfer( + in template (value) Cause p_cause, + in template (omit) PathSwitchRequestSetupFailedTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pathSwitchRequestSetupFailedTransfer + + template (omit) PathSwitchRequestTransfer m_pathSwitchRequestTransfer( + in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, + in template (value) QosFlowAcceptedList p_qosFlowAcceptedList, + in template (omit) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := omit, + in template (omit) UserPlaneSecurityInformation p_userPlaneSecurityInformation := omit, + in template (omit) PathSwitchRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused, + userPlaneSecurityInformation := p_userPlaneSecurityInformation, + qosFlowAcceptedList := p_qosFlowAcceptedList, + iE_Extensions := p_iE_Extensions + } // End of template m_pathSwitchRequestTransfer + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused( + in template (value) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused + ) := { + { + id := id_RedundantDL_NGU_TNLInformationReused, + criticality := ignore, + extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } + } + } // End of template m_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_UsedRSNInformation( + in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template m_pathSwitchRequestTransferr_id_UsedRSNInformation + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_GlobalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template m_pathSwitchRequestTransferr_id_GlobalRANNodeID + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransfer_id_MBS_SupportIndicator( + in template (value) MBS_SupportIndicator p_mBS_SupportIndicator + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template m_pathSwitchRequestTransfer_id_MBS_SupportIndicator + + template (omit) PathSwitchRequestUnsuccessfulTransfer m_pathSwitchRequestUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) PathSwitchRequestUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pathSwitchRequestUnsuccessfulTransfer + + template (omit) PC5QoSParameters m_pC5QoSParameters( + in template (value) PC5QoSFlowList p_pc5QoSFlowList, + in template (omit) BitRate p_pc5LinkAggregateBitRates := omit, + in template (omit) PC5QoSParameters.iE_Extensions p_iE_Extensions := omit + ) := { + pc5QoSFlowList := p_pc5QoSFlowList, + pc5LinkAggregateBitRates := p_pc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template m_pC5QoSParameters + + template (omit) PC5QoSFlowItem m_pC5QoSFlowItem( + in template (value) FiveQI p_pQI, + in template (omit) PC5FlowBitRates p_pc5FlowBitRates := omit, + in template (omit) Range p_range := omit, + in template (omit) PC5QoSFlowItem.iE_Extensions p_iE_Extensions := omit + ) := { + pQI := p_pQI, + pc5FlowBitRates := p_pc5FlowBitRates, + range := p_range, + iE_Extensions := p_iE_Extensions + } // End of template m_pC5QoSFlowItem + + template (omit) PC5FlowBitRates m_pC5FlowBitRates( + in template (value) BitRate p_guaranteedFlowBitRate, + in template (value) BitRate p_maximumFlowBitRate, + in template (omit) PC5FlowBitRates.iE_Extensions p_iE_Extensions := omit + ) := { + guaranteedFlowBitRate := p_guaranteedFlowBitRate, + maximumFlowBitRate := p_maximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template m_pC5FlowBitRates + + template (value) PrivacyIndicator m_privacyIndicator(in PrivacyIndicator p_value := immediate_MDT) := p_value; + + template (omit) PDUSessionAggregateMaximumBitRate m_pDUSessionAggregateMaximumBitRate( + in template (value) BitRate p_pDUSessionAggregateMaximumBitRateDL, + in template (value) BitRate p_pDUSessionAggregateMaximumBitRateUL, + in template (omit) PDUSessionAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionAggregateMaximumBitRateDL := p_pDUSessionAggregateMaximumBitRateDL, + pDUSessionAggregateMaximumBitRateUL := p_pDUSessionAggregateMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionAggregateMaximumBitRate + + template (omit) PDUSessionResourceAdmittedItem m_pDUSessionResourceAdmittedItem( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceAdmittedItem.handoverRequestAcknowledgeTransfer p_handoverRequestAcknowledgeTransfer, + in template (omit) PDUSessionResourceAdmittedItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverRequestAcknowledgeTransfer := p_handoverRequestAcknowledgeTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceAdmittedItem + + template (omit) PDUSessionResourceFailedToModifyItemModCfm m_pDUSessionResourceFailedToModifyItemModCfm( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceFailedToModifyItemModCfm.pDUSessionResourceModifyIndicationUnsuccessfulTransfer p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyIndicationUnsuccessfulTransfer := p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToModifyItemModCfm + + template (omit) PDUSessionResourceFailedToModifyItemModRes m_pDUSessionResourceFailedToModifyItemModRes( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceFailedToModifyItemModRes.pDUSessionResourceModifyUnsuccessfulTransfer p_pDUSessionResourceModifyUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToModifyItemModRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyUnsuccessfulTransfer := p_pDUSessionResourceModifyUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToModifyItemModRes + + template (omit) PDUSessionResourceFailedToResumeItemRESReq m_pDUSessionResourceFailedToResumeItemRESReq( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceFailedToResumeItemRESReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToResumeItemRESReq + + template (omit) PDUSessionResourceFailedToResumeItemRESRes m_pDUSessionResourceFailedToResumeItemRESRes( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceFailedToResumeItemRESRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToResumeItemRESRes + + template (omit) PDUSessionResourceFailedToSetupItemCxtFail m_pDUSessionResourceFailedToSetupItemCxtFail( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceFailedToSetupItemCxtFail.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemCxtFail.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemCxtFail + + template (omit) PDUSessionResourceFailedToSetupItemCxtRes m_pDUSessionResourceFailedToSetupItemCxtRes( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceFailedToSetupItemCxtRes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemCxtRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemCxtRes + + template (omit) PDUSessionResourceFailedToSetupItemHOAck m_pDUSessionResourceFailedToSetupItemHOAck( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemHOAck.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverResourceAllocationUnsuccessfulTransfer := p_handoverResourceAllocationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemHOAck + + template (omit) PDUSessionResourceFailedToSetupItemPSReq m_pDUSessionResourceFailedToSetupItemPSReq( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemPSReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestSetupFailedTransfer := p_pathSwitchRequestSetupFailedTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemPSReq + + template (omit) PDUSessionResourceFailedToSetupItemSURes m_pDUSessionResourceFailedToSetupItemSURes( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemSURes + + template (omit) PDUSessionResourceHandoverItem m_pDUSessionResourceHandoverItem( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceHandoverItem.handoverCommandTransfer p_handoverCommandTransfer, + in template (omit) PDUSessionResourceHandoverItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverCommandTransfer := p_handoverCommandTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceHandoverItem + + template (omit) PDUSessionResourceInformationItem m_pDUSessionResourceInformationItem( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) QosFlowInformationList p_qosFlowInformationList, + in template (omit) DRBsToQosFlowsMappingList p_dRBsToQosFlowsMappingList := omit, + in template (omit) PDUSessionResourceInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + qosFlowInformationList := p_qosFlowInformationList, + dRBsToQosFlowsMappingList := p_dRBsToQosFlowsMappingList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceInformationItem + + template (omit) PDUSessionResourceItemCxtRelCpl m_pDUSessionResourceItemCxtRelCpl( + in template (value) PDUSessionID p_pDUSessionID, + in template (omit) PDUSessionResourceItemCxtRelCpl.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceItemCxtRelCpl + + template (value) PDUSessionResourceItemCxtRelCpl.iE_Extensions m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer( + in template (value) PDUSessionResourceReleaseResponseTransfer_OCTET_STRING p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING + ) := { + { + id := id_PDUSessionResourceReleaseResponseTransfer, + criticality := ignore, + extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } + } + } // End of template m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer + + template (omit) PDUSessionResourceItemCxtRelReq m_pDUSessionResourceItemCxtRelReq( + in template (value) PDUSessionID p_pDUSessionID, + in template (omit) PDUSessionResourceItemCxtRelReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceItemCxtRelReq + + template (omit) PDUSessionResourceItemHORqd m_pDUSessionResourceItemHORqd( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceItemHORqd.handoverRequiredTransfer p_handoverRequiredTransfer, + in template (omit) PDUSessionResourceItemHORqd.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverRequiredTransfer := p_handoverRequiredTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceItemHORqd + + template (omit) PDUSessionResourceModifyConfirmTransfer m_pDUSessionResourceModifyConfirmTransfer( + in template (value) QosFlowModifyConfirmList p_qosFlowModifyConfirmList, + in template (value) UPTransportLayerInformation p_uLNGU_UP_TNLInformation, + in template (omit) UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := omit, + in template (omit) QosFlowListWithCause p_qosFlowFailedToModifyList := omit, + in template (omit) PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowModifyConfirmList := p_qosFlowModifyConfirmList, + uLNGU_UP_TNLInformation := p_uLNGU_UP_TNLInformation, + additionalNG_UUPTNLInformation := p_additionalNG_UUPTNLInformation, + qosFlowFailedToModifyList := p_qosFlowFailedToModifyList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyConfirmTransfer + + template (value) PDUSessionResourceModifyConfirmTransfer.iE_Extensions m_pDUSessionResourceModifyConfirmTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceModifyConfirmTransferr_id_RedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyConfirmTransfer.iE_Extensions m_pDUSessionResourceModifyConfirmTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pDUSessionResourceModifyConfirmTransferr_id_AdditionalRedundantNGU_UP_TNLInformation + + template (omit) PDUSessionResourceModifyIndicationUnsuccessfulTransfer m_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceModifyIndicationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyIndicationUnsuccessfulTransfer + + template (value) PDUSessionResourceModifyRequestTransfer m_pDUSessionResourceModifyRequestTransfer( + in template (omit) PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs + ) := { + protocolIEs := p_protocolIEs + } // End of template m_pDUSessionResourceModifyRequestTransfer + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( + in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate + ) := { + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( + in template (value) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList + ) := { + { + id := id_UL_NGU_UP_TNLModifyList, + criticality := reject, + value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( + in template (value) NetworkInstance p_networkInstance + ) := { + { + id := id_NetworkInstance, + criticality := reject, + value_ := { NetworkInstance := p_networkInstance } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( + in template (value) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList + ) := { + { + id := id_QosFlowAddOrModifyRequestList, + criticality := reject, + value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( + in template (value) QosFlowListWithCause p_qosFlowListWithCause + ) := { + { + id := id_QosFlowToReleaseList, + criticality := reject, + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalUL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_CommonNetworkInstance, + criticality := reject, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_RedundantCommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( + in template (value) SecurityIndication p_securityIndication + ) := { + { + id := id_SecurityIndication, + criticality := ignore, + value_ := { SecurityIndication := p_securityIndication } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( + in template (value) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList + ) := { + { + id := id_MBSSessionSetuporModifyRequestList, + criticality := ignore, + value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( + in template (value) MBSSessionToReleaseList p_mBSSessionToReleaseList + ) := { + { + id := id_MBSSessionToReleaseList, + criticality := ignore, + value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList + + template (omit) PDUSessionResourceModifyResponseTransfer m_pDUSessionResourceModifyResponseTransfer( + in template (omit) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := omit, + in template (omit) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := omit, + in template (omit) QosFlowAddOrModifyResponseList p_qosFlowAddOrModifyResponseList := omit, + in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, + in template (omit) QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := omit, + in template (omit) PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + qosFlowAddOrModifyResponseList := p_qosFlowAddOrModifyResponseList, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + qosFlowFailedToAddOrModifyList := p_qosFlowFailedToAddOrModifyList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyResponseTransfer + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator( + in template (value) MBS_SupportIndicator p_mBS_SupportIndicator + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList( + in template (value) MBSSessionSetupResponseList p_mBSSessionSetupResponseList + ) := { + { + id := id_MBSSessionSetuporModifyResponseList, + criticality := ignore, + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList( + in template (value) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList + ) := { + { + id := id_MBSSessionFailedtoSetuporModifyList, + criticality := ignore, + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList + + template (omit) PDUSessionResourceModifyIndicationTransfer m_pDUSessionResourceModifyIndicationTransfer( + in template (value) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation, + in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, + in template (omit) PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyIndicationTransfer + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult( + in template (value) SecurityResult p_securityResult + ) := { + { + id := id_SecurityResult, + criticality := ignore, + extensionValue := { SecurityResult := p_securityResult } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation + ) := { + { + id := id_RedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID + + template (omit) PDUSessionResourceModifyItemModCfm m_pDUSessionResourceModifyItemModCfm( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceModifyItemModCfm.pDUSessionResourceModifyConfirmTransfer p_pDUSessionResourceModifyConfirmTransfer, + in template (omit) PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyConfirmTransfer := p_pDUSessionResourceModifyConfirmTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyItemModCfm + + template (omit) PDUSessionResourceModifyItemModInd m_pDUSessionResourceModifyItemModInd( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceModifyItemModInd.pDUSessionResourceModifyIndicationTransfer p_pDUSessionResourceModifyIndicationTransfer, + in template (omit) PDUSessionResourceModifyItemModInd.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyIndicationTransfer := p_pDUSessionResourceModifyIndicationTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyItemModInd + + template (omit) PDUSessionResourceModifyItemModReq m_pDUSessionResourceModifyItemModReq( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceModifyItemModReq.pDUSessionResourceModifyRequestTransfer p_pDUSessionResourceModifyRequestTransfer, + in template (omit) NAS_PDU p_nAS_PDU := omit, + in template (omit) PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + nAS_PDU := p_nAS_PDU, + pDUSessionResourceModifyRequestTransfer := p_pDUSessionResourceModifyRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyItemModReq + + template (value) PDUSessionResourceModifyItemModReq.iE_Extensions m_pDUSessionResourceModifyItemModReq_id_S_NSSAI( + in template (value) S_NSSAI p_s_nSSAI + ) := { + { + id := id_S_NSSAI, + criticality := reject, + extensionValue := { S_NSSAI := p_s_nSSAI } + } + } // End of template m_pDUSessionResourceModifyItemModReq_id_S_NSSAI + + template (value) PDUSessionResourceModifyItemModReq.iE_Extensions m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceModifyItemModRes m_pDUSessionResourceModifyItemModRes( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceModifyItemModRes.pDUSessionResourceModifyResponseTransfer p_pDUSessionResourceModifyResponseTransfer, + in template (omit) PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := omit + ) := { + + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyResponseTransfer := p_pDUSessionResourceModifyResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyItemModRes + + template (omit) PDUSessionResourceModifyUnsuccessfulTransfer m_pDUSessionResourceModifyUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyUnsuccessfulTransfer + + template (omit) PDUSessionResourceNotifyItem m_pDUSessionResourceNotifyItem( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer, + in template (omit) PDUSessionResourceNotifyItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceNotifyTransfer := p_pDUSessionResourceNotifyTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceNotifyItem + + template (omit) PDUSessionResourceNotifyReleasedTransfer m_pDUSessionResourceNotifyReleasedTransfer( + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceNotifyReleasedTransfer + + template (value) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation + + template (omit) PDUSessionResourceNotifyTransfer m_pDUSessionResourceNotifyTransfer( + in template (omit) QosFlowNotifyList p_qosFlowNotifyList := omit, + in template (omit) QosFlowListWithCause p_qosFlowReleasedList := omit, + in template (omit) PDUSessionResourceNotifyTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowNotifyList := p_qosFlowNotifyList, + qosFlowReleasedList := p_qosFlowReleasedList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceNotifyTransfer + + template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceNotifyTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation + + template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceNotifyTransfer_id_QosFlowFeedbackList( + in template (value) QosFlowFeedbackList p_qosFlowFeedbackList + ) := { + { + id := id_QosFlowFeedbackList, + criticality := ignore, + extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } + } + } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_QosFlowFeedbackList + + template (omit) PDUSessionResourceReleaseCommandTransfer m_pDUSessionResourceReleaseCommandTransfer( + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceReleaseCommandTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleaseCommandTransfer + + template (omit) PDUSessionResourceReleasedItemNot m_pDUSessionResourceReleasedItemNot( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceReleasedItemNot.pDUSessionResourceNotifyReleasedTransfer p_pDUSessionResourceNotifyReleasedTransfer, + in template (omit) PDUSessionResourceReleasedItemNot.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceNotifyReleasedTransfer := p_pDUSessionResourceNotifyReleasedTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleasedItemNot + + template (omit) PDUSessionResourceReleasedItemPSAck m_pDUSessionResourceReleasedItemPSAck( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceReleasedItemPSAck.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer, + in template (omit) PDUSessionResourceReleasedItemPSAck.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleasedItemPSAck + + template (omit) PDUSessionResourceReleasedItemPSFail m_pDUSessionResourceReleasedItemPSFail( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceReleasedItemPSFail.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer, + in template (omit) PDUSessionResourceReleasedItemPSFail.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleasedItemPSFail + + template (omit) PDUSessionResourceReleasedItemRelRes m_pDUSessionResourceReleasedItemRelRes( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer, + in template (omit) PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceReleaseResponseTransfer := p_pDUSessionResourceReleaseResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleasedItemRelRes + + template (omit) PDUSessionResourceReleaseResponseTransfer m_pDUSessionResourceReleaseResponseTransfer( + in template (omit) PDUSessionResourceReleaseResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleaseResponseTransfer + + template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation + + template (omit) PDUSessionResourceResumeItemRESReq m_pDUSessionResourceResumeItemRESReq( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceResumeItemRESReq.uEContextResumeRequestTransfer p_uEContextResumeRequestTransfer, + in template (omit) PDUSessionResourceResumeItemRESReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + uEContextResumeRequestTransfer := p_uEContextResumeRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceResumeItemRESReq + + template (omit) PDUSessionResourceResumeItemRESRes m_pDUSessionResourceResumeItemRESRes( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceResumeItemRESRes.uEContextResumeResponseTransfer p_uEContextResumeResponseTransfer, + in template (omit) PDUSessionResourceResumeItemRESRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + uEContextResumeResponseTransfer := p_uEContextResumeResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceResumeItemRESRes + + template (omit) PDUSessionResourceSecondaryRATUsageItem m_pPDUSessionResourceSecondaryRATUsageItem( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceSecondaryRATUsageItem.secondaryRATDataUsageReportTransfer p_secondaryRATDataUsageReportTransfer, + in template (omit) PDUSessionResourceSecondaryRATUsageItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + secondaryRATDataUsageReportTransfer := p_secondaryRATDataUsageReportTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pPDUSessionResourceSecondaryRATUsageItem + + template (omit) PDUSessionResourceSetupItemCxtReq m_pDUSessionResourceSetupItemCxtReq( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) S_NSSAI p_s_NSSAI, + in template (value) PDUSessionResourceSetupItemCxtReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer, + in template (omit) NAS_PDU p_nAS_PDU := omit, + in template (omit) PDUSessionResourceSetupItemCxtReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + nAS_PDU := p_nAS_PDU, + s_NSSAI := p_s_NSSAI, + pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemCxtReq + + template (value) PDUSessionResourceSetupItemCxtReq.iE_Extensions m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceSetupItemCxtRes m_pDUSessionResourceSetupItemCxtRes( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceSetupItemCxtRes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer, + in template (omit) PDUSessionResourceSetupItemCxtRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemCxtRes + + template (omit) PDUSessionResourceSetupItemHOReq m_pDUSessionResourceSetupItemHOReq( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) S_NSSAI p_s_NSSAI, + in template (value) PDUSessionResourceSetupItemHOReq.handoverRequestTransfer p_handoverRequestTransfer, + in template (omit) PDUSessionResourceSetupItemHOReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + s_NSSAI := p_s_NSSAI, + handoverRequestTransfer := p_handoverRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemHOReq + + template (value) PDUSessionResourceSetupItemHOReq.iE_Extensions m_pDUSessionResourceSetupItemHOReq_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceSetupItemSUReq m_pDUSessionResourceSetupItemSUReq( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) S_NSSAI p_s_NSSAI, + in template (value) PDUSessionResourceSetupItemSUReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer, + in template (omit) NAS_PDU p_pDUSessionNAS_PDU := omit, + in template (omit) PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionNAS_PDU := p_pDUSessionNAS_PDU, + s_NSSAI := p_s_NSSAI, + pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemSUReq + + template (value) PDUSessionResourceSetupItemSUReq.iE_Extensions m_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceSetupItemSURes m_pDUSessionResourceSetupItemSURes( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer, + in template (omit) PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemSURes + + template (value) PDUSessionResourceSetupRequestTransfer m_pDUSessionResourceSetupRequestTransfer( + in template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs p_protocolIEs + ) := { + protocolIEs := p_protocolIEs + } // End of template m_pDUSessionResourceSetupRequestTransfer + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( + in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate + ) := { + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_UL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible( + in template (value) DataForwardingNotPossible p_dataForwardingNotPossible + ) := { + { + id := id_DataForwardingNotPossible, + criticality := reject, + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType( + in template (value) PDUSessionType p_pDUSessionType + ) := { + { + id := id_PDUSessionType, + criticality := reject, + value_ := { PDUSessionType := p_pDUSessionType } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication( + in template (value) SecurityIndication p_securityIndication + ) := { + { + id := id_SecurityIndication, + criticality := reject, + value_ := { SecurityIndication := p_securityIndication } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance( + in template (value) NetworkInstance p_networkInstance + ) := { + { + id := id_NetworkInstance, + criticality := reject, + value_ := { NetworkInstance := p_networkInstance } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList( + in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList + ) := { + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_CommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability( + in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability + ) := { + { + id := id_DirectForwardingPathAvailability, + criticality := ignore, + value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstancen( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_RedundantCommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstance + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation( + in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation + ) := { + { + id := id_RedundantPDUSessionInformation, + criticality := ignore, + value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList( + in template (value) MBSSessionSetupRequestList p_mBSSessionSetupRequestList + ) := { + { + id := id_MBSSessionSetupRequestList, + criticality := ignore, + value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList + + template (omit) PDUSessionResourceSetupResponseTransfer m_pDUSessionResourceSetupResponseTransfer( + in template (value) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation, + in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, + in template (omit) SecurityResult p_securityResult := omit, + in template (omit) QosFlowListWithCause p_qosFlowFailedToSetupList := omit, + in template (omit) PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + securityResult := p_securityResult, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupResponseTransfer + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation + ) := { + { + id := id_RedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation( + in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator( + in template (value) MBS_SupportIndicator p_mBS_SupportIndicator + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList( + in template (value) MBSSessionSetupResponseList p_mBSSessionSetupResponseList + ) := { + { + id := id_MBSSessionSetupResponseList, + criticality := ignore, + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList( + in template (value) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList + ) := { + { + id := id_MBSSessionFailedtoSetupList, + criticality := ignore, + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList + + template (omit) PDUSessionResourceSetupUnsuccessfulTransfer m_pDUSessionResourceSetupUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupUnsuccessfulTransfer + + template (omit) PDUSessionResourceSuspendItemSUSReq m_pDUSessionResourceSuspendItemSUSReq( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceSuspendItemSUSReq.uEContextSuspendRequestTransfer p_uEContextSuspendRequestTransfer, + in template (omit) PDUSessionResourceSuspendItemSUSReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + uEContextSuspendRequestTransfer := p_uEContextSuspendRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSuspendItemSUSReq + + template (omit) PDUSessionResourceSwitchedItem m_pDUSessionResourceSwitchedItem( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceSwitchedItem.pathSwitchRequestAcknowledgeTransfer p_pathSwitchRequestAcknowledgeTransfer, + in template (omit) PDUSessionResourceSwitchedItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestAcknowledgeTransfer := p_pathSwitchRequestAcknowledgeTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSwitchedItem + + template (value) PDUSessionResourceSwitchedItem.iE_Extensions m_pDUSessionResourceSwitchedItem_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceSwitchedItem_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceToBeSwitchedDLItem m_pDUSessionResourceToBeSwitchedDLItem( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceToBeSwitchedDLItem.pathSwitchRequestTransfer p_pathSwitchRequestTransfer, + in template (omit) PDUSessionResourceToBeSwitchedDLItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestTransfer := p_pathSwitchRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceToBeSwitchedDLItem + + template (omit) PDUSessionResourceToReleaseItemHOCmd m_pDUSessionResourceToReleaseItemHOCmd( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceToReleaseItemHOCmd.handoverPreparationUnsuccessfulTransfer p_handoverPreparationUnsuccessfulTransfer, + in template (omit) PDUSessionResourceToReleaseItemHOCmd.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverPreparationUnsuccessfulTransfer := p_handoverPreparationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceToReleaseItemHOCmd + + template (omit) PDUSessionResourceToReleaseItemRelCmd m_pDUSessionResourceToReleaseItemRelCmd( + in template (value) PDUSessionID p_pDUSessionID, + in template (value) PDUSessionResourceToReleaseItemRelCmd.pDUSessionResourceReleaseCommandTransfer p_pDUSessionResourceReleaseCommandTransfer, + in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceReleaseCommandTransfer := p_pDUSessionResourceReleaseCommandTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceToReleaseItemRelCmd + + template (value) PDUSessionType m_pDUSessionType(in PDUSessionType p_value := ipv4) := p_value; + + template (omit) PDUSessionUsageReport m_pDUSessionUsageReport( + in template (value) PDUSessionUsageReport.rATType p_rATType := nr, + in template (value) VolumeTimedReportList p_pDUSessionTimedReportList, + in template (omit) PDUSessionUsageReport.iE_Extensions p_iE_Extensions := omit + ) := { + rATType := p_rATType, + pDUSessionTimedReportList := p_pDUSessionTimedReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionUsageReport + + template (omit) PEIPSassistanceInformation m_pEIPSassistanceInformation( + in template (value)CNsubgroupID p_cNsubgroupID, + in template (omit) PEIPSassistanceInformation.iE_Extensions p_iE_Extensions := omit + ) := { + cNsubgroupID := p_cNsubgroupID, + iE_Extensions := p_iE_Extensions + } // End of template m_pEIPSassistanceInformation + + template (omit) PLMNAreaBasedQMC m_pLMNAreaBasedQMC( + in template (value) PLMNListforQMC p_plmnListforQMC, + in template (omit) PLMNAreaBasedQMC.iE_Extensions p_iE_Extensions := omit + ) := { + plmnListforQMC := p_plmnListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template m_pLMNAreaBasedQMC + + template (omit) PLMNSupportItem m_pLMNSupportItem( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) SliceSupportList p_sliceSupportList, + in template (omit) PLMNSupportItem.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + sliceSupportList := p_sliceSupportList, + iE_Extensions := p_iE_Extensions + } // End of template m_pLMNSupportItem + + template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_NPN_Support( + in template (value) NPN_Support p_nPN_Support + ) := { + { + id := id_NPN_Support, + criticality := reject, + extensionValue := { NPN_Support := p_nPN_Support } + } + } // End of template m_pLMNSupportItem_id_NPN_Support + + template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_ExtendedSliceSupportList( + in template (value) ExtendedSliceSupportList p_extendedSliceSupportList + ) := { + { + id := id_ExtendedSliceSupportList, + criticality := reject, + extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } + } + } // End of template m_pLMNSupportItem_id_ExtendedSliceSupportList + + template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_OnboardingSupport( + in template (value) OnboardingSupport p_onboardingSupport + ) := { + { + id := id_OnboardingSupport, + criticality := ignore, + extensionValue := { OnboardingSupport := p_onboardingSupport } + } + } // End of template m_pLMNSupportItem_id_OnboardingSupport + + template (omit) PNI_NPN_MobilityInformation m_pNI_NPN_MobilityInformation( + in template (value) Allowed_PNI_NPN_List p_allowed_PNI_NPI_List, + in template (omit) PNI_NPN_MobilityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + allowed_PNI_NPI_List := p_allowed_PNI_NPI_List, + iE_Extensions := p_iE_Extensions + } // End of template m_pNI_NPN_MobilityInformation + + template (value) Pre_emptionCapability m_pre_emptionCapability(in Pre_emptionCapability p_value := shall_not_trigger_pre_emption) := p_value; + + template (value) Pre_emptionVulnerability m_pre_emptionVulnerability(in Pre_emptionVulnerability p_value := not_pre_emptable) := p_value; + + template (value) PWSFailedCellIDList m_pWSFailedCellIDList_nR_CGI_PWSFailedList( + in template (value) NR_CGIList p_nR_CGI_PWSFailedList + ) := { + nR_CGI_PWSFailedList := p_nR_CGI_PWSFailedList + } // End of template m_pWSFailedCellIDList_nR_CGI_PWSFailedList + + template (value) PWSFailedCellIDList m_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList( + in template (value) EUTRA_CGIList p_eUTRA_CGI_PWSFailedList + ) := { + eUTRA_CGI_PWSFailedList := p_eUTRA_CGI_PWSFailedList + } // End of template m_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList + + template (value) PWSFailedCellIDList m_pWSFailedCellIDList_choice_Extensions( + in template (value) PWSFailedCellIDList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_pWSFailedCellIDList_choice_Extensions + + // type record QMCConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); + // type record QMCDeactivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; + // type octetstring QoEReference length (6); + // type union QosCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; + // type record QosFlowAcceptedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; + // type record QosFlowAddOrModifyRequestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; + // type record QosFlowAddOrModifyResponseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; + // type record QosFlowFeedbackItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); + template (value) QosFlowIdentifier m_qosFlowIdentifier(in QosFlowIdentifier p_value := 0) := p_value; + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; + // type record QosFlowInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( + // type record QosFlowLevelQosParameters { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( + // type enumerated QosMonitoringRequest { + // type integer QosMonitoringReportingFrequency ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; + // type record QosFlowWithCauseItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; + // type record QosFlowModifyConfirmItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; + // type record QosFlowNotifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; + // type record QosFlowParametersItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( + // type record QosFlowPerTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; + // type record QosFlowPerTNLInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); + + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; + template (value) QosFlowSetupRequestList m_ie_qosFlowSetReqList(in QosFlowSetupRequestList p_list) := p_list; + // type record QosFlowSetupRequestItem { + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( + template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, + in template (omit) QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dataForwardingAccepted := p_dataForwardingAccepted, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowItemWithDataForwarding + + template (omit) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; + // type record QosFlowToBeForwardedItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; + // type record QoSFlowsUsageReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); + // type enumerated Range { + // type ASNAUX.PrintableString RANNodeName length ( + // type ASNAUX.VisibleString RANNodeNameVisibleString length ( + // type ASNAUX.UTF8String RANNodeNameUTF8String length ( + // type integer RANPagingPriority (1 .. 256); + // type record RANStatusTransfer_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); + + // type integer RAN_UE_NGAP_ID (0 .. 4294967295); + template (value) RAN_UE_NGAP_ID m_ie_rANUeNgapId(in integer p_val := 1) := p_val; + + // type enumerated RAT_Information { + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; + // type record RATRestrictions_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( + // type bitstring RATRestrictionInformation length ( + // type record RecommendedCellsForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; + // type record RecommendedCellItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); + // type record RecommendedRANNodesForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; + // type record RecommendedRANNodeItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); + // type enumerated RedCapIndication { + // type enumerated RedirectionVoiceFallback { + // type record RedundantPDUSessionInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( + // type enumerated RedundantQosFlowIndicator { + // type enumerated ReflectiveQosAttribute { + // type integer RelativeAMFCapacity (0 .. 255); + // type enumerated ReportArea { + // type integer RepetitionPeriod (0 .. 131071); + // type enumerated ResetAll { + // type enumerated ReportAmountMDT { + // type enumerated ReportIntervalMDT { + // type enumerated ExtendedReportIntervalMDT { + // type union ResetType { + // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); + // type octetstring RGLevelWirelineAccessCharacteristics; + // type integer RNC_ID (0 .. 4095); + // type octetstring RoutingID; + // type octetstring RRCContainer; + // type enumerated RRCEstablishmentCause { + template (value) RRCEstablishmentCause m_ie_rrcEstCause(template (value) RRCEstablishmentCause p_rrcEstCause:=mo_Signalling):=p_rrcEstCause; + + // type enumerated RRCInactiveTransitionReportRequest { + // type enumerated RRCState { + // type enumerated RSN { + // type record RIMInformationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); + // type record RIMInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); + // type bitstring GNBSetID length (22); + // type record ScheduledCommunicationTime { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; + + // type octetstring SD length (3); + template (value) SD m_ie_sD(in SD p_val := '000000'O) := p_val; + + // type record SecondaryRATUsageInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); + // type record SecondaryRATDataUsageReportTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); + // type record SecurityContext { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); + // type record SecurityIndication { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( + // type bitstring SecurityKey length (256); + // type record SecurityResult { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); + // type record SensorMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; + // type record SensorMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); + // type enumerated SensorMeasConfig { + // type union SensorNameConfig { + // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); + // type bitstring SerialNumber length (16); + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; + // type record ServedGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; + // type record ServiceAreaInformation_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); + // type enumerated ServiceType { + // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); + // type record SharedNGU_MulticastTNLInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; + // type record SliceOverloadItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); + + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; + template (value) SliceSupportList m_ie_sliceSupportList(in template (value) SliceSupportList p_list) := p_list; + + // type record SliceSupportItem { + template (omit) SliceSupportItem m_ie_sliceSupportItem( + in template (value) S_NSSAI p_S_NSSAI, + in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_S_NSSAI, + iE_Extensions :=p_iE_Extensions + } // End of template m_ie_sliceSupportItem + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; + // type record SliceSupportQMC_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); + // type record SNPN_MobilityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); + // type record S_NSSAI { + template (omit) S_NSSAI m_ie_sNSSAI( + in template (value) SST p_sST, + in template (value) SD p_sD, + in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ) := { + sST := p_sST,//'00'O, + sD := p_sD,//'000000'O, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_sNSSAI + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); + // type record SONConfigurationTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); + // type union SONInformation { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( + // type record SONInformationReply { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); + // type union SONInformationReport { + // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; + // type record SuccessfulHandoverReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); + // type enumerated SONInformationRequest { + // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( + // type union SourceNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); + // type enumerated SourceOfUEActivityBehaviourInformation { + // type record SourceRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); + // type octetstring SourceToTarget_TransparentContainer; + // type record SourceToTarget_AMFInformationReroute { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); + // type enumerated SRVCCOperationPossible { + // type octetstring ConfiguredNSSAI length (128); + // type octetstring RejectedNSSAIinPLMN length (32); + // type octetstring RejectedNSSAIinTA length (32); + // type octetstring SST length (1); + template (value) SST m_ie_sST(in SST p_val := '00'O) := p_val; + + // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; + template (value) SupportedTAList m_ie_supportedTAList(in template (value) SupportedTAList p_list) := p_list; + + // type record SupportedTAItem { + template (omit) SupportedTAItem m_ie_supportedTAItem( + in template (value) TAC p_tAC, + in template (value) BroadcastPLMNList p_broadcastPLMNList, + in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ) := { + tAC := p_tAC, + broadcastPLMNList := p_broadcastPLMNList, iE_Extensions := p_iE_Extensions } // End of template m_ie_supportedTAItem - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( + + // type enumerated SuspendIndicator { + // type enumerated Suspend_Request_Indication { + // type enumerated Suspend_Response_Indication { + // type integer SurvivalTime ( + + // type octetstring TAC length (3); + template (value) TAC m_ie_tAC(in template (value) TAC p_val) := p_val; + + // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; + // type record TAI { + template (value) TAI m_ie_tAI( + template (value) PLMNIdentity p_plmnId, + template (value) TAC p_tac, + in template (omit) TAI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_plmnId, + tAC := p_tac, + iE_Extensions := p_iE_Extensions + } //End of template m_ie_tAI + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; + // type record TAIBroadcastEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; + // type record TAIBroadcastNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; + // type record TAICancelledEUTRA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; + // type record TAICancelledNR_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; + // type record TAIListForInactiveItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; + // type record TAIListForPagingItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; + // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; + // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; + // type record TAINSAGSupportItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); + // type record TargeteNB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); + // type record TargetHomeENB_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); + // type union TargetID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( + // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; + // type record TargetNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); + // type record TargetNSSAIInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); + // type record TargetRANNodeID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); + // type record TargetRANNodeID_RIM { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); + // type record TargetRANNodeID_SON { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( + // type record TargetRNC_ID { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); + // type octetstring TargetToSource_TransparentContainer; + // type octetstring TargettoSource_Failure_TransparentContainer; + // type enumerated TimerApproachForGUAMIRemoval { + // type octetstring TimeStamp length (4); + // type record TimeSyncAssistanceInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); + // type enumerated TimeToWait { + // type integer TimeUEStayedInCell (0 .. 4095); + // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); + // type octetstring TMGI length (6); + // type octetstring TNAP_ID; + // type union TNGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); + // type integer TNLAddressWeightFactor (0 .. 255); + // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; + // type record TNLAssociationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); + // type enumerated TNLAssociationUsage { + // type record TooearlyIntersystemHO { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); + // type record TraceActivation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( + // type enumerated TraceDepth { + // type integer TrafficLoadReductionIndication (1 .. 99); + + template (value) TransportLayerAddress m_ie_tla(in bitstring p_val := '0'B) := p_val; + + // type enumerated TypeOfError { + // type record TAIBasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; + // type record TAIBasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; + // type record TABasedQMC { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; + // type record TABasedMDT { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; + // type integer Threshold_RSRP (0 .. 127); + // type integer Threshold_RSRQ (0 .. 127); + // type integer Threshold_SINR (0 .. 127); + // type enumerated TimeToTrigger { + // type octetstring TWAP_ID; + // type union TWIF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); + // type record TSCAssistanceInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( + // type record TSCTrafficCharacteristics { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); + // type record UEAggregateMaximumBitRate { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; + // type record UEAppLayerMeasInfoItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); + // type record UEAppLayerMeasConfigInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; + // type record UE_associatedLogicalNG_connectionItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); + // type enumerated UECapabilityInfoRequest { + // type enumerated UEContextRequest { + // type record UEContextResumeRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); + // type record UEContextResumeResponseTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); + // type record UEContextSuspendRequestTransfer { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); + // type record UE_DifferentiationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; + // type union UEHistoryInformationFromTheUE { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); + // type union UEIdentityIndexValue { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); + // type union UE_NGAP_IDs { + // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); + // type record UE_NGAP_ID_pair { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); + // type union UEPagingIdentity { + // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); + // type enumerated UEPresence { + // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; + // type record UEPresenceInAreaOfInterestItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); + // type octetstring UERadioCapability; + // type record UERadioCapabilityForPaging { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( + // type octetstring UERadioCapabilityForPagingOfNB_IoT; + // type octetstring UERadioCapabilityForPagingOfNR; + // type octetstring UERadioCapabilityForPagingOfEUTRA; + // type octetstring UERadioCapabilityID; + // type enumerated UERetentionInformation { + // type union UERLFReportContainer { + // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); + // type record UESecurityCapabilities { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; + // type record UESliceMaximumBitRateItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); + // type enumerated UE_UP_CIoT_Support { + // type record UL_CP_SecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); + // type bitstring UL_NAS_MAC length (16); + // type bitstring UL_NAS_Count length (5); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; + // type record UL_NGU_UP_TNLModifyItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; + // type record UnavailableGUAMIItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); + // type enumerated ULForwarding { + // type bitstring UpdateFeedback length ( + + // type union UPTransportLayerInformation { + template (value) UPTransportLayerInformation m_ie_uPTLInf( + in template (value) GTPTunnel p_gtpt + ) := { + gTPTunnel := p_gtpt + } // End of template m_ie_uPTLInf + + // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; + // type record UPTransportLayerInformationItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; + // type record UPTransportLayerInformationPairItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); + // type ASNAUX.VisibleString URI_address; + // type union UserLocationInformation { + template (value) UserLocationInformation m_ie_userLocInf_NR(template (value) UserLocationInformationNR p_ulinr) := { + userLocationInformationNR := p_ulinr + } // End of template m_ie_userLocInf + + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( + // type record UserLocationInformationEUTRA { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( + // type record UserLocationInformationN3IWF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( + // type record UserLocationInformationTNGF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( + // type record UserLocationInformationTWIF { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( + // type union UserLocationInformationW_AGF { + // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( + // type record UserLocationInformationNR { + template (value) UserLocationInformationNR m_ie_userLocInfNR( + template (value) NR_CGI p_nrcgi, + template (value) TAI p_tai, + in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nrcgi, + tAI := p_tai, + timeStamp := omit, // optional, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_userLocInfNR + + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( + // type record UserPlaneSecurityInformation { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; + // type record VolumeTimedReport_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); + // type union W_AGF_ID { + // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); + // type octetstring WarningAreaCoordinates length (1 .. 1024); + // type union WarningAreaList { + // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); + // type octetstring WarningMessageContents length (1 .. 9600); + // type octetstring WarningSecurityInfo length (50); + // type octetstring WarningType length (2); + // type record WLANMeasurementConfiguration { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; + // type record WLANMeasConfigNameItem { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); + // type enumerated WLANMeasConfig { + // type octetstring WLANName length (1 .. 32); + // type record WUS_Assistance_Information { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; + // type record XnExtTLA_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( + // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; + // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; + // type record XnTNLConfigurationInfo { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); + + } // End of group send + + group Receive{ + + template (present) AdditionalDLUPTNLInformationForHOItem mw_additionalDLUPTNLInformationForHOItem( + template (present) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation := ?, + template (present) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList := ?, + template UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := *, + template AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := * + ) := { + additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, + additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, + additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_additionalDLUPTNLInformationForHOItem + + template (present) AdditionalDLUPTNLInformationForHOItem.iE_Extensions mw_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_additionalDLUPTNLInformationForHOItem_iE_Extensions + + template (present) AdditionalQosFlowInformation mw_additionalQosFlowInformation(template (present) AdditionalQosFlowInformation p_value := ?) := p_value; + + template (present) AllocationAndRetentionPriority mw_allocationAndRetentionPriority( + template (present) PriorityLevelARP p_priorityLevelARP := ?, + template (present) Pre_emptionCapability p_pre_emptionCapability := ?, + template (present) Pre_emptionVulnerability p_pre_emptionVulnerability := ?, + template AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := * + ) := { + priorityLevelARP := p_priorityLevelARP, + pre_emptionCapability := p_pre_emptionCapability, + pre_emptionVulnerability := p_pre_emptionVulnerability, + iE_Extensions := p_iE_Extensions + } // End of template mw_allocationAndRetentionPriority + // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; + // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; + // type record AllowedNSSAI_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; + // type record Allowed_PNI_NPN_Item { + // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); + // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; + template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(in template (present) integer p_value := ?) := p_value; + + template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(in template (present) integer p_value := ?) := p_value; + + template (present) AlternativeQoSParaSetItem mw_alternativeQoSParaSetItem( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ?, + template BitRate p_guaranteedFlowBitRateDL := *, + template BitRate p_guaranteedFlowBitRateUL := *, + template PacketDelayBudget p_packetDelayBudget := *, + template PacketErrorRate p_packetErrorRate := *, + template AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := * + ) := { + alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_alternativeQoSParaSetItem + + template (present) AMFName mw_aMFName(template (present) AMFName p_value := ?) := p_value; + + template (present) AMFNameVisibleString mw_aMFNameVisibleString(template (present) AMFNameVisibleString p_value := ?) := p_value; + + template (present) AMFNameUTF8String mw_aMFNameUTF8String(template (present) AMFNameUTF8String p_value := ?) := p_value; + + template (present) AMFPagingTarget mw_aMFPagingTarget_globalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + globalRANNodeID := p_globalRANNodeID + } // End of template mw_aMFPagingTarget_globalRANNodeID + template (present) AMFPagingTarget mw_aMFPagingTarget_tAI( + template (present) TAI p_tAI := ? + ) := { + tAI := p_tAI + } // End of template mw_aMFPagingTarget_tAI + template (present) AMFPagingTarget mw_aMFPagingTarget_ext( + template (present) AMFPagingTarget.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_aMFPagingTarget_ext + + template (present) AMF_TNLAssociationSetupItem mw_aMF_TNLAssociationSetupItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationSetupItem + + template (present) AMF_TNLAssociationToAddItem mw_aMF_TNLAssociationToAddItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template (present) TNLAddressWeightFactor p_tNLAddressWeightFactor := ?, + template TNLAssociationUsage p_tNLAssociationUsage := *, + template AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := * + ):= { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToAddItem + + template (present) AMF_TNLAssociationToRemoveItem mw_aMF_TNLAssociationToRemoveItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToRemoveItem + + template (present) AMF_TNLAssociationToUpdateItem mw_aMF_TNLAssociationToUpdateItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template TNLAssociationUsage p_tNLAssociationUsage := *, + template TNLAddressWeightFactor p_tNLAddressWeightFactor := *, + template AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToUpdateItem + + template (present) AMF_UE_NGAP_ID mw_ie_aMFUeNgapId(template (present) integer p_val := ?) := p_val; + + template AreaOfInterest mw_areaOfInterest( + template AreaOfInterestTAIList p_areaOfInterestTAIList := *, + template AreaOfInterestCellList p_areaOfInterestCellList := *, + template AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := *, + template AreaOfInterest.iE_Extensions p_iE_Extensions := * + ) := { + areaOfInterestTAIList := p_areaOfInterestTAIList, + areaOfInterestCellList := p_areaOfInterestCellList, + areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterest + + template (present) AreaOfInterestCellItem mw_areaOfInterestCellItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestCellItem + + template (present) AreaOfInterestItem mw_reaOfInterestItem( + template (present) AreaOfInterest p_areaOfInterest := ?, + template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, + template AreaOfInterestItem.iE_Extensions p_iE_Extensions := * + ) := { + areaOfInterest := p_areaOfInterest, + locationReportingReferenceID := p_locationReportingReferenceID, + iE_Extensions := p_iE_Extensions + } // End of template mw_reaOfInterestItem + + template (present) AreaOfInterestRANNodeItem mw_areaOfInterestRANNodeItem( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := * + ):= { + globalRANNodeID := p_globalRANNodeID, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestRANNodeItem + + template (present) AreaOfInterestTAIItem mw_areaOfInterestTAIItem( + template (present) TAI p_tAI := ?, + template AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestTAIItem + + template AssistanceDataForPaging mw_assistanceDataForPaging( + template AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := *, + template PagingAttemptInformation p_pagingAttemptInformation := *, + template AssistanceDataForPaging.iE_Extensions p_iE_Extensions := * + ) := { + assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, + pagingAttemptInformation := p_pagingAttemptInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_assistanceDataForPaging + + template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_NPN_PagingAssistanceInformation( + template (present) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation := ? + ) := { + { + id := id_NPN_PagingAssistanceInformation, + criticality := ignore, + extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } + } + } // End of template mw_assistanceDataForPaging_NPN_PagingAssistanceInformation + + template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE( + template (present) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE := ? + ) := { + { + id := id_PagingAssisDataforCEcapabUE, + criticality := ignore, + extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } + } + } // End of template mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE + + template (present) AssistanceDataForRecommendedCells mw_assistanceDataForRecommendedCells( + template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, + template AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + iE_Extensions := p_iE_Extensions + } // End of template mw_assistanceDataForRecommendedCells + + template (present) AssociatedMBSQosFlowSetupRequestItem mw_associatedMBSQosFlowSetupRequestItem( + template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, + template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, + template AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedMBSQosFlowSetupRequestItem + + template (present) AssociatedMBSQosFlowSetuporModifyRequestItem mw_associatedMBSQosFlowSetuporModifyRequestItem( + template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, + template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, + template AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedMBSQosFlowSetuporModifyRequestItem + + template (present) AssociatedQosFlowItem mw_associatedQosFlowItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := *, + template AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowMappingIndication := p_qosFlowMappingIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedQosFlowItem + + template (present) AssociatedQosFlowItem.iE_Extensions mw_associatedQosFlowItem_alternativeQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_associatedQosFlowItem_alternativeQoSParaSetIndex + + template (present) AuthenticatedIndication mw_authenticatedIndication(template (present) AuthenticatedIndication p_value := true_) := p_value; + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_NR_cellBased( + template (present) CellBasedMDT_NR p_cellBased := ? + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfMDT_cellBased + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tABased( + template (present) TABasedMDT p_tABased := ? + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfMDT_tABased + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_pLMNWide := { + pLMNWide := NULL + } // End of template mw_areaScopeOfMDT_pLMNWide + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tAIBased( + template (present) TAIBasedMDT p_tAIBased := ? + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfMDT_tAIBased + + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_ext( + template (present) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfMDT_ext - // type enumerated SuspendIndicator { - // type enumerated Suspend_Request_Indication { - // type enumerated Suspend_Response_Indication { - // type integer SurvivalTime ( + template (present) AreaScopeOfNeighCellsItem mw_areaScopeOfNeighCellsItem( + template (present) NRFrequencyInfo p_nrFrequencyInfo := ?, + template PCIListForMDT p_pciListForMDT := *, + template AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := * + ) := { + nrFrequencyInfo := p_nrFrequencyInfo, + pciListForMDT := p_pciListForMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaScopeOfNeighCellsItem - // type octetstring TAC length (3); - template (value) TAC m_ie_tAC(in template (value) TAC p_val) := p_val; + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_cellBased( + template (present) CellBasedQMC p_cellBased := ? + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfQMC_cellBased - // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; - // type record TAI { - template (value) TAI m_ie_tAI( - template (value) PLMNIdentity p_plmnId, - template (value) TAC p_tac, - in template (omit) TAI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_plmnId, - tAC := p_tac, - iE_Extensions := p_iE_Extensions - } //End of template m_ie_tAI - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; - // type record TAIBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; - // type record TAIBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; - // type record TAICancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; - // type record TAICancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; - // type record TAIListForInactiveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; - // type record TAIListForPagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; - // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; - // type record TAINSAGSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); - // type record TargeteNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); - // type record TargetHomeENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); - // type union TargetID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; - // type record TargetNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); - // type record TargetNSSAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); - // type record TargetRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); - // type record TargetRANNodeID_RIM { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); - // type record TargetRANNodeID_SON { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( - // type record TargetRNC_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); - // type octetstring TargetToSource_TransparentContainer; - // type octetstring TargettoSource_Failure_TransparentContainer; - // type enumerated TimerApproachForGUAMIRemoval { - // type octetstring TimeStamp length (4); - // type record TimeSyncAssistanceInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); - // type enumerated TimeToWait { - // type integer TimeUEStayedInCell (0 .. 4095); - // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); - // type octetstring TMGI length (6); - // type octetstring TNAP_ID; - // type union TNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); - // type integer TNLAddressWeightFactor (0 .. 255); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; - // type record TNLAssociationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); - // type enumerated TNLAssociationUsage { - // type record TooearlyIntersystemHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); - // type record TraceActivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( - // type enumerated TraceDepth { - // type integer TrafficLoadReductionIndication (1 .. 99); + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tABased( + template (present) TABasedQMC p_tABased := ? + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfQMC_tABased + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tAIBased( + template (present) TAIBasedQMC p_tAIBased := ? + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfQMC_tAIBased + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_pLMNAreaBased( + template (present) PLMNAreaBasedQMC p_pLMNAreaBased := ? + ) := { + pLMNAreaBased := p_pLMNAreaBased + } // End of template mw_areaScopeOfQMC_pLMNAreaBased + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_ext( + template (present) AreaScopeOfQMC.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfQMC_ext + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_cellBased( + template (present) CellBasedMDT_EUTRA p_cellBased + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfMDT_EUTRA_cellBased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tABased( + template (present) TABasedMDT p_tABased + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfMDT_EUTRA_tABased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_pLMNWide := { + pLMNWide := NULL + } // End of template mw_areaScopeOfMDT_EUTRA_pLMNWide + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tAIBased( + template (present) TAIBasedMDT p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfMDT_EUTRA_tAIBased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_ext( + template (present) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfMDT_EUTRA_ext + + template AvailableRANVisibleQoEMetrics mw_availableRANVisibleQoEMetrics( + template AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := *, + template AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := *, + template AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := * + ) := { + applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, + playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, + iE_Extensions := p_iE_Extensions + } // End of template mw_availableRANVisibleQoEMetrics + + template BeamMeasurementsReportConfiguration mw_beamMeasurementsReportConfiguration( + template BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := *, + template MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := *, + template BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, + maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, + iE_Extensions := p_iE_Extensions + } // End of template mw_beamMeasurementsReportConfiguration + + template BeamMeasurementsReportQuantity mw_beamMeasurementsReportQuantity( + template BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, + template BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, + template BeamMeasurementsReportQuantity.sINR p_sINR := true_, + template BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := * + ) := { + rSRP := p_rSRP, + rSRQ := p_rSRQ, + sINR := p_sINR, + iE_Extensions := p_iE_Extensions + } // End of template mw_beamMeasurementsReportQuantity + + template (present) BitRate mw_bitRate (template (present) BitRate p_value := ?) := p_value; + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledEUTRA( + template (present) CellIDCancelledEUTRA p_cellIDCancelledEUTRA := ? + ) := { + cellIDCancelledEUTRA := p_cellIDCancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_cellIDCancelledEUTRA + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledEUTRA( + template (present) TAICancelledEUTRA p_tAICancelledEUTRA := ? + ) := { + tAICancelledEUTRA := p_tAICancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_tAICancelledEUTRA + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( + template (present) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA := ? + ) := { + emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledNR( + template (present) CellIDCancelledNR p_cellIDCancelledNR := ? + ) := { + cellIDCancelledNR := p_cellIDCancelledNR + } // End of template mw_broadcastCancelledAreaList_cellIDCancelledNR + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledNR( + template (present) TAICancelledNR p_tAICancelledNR := ? + ) := { + tAICancelledNR := p_tAICancelledNR + } // End of template mw_broadcastCancelledAreaList_tAICancelledNR + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( + template (present) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR := ? + ) := { + emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR + } // End of template mw_broadcastCancelledAreaList_ext + + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_ext( + template (present) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_broadcastCancelledAreaList_ext + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastEUTRA( + template (present) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA + ) := { + cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_cellIDCancelledEUTRA + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastEUTRA( + template (present) TAIBroadcastEUTRA p_tAIBroadcastEUTRA + ) := { + tAIBroadcastEUTRA := p_tAIBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_tAIBroadcastEUTRA + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( + template (present) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA + ) := { + emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA + + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastNR( + template (present) CellIDBroadcastNR p_cellIDBroadcastNR + ) := { + cellIDBroadcastNR := p_cellIDBroadcastNR + } // End of template mw_broadcastCompletedAreaList_cellIDBroadcastNR - template (value) TransportLayerAddress m_ie_tla(in bitstring p_val := '0'B) := p_val; + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastNR( + template (present) TAIBroadcastNR p_tAIBroadcastNR + ) := { + tAIBroadcastNR := p_tAIBroadcastNR + } // End of template mw_broadcastCompletedAreaList_tAIBroadcastNR - // type enumerated TypeOfError { - // type record TAIBasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; - // type record TAIBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; - // type record TABasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; - // type record TABasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; - // type integer Threshold_RSRP (0 .. 127); - // type integer Threshold_RSRQ (0 .. 127); - // type integer Threshold_SINR (0 .. 127); - // type enumerated TimeToTrigger { - // type octetstring TWAP_ID; - // type union TWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); - // type record TSCAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( - // type record TSCTrafficCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); - // type record UEAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; - // type record UEAppLayerMeasInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); - // type record UEAppLayerMeasConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; - // type record UE_associatedLogicalNG_connectionItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); - // type enumerated UECapabilityInfoRequest { - // type enumerated UEContextRequest { - // type record UEContextResumeRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); - // type record UEContextResumeResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); - // type record UEContextSuspendRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); - // type record UE_DifferentiationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; - // type union UEHistoryInformationFromTheUE { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); - // type union UEIdentityIndexValue { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); - // type union UE_NGAP_IDs { - // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); - // type record UE_NGAP_ID_pair { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); - // type union UEPagingIdentity { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); - // type enumerated UEPresence { - // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; - // type record UEPresenceInAreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); - // type octetstring UERadioCapability; - // type record UERadioCapabilityForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( - // type octetstring UERadioCapabilityForPagingOfNB_IoT; - // type octetstring UERadioCapabilityForPagingOfNR; - // type octetstring UERadioCapabilityForPagingOfEUTRA; - // type octetstring UERadioCapabilityID; - // type enumerated UERetentionInformation { - // type union UERLFReportContainer { - // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); - // type record UESecurityCapabilities { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; - // type record UESliceMaximumBitRateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); - // type enumerated UE_UP_CIoT_Support { - // type record UL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); - // type bitstring UL_NAS_MAC length (16); - // type bitstring UL_NAS_Count length (5); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; - // type record UL_NGU_UP_TNLModifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; - // type record UnavailableGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); - // type enumerated ULForwarding { - // type bitstring UpdateFeedback length ( + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( + template (present) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR + ) := { + emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR + } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR - // type union UPTransportLayerInformation { - template (value) UPTransportLayerInformation m_ie_uPTLInf( - in template (value) GTPTunnel p_gtpt - ) := { - gTPTunnel := p_gtpt - } // End of template m_ie_uPTLInf + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_ext( + template (present) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_broadcastCompletedAreaList_ext - // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; - // type record UPTransportLayerInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; - // type record UPTransportLayerInformationPairItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); - // type ASNAUX.VisibleString URI_address; - // type union UserLocationInformation { - template (value) UserLocationInformation m_ie_userLocInf_NR(template (value) UserLocationInformationNR p_ulinr) := { - userLocationInformationNR := p_ulinr - } // End of template m_ie_userLocInf - - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( - // type record UserLocationInformationEUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( - // type record UserLocationInformationN3IWF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( - // type record UserLocationInformationTNGF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( - // type record UserLocationInformationTWIF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( - // type union UserLocationInformationW_AGF { - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( - // type record UserLocationInformationNR { - template (value) UserLocationInformationNR m_ie_userLocInfNR( - template (value) NR_CGI p_nrcgi, - template (value) TAI p_tai, - in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nrcgi, - tAI := p_tai, - timeStamp := omit, // optional, + template (present) BroadcastPLMNItem mw_ie_broadcastPLMNItem( + template (present) PLMNIdentity p_plmnId := ?, + template (present) SliceSupportList p_ssl := ?, + template BroadcastPLMNItem.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_plmnId, + tAISliceSupportList := p_ssl, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_broadcastPLMNItem + + template (present) BluetoothMeasurementConfiguration mw_bluetoothMeasurementConfiguration( + template (present) BluetoothMeasConfig p_bluetoothMeasConfig := ?, + template BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := *, + template BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := *, + template BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + bluetoothMeasConfig := p_bluetoothMeasConfig, + bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, + bt_rssi := p_bt_rssi, + iE_Extensions := p_iE_Extensions + } // End of template mw_bluetoothMeasurementConfiguration + + template (present) BluetoothMeasConfigNameItem mw_bluetoothMeasConfigNameItem( + template (present) BluetoothName p_bluetoothName := ?, + template BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := * + ) := { + bluetoothName := p_bluetoothName, iE_Extensions := p_iE_Extensions - } // End of template m_ie_userLocInfNR - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( - // type record UserPlaneSecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; - // type record VolumeTimedReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); - // type union W_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); - // type octetstring WarningAreaCoordinates length (1 .. 1024); - // type union WarningAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); - // type octetstring WarningMessageContents length (1 .. 9600); - // type octetstring WarningSecurityInfo length (50); - // type octetstring WarningType length (2); - // type record WLANMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; - // type record WLANMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); - // type enumerated WLANMeasConfig { - // type octetstring WLANName length (1 .. 32); - // type record WUS_Assistance_Information { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; - // type record XnExtTLA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; - // type record XnTNLConfigurationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); + } // End of template mw_bluetoothMeasConfigNameItem - } // End of group send + template (present) BluetoothMeasConfig mw_bluetoothMeasConfig(template (present) BluetoothMeasConfig p_value := setup) := p_value; - group Receive{ + template (present) CancelAllWarningMessages mw_cancelAllWarningMessages(template (present) CancelAllWarningMessages p_value := true_) := p_value; - template (present) AdditionalDLUPTNLInformationForHOItem mw_additionalDLUPTNLInformationForHOItem( - template (present) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation := ?, - template (present) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList := ?, - template UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := *, - template AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := * - ) := { - additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, - additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, - additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_additionalDLUPTNLInformationForHOItem - template (present) AdditionalDLUPTNLInformationForHOItem.iE_Extensions mw_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_additionalDLUPTNLInformationForHOItem_iE_Extensions + template (present) CancelledCellsInEAI_EUTRA_Item mw_cancelledCellsInEAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInEAI_EUTRA_Item + + template (present) CancelledCellsInEAI_NR_Item mw_cancelledCellsInEAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInEAI_NR_Item + + template (present) CancelledCellsInTAI_EUTRA_Item mw_cancelledCellsInTAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInTAI_EUTRA_Item - template (present) AdditionalQosFlowInformation mw_additionalQosFlowInformation(template (present) AdditionalQosFlowInformation p_value := ?) := p_value; + template (present) CancelledCellsInTAI_NR_Item mw_CancelledCellsInTAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_CancelledCellsInTAI_NR_Item - template (present) AllocationAndRetentionPriority mw_allocationAndRetentionPriority( - template (present) PriorityLevelARP p_priorityLevelARP := ?, - template (present) Pre_emptionCapability p_pre_emptionCapability := ?, - template (present) Pre_emptionVulnerability p_pre_emptionVulnerability := ?, - template AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := * - ) := { - priorityLevelARP := p_priorityLevelARP, - pre_emptionCapability := p_pre_emptionCapability, - pre_emptionVulnerability := p_pre_emptionVulnerability, - iE_Extensions := p_iE_Extensions - } // End of template mw_allocationAndRetentionPriority - // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; - // type record AllowedNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; - // type record Allowed_PNI_NPN_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; - template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(in template (present) integer p_value := ?) := p_value; + template (present) CandidateCellItem mw_candidateCellItem( + template (present) CandidateCell p_candidateCell := ?, + template CandidateCellItem.iE_Extensions p_iE_Extensions := * + ) := { + candidateCell := p_candidateCell, + iE_Extensions := p_iE_Extensions + } // End of template mw_candidateCellItem - template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(in template (present) integer p_value := ?) := p_value; + template (present) CandidateCell mw_candidateCell_candidateCGI( + template (present) CandidateCellID p_candidateCGI := ? + ) := { + candidateCGI := p_candidateCGI + } // End of template mw_candidateCell_candidateCGI - template (present) AlternativeQoSParaSetItem mw_alternativeQoSParaSetItem( - template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ?, - template BitRate p_guaranteedFlowBitRateDL := *, - template BitRate p_guaranteedFlowBitRateUL := *, - template PacketDelayBudget p_packetDelayBudget := *, - template PacketErrorRate p_packetErrorRate := *, - template AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := * - ) := { - alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, - guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, - guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, - packetDelayBudget := p_packetDelayBudget, - packetErrorRate := p_packetErrorRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_alternativeQoSParaSetItem + template (present) CandidateCell mw_candidateCell_candidatePCI( + template (present) CandidatePCI p_candidatePCI := ? + ) := { + candidatePCI := p_candidatePCI + } // End of template mw_candidateCell_candidatePCI - template (present) AMFName mw_aMFName(template (present) AMFName p_value := ?) := p_value; + template (present) CandidateCell mw_candidateCell_ext( + template (present) CandidateCell.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_candidateCell_ext - template (present) AMFNameVisibleString mw_aMFNameVisibleString(template (present) AMFNameVisibleString p_value := ?) := p_value; + template (present) CandidatePCI mw_candidatePCI( + template (present) CandidatePCI.candidatePCI p_candidatePCI := ?, + template (present) CandidatePCI.candidateNRARFCN p_candidateNRARFCN := ?, + template CandidatePCI.iE_Extensions p_iE_Extensions := * + ) := { + candidatePCI := p_candidatePCI, + candidateNRARFCN := p_candidateNRARFCN, + iE_Extensions := p_iE_Extensions + } // End of template mw_candidatePCI - template (present) AMFNameUTF8String mw_aMFNameUTF8String(template (present) AMFNameUTF8String p_value := ?) := p_value; + template (present) Cause mw_cause_radioNetwork( + template (present) CauseRadioNetwork p_radioNetwork + ) := { + radioNetwork := p_radioNetwork + } // End of template mw_cause_radioNetwork - template (present) AMFPagingTarget mw_aMFPagingTarget_globalRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ? - ) := { - globalRANNodeID := p_globalRANNodeID - } // End of template mw_aMFPagingTarget_globalRANNodeID - template (present) AMFPagingTarget mw_aMFPagingTarget_tAI( - template (present) TAI p_tAI := ? - ) := { - tAI := p_tAI - } // End of template mw_aMFPagingTarget_tAI - template (present) AMFPagingTarget mw_aMFPagingTarget_ext( - template (present) AMFPagingTarget.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_aMFPagingTarget_ext + template (present) Cause mw_cause_transport( + template (present) CauseTransport p_transport + ) := { + transport := p_transport + } // End of template mw_cause_transport - template (present) AMF_TNLAssociationSetupItem mw_aMF_TNLAssociationSetupItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := * - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationSetupItem + template (present) Cause mw_cause_nas( + template (present) CauseNas p_nas + ) := { + nas := p_nas + } // End of template mw_cause_nas - template (present) AMF_TNLAssociationToAddItem mw_aMF_TNLAssociationToAddItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template (present) TNLAddressWeightFactor p_tNLAddressWeightFactor := ?, - template TNLAssociationUsage p_tNLAssociationUsage := *, - template AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := * - ):= { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - tNLAssociationUsage := p_tNLAssociationUsage, - tNLAddressWeightFactor := p_tNLAddressWeightFactor, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationToAddItem + template (present) Cause mw_cause_protocol( + template (present) CauseProtocol p_protocol + ) := { + protocol := p_protocol + } // End of template mw_cause_protocol - template (present) AMF_TNLAssociationToRemoveItem mw_aMF_TNLAssociationToRemoveItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationToRemoveItem + template (present) Cause mw_cause_misc( + template (present) CauseMisc p_misc + ) := { + misc := p_misc + } // End of template mw_cause_misc - template (present) AMF_TNLAssociationToUpdateItem mw_aMF_TNLAssociationToUpdateItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template TNLAssociationUsage p_tNLAssociationUsage := *, - template TNLAddressWeightFactor p_tNLAddressWeightFactor := *, - template AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := * - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - tNLAssociationUsage := p_tNLAssociationUsage, - tNLAddressWeightFactor := p_tNLAddressWeightFactor, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationToUpdateItem + template (present) Cause mw_cause_ext( + template (present) Cause.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cause_ext - template (present) AMF_UE_NGAP_ID mw_ie_aMFUeNgapId(template (present) integer p_val := ?) := p_val; + template (present) CauseMisc mw_causeMisc(template (present) CauseMisc p_value := ?) := p_value; + template (present) CauseNas mw_causeNas(template (present) CauseNas p_value := ?) := p_value; + template (present) CauseProtocol mw_causeProtocol(template (present) CauseProtocol p_value := ?) := p_value; + template (present) CauseRadioNetwork mww_causeRadioNetwork(template (present) CauseRadioNetwork p_value := ?) := p_value; + template (present) CauseTransport mw_causeTransport(template (present) CauseTransport p_value := ?) := p_value; - template AreaOfInterest mw_areaOfInterest( - template AreaOfInterestTAIList p_areaOfInterestTAIList := *, - template AreaOfInterestCellList p_areaOfInterestCellList := *, - template AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := *, - template AreaOfInterest.iE_Extensions p_iE_Extensions := * - ) := { - areaOfInterestTAIList := p_areaOfInterestTAIList, - areaOfInterestCellList := p_areaOfInterestCellList, - areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterest - - template (present) AreaOfInterestCellItem mw_areaOfInterestCellItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := * - ) := { + template (present) Cell_CAGInformation mw_cell_CAGInformation( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) CellCAGList p_cellCAGList := ?, + template Cell_CAGInformation.iE_Extensions p_iE_Extensions := * + ) := { nGRAN_CGI := p_nGRAN_CGI, + cellCAGList := p_cellCAGList, iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterestCellItem - - template (present) AreaOfInterestItem mw_reaOfInterestItem( - template (present) AreaOfInterest p_areaOfInterest := ?, - template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, - template AreaOfInterestItem.iE_Extensions p_iE_Extensions := * - ) := { - areaOfInterest := p_areaOfInterest, - locationReportingReferenceID := p_locationReportingReferenceID, - iE_Extensions := p_iE_Extensions - } // End of template mw_reaOfInterestItem + } // End of template mw_cell_CAGInformation - template (present) AreaOfInterestRANNodeItem mw_areaOfInterestRANNodeItem( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := * - ):= { - globalRANNodeID := p_globalRANNodeID, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterestRANNodeItem + template (present) CellIDBroadcastEUTRA_Item mw_cellIDBroadcastEUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDBroadcastEUTRA_Item - template (present) AreaOfInterestTAIItem mw_areaOfInterestTAIItem( - template (present) TAI p_tAI := ?, - template AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := * - ) := { - tAI := p_tAI, + template (present) CellIDBroadcastNR_Item mw_cellIDBroadcastNR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterestTAIItem + } // End of template mw_cellIDBroadcastNR_Item - template AssistanceDataForPaging mw_assistanceDataForPaging( - template AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := *, - template PagingAttemptInformation p_pagingAttemptInformation := *, - template AssistanceDataForPaging.iE_Extensions p_iE_Extensions := * - ) := { - assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, - pagingAttemptInformation := p_pagingAttemptInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_assistanceDataForPaging + template (present) CellIDCancelledEUTRA_Item mw_cellIDCancelledEUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDCancelledEUTRA_Item + + template (present) CellIDCancelledNR_Item mw_cellIDCancelledNR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDCancelledNR_Item - template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_NPN_PagingAssistanceInformation( - template (present) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation := ? - ) := { - { - id := id_NPN_PagingAssistanceInformation, - criticality := ignore, - extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } - } - } // End of template mw_assistanceDataForPaging_NPN_PagingAssistanceInformation + template (present) CellIDListForRestart mw_cellIDListForRestart_eUTRA_CGIListforRestart( + template (present) EUTRA_CGIList p_eUTRA_CGIListforRestart := ? + ) := { + eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart + } // End of template mw_cellIDListForRestart_misc - template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE( - template (present) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE := ? - ) := { - { - id := id_PagingAssisDataforCEcapabUE, - criticality := ignore, - extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } - } - } // End of template mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE + template (present) CellIDListForRestart mw_cellIDListForRestart_nR_CGIListforRestart( + template (present) NR_CGIList p_nR_CGIListforRestart := ? + ) := { + nR_CGIListforRestart := p_nR_CGIListforRestart + } // End of template mw_cellIDListForRestart_nR_CGIListforRestart - template (present) AssistanceDataForRecommendedCells mw_assistanceDataForRecommendedCells( - template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, - template AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := * - ) := { - recommendedCellsForPaging := p_recommendedCellsForPaging, - iE_Extensions := p_iE_Extensions - } // End of template mw_assistanceDataForRecommendedCells + template (present) CellIDListForRestart mw_cellIDListForRestart_ext( + template (present) CellIDListForRestart.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cellIDListForRestart_ext - template (present) AssociatedMBSQosFlowSetupRequestItem mw_associatedMBSQosFlowSetupRequestItem( - template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, - template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, - template AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, - associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template mw_associatedMBSQosFlowSetupRequestItem + template (present) CellSize mw_cellSize(template (present) CellSize p_value := ?) := p_value; - template (present) AssociatedMBSQosFlowSetuporModifyRequestItem mw_associatedMBSQosFlowSetuporModifyRequestItem( - template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, - template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, - template AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, - associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template mw_associatedMBSQosFlowSetuporModifyRequestItem + template (present) CellType mw_cellType( + template (present) CellSize p_cellSize:= ?, + template CellType.iE_Extensions p_iE_Extensions := * + ) := { + cellSize := p_cellSize, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellType - template (present) AssociatedQosFlowItem mw_associatedQosFlowItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := *, - template AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - qosFlowMappingIndication := p_qosFlowMappingIndication, - iE_Extensions := p_iE_Extensions - } // End of template mw_associatedQosFlowItem + template (present) CEmodeBSupport_Indicator mw_cEmodeBSupport_Indicator(template (present) CEmodeBSupport_Indicator p_value := ?) := p_value; + template (present) CEmodeBrestricted mw_cEmodeBrestricted(template (present) CEmodeBrestricted p_value := ?) := p_value; - template (present) AssociatedQosFlowItem.iE_Extensions mw_associatedQosFlowItem_alternativeQoSParaSetIndex( - template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template mw_associatedQosFlowItem_alternativeQoSParaSetIndex + template CNAssistedRANTuning mw_cNAssistedRANTuning( + template ExpectedUEBehaviour p_expectedUEBehaviour := *, + template CNAssistedRANTuning.iE_Extensions p_iE_Extensions := * + ) := { + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template mw_cNAssistedRANTuning - template (present) AuthenticatedIndication mw_authenticatedIndication(template (present) AuthenticatedIndication p_value := true_) := p_value; + template (present) CNTypeRestrictionsForEquivalentItem mw_cNTypeRestrictionsForEquivalentItem( + template (present) PLMNIdentity p_plmnIdentity := ?, + template (present) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type := ?, + template CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := * + ) := { + plmnIdentity := p_plmnIdentity, + cn_Type := p_cn_Type, + iE_Extensions := p_iE_Extensions + } // End of template mw_cNTypeRestrictionsForEquivalentItem - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_NR_cellBased( - template (present) CellBasedMDT_NR p_cellBased := ? - ) := { - cellBased := p_cellBased - } // End of template mw_areaScopeOfMDT_cellBased + template (present) CNTypeRestrictionsForServing mw_cNTypeRestrictionsForServing(template (present) CNTypeRestrictionsForServing p_value := ?) := p_value; - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tABased( - template (present) TABasedMDT p_tABased := ? - ) := { - tABased := p_tABased - } // End of template mw_areaScopeOfMDT_tABased + template (present) CompletedCellsInEAI_EUTRA_Item mw_completedCellsInEAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInEAI_EUTRA_Item - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_pLMNWide := { - pLMNWide := NULL - } // End of template mw_areaScopeOfMDT_pLMNWide + template (present) CompletedCellsInEAI_NR_Item mw_completedCellsInEAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInEAI_NR_Item - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tAIBased( - template (present) TAIBasedMDT p_tAIBased := ? - ) := { - tAIBased := p_tAIBased - } // End of template mw_areaScopeOfMDT_tAIBased + template (present) CompletedCellsInTAI_EUTRA_Item mw_completedCellsInTAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInTAI_EUTRA_Item - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_ext( - template (present) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_areaScopeOfMDT_ext + template (present) CompletedCellsInTAI_NR_Item mw_completedCellsInTAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInTAI_NR_Item - template (present) AreaScopeOfNeighCellsItem mw_areaScopeOfNeighCellsItem( - template (present) NRFrequencyInfo p_nrFrequencyInfo := ?, - template PCIListForMDT p_pciListForMDT := *, - template AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := * - ) := { - nrFrequencyInfo := p_nrFrequencyInfo, - pciListForMDT := p_pciListForMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaScopeOfNeighCellsItem + template (present) ConcurrentWarningMessageInd mw_concurrentWarningMessageInd(template (present) ConcurrentWarningMessageInd p_value := true_) := p_value; + template (present) ConfidentialityProtectionIndication mw_confidentialityProtectionIndication(template (present) ConfidentialityProtectionIndication p_value := ?) := p_value; + template (present) ConfidentialityProtectionResult mw_confidentialityProtectionResult(template (present) ConfidentialityProtectionResult p_value := ?) := p_value; + template (present) ConfiguredTACIndication mw_configuredTACIndication(template (present) ConfiguredTACIndication p_value := true_) := p_value; - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_cellBased( - template (present) CellBasedQMC p_cellBased := ? - ) := { - cellBased := p_cellBased - } // End of template mw_areaScopeOfQMC_cellBased + template (present) CoreNetworkAssistanceInformationForInactive mw_coreNetworkAssistanceInformationForInactive( + template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, + template (present) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := ?, + template (present) TAIListForInactive p_tAIListForInactive := ?, + template PagingDRX p_uESpecificDRX := *, + template MICOModeIndication p_mICOModeIndication := *, + template ExpectedUEBehaviour p_expectedUEBehaviour := *, + template CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := * + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + uESpecificDRX := p_uESpecificDRX, + periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, + mICOModeIndication := p_mICOModeIndication, + tAIListForInactive := p_tAIListForInactive, + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template mw_coreNetworkAssistanceInformationForInactive - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tABased( - template (present) TABasedQMC p_tABased := ? - ) := { - tABased := p_tABased - } // End of template mw_areaScopeOfQMC_tABased + template (present) CoreNetworkAssistanceInformationForInactive.iE_Extensions mw_coreNetworkAssistanceInformationForInactive_paging( + template (present) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation := ?, + template (present) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue := ?, + template (present) UERadioCapabilityForPaging p_uERadioCapabilityForPaging := ?, + template (present) MicoAllPLMN p_micoAllPLMN := ? + ) := { + { + id := id_EUTRA_PagingeDRXInformation, + criticality := ignore, + extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } + }, + { + id := id_ExtendedUEIdentityIndexValue, + criticality := ignore, + extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } + }, + { + id := id_UERadioCapabilityForPaging, + criticality := ignore, + extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } + }, + { + id := id_MicoAllPLMN, + criticality := ignore, + extensionValue := { MicoAllPLMN := p_micoAllPLMN } + } + // TODO To be enhanced + } // End of template mw_coreNetworkAssistanceInformationForInactive_paging - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tAIBased( - template (present) TAIBasedQMC p_tAIBased := ? - ) := { - tAIBased := p_tAIBased - } // End of template mw_areaScopeOfQMC_tAIBased + template (present) COUNTValueForPDCP_SN12 mw_cOUNTValueForPDCP_SN12( + template (present) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12 := ?, + template (present) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12 := ?, + template COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := * + ) := { + pDCP_SN12 := p_pDCP_SN12, + hFN_PDCP_SN12 := p_hFN_PDCP_SN12, + iE_Extensions := p_iE_Extensions + } // End of template mw_cOUNTValueForPDCP_SN12 - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_pLMNAreaBased( - template (present) PLMNAreaBasedQMC p_pLMNAreaBased := ? - ) := { - pLMNAreaBased := p_pLMNAreaBased - } // End of template mw_areaScopeOfQMC_pLMNAreaBased + template (present) COUNTValueForPDCP_SN18 mw_cOUNTValueForPDCP_SN18( + template (present) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18 := ?, + template (present) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18 := ?, + template COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := * + ) := { + pDCP_SN18 := p_pDCP_SN18, + hFN_PDCP_SN18 := p_hFN_PDCP_SN18, + iE_Extensions := p_iE_Extensions + } // End of template mw_cOUNTValueForPDCP_SN18 + + template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_endpointIPAddress( + template (present) TransportLayerAddress p_endpointIPAddress := ? + ) := { + endpointIPAddress := p_endpointIPAddress + } // End of template mw_cPTransportLayerInformation_endpointIPAddress - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_ext( - template (present) AreaScopeOfQMC.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_choice_Extensions( + template (present) CPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_areaScopeOfQMC_ext + } // End of template mw_cPTransportLayerInformation_choice_Extensions - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_cellBased( - template (present) CellBasedMDT_EUTRA p_cellBased - ) := { - cellBased := p_cellBased - } // End of template mw_areaScopeOfMDT_EUTRA_cellBased + template (present) CPTransportLayerInformation.choice_Extensions mw_cPTransportLayerInformation_ext( + template (present) EndpointIPAddressAndPort p_EndpointIPAddressAndPort := ? + ) := { + id := id_EndpointIPAddressAndPort, + criticality := reject, + value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } + } // End of template mw_cPTransportLayerInformation_ext - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tABased( - template (present) TABasedMDT p_tABased - ) := { - tABased := p_tABased - } // End of template mw_areaScopeOfMDT_EUTRA_tABased + template CriticalityDiagnostics mw_criticalityDiagnostics( + template ProcedureCode p_procedureCode := *, + template TriggeringMessage p_triggeringMessage := *, + template Criticality p_procedureCriticality := *, + template CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := *, + template CriticalityDiagnostics.iE_Extensions p_iE_Extensions := * + ) := { + procedureCode := p_procedureCode, + triggeringMessage := p_triggeringMessage, + procedureCriticality := p_procedureCriticality, + iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, + iE_Extensions := p_iE_Extensions + } // End of template mw_criticalityDiagnostics - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_pLMNWide := { - pLMNWide := NULL - } // End of template mw_areaScopeOfMDT_EUTRA_pLMNWide + template (present) CriticalityDiagnostics_IE_Item mw_criticalityDiagnostics_IE_Item( + template (present) Criticality p_iECriticality := ?, + template (present) ProtocolIE_ID p_iE_ID := ?, + template (present) TypeOfError p_typeOfError := ?, + template CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := * + ) := { + iECriticality := p_iECriticality, + iE_ID := p_iE_ID, + typeOfError := p_typeOfError, + iE_Extensions := p_iE_Extensions + } // End of template mw_criticalityDiagnostics_IE_Item - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tAIBased( - template (present) TAIBasedMDT p_tAIBased - ) := { - tAIBased := p_tAIBased - } // End of template mw_areaScopeOfMDT_EUTRA_tAIBased + template (present) CellBasedMDT_NR mw_cellBasedMDT_NR( + in template (present) CellIdListforMDT_NR p_cellIdListforMDT := ?, + in template CellBasedMDT_NR.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedMDT_NR - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_ext( - template (present) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_areaScopeOfMDT_EUTRA_ext + template (present) CellBasedMDT_EUTRA mw_cellBasedMDT_EUTRA( + template (present) CellIdListforMDT_EUTRA p_cellIdListforMDT := ?, + template CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedMDT_EUTRA - template AvailableRANVisibleQoEMetrics mw_availableRANVisibleQoEMetrics( - template AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := *, - template AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := *, - template AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := * - ) := { - applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, - playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, - iE_Extensions := p_iE_Extensions - } // End of template mw_availableRANVisibleQoEMetrics + template (present) CellBasedQMC mw_cellBasedQMC( + template (present) CellIdListforQMC p_cellIdListforQMC := ?, + template CellBasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforQMC := p_cellIdListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedQMC - template BeamMeasurementsReportConfiguration mw_beamMeasurementsReportConfiguration( - template BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := *, - template MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := *, - template BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := * - ) := { - beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, - maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, - iE_Extensions := p_iE_Extensions - } // End of template mw_beamMeasurementsReportConfiguration + template (present) DataForwardingNotPossible mw_DataForwardingNotPossible(template (present) DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; - template BeamMeasurementsReportQuantity mw_beamMeasurementsReportQuantity( - template BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, - template BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, - template BeamMeasurementsReportQuantity.sINR p_sINR := true_, - template BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := * - ) := { - rSRP := p_rSRP, - rSRQ := p_rSRQ, - sINR := p_sINR, - iE_Extensions := p_iE_Extensions - } // End of template mw_beamMeasurementsReportQuantity + template (present) DataForwardingAccepted mw_dataForwardingAccepted(template (present) DataForwardingAccepted p_value := ?) := p_value; - template (present) BitRate mw_bitRate (template (present) BitRate p_value := ?) := p_value; + template (present) DataForwardingResponseDRBItem mw_dataForwardingResponseDRBItem( + template (present) DRB_ID p_dRB_ID := ?, + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template UPTransportLayerInformation p_uLForwardingUP_TNLInformation := *, + template DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := * + ) := { + dRB_ID := p_dRB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_dataForwardingResponseDRBItem - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledEUTRA( - template (present) CellIDCancelledEUTRA p_cellIDCancelledEUTRA := ? - ) := { - cellIDCancelledEUTRA := p_cellIDCancelledEUTRA - } // End of template mw_broadcastCancelledAreaList_cellIDCancelledEUTRA + template (present) DAPSRequestInfo mw_dAPSRequestInfo( + template (present) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, + template DAPSRequestInfo.iE_Extensions p_iE_Extensions := * + ) := { + dAPSIndicator := p_dAPSIndicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_dAPSRequestInfo - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledEUTRA( - template (present) TAICancelledEUTRA p_tAICancelledEUTRA := ? - ) := { - tAICancelledEUTRA := p_tAICancelledEUTRA - } // End of template mw_broadcastCancelledAreaList_tAICancelledEUTRA + template (present) DAPSResponseInfoItem mw_dAPSResponseInfoItem( + template (present) DRB_ID p_dRB_ID := ?, + template (present) DAPSResponseInfo p_dAPSResponseInfo := ?, + template DAPSResponseInfoItem.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + dAPSResponseInfo := p_dAPSResponseInfo, + iE_Extension := p_iE_Extension + } // End of template mw_dAPSResponseInfoItem - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( - template (present) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA := ? - ) := { - emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA - } // End of template mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA + template (present) DAPSResponseInfo mw_dAPSResponseInfo( + template (present) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator := ?, + template DAPSResponseInfo.iE_Extensions p_iE_Extensions := * + ) := { + dapsresponseindicator := p_dapsresponseindicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_dAPSResponseInfo - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledNR( - template (present) CellIDCancelledNR p_cellIDCancelledNR := ? - ) := { - cellIDCancelledNR := p_cellIDCancelledNR - } // End of template mw_broadcastCancelledAreaList_cellIDCancelledNR + template (present) DataForwardingResponseERABListItem mw_DataForwardingResponseERABListItem( + template (present) E_RAB_ID p_e_RAB_ID := ?, + template (present) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := ?, + template DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := * + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_DataForwardingResponseERABListItem - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledNR( - template (present) TAICancelledNR p_tAICancelledNR := ? - ) := { - tAICancelledNR := p_tAICancelledNR - } // End of template mw_broadcastCancelledAreaList_tAICancelledNR + template (present) DelayCritical mw_delayCritical(template (present) DelayCritical p_value := ?) := p_value; - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( - template (present) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR := ? - ) := { - emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR - } // End of template mw_broadcastCancelledAreaList_ext + template (present) DL_CP_SecurityInformation mw_dL_CP_SecurityInformation( + template (present) DL_NAS_MAC p_dl_NAS_MAC := ?, + template DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * + ) := { + dl_NAS_MAC := p_dl_NAS_MAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_dL_CP_SecurityInformation - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_ext( - template (present) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_broadcastCancelledAreaList_ext + template (present) DLForwarding mw_dLForwarding(template (present) DLForwarding p_value := dl_forwarding_proposed) := p_value; - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastEUTRA( - template (present) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA - ) := { - cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA - } // End of template mw_broadcastCompletedAreaList_cellIDCancelledEUTRA + template (present) DL_NGU_TNLInformationReused mw_dL_NGU_TNLInformationReused(template (present) DL_NGU_TNLInformationReused p_value := true_) := p_value; - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastEUTRA( - template (present) TAIBroadcastEUTRA p_tAIBroadcastEUTRA - ) := { - tAIBroadcastEUTRA := p_tAIBroadcastEUTRA - } // End of template mw_broadcastCompletedAreaList_tAIBroadcastEUTRA + template (present) DirectForwardingPathAvailability mw_directForwardingPathAvailability(template (present) DirectForwardingPathAvailability p_value := direct_path_available) := p_value; - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( - template (present) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA - ) := { - emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA - } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA + template (present) DRBsSubjectToStatusTransferItem mw_dRBsSubjectToStatusTransferItem( + in template (present) DRB_ID p_dRB_ID := ?, + in template (present) DRBStatusUL p_dRBStatusUL := ?, + in template (present) DRBStatusDL p_dRBStatusDL := ?, + in template DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + dRBStatusUL := p_dRBStatusUL, + dRBStatusDL := p_dRBStatusDL, + iE_Extension := p_iE_Extension + } // End of template mw_dRBsSubjectToStatusTransferItem - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastNR( - template (present) CellIDBroadcastNR p_cellIDBroadcastNR - ) := { - cellIDBroadcastNR := p_cellIDBroadcastNR - } // End of template mw_broadcastCompletedAreaList_cellIDBroadcastNR + template (present) DRBsSubjectToStatusTransferItem.iE_Extension mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList( + template (present) AssociatedQosFlowList p_AssociatedQosFlowList := ? + ) := { + { + id := id_OldAssociatedQosFlowList_ULendmarkerexpected, + criticality := ignore, + extensionValue := { AssociatedQosFlowList := p_AssociatedQosFlowList } + } + } // End of template mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastNR( - template (present) TAIBroadcastNR p_tAIBroadcastNR - ) := { - tAIBroadcastNR := p_tAIBroadcastNR - } // End of template mw_broadcastCompletedAreaList_tAIBroadcastNR + template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL12( + template (present) DRBStatusDL12 p_dRBStatusDL12 := ? + ) := { + dRBStatusDL12 := p_dRBStatusDL12 + } // End of template mw_dRBStatusDL_dRBStatusDL12 - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( - template (present) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR - ) := { - emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR - } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR + template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL18( + template (present) DRBStatusDL18 p_dRBStatusDL18 := ? + ) := { + dRBStatusDL18 := p_dRBStatusDL18 + } // End of template mw_dRBStatusDL_dRBStatusDL18 - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_ext( - template (present) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions - ) := { + template (present) DRBStatusDL mw_dRBStatusDL_choice_Extensions( + template (present) DRBStatusDL.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_broadcastCompletedAreaList_ext + } // End of template mw_dRBStatusDL_choice_Extensions - template (present) BroadcastPLMNItem mw_ie_broadcastPLMNItem( - template (present) PLMNIdentity p_plmnId := ?, - template (present) SliceSupportList p_ssl := ?, - template BroadcastPLMNItem.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_plmnId, - tAISliceSupportList := p_ssl, - iE_Extensions := p_iE_Extensions - } // End of template mw_ie_broadcastPLMNItem + template (present) DRBStatusDL12 mw_dRBStatusDL12( + template (present) COUNTValueForPDCP_SN12 p_dL_COUNTValue := ?, + template DRBStatusDL12.iE_Extension p_iE_Extension := * + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusDL12 - template (present) BluetoothMeasurementConfiguration mw_bluetoothMeasurementConfiguration( - template (present) BluetoothMeasConfig p_bluetoothMeasConfig := ?, - template BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := *, - template BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := *, - template BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := * - ) := { - bluetoothMeasConfig := p_bluetoothMeasConfig, - bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, - bt_rssi := p_bt_rssi, - iE_Extensions := p_iE_Extensions - } // End of template mw_bluetoothMeasurementConfiguration + template (present) DRBStatusDL18 mw_dRBStatusDL18( + template (present) COUNTValueForPDCP_SN18 p_dL_COUNTValue := ?, + template DRBStatusDL18.iE_Extension p_iE_Extension := * + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusDL18 - template (present) BluetoothMeasConfigNameItem mw_bluetoothMeasConfigNameItem( - template (present) BluetoothName p_bluetoothName := ?, - template BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := * - ) := { - bluetoothName := p_bluetoothName, - iE_Extensions := p_iE_Extensions - } // End of template mw_bluetoothMeasConfigNameItem + template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL12( + template (present) DRBStatusUL12 p_dRBStatusUL12 := ? + ) := { + dRBStatusUL12 := p_dRBStatusUL12 + } // End of template mw_dRBStatusUL_dRBStatusUL12 - template (present) BluetoothMeasConfig mw_bluetoothMeasConfig(template (present) BluetoothMeasConfig p_value := setup) := p_value; + template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL18( + template (present) DRBStatusUL18 p_dRBStatusUL18 := ? + ) := { + dRBStatusUL18 := p_dRBStatusUL18 + } // End of template mw_dRBStatusUL_dRBStatusUL18 - template (present) CancelAllWarningMessages mw_cancelAllWarningMessages(template (present) CancelAllWarningMessages p_value := true_) := p_value; + template (present) DRBStatusUL mw_dRBStatusUL_choice_Extensions( + template (present) DRBStatusUL.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_dRBStatusUL_choice_Extensions + template (present) DRBStatusUL12 mw_dRBStatusUL12( + template (present) COUNTValueForPDCP_SN12 p_uL_COUNTValue := ?, + template DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, + template DRBStatusUL12.iE_Extension p_iE_Extension := * + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusUL12 - template (present) CancelledCellsInEAI_EUTRA_Item mw_cancelledCellsInEAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cancelledCellsInEAI_EUTRA_Item + template (present) DRBStatusUL18 mw_dRBStatusUL18( + template (present) COUNTValueForPDCP_SN18 p_uL_COUNTValue := ?, + template DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, + template DRBStatusUL18.iE_Extension p_iE_Extension := * + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusUL18 - template (present) CancelledCellsInEAI_NR_Item mw_cancelledCellsInEAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cancelledCellsInEAI_NR_Item + template (present) DRBsToQosFlowsMappingItem mw_dRBsToQosFlowsMappingItem( + template (present) DRB_ID p_dRB_ID := ?, + template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, + template DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := * + ) := { + dRB_ID := p_dRB_ID, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template mw_dRBsToQosFlowsMappingItem - template (present) CancelledCellsInTAI_EUTRA_Item mw_cancelledCellsInTAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cancelledCellsInTAI_EUTRA_Item + template (present) DRBsToQosFlowsMappingItem.iE_Extensions mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo( + template (present) DAPSRequestInfo p_dAPSRequestInfo := ? + ) := { + { + id := id_DAPSRequestInfo, + criticality := ignore, + extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } + } + } // End of template mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo - template (present) CancelledCellsInTAI_NR_Item mw_CancelledCellsInTAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_CancelledCellsInTAI_NR_Item + template (present) Dynamic5QIDescriptor mw_dynamic5QIDescriptor( + template (present) PriorityLevelQos p_priorityLevelQos := ?, + template (present) PacketDelayBudget p_packetDelayBudget := ?, + template (present) PacketErrorRate p_packetErrorRate := ?, + template FiveQI p_fiveQI := *, + template DelayCritical p_delayCritical := *, + template AveragingWindow p_averagingWindow := *, + template MaximumDataBurstVolume p_maximumDataBurstVolume := *, + template Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * + ) := { + priorityLevelQos := p_priorityLevelQos, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + fiveQI := p_fiveQI, + delayCritical := p_delayCritical, + // The above IE shall be present in case of GBR QoS flow + averagingWindow := p_averagingWindow, + // The above IE shall be present in case of GBR QoS flow + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template mw_dynamic5QIDescriptor - template (present) CandidateCellItem mw_candidateCellItem( - template (present) CandidateCell p_candidateCell := ?, - template CandidateCellItem.iE_Extensions p_iE_Extensions := * - ) := { - candidateCell := p_candidateCell, - iE_Extensions := p_iE_Extensions - } // End of template mw_candidateCellItem + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_extendedPacketDelayBudget( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_ExtendedPacketDelayBudget, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_extendedPacketDelayBudget - template (present) CandidateCell mw_candidateCell_candidateCGI( - template (present) CandidateCellID p_candidateCGI := ? - ) := { - candidateCGI := p_candidateCGI - } // End of template mw_candidateCell_candidateCGI + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL - template (present) CandidateCell mw_candidateCell_candidatePCI( - template (present) CandidatePCI p_candidatePCI := ? - ) := { - candidatePCI := p_candidatePCI - } // End of template mw_candidateCell_candidatePCI + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL - template (present) CandidateCell mw_candidateCell_ext( - template (present) CandidateCell.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) EarlyMeasurement mw_earlyMeasurement(template (present) EarlyMeasurement p_value := true_) := p_value; + + template (present) EarlyStatusTransfer_TransparentContainer mw_earlyStatusTransfer_TransparentContainer( + template (present) ProcedureStageChoice p_procedureStage := ?, + template EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * + ) := { + procedureStage := p_procedureStage, + iE_Extensions := p_iE_Extensions + } // End of template mw_earlyStatusTransfer_TransparentContainer + + template (present) ProcedureStageChoice mw_procedureStageChoice_firstDLCount( + template (present) FirstDLCount p_firstDLCount := ? + ) := { + first_dl_count := p_firstDLCount + } // End of template mw_procedureStageChoice_firstDLCount + + template (present) ProcedureStageChoice mw_procedureStageChoice_choice_Extensions( + template (present) ProcedureStageChoice.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_candidateCell_ext + } // End of template mw_procedureStageChoice_choice_Extensions - template (present) CandidatePCI mw_candidatePCI( - template (present) CandidatePCI.candidatePCI p_candidatePCI := ?, - template (present) CandidatePCI.candidateNRARFCN p_candidateNRARFCN := ?, - template CandidatePCI.iE_Extensions p_iE_Extensions := * + template (present) FirstDLCount mw_firstDLCount( + template (present) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer := ?, + template FirstDLCount.iE_Extension p_iE_Extension := * ) := { - candidatePCI := p_candidatePCI, - candidateNRARFCN := p_candidateNRARFCN, - iE_Extensions := p_iE_Extensions - } // End of template mw_candidatePCI - - template (present) Cause mw_cause_radioNetwork( - template (present) CauseRadioNetwork p_radioNetwork - ) := { - radioNetwork := p_radioNetwork - } // End of template mw_cause_radioNetwork + dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, + iE_Extension := p_iE_Extension + } // End of template mw_firstDLCount - template (present) Cause mw_cause_transport( - template (present) CauseTransport p_transport - ) := { - transport := p_transport - } // End of template mw_cause_transport + template (present) DRBsSubjectToEarlyStatusTransfer_Item mw_dRBsSubjectToEarlyStatusTransfer_Item( + template (present) DRB_ID p_dRB_ID := ?, + template (present) DRBStatusDL p_firstDLCOUNT := ?, + template DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + firstDLCOUNT := p_firstDLCOUNT, + iE_Extension := p_iE_Extension + } // End of template mw_dRBsSubjectToEarlyStatusTransfer_Item - template (present) Cause mw_cause_nas( - template (present) CauseNas p_nas - ) := { - nas := p_nas - } // End of template mw_cause_nas + template (present) EDT_Session mw_eDT_Session(template (present) EDT_Session p_value := true_) := p_value; - template (present) Cause mw_cause_protocol( - template (present) CauseProtocol p_protocol - ) := { - protocol := p_protocol - } // End of template mw_cause_protocol + template (present) EmergencyAreaIDBroadcastEUTRA_Item mw_emergencyAreaIDBroadcastEUTRA_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA := ?, + template EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDBroadcastEUTRA_Item - template (present) Cause mw_cause_misc( - template (present) CauseMisc p_misc - ) := { - misc := p_misc - } // End of template mw_cause_misc + template (present) EmergencyAreaIDBroadcastNR_Item mw_emergencyAreaIDBroadcastNR_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CompletedCellsInEAI_NR p_completedCellsInEAI_NR := ?, + template EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_NR := p_completedCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDBroadcastNR_Item - template (present) Cause mw_cause_ext( - template (present) Cause.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_cause_ext + template (present) EmergencyAreaIDCancelledEUTRA_Item mw_emergencyAreaIDCancelledEUTRA_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA := ?, + template EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDCancelledEUTRA_Item - template (present) CauseMisc mw_causeMisc(template (present) CauseMisc p_value := ?) := p_value; - template (present) CauseNas mw_causeNas(template (present) CauseNas p_value := ?) := p_value; - template (present) CauseProtocol mw_causeProtocol(template (present) CauseProtocol p_value := ?) := p_value; - template (present) CauseRadioNetwork mww_causeRadioNetwork(template (present) CauseRadioNetwork p_value := ?) := p_value; - template (present) CauseTransport mw_causeTransport(template (present) CauseTransport p_value := ?) := p_value; + template (present) EmergencyAreaIDCancelledNR_Item mw_emergencyAreaIDCancelledNR_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR := ?, + template EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDCancelledNR_Item - template (present) Cell_CAGInformation mw_cell_CAGInformation( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template (present) CellCAGList p_cellCAGList := ?, - template Cell_CAGInformation.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - cellCAGList := p_cellCAGList, - iE_Extensions := p_iE_Extensions - } // End of template mw_cell_CAGInformation + template (present) EmergencyFallbackIndicator mw_emergencyFallbackIndicator( + template (present) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator := ?, + template EmergencyServiceTargetCN p_emergencyServiceTargetCN := *, + template EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := * + ) := { + emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, + emergencyServiceTargetCN := p_emergencyServiceTargetCN, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyFallbackIndicator - template (present) CellIDBroadcastEUTRA_Item mw_cellIDBroadcastEUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDBroadcastEUTRA_Item + template (present) EmergencyFallbackRequestIndicator mw_emergencyFallbackRequestIndicator(template (present) EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; - template (present) CellIDBroadcastNR_Item mw_cellIDBroadcastNR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDBroadcastNR_Item + template (present) EmergencyServiceTargetCN mw_emergencyServiceTargetCN(template (present) EmergencyServiceTargetCN p_value := ?) := p_value; - template (present) CellIDCancelledEUTRA_Item mw_cellIDCancelledEUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDCancelledEUTRA_Item + template (present) ENB_ID mw_eNB_ID_macroENB_ID( + template (present) Bit20 p_macroENB_ID := ? + ) := { + macroENB_ID := p_macroENB_ID + } // End of template mw_eNB_ID_macroENB_ID - template (present) CellIDCancelledNR_Item mw_cellIDCancelledNR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDCancelledNR_Item + template (present) ENB_ID mw_eNB_ID_homeENB_ID( + template (present) Bit28 p_homeENB_ID := ? + ) := { + homeENB_ID := p_homeENB_ID + } // End of template mw_eNB_ID_homeENB_ID - template (present) CellIDListForRestart mw_cellIDListForRestart_eUTRA_CGIListforRestart( - template (present) EUTRA_CGIList p_eUTRA_CGIListforRestart := ? - ) := { - eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart - } // End of template mw_cellIDListForRestart_misc + template (present) ENB_ID mw_eNB_ID_short_macroENB_ID( + template (present) Bit18 p_short_macroENB_ID := ? + ) := { + short_macroENB_ID := p_short_macroENB_ID + } // End of template mw_eNB_ID_short_macroENB_ID - template (present) CellIDListForRestart mw_cellIDListForRestart_nR_CGIListforRestart( - template (present) NR_CGIList p_nR_CGIListforRestart := ? - ) := { - nR_CGIListforRestart := p_nR_CGIListforRestart - } // End of template mw_cellIDListForRestart_nR_CGIListforRestart + template (present) ENB_ID mw_eNB_ID_long_macroENB_ID( + template (present) Bit21 p_long_macroENB_ID := ? + ) := { + long_macroENB_ID := p_long_macroENB_ID + } // End of template mw_eNB_ID_long_macroENB_ID - template (present) CellIDListForRestart mw_cellIDListForRestart_ext( - template (present) CellIDListForRestart.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) ENB_ID mw_eNB_ID_choice_Extensions( + template (present) ENB_ID.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_cellIDListForRestart_ext + } // End of template mw_eNB_ID_choice_Extensions - template (present) CellSize mw_cellSize(template (present) CellSize p_value := ?) := p_value; + template (present) Enhanced_CoverageRestriction mw_enhanced_CoverageRestriction(template (present) Enhanced_CoverageRestriction p_value := restricted) := p_value; - template (present) CellType mw_cellType( - template (present) CellSize p_cellSize:= ?, - template CellType.iE_Extensions p_iE_Extensions := * - ) := { - cellSize := p_cellSize, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellType + template (present) EndpointIPAddressAndPort mw_endpointIPAddressAndPort( + template (present) TransportLayerAddress p_endpointIPAddress := ?, + template (present) PortNumber p_portNumber := ?, + template EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := * + ) := { + endpointIPAddress := p_endpointIPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_endpointIPAddressAndPort - template (present) CEmodeBSupport_Indicator mw_cEmodeBSupport_Indicator(template (present) CEmodeBSupport_Indicator p_value := ?) := p_value; - template (present) CEmodeBrestricted mw_cEmodeBrestricted(template (present) CEmodeBrestricted p_value := ?) := p_value; + template (present) EndIndication mw_endIndication(template (present) EndIndication p_value := ?) := p_value; - template CNAssistedRANTuning mw_cNAssistedRANTuning( - template ExpectedUEBehaviour p_expectedUEBehaviour := *, - template CNAssistedRANTuning.iE_Extensions p_iE_Extensions := * - ) := { - expectedUEBehaviour := p_expectedUEBehaviour, - iE_Extensions := p_iE_Extensions - } // End of template mw_cNAssistedRANTuning + template (present) EPS_TAI mw_ePS_TAI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) EPS_TAC p_ePS_TAC := ?, + template EPS_TAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + ePS_TAC := p_ePS_TAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_ePS_TAI - template (present) CNTypeRestrictionsForEquivalentItem mw_cNTypeRestrictionsForEquivalentItem( - template (present) PLMNIdentity p_plmnIdentity := ?, - template (present) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type := ?, - template CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := * - ) := { - plmnIdentity := p_plmnIdentity, - cn_Type := p_cn_Type, + template (present) E_RABInformationItem mw_e_RABInformationItem( + template (present) E_RAB_ID p_e_RAB_ID := ?, + template (present) DLForwarding p_dLForwarding := ?, + template E_RABInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwarding := p_dLForwarding, iE_Extensions := p_iE_Extensions - } // End of template mw_cNTypeRestrictionsForEquivalentItem + } // End of template mw_e_RABInformationItem - template (present) CNTypeRestrictionsForServing mw_cNTypeRestrictionsForServing(template (present) CNTypeRestrictionsForServing p_value := ?) := p_value; + template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_e_RABInformationItem_id_SourceTNLAddrInfo - template (present) CompletedCellsInEAI_EUTRA_Item mw_completedCellsInEAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInEAI_EUTRA_Item + template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo + + template (present) EUTRA_CGI mw_uUTRA_CGI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) EUTRACellIdentity p_eUTRACellIdentity := ?, + template EUTRA_CGI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + eUTRACellIdentity := p_eUTRACellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template mw_uUTRA_CGI - template (present) CompletedCellsInEAI_NR_Item mw_completedCellsInEAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * + template (present) EUTRA_PagingeDRXInformation mw_eUTRA_PagingeDRXInformation( + template (present) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle := ?, + template EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := *, + template EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInEAI_NR_Item + eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, + eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRA_PagingeDRXInformation - template (present) CompletedCellsInTAI_EUTRA_Item mw_completedCellsInTAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInTAI_EUTRA_Item + template (present) EUTRA_Paging_eDRX_Cycle mw_eUTRA_Paging_eDRX_Cycle(template (present) EUTRA_Paging_eDRX_Cycle p_value := ?) := p_value; - template (present) CompletedCellsInTAI_NR_Item mw_completedCellsInTAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInTAI_NR_Item + template (present) EUTRA_Paging_Time_Window mw_eUTRA_Paging_Time_Window(template (present) EUTRA_Paging_Time_Window p_value := ?) := p_value; - template (present) ConcurrentWarningMessageInd mw_concurrentWarningMessageInd(template (present) ConcurrentWarningMessageInd p_value := true_) := p_value; - template (present) ConfidentialityProtectionIndication mw_confidentialityProtectionIndication(template (present) ConfidentialityProtectionIndication p_value := ?) := p_value; - template (present) ConfidentialityProtectionResult mw_confidentialityProtectionResult(template (present) ConfidentialityProtectionResult p_value := ?) := p_value; - template (present) ConfiguredTACIndication mw_configuredTACIndication(template (present) ConfiguredTACIndication p_value := true_) := p_value; + template (present) EventType mw_eventType(template (present) EventType p_value := ?) := p_value; - template (present) CoreNetworkAssistanceInformationForInactive mw_coreNetworkAssistanceInformationForInactive( - template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, - template (present) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := ?, - template (present) TAIListForInactive p_tAIListForInactive := ?, - template PagingDRX p_uESpecificDRX := *, - template MICOModeIndication p_mICOModeIndication := *, - template ExpectedUEBehaviour p_expectedUEBehaviour := *, - template CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := * - ) := { - uEIdentityIndexValue := p_uEIdentityIndexValue, - uESpecificDRX := p_uESpecificDRX, - periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, - mICOModeIndication := p_mICOModeIndication, - tAIListForInactive := p_tAIListForInactive, - expectedUEBehaviour := p_expectedUEBehaviour, + template (present) ExcessPacketDelayThresholdItem mw_excessPacketDelayThresholdItem( + template (present) FiveQI p_fiveQi := ?, + template (present) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue := ?, + template ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := * + ) := { + fiveQi := p_fiveQi, + excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, iE_Extensions := p_iE_Extensions - } // End of template mw_coreNetworkAssistanceInformationForInactive + } // End of template mw_excessPacketDelayThresholdItem - template (present) CoreNetworkAssistanceInformationForInactive.iE_Extensions mw_coreNetworkAssistanceInformationForInactive_paging( - template (present) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation := ?, - template (present) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue := ?, - template (present) UERadioCapabilityForPaging p_uERadioCapabilityForPaging := ?, - template (present) MicoAllPLMN p_micoAllPLMN := ? - ) := { - { - id := id_EUTRA_PagingeDRXInformation, - criticality := ignore, - extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } - }, - { - id := id_ExtendedUEIdentityIndexValue, - criticality := ignore, - extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } - }, - { - id := id_UERadioCapabilityForPaging, - criticality := ignore, - extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } - }, - { - id := id_MicoAllPLMN, - criticality := ignore, - extensionValue := { MicoAllPLMN := p_micoAllPLMN } - } - // TODO To be enhanced - } // End of template mw_coreNetworkAssistanceInformationForInactive_paging + template (present) ExcessPacketDelayThresholdValue mw_excessPacketDelayThresholdValue(template (present) ExcessPacketDelayThresholdValue p_value := ?) := p_value; - template (present) COUNTValueForPDCP_SN12 mw_cOUNTValueForPDCP_SN12( - template (present) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12 := ?, - template (present) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12 := ?, - template COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := * - ) := { - pDCP_SN12 := p_pDCP_SN12, - hFN_PDCP_SN12 := p_hFN_PDCP_SN12, - iE_Extensions := p_iE_Extensions - } // End of template mw_cOUNTValueForPDCP_SN12 + template (present) ExpectedHOInterval mw_expectedHOInterval(template (present) ExpectedHOInterval p_value := ?) := p_value; - template (present) COUNTValueForPDCP_SN18 mw_cOUNTValueForPDCP_SN18( - template (present) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18 := ?, - template (present) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18 := ?, - template COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := * + template ExpectedUEActivityBehaviour mw_expectedUEActivityBehaviour( + template ExpectedActivityPeriod p_expectedActivityPeriod := *, + template ExpectedIdlePeriod p_expectedIdlePeriod := *, + template SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := *, + template ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := * ) := { - pDCP_SN18 := p_pDCP_SN18, - hFN_PDCP_SN18 := p_hFN_PDCP_SN18, - iE_Extensions := p_iE_Extensions - } // End of template mw_cOUNTValueForPDCP_SN18 + expectedActivityPeriod := p_expectedActivityPeriod, + expectedIdlePeriod := p_expectedIdlePeriod, + sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_expectedUEActivityBehaviour - template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_endpointIPAddress( - template (present) TransportLayerAddress p_endpointIPAddress := ? - ) := { - endpointIPAddress := p_endpointIPAddress - } // End of template mw_cPTransportLayerInformation_endpointIPAddress + template ExpectedUEBehaviour mw_expectedUEBehaviour( + template ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := *, + template ExpectedHOInterval p_expectedHOInterval := *, + template ExpectedUEMobility p_expectedUEMobility := *, + template ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= *, + template ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := * + ) := { + expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, + expectedHOInterval := p_expectedHOInterval, + expectedUEMobility := p_expectedUEMobility, + expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEBehaviour - template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_choice_Extensions( - template (present) CPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_cPTransportLayerInformation_choice_Extensions + template (present) ExpectedUEMobility mw_expectedUEMobility(template (present) ExpectedUEMobility p_value := ?) := p_value; - template (present) CPTransportLayerInformation.choice_Extensions mw_cPTransportLayerInformation_ext( - template (present) EndpointIPAddressAndPort p_EndpointIPAddressAndPort := ? - ) := { - id := id_EndpointIPAddressAndPort, - criticality := reject, - value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } - } // End of template mw_cPTransportLayerInformation_ext + template (present) ExpectedUEMovingTrajectoryItem mw_expectedUEMovingTrajectoryItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := *, + template ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template mw_expectedUEMovingTrajectoryItem - template CriticalityDiagnostics mw_criticalityDiagnostics( - template ProcedureCode p_procedureCode := *, - template TriggeringMessage p_triggeringMessage := *, - template Criticality p_procedureCriticality := *, - template CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := *, - template CriticalityDiagnostics.iE_Extensions p_iE_Extensions := * - ) := { - procedureCode := p_procedureCode, - triggeringMessage := p_triggeringMessage, - procedureCriticality := p_procedureCriticality, - iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, - iE_Extensions := p_iE_Extensions - } // End of template mw_criticalityDiagnostics + template Extended_AMFName mw_extended_AMFName( + template AMFNameVisibleString p_aMFNameVisibleString := *, + template AMFNameUTF8String p_aMFNameUTF8String := *, + template Extended_AMFName.iE_Extensions p_iE_Extensions := * + ) := { + aMFNameVisibleString := p_aMFNameVisibleString, + aMFNameUTF8String := p_aMFNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template mw_extended_AMFName - template (present) CriticalityDiagnostics_IE_Item mw_criticalityDiagnostics_IE_Item( - template (present) Criticality p_iECriticality := ?, - template (present) ProtocolIE_ID p_iE_ID := ?, - template (present) TypeOfError p_typeOfError := ?, - template CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := * - ) := { - iECriticality := p_iECriticality, - iE_ID := p_iE_ID, - typeOfError := p_typeOfError, - iE_Extensions := p_iE_Extensions - } // End of template mw_criticalityDiagnostics_IE_Item + template Extended_RANNodeName mw_extended_RANNodeName( + template RANNodeNameVisibleString p_rANNodeNameVisibleString := *, + template RANNodeNameUTF8String p_rANNodeNameUTF8String := *, + template Extended_RANNodeName.iE_Extensions p_iE_Extensions := * + ) := { + rANNodeNameVisibleString := p_rANNodeNameVisibleString, + rANNodeNameUTF8String := p_rANNodeNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template mw_extended_RANNodeName - template (present) CellBasedMDT_NR mw_cellBasedMDT_NR( - in template (present) CellIdListforMDT_NR p_cellIdListforMDT := ?, - in template CellBasedMDT_NR.iE_Extensions p_iE_Extensions := * - ) := { - cellIdListforMDT := p_cellIdListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellBasedMDT_NR + template (present) ExtendedRATRestrictionInformation mw_extendedRATRestrictionInformation( + template (present) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction := ?, + template (present) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction := ?, + template ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := * + ) := { + primaryRATRestriction := p_primaryRATRestriction, + secondaryRATRestriction := p_secondaryRATRestriction, + iE_Extensions := p_iE_Extensions + } // End of template mw_extendedRATRestrictionInformation - template (present) CellBasedMDT_EUTRA mw_cellBasedMDT_EUTRA( - template (present) CellIdListforMDT_EUTRA p_cellIdListforMDT := ?, - template CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions := * - ) := { - cellIdListforMDT := p_cellIdListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellBasedMDT_EUTRA + template (present) EventTrigger mw_eventTrigger_outOfCoverage( + template (present) EventTrigger.outOfCoverage p_outOfCoverage := true_ + ) := { + outOfCoverage := p_outOfCoverage + } // End of template mw_eventTrigger_outOfCoverage - template (present) CellBasedQMC mw_cellBasedQMC( - template (present) CellIdListforQMC p_cellIdListforQMC := ?, - template CellBasedQMC.iE_Extensions p_iE_Extensions := * - ) := { - cellIdListforQMC := p_cellIdListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellBasedQMC + template (present) EventTrigger mw_eventTrigger_eventL1LoggedMDTConfig( + template (present) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig := ? + ) := { + eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig + } // End of template mw_eventTrigger_eventL1LoggedMDTConfig - template (present) DataForwardingNotPossible mw_DataForwardingNotPossible(template (present) DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; + template (present) EventTrigger mw_eventTrigger_choice_Extensions( + template (present) EventTrigger.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_eventTrigger_choice_Extensions + + template (present) EventL1LoggedMDTConfig mw_eventL1LoggedMDTConfig( + template (present) MeasurementThresholdL1LoggedMDT p_l1Threshold := ?, + template (present) Hysteresis p_hysteresis := ?, + template (present) TimeToTrigger p_timeToTrigger := ?, + template EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := * + ) := { + l1Threshold := p_l1Threshold, + hysteresis := p_hysteresis, + timeToTrigger := p_timeToTrigger, + iE_Extensions := p_iE_Extensions + } // End of template mw_eventL1LoggedMDTConfig - template (present) DataForwardingAccepted mw_dataForwardingAccepted(template (present) DataForwardingAccepted p_value := ?) := p_value; + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRP( + template (present) Threshold_RSRP p_threshold_RSRP := ? + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRP - template (present) DataForwardingResponseDRBItem mw_dataForwardingResponseDRBItem( - template (present) DRB_ID p_dRB_ID := ?, - template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, - template UPTransportLayerInformation p_uLForwardingUP_TNLInformation := *, - template DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := * - ) := { - dRB_ID := p_dRB_ID, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_dataForwardingResponseDRBItem + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRQ( + template (present) Threshold_RSRQ p_threshold_RSRQ := ? + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRQ - template (present) DAPSRequestInfo mw_dAPSRequestInfo( - template (present) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, - template DAPSRequestInfo.iE_Extensions p_iE_Extensions := * - ) := { - dAPSIndicator := p_dAPSIndicator, - iE_Extensions := p_iE_Extensions - } // End of template mw_dAPSRequestInfo + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_choice_Extensions( + template (present) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_measurementThresholdL1LoggedMDT_choice_Extensions - template (present) DAPSResponseInfoItem mw_dAPSResponseInfoItem( - template (present) DRB_ID p_dRB_ID := ?, - template (present) DAPSResponseInfo p_dAPSResponseInfo := ?, - template DAPSResponseInfoItem.iE_Extension p_iE_Extension := * - ) := { - dRB_ID := p_dRB_ID, - dAPSResponseInfo := p_dAPSResponseInfo, - iE_Extension := p_iE_Extension - } // End of template mw_dAPSResponseInfoItem + template (present) FailureIndication mw_failureIndication( + template (present) UERLFReportContainer p_uERLFReportContainer := ?, + template FailureIndication.iE_Extensions p_iE_Extensions := * + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_failureIndication - template (present) DAPSResponseInfo mw_dAPSResponseInfo( - template (present) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator := ?, - template DAPSResponseInfo.iE_Extensions p_iE_Extensions := * + template FiveG_ProSeAuthorized mw_FiveG_ProSeAuthorized( + template FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := *, + template FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := *, + template FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := *, + template FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := *, + template FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := *, + template FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := * ) := { - dapsresponseindicator := p_dapsresponseindicator, - iE_Extensions := p_iE_Extensions - } // End of template mw_dAPSResponseInfo - - template (present) DataForwardingResponseERABListItem mw_DataForwardingResponseERABListItem( - template (present) E_RAB_ID p_e_RAB_ID := ?, - template (present) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := ?, - template DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := * - ) := { - e_RAB_ID := p_e_RAB_ID, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_DataForwardingResponseERABListItem + fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, + fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, + fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, + fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, + fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_FiveG_ProSeAuthorized - template (present) DelayCritical mw_delayCritical(template (present) DelayCritical p_value := ?) := p_value; + template (present) FiveGProSeDirectDiscovery mw_fiveGProSeDirectDiscovery(template (present) FiveGProSeDirectDiscovery p_value := ?) := p_value; - template (present) DL_CP_SecurityInformation mw_dL_CP_SecurityInformation( - template (present) DL_NAS_MAC p_dl_NAS_MAC := ?, - template DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * - ) := { - dl_NAS_MAC := p_dl_NAS_MAC, - iE_Extensions := p_iE_Extensions - } // End of template mw_dL_CP_SecurityInformation + template (present) FiveGProSeDirectCommunication mw_fiveGProSeDirectCommunication(template (present) FiveGProSeDirectCommunication p_value := ?) := p_value; - template (present) DLForwarding mw_dLForwarding(template (present) DLForwarding p_value := dl_forwarding_proposed) := p_value; + template (present) FiveGProSeLayer2UEtoNetworkRelay mw_fiveGProSeLayer2UEtoNetworkRelay(template (present) FiveGProSeLayer2UEtoNetworkRelay p_value := ?) := p_value; - template (present) DL_NGU_TNLInformationReused mw_dL_NGU_TNLInformationReused(template (present) DL_NGU_TNLInformationReused p_value := true_) := p_value; + template (present) FiveGProSeLayer3UEtoNetworkRelay mw_fiveGProSeLayer3UEtoNetworkRelay(template (present) FiveGProSeLayer3UEtoNetworkRelay p_value := ?) := p_value; - template (present) DirectForwardingPathAvailability mw_directForwardingPathAvailability(template (present) DirectForwardingPathAvailability p_value := direct_path_available) := p_value; + template (present) FiveGProSeLayer2RemoteUE mw_fiveGProSeLayer2RemoteUE(template (present) FiveGProSeLayer2RemoteUE p_value := ?) := p_value; - template (present) DRBsSubjectToStatusTransferItem mw_dRBsSubjectToStatusTransferItem( - in template (present) DRB_ID p_dRB_ID := ?, - in template (present) DRBStatusUL p_dRBStatusUL := ?, - in template (present) DRBStatusDL p_dRBStatusDL := ?, - in template DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := * - ) := { - dRB_ID := p_dRB_ID, - dRBStatusUL := p_dRBStatusUL, - dRBStatusDL := p_dRBStatusDL, - iE_Extension := p_iE_Extension - } // End of template mw_dRBsSubjectToStatusTransferItem + template (present) FiveG_ProSePC5QoSParameters mw_fiveG_ProSePC5QoSParameters( + template (present) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList := ?, + template BitRate p_fiveGProSepc5LinkAggregateBitRates := *, + template FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := * + ) := { + fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, + fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveG_ProSePC5QoSParameters - template (present) DRBsSubjectToStatusTransferItem.iE_Extension mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList( - template (present) AssociatedQosFlowList p_AssociatedQosFlowList := ? - ) := { - { - id := id_OldAssociatedQosFlowList_ULendmarkerexpected, - criticality := ignore, - extensionValue := { AssociatedQosFlowList := p_AssociatedQosFlowList } - } - } // End of template mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList + template (present) FiveGProSePC5QoSFlowItem mw_fiveGProSePC5QoSFlowItem( + template (present) FiveQI p_fiveGproSepQI := ?, + template FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := *, + template Range p_fiveGproSerange := *, + template FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := * + ) := { + fiveGproSepQI := p_fiveGproSepQI, + fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, + fiveGproSerange := p_fiveGproSerange, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveGProSePC5QoSFlowItem - template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL12( - template (present) DRBStatusDL12 p_dRBStatusDL12 := ? - ) := { - dRBStatusDL12 := p_dRBStatusDL12 - } // End of template mw_dRBStatusDL_dRBStatusDL12 + template (present) FiveGProSePC5FlowBitRates mw_fiveGProSePC5FlowBitRates( + template (present) BitRate p_fiveGproSeguaranteedFlowBitRate := ?, + template (present) BitRate p_fiveGproSemaximumFlowBitRate := ?, + template FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := * + ) := { + fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, + fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveGProSePC5FlowBitRates - template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL18( - template (present) DRBStatusDL18 p_dRBStatusDL18 := ? - ) := { - dRBStatusDL18 := p_dRBStatusDL18 - } // End of template mw_dRBStatusDL_dRBStatusDL18 + template (present) FiveG_S_TMSI mw_fiveG_S_TMSI( + template (present) AMFSetID p_aMFSetID := ?, + template (present) AMFPointer p_aMFPointer := ?, + template (present) FiveG_TMSI p_fiveG_TMSI := ?, + template FiveG_S_TMSI.iE_Extensions p_iE_Extensions := * + ) := { + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + fiveG_TMSI := p_fiveG_TMSI, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveG_S_TMSI - template (present) DRBStatusDL mw_dRBStatusDL_choice_Extensions( - template (present) DRBStatusDL.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_dRBStatusDL_choice_Extensions + template (present) ForbiddenAreaInformation_Item mw_forbiddenAreaInformation_Item( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) ForbiddenTACs p_forbiddenTACs := ?, + template ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + forbiddenTACs := p_forbiddenTACs, + iE_Extensions := p_iE_Extensions + } // End of template mw_forbiddenAreaInformation_Item - template (present) DRBStatusDL12 mw_dRBStatusDL12( - template (present) COUNTValueForPDCP_SN12 p_dL_COUNTValue := ?, - template DRBStatusDL12.iE_Extension p_iE_Extension := * - ) := { - dL_COUNTValue := p_dL_COUNTValue, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusDL12 + template (present) FromEUTRANtoNGRAN mw_fromEUTRANtoNGRAN( + template (present) IntersystemSONeNBID p_sourceeNBID := ?, + template (present) IntersystemSONNGRANnodeID p_targetNGRANnodeID := ?, + template FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := * + ) := { + sourceeNBID := p_sourceeNBID, + targetNGRANnodeID := p_targetNGRANnodeID, + iE_Extensions := p_iE_Extensions + } // End of template mw_fromEUTRANtoNGRAN - template (present) DRBStatusDL18 mw_dRBStatusDL18( - template (present) COUNTValueForPDCP_SN18 p_dL_COUNTValue := ?, - template DRBStatusDL18.iE_Extension p_iE_Extension := * - ) := { - dL_COUNTValue := p_dL_COUNTValue, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusDL18 + template (present) FromNGRANtoEUTRAN mw_fromNGRANtoEUTRAN( + template (present) IntersystemSONNGRANnodeID p_sourceNGRANnodeID := ?, + template (present) IntersystemSONeNBID p_targeteNBID := ?, + template FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := * + ) := { + sourceNGRANnodeID := p_sourceNGRANnodeID, + targeteNBID := p_targeteNBID, + iE_Extensions := p_iE_Extensions + } // End of template mw_fromNGRANtoEUTRAN - template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL12( - template (present) DRBStatusUL12 p_dRBStatusUL12 := ? + template (present) GBR_QosInformation mw_gBR_QosInformation( + template (present) BitRate p_maximumFlowBitRateDL := ?, + template (present) BitRate p_maximumFlowBitRateUL := ?, + template (present) BitRate p_guaranteedFlowBitRateDL := ?, + template (present) BitRate p_guaranteedFlowBitRateUL := ?, + template NotificationControl p_notificationControl := *, + template PacketLossRate p_maximumPacketLossRateDL := *, + template PacketLossRate p_maximumPacketLossRateUL := *, + template GBR_QosInformation.iE_Extensions p_iE_Extensions := * ) := { - dRBStatusUL12 := p_dRBStatusUL12 - } // End of template mw_dRBStatusUL_dRBStatusUL12 + maximumFlowBitRateDL := p_maximumFlowBitRateDL, + maximumFlowBitRateUL := p_maximumFlowBitRateUL, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + notificationControl := p_notificationControl, + maximumPacketLossRateDL := p_maximumPacketLossRateDL, + maximumPacketLossRateUL := p_maximumPacketLossRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_gBR_QosInformation - template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL18( - template (present) DRBStatusUL18 p_dRBStatusUL18 := ? - ) := { - dRBStatusUL18 := p_dRBStatusUL18 - } // End of template mw_dRBStatusUL_dRBStatusUL18 + template (present) GBR_QosInformation.iE_Extensions mw_gBR_QosInformation_id_AlternativeQoSParaSetList( + template (present) AlternativeQoSParaSetList p_alternativeQoSParaSetList := ? + ) := { + { + id := id_AlternativeQoSParaSetList, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} + } + } // End of template mw_gBR_QosInformation_id_AlternativeQoSParaSetList - template (present) DRBStatusUL mw_dRBStatusUL_choice_Extensions( - template (present) DRBStatusUL.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_dRBStatusUL_choice_Extensions + template (present) GlobalCable_ID_new mw_globalCable_ID_new( + template (present) GlobalCable_ID p_globalCable_ID := ?, + template (present) TAI p_tAI := ?, + template GlobalCable_ID_new.iE_Extensions p_iE_Extensions := * + ) := { + globalCable_ID := p_globalCable_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalCable_ID_new - template (present) DRBStatusUL12 mw_dRBStatusUL12( - template (present) COUNTValueForPDCP_SN12 p_uL_COUNTValue := ?, - template DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, - template DRBStatusUL12.iE_Extension p_iE_Extension := * + template (present) GlobalGNB_ID mw_ie_globalGnbId( + template (present) PLMNIdentity p_plmnId := ?, + template (present) bitstring p_gnbId := ?, + template GlobalGNB_ID.iE_Extensions p_iE_Extensions := * ) := { - uL_COUNTValue := p_uL_COUNTValue, - receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusUL12 + pLMNIdentity := p_plmnId,//'010001'O, + gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_globalGnbId - template (present) DRBStatusUL18 mw_dRBStatusUL18( - template (present) COUNTValueForPDCP_SN18 p_uL_COUNTValue := ?, - template DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, - template DRBStatusUL18.iE_Extension p_iE_Extension := * - ) := { - uL_COUNTValue := p_uL_COUNTValue, - receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusUL18 + template (present) GlobalN3IWF_ID mw_globalN3IWF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) N3IWF_ID p_n3IWF_ID := ?, + template GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + n3IWF_ID := p_n3IWF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalN3IWF_ID - template (present) DRBsToQosFlowsMappingItem mw_dRBsToQosFlowsMappingItem( - template (present) DRB_ID p_dRB_ID := ?, - template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, - template DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := * - ) := { - dRB_ID := p_dRB_ID, - associatedQosFlowList := p_associatedQosFlowList, - iE_Extensions := p_iE_Extensions - } // End of template mw_dRBsToQosFlowsMappingItem + template (present) GlobalLine_ID mw_globalLine_ID( + template (present) GlobalLineIdentity p_globalLineIdentity := ?, + template LineType p_lineType := *, + template GlobalLine_ID.iE_Extensions p_iE_Extensions := * + ) := { + globalLineIdentity := p_globalLineIdentity, + lineType := p_lineType, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalLine_ID - template (present) DRBsToQosFlowsMappingItem.iE_Extensions mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo( - template (present) DAPSRequestInfo p_dAPSRequestInfo := ? - ) := { - { - id := id_DAPSRequestInfo, + template (present) GlobalLine_ID.iE_Extensions mw_globalLine_ID_id_TAI(template TAI p_tAI := *) := { + { + id := id_TAI, criticality := ignore, - extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } + extensionValue := { TAI := p_tAI } } - } // End of template mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo + } // End of template mw_globalLine_ID_id_TAI - template (present) Dynamic5QIDescriptor mw_dynamic5QIDescriptor( - template (present) PriorityLevelQos p_priorityLevelQos := ?, - template (present) PacketDelayBudget p_packetDelayBudget := ?, - template (present) PacketErrorRate p_packetErrorRate := ?, - template FiveQI p_fiveQI := *, - template DelayCritical p_delayCritical := *, - template AveragingWindow p_averagingWindow := *, - template MaximumDataBurstVolume p_maximumDataBurstVolume := *, - template Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * - ) := { - priorityLevelQos := p_priorityLevelQos, - packetDelayBudget := p_packetDelayBudget, - packetErrorRate := p_packetErrorRate, - fiveQI := p_fiveQI, - delayCritical := p_delayCritical, - // The above IE shall be present in case of GBR QoS flow - averagingWindow := p_averagingWindow, - // The above IE shall be present in case of GBR QoS flow - maximumDataBurstVolume := p_maximumDataBurstVolume, - iE_Extensions := p_iE_Extensions - } // End of template mw_dynamic5QIDescriptor + template (present) GlobalNgENB_ID mw_globalNgENB_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) NgENB_ID p_ngENB_ID := ?, + template GlobalNgENB_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + ngENB_ID := p_ngENB_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalNgENB_ID - template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_extendedPacketDelayBudget( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_ExtendedPacketDelayBudget, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_dynamic5QIDescriptor_extendedPacketDelayBudget + template (present) GlobalRANNodeID mw_globalRANNodeID_globalGNB_ID( + template (present) GlobalGNB_ID p_globalGNB_ID := ? + ) := { + globalGNB_ID := p_globalGNB_ID + } // End of template mw_globalRANNodeID_globalGNB_ID - template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_CNPacketDelayBudgetDL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL + template (present) GlobalRANNodeID mw_globalRANNodeID_globalNgENB_ID( + template (present) GlobalNgENB_ID p_globalNgENB_ID := ? + ) := { + globalNgENB_ID := p_globalNgENB_ID + } // End of template mw_globalRANNodeID_globalNgENB_ID - template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_CNPacketDelayBudgetUL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL + template (present) GlobalRANNodeID mw_globalRANNodeID_globalN3IWF_ID( + template (present) GlobalN3IWF_ID p_globalN3IWF_ID := ? + ) := { + globalN3IWF_ID := p_globalN3IWF_ID + } // End of template mw_globalRANNodeID_globalN3IWF_ID - template (present) EarlyMeasurement mw_earlyMeasurement(template (present) EarlyMeasurement p_value := true_) := p_value; + template (present) GlobalRANNodeID mw_globalRANNodeID_choice_Extensions( + template (present) GlobalRANNodeID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_globalRANNodeID_choice_Extensions - template (present) EarlyStatusTransfer_TransparentContainer mw_earlyStatusTransfer_TransparentContainer( - template (present) ProcedureStageChoice p_procedureStage := ?, - template EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * - ) := { - procedureStage := p_procedureStage, - iE_Extensions := p_iE_Extensions - } // End of template mw_earlyStatusTransfer_TransparentContainer + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTNGF_ID( + template (present) GlobalTNGF_ID p_globalTNGF_ID := ? + ) := { + id := id_GlobalTNGF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTNGF_ID } + } // End of template mw_globalRANNodeID_id_GlobalTNGF_ID - template (present) ProcedureStageChoice mw_procedureStageChoice_firstDLCount( - template (present) FirstDLCount p_firstDLCount := ? - ) := { - first_dl_count := p_firstDLCount - } // End of template mw_procedureStageChoice_firstDLCount + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTWIF_ID( + template (present) GlobalTNGF_ID p_globalTWIF_ID := ? + ) := { + id := id_GlobalTWIF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTWIF_ID } + } // End of template mw_globalRANNodeID_id_GlobalTWIF_ID - template (present) ProcedureStageChoice mw_procedureStageChoice_choice_Extensions( - template (present) ProcedureStageChoice.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_procedureStageChoice_choice_Extensions + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalW_AGF_ID( + template (present) GlobalW_AGF_ID p_globalW_AGF_ID := ? + ) := { + id := id_GlobalW_AGF_ID, + criticality := reject, + value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } + } // End of template mw_globalRANNodeID_id_GlobalW_AGF_ID - template (present) FirstDLCount mw_firstDLCount( - template (present) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer := ?, - template FirstDLCount.iE_Extension p_iE_Extension := * - ) := { - dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, - iE_Extension := p_iE_Extension - } // End of template mw_firstDLCount + template (present) GlobalTNGF_ID mw_globalTNGF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TNGF_ID p_tNGF_ID := ?, + template GlobalTNGF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tNGF_ID := p_tNGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalTNGF_ID - template (present) DRBsSubjectToEarlyStatusTransfer_Item mw_dRBsSubjectToEarlyStatusTransfer_Item( - template (present) DRB_ID p_dRB_ID := ?, - template (present) DRBStatusDL p_firstDLCOUNT := ?, - template DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := * - ) := { - dRB_ID := p_dRB_ID, - firstDLCOUNT := p_firstDLCOUNT, - iE_Extension := p_iE_Extension - } // End of template mw_dRBsSubjectToEarlyStatusTransfer_Item + template (present) GlobalTWIF_ID mw_globalTWIF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TWIF_ID p_tWIF_ID := ?, + template GlobalTWIF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tWIF_ID := p_tWIF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalTWIF_ID - template (present) EDT_Session mw_eDT_Session(template (present) EDT_Session p_value := true_) := p_value; + template (present) GlobalW_AGF_ID mw_GlobalW_AGF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) W_AGF_ID p_w_AGF_ID := ?, + template GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + w_AGF_ID := p_w_AGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_GlobalW_AGF_ID - template (present) EmergencyAreaIDBroadcastEUTRA_Item mw_emergencyAreaIDBroadcastEUTRA_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA := ?, - template EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDBroadcastEUTRA_Item + template (present) GNB_ID mw_gNB_ID_gNB_ID( + template (present) GNB_ID.gNB_ID p_gNB_ID := ? + ) := { + gNB_ID := p_gNB_ID + } // End of template mw_gNB_ID_gNB_ID + + template (present) GNB_ID mw_gNB_ID_choice_Extensions( + template (present) GNB_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_gNB_ID_choice_Extensions + + template (present) GTP_TEID mw_ie_gtpTeId(template (present) GTP_TEID p_val := ?) := p_val; + + template (present) GTPTunnel mw_ie_gTPTunnel( + in template (present) TransportLayerAddress p_tla := ?, + in template (present) GTP_TEID p_gtp_teid := ?, + in template GTPTunnel.iE_Extensions p_iE_Extensions := * + ):= { + transportLayerAddress := p_tla, + gTP_TEID := p_gtp_teid, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_gTPTunnel - template (present) EmergencyAreaIDBroadcastNR_Item mw_emergencyAreaIDBroadcastNR_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CompletedCellsInEAI_NR p_completedCellsInEAI_NR := ?, - template EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - completedCellsInEAI_NR := p_completedCellsInEAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDBroadcastNR_Item + template (present) UPTransportLayerInformation mw_ie_uPTLInf( + template (present) GTPTunnel p_gtpt := ? + ) := { + gTPTunnel := p_gtpt + } // End of template mw_ie_uPTLInf - template (present) EmergencyAreaIDCancelledEUTRA_Item mw_emergencyAreaIDCancelledEUTRA_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA := ?, - template EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDCancelledEUTRA_Item + template (present) GUAMI mw_gUAMI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) AMFRegionID p_aMFRegionID := ?, + template (present) AMFSetID p_aMFSetID := ?, + template (present) AMFPointer p_aMFPointer := ?, + template GUAMI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + aMFRegionID := p_aMFRegionID, + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + iE_Extensions := p_iE_Extensions + } // End of template mw_gUAMI - template (present) EmergencyAreaIDCancelledNR_Item mw_emergencyAreaIDCancelledNR_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR := ?, - template EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDCancelledNR_Item + template (present) GUAMIType mw_gUAMIType(template (present) GUAMIType p_val := ?) := p_val; - template (present) EmergencyFallbackIndicator mw_emergencyFallbackIndicator( - template (present) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator := ?, - template EmergencyServiceTargetCN p_emergencyServiceTargetCN := *, - template EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := * - ) := { - emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, - emergencyServiceTargetCN := p_emergencyServiceTargetCN, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyFallbackIndicator + template HandoverCommandTransfer mw_handoverCommandTransfer( + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template QosFlowToBeForwardedList p_qosFlowToBeForwardedList := *, + template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, + template HandoverCommandTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverCommandTransfer - template (present) EmergencyFallbackRequestIndicator mw_emergencyFallbackRequestIndicator(template (present) EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalDLForwardingUPTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation - template (present) EmergencyServiceTargetCN mw_emergencyServiceTargetCN(template (present) EmergencyServiceTargetCN p_value := ?) := p_value; + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation - template (present) ENB_ID mw_eNB_ID_macroENB_ID( - template (present) Bit20 p_macroENB_ID := ? - ) := { - macroENB_ID := p_macroENB_ID - } // End of template mw_eNB_ID_macroENB_ID + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation - template (present) ENB_ID mw_eNB_ID_homeENB_ID( - template (present) Bit28 p_homeENB_ID := ? - ) := { - homeENB_ID := p_homeENB_ID - } // End of template mw_eNB_ID_homeENB_ID + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_DataForwardingResponseERABList( + template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template mw_handoverCommandTransfer_id_DataForwardingResponseERABList - template (present) ENB_ID mw_eNB_ID_short_macroENB_ID( - template (present) Bit18 p_short_macroENB_ID := ? - ) := { - short_macroENB_ID := p_short_macroENB_ID - } // End of template mw_eNB_ID_short_macroENB_ID + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_QosFlowFailedToSetupList( + template (present) QosFlowListWithCause p_qosFlowListWithCause := ? + ) := { + { + id := id_QosFlowFailedToSetupList, + criticality := ignore, + extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template mwhandoverCommandTransfer_id_QosFlowFailedToSetupList - template (present) ENB_ID mw_eNB_ID_long_macroENB_ID( - template (present) Bit21 p_long_macroENB_ID := ? - ) := { - long_macroENB_ID := p_long_macroENB_ID - } // End of template mw_eNB_ID_long_macroENB_ID + template (present) HandoverFlag mw_handoverFlag(template (present) HandoverFlag p_val := handover_preparation) := p_val; - template (present) ENB_ID mw_eNB_ID_choice_Extensions( - template (present) ENB_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_eNB_ID_choice_Extensions + template (present) HandoverPreparationUnsuccessfulTransfer mw_mandoverPreparationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mandoverPreparationUnsuccessfulTransfer - template (present) Enhanced_CoverageRestriction mw_enhanced_CoverageRestriction(template (present) Enhanced_CoverageRestriction p_value := restricted) := p_value; + template (present) HandoverRequestAcknowledgeTransfer mw_handoverRequestAcknowledgeTransfer( + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template (present) QosFlowListWithDataForwarding p_qosFlowSetupResponseList := ?, + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template SecurityResult p_securityResult := *, + template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, + template HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + securityResult := p_securityResult, + qosFlowSetupResponseList := p_qosFlowSetupResponseList, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverRequestAcknowledgeTransfer - template (present) EndpointIPAddressAndPort mw_endpointIPAddressAndPort( - template (present) TransportLayerAddress p_endpointIPAddress := ?, - template (present) PortNumber p_portNumber := ?, - template EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := * - ) := { - endpointIPAddress := p_endpointIPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template mw_endpointIPAddressAndPort + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( + template (present) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList := ? + ) := { + { + id := id_AdditionalDLUPTNLInformationForHOList, + criticality := reject, + extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList - template (present) EndIndication mw_endIndication(template (present) EndIndication p_value := ?) := p_value; + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation - template (present) EPS_TAI mw_ePS_TAI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) EPS_TAC p_ePS_TAC := ?, - template EPS_TAI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - ePS_TAC := p_ePS_TAC, - iE_Extensions := p_iE_Extensions - } // End of template mw_ePS_TAI + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation - template (present) E_RABInformationItem mw_e_RABInformationItem( - template (present) E_RAB_ID p_e_RAB_ID := ?, - template (present) DLForwarding p_dLForwarding := ?, - template E_RABInformationItem.iE_Extensions p_iE_Extensions := * - ) := { - e_RAB_ID := p_e_RAB_ID, - dLForwarding := p_dLForwarding, - iE_Extensions := p_iE_Extensions - } // End of template mw_e_RABInformationItem + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( + template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList - template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceTNLAddrInfo( - template (present) TransportLayerAddress p_transportLayerAddress := ? - ) := { - { - id := id_SourceTNLAddrInfo, + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } - } // End of template mw_e_RABInformationItem_id_SourceTNLAddrInfo + } // End of template mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID - template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo( - template (present) TransportLayerAddress p_transportLayerAddress := ? - ) := { - { - id := id_SourceNodeTNLAddrInfo, + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } } - } // End of template mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo + } // End of template mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator - template (present) EUTRA_CGI mw_uUTRA_CGI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) EUTRACellIdentity p_eUTRACellIdentity := ?, - template EUTRA_CGI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - eUTRACellIdentity := p_eUTRACellIdentity, - iE_Extensions := p_iE_Extensions - } // End of template mw_uUTRA_CGI + template HandoverRequiredTransfer mw_handoverRequiredTransfer( + template DirectForwardingPathAvailability p_directForwardingPathAvailability := *, + template HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := * + ) := { + directForwardingPathAvailability := p_directForwardingPathAvailability, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverRequiredTransfer - template (present) EUTRA_PagingeDRXInformation mw_eUTRA_PagingeDRXInformation( - template (present) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle := ?, - template EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := *, - template EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, - eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRA_PagingeDRXInformation + template (present) HandoverResourceAllocationUnsuccessfulTransfer mw_handoverResourceAllocationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverResourceAllocationUnsuccessfulTransfer - template (present) EUTRA_Paging_eDRX_Cycle mw_eUTRA_Paging_eDRX_Cycle(template (present) EUTRA_Paging_eDRX_Cycle p_value := ?) := p_value; + template (present) HandoverType mw_handoverType(template (present) HandoverType p_value := ?) := p_value; - template (present) EUTRA_Paging_Time_Window mw_eUTRA_Paging_Time_Window(template (present) EUTRA_Paging_Time_Window p_value := ?) := p_value; + template (present) HFCNode_ID_new mw_hFCNode_ID_new( + template (present) HFCNode_ID p_hFCNode_ID := ?, + template (present) TAI p_tAI := ?, + template HFCNode_ID_new.iE_Extensions p_iE_Extensions := * + ) := { + hFCNode_ID := p_hFCNode_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_hFCNode_ID_new - template (present) EventType mw_eventType(template (present) EventType p_value := ?) := p_value; + template (present) HOReport mw_hOReport( + template (present) HOReport.handoverReportType p_handoverReportType := ?, + template (present) Cause p_handoverCause := ?, + template (present) NGRAN_CGI p_sourcecellCGI := ?, + template (present) NGRAN_CGI p_targetcellCGI := ?, + template NGRAN_CGI p_reestablishmentcellCGI := ?, + template Bit16 p_sourcecellC_RNTI := *, + template EUTRA_CGI p_targetcellinE_UTRAN := *, + template MobilityInformation p_mobilityInformation := *, + template UERLFReportContainer p_uERLFReportContainer := *, + template HOReport.iE_Extensions p_iE_Extensions := * + ) := { + handoverReportType := p_handoverReportType, + handoverCause := p_handoverCause, + sourcecellCGI := p_sourcecellCGI, + targetcellCGI := p_targetcellCGI, + reestablishmentcellCGI := p_reestablishmentcellCGI, + // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" + sourcecellC_RNTI := p_sourcecellC_RNTI, + targetcellinE_UTRAN := p_targetcellinE_UTRAN, + // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" + mobilityInformation := p_mobilityInformation, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_hOReport - template (present) ExcessPacketDelayThresholdItem mw_excessPacketDelayThresholdItem( - template (present) FiveQI p_fiveQi := ?, - template (present) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue := ?, - template ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := * - ) := { - fiveQi := p_fiveQi, - excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, - iE_Extensions := p_iE_Extensions - } // End of template mw_excessPacketDelayThresholdItem + template (present) IAB_Authorized mw_iAB_Authorized(template (present) IAB_Authorized p_value := ?) := p_value; - template (present) ExcessPacketDelayThresholdValue mw_excessPacketDelayThresholdValue(template (present) ExcessPacketDelayThresholdValue p_value := ?) := p_value; + template (present) IAB_Supported mw_iAB_Supported(template (present) IAB_Supported p_value := true_) := p_value; - template (present) ExpectedHOInterval mw_expectedHOInterval(template (present) ExpectedHOInterval p_value := ?) := p_value; + template (present) IABNodeIndication mw_iABNodeIndication(template (present) IABNodeIndication p_value := true_) := p_value; - template ExpectedUEActivityBehaviour mw_expectedUEActivityBehaviour( - template ExpectedActivityPeriod p_expectedActivityPeriod := *, - template ExpectedIdlePeriod p_expectedIdlePeriod := *, - template SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := *, - template ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := * - ) := { - expectedActivityPeriod := p_expectedActivityPeriod, - expectedIdlePeriod := p_expectedIdlePeriod, - sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_expectedUEActivityBehaviour + template (present) IMSVoiceSupportIndicator mw_iMSVoiceSupportIndicator(template (present) IMSVoiceSupportIndicator p_value := ?) := p_value; - template ExpectedUEBehaviour mw_expectedUEBehaviour( - template ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := *, - template ExpectedHOInterval p_expectedHOInterval := *, - template ExpectedUEMobility p_expectedUEMobility := *, - template ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= *, - template ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := * + template (present) InfoOnRecommendedCellsAndRANNodesForPaging mw_infoOnRecommendedCellsAndRANNodesForPaging( + template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, + template (present) RecommendedRANNodesForPaging p_recommendRANNodesForPaging := ?, + template InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + recommendRANNodesForPaging := p_recommendRANNodesForPaging, + iE_Extensions := p_iE_Extensions + } // End of template mw_infoOnRecommendedCellsAndRANNodesForPaging + + template (present) IntegrityProtectionIndication mw_integrityProtectionIndication(template (present) IntegrityProtectionIndication p_value := ?) := p_value; + + template (present) IntegrityProtectionResult mw_integrityProtectionResult(template (present) IntegrityProtectionResult p_value := ?) := p_value; + + template (present) ImmediateMDTNr mw_immediateMDTNr( + template (present) MeasurementsToActivate p_measurementsToActivate := ?, + template M1Configuration p_m1Configuration := *, + template M4Configuration p_m4Configuration := *, + template M5Configuration p_m5Configuration := *, + template M6Configuration p_m6Configuration := *, + template M7Configuration p_m7Configuration := *, + template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, + template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, + template MDT_Location_Info p_mDT_Location_Info := *, + template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, + template ImmediateMDTNr.iE_Extensions p_iE_Extensions := * ) := { - expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, - expectedHOInterval := p_expectedHOInterval, - expectedUEMobility := p_expectedUEMobility, - expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, - iE_Extensions := p_iE_Extensions - } // End of template m_expectedUEBehaviour + measurementsToActivate := p_measurementsToActivate, + m1Configuration := p_m1Configuration, + // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” + m4Configuration := p_m4Configuration, + // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” + m5Configuration := p_m5Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” + m6Configuration := p_m6Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” + m7Configuration := p_m7Configuration, + // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + mDT_Location_Info := p_mDT_Location_Info, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + iE_Extensions := p_iE_Extensions + } // End of template mw_immediateMDTNr - template (present) ExpectedUEMobility mw_expectedUEMobility(template (present) ExpectedUEMobility p_value := ?) := p_value; + template InterSystemFailureIndication mw_interSystemFailureIndication( + template UERLFReportContainer p_uERLFReportContainer := *, + template InterSystemFailureIndication.iE_Extensions p_iE_Extensions := * + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_interSystemFailureIndication - template (present) ExpectedUEMovingTrajectoryItem mw_expectedUEMovingTrajectoryItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := *, - template ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - timeStayedInCell := p_timeStayedInCell, - iE_Extensions := p_iE_Extensions - } // End of template mw_expectedUEMovingTrajectoryItem + template (present) IntersystemSONConfigurationTransfer mw_intersystemSONConfigurationTransfer( + template (present) IntersystemSONTransferType p_transferType := ?, + template (present) IntersystemSONInformation p_intersystemSONInformation := ?, + template IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + transferType := p_transferType, + intersystemSONInformation := p_intersystemSONInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONConfigurationTransfer - template Extended_AMFName mw_extended_AMFName( - template AMFNameVisibleString p_aMFNameVisibleString := *, - template AMFNameUTF8String p_aMFNameUTF8String := *, - template Extended_AMFName.iE_Extensions p_iE_Extensions := * - ) := { - aMFNameVisibleString := p_aMFNameVisibleString, - aMFNameUTF8String := p_aMFNameUTF8String, - iE_Extensions := p_iE_Extensions - } // End of template mw_extended_AMFName + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromEUTRANtoNGRAN( + template (present) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN := ? + ) := { + fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN + } // End of template mw_intersystemSONTransferType_fromEUTRANtoNGRAN + + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromNGRANtoEUTRAN( + template (present) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN := ? + ) := { + fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN + } // End of template mw_intersystemSONTransferType_fromNGRANtoEUTRAN + + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_choice_Extensions( + template (present) IntersystemSONTransferType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONTransferType_choice_Extensions + + template (present) IntersystemSONeNBID mw_intersystemSONeNBID( + template (present) GlobalENB_ID p_globaleNBID := ?, + template (present) EPS_TAI p_selectedEPSTAI := ?, + template IntersystemSONeNBID.iE_Extensions p_iE_Extensions := * + ) := { + globaleNBID := p_globaleNBID, + selectedEPSTAI := p_selectedEPSTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONeNBID + + template (present) IntersystemSONNGRANnodeID mw_intersystemSONNGRANnodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONNGRANnodeID + + template (present) IntersystemSONInformation mw_intersystemSONInformation_intersystemSONInformationReport( + in template (present) IntersystemSONInformationReport p_intersystemSONInformationReport := ? + ) := { + intersystemSONInformationReport := p_intersystemSONInformationReport + } // End of template mw_intersystemSONInformation_intersystemSONInformationReport - template Extended_RANNodeName mw_extended_RANNodeName( - template RANNodeNameVisibleString p_rANNodeNameVisibleString := *, - template RANNodeNameUTF8String p_rANNodeNameUTF8String := *, - template Extended_RANNodeName.iE_Extensions p_iE_Extensions := * - ) := { - rANNodeNameVisibleString := p_rANNodeNameVisibleString, - rANNodeNameUTF8String := p_rANNodeNameUTF8String, - iE_Extensions := p_iE_Extensions - } // End of template mw_extended_RANNodeName + template (present) IntersystemSONInformation mw_intersystemSONInformation_choice_Extensions( + template (present) IntersystemSONInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformation_choice_Extensions - template (present) ExtendedRATRestrictionInformation mw_extendedRATRestrictionInformation( - template (present) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction := ?, - template (present) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction := ?, - template ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := * - ) := { - primaryRATRestriction := p_primaryRATRestriction, - secondaryRATRestriction := p_secondaryRATRestriction, - iE_Extensions := p_iE_Extensions - } // End of template mw_extendedRATRestrictionInformation + template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationRequest( + template (present) IntersystemSONInformationRequest p_intersystemSONInformationRequest := ? + ) := { + id := id_IntersystemSONInformationRequest, + criticality := ignore, + value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } + } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationRequest - template (present) EventTrigger mw_eventTrigger_outOfCoverage( - template (present) EventTrigger.outOfCoverage p_outOfCoverage := true_ - ) := { - outOfCoverage := p_outOfCoverage - } // End of template mw_eventTrigger_outOfCoverage + template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationReply( + template (present) IntersystemSONInformationReply p_intersystemSONInformationReply := ? + ) := { + id := id_IntersystemSONInformationReply, + criticality := ignore, + value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } + } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationReply - template (present) EventTrigger mw_eventTrigger_eventL1LoggedMDTConfig( - template (present) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig := ? - ) := { - eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig - } // End of template mw_eventTrigger_eventL1LoggedMDTConfig + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_nGRAN_CellActivation( + template (present) IntersystemCellActivationRequest p_nGRAN_CellActivation := ? + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template mw_intersystemSONInformationRequest_nGRAN_CellActivation - template (present) EventTrigger mw_eventTrigger_choice_Extensions( - template (present) EventTrigger.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_resourceStatus( + template (present) IntersystemResourceStatusRequest p_resourceStatus := ? + ) := { + resourceStatus := p_resourceStatus + } // End of template mw_intersystemSONInformationRequest_resourceStatus + + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_choice_Extensions( + template (present) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_eventTrigger_choice_Extensions + } // End of template mw_intersystemSONInformationRequest_choice_Extensions - template (present) EventL1LoggedMDTConfig mw_eventL1LoggedMDTConfig( - template (present) MeasurementThresholdL1LoggedMDT p_l1Threshold := ?, - template (present) Hysteresis p_hysteresis := ?, - template (present) TimeToTrigger p_timeToTrigger := ?, - template EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := * - ) := { - l1Threshold := p_l1Threshold, - hysteresis := p_hysteresis, - timeToTrigger := p_timeToTrigger, - iE_Extensions := p_iE_Extensions - } // End of template mw_eventL1LoggedMDTConfig + template (present) IntersystemCellActivationRequest mw_intersystemCellActivationRequest( + template (present) IntersystemCellActivationRequest.activationID p_activationID := ?, + template (present) CellsToActivateList p_cellsToActivateList := ?, + template IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := * + ) := { + activationID := p_activationID, + cellsToActivateList := p_cellsToActivateList, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemCellActivationRequest - template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRP( - template (present) Threshold_RSRP p_threshold_RSRP := ? - ) := { - threshold_RSRP := p_threshold_RSRP - } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRP + template (present) IntersystemResourceStatusRequest mw_intersystemResourceStatusRequest( + template (present) ReportingSystem p_reportingSystem := ?, + template (present) ReportCharacteristics p_reportCharacteristics := ?, + template (present) ReportType p_reportType := ?, + template IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := * + ) := { + reportingSystem := p_reportingSystem, + reportCharacteristics := p_reportCharacteristics, + reportType := p_reportType, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusRequest - template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRQ( - template (present) Threshold_RSRQ p_threshold_RSRQ := ? - ) := { - threshold_RSRQ := p_threshold_RSRQ - } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRQ + template (present) ReportingSystem mw_reportingSystem_eUTRAN( + template (present) EUTRAN_ReportingSystemIEs p_eUTRAN := ? + ) := { + eUTRAN := p_eUTRAN + } // End of template mw_reportingSystem_eUTRAN - template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_choice_Extensions( - template (present) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) ReportingSystem mw_reportingSystem_nGRAN( + template (present) NGRAN_ReportingSystemIEs p_nGRAN := ? + ) := { + nGRAN := p_nGRAN + } // End of template mw_reportingSystem_nGRAN + + template (present) ReportingSystem mw_reportingSystem_choice_Extensions( + template (present) ReportingSystem.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_measurementThresholdL1LoggedMDT_choice_Extensions + } // End of template mw_reportingSystem_choice_Extensions - template (present) FailureIndication mw_failureIndication( - template (present) UERLFReportContainer p_uERLFReportContainer := ?, - template FailureIndication.iE_Extensions p_iE_Extensions := * - ) := { - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_failureIndication + template (present) EUTRAN_ReportingSystemIEs mw_eUTRAN_ReportingSystemIEs( + template (present) EUTRAN_CellToReportList p_eUTRAN_CellToReportList := ?, + template EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * + ) := { + eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingSystemIEs - template FiveG_ProSeAuthorized mw_FiveG_ProSeAuthorized( - template FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := *, - template FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := *, - template FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := *, - template FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := *, - template FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := *, - template FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := * - ) := { - fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, - fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, - fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, - fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, - fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, - iE_Extensions := p_iE_Extensions - } // End of template mw_FiveG_ProSeAuthorized + template (present) NGRAN_ReportingSystemIEs mw_nGRAN_ReportingSystemIEs( + template (present) NGRAN_CellToReportList p_nGRAN_CellToReportList := ?, + template NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CellToReportList := p_nGRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_ReportingSystemIEs - template (present) FiveGProSeDirectDiscovery mw_fiveGProSeDirectDiscovery(template (present) FiveGProSeDirectDiscovery p_value := ?) := p_value; + template (present) EUTRAN_CellToReportItem mw_eUTRAN_CellToReportItem( + template (present) EUTRA_CGI p_eCGI := ?, + template EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * + ) := { + eCGI := p_eCGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_CellToReportItem - template (present) FiveGProSeDirectCommunication mw_fiveGProSeDirectCommunication(template (present) FiveGProSeDirectCommunication p_value := ?) := p_value; + template (present) NGRAN_CellToReportItem mw_nGRAN_CellToReportItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * + ):= { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_CellToReportItem - template (present) FiveGProSeLayer2UEtoNetworkRelay mw_fiveGProSeLayer2UEtoNetworkRelay(template (present) FiveGProSeLayer2UEtoNetworkRelay p_value := ?) := p_value; + template (present) ReportType mw_reportType_eventBasedReporting( + template (present) EventBasedReportingIEs p_eventBasedReporting := ? + ) := { + eventBasedReporting := p_eventBasedReporting + } // End of template mw_reportType_eventBasedReporting - template (present) FiveGProSeLayer3UEtoNetworkRelay mw_fiveGProSeLayer3UEtoNetworkRelay(template (present) FiveGProSeLayer3UEtoNetworkRelay p_value := ?) := p_value; + template (present) ReportType mw_reportType_periodicReporting( + template (present) PeriodicReportingIEs p_periodicReporting := ? + ) := { + periodicReporting := p_periodicReporting + } // End of template mw_reportType_periodicReporting - template (present) FiveGProSeLayer2RemoteUE mw_fiveGProSeLayer2RemoteUE(template (present) FiveGProSeLayer2RemoteUE p_value := ?) := p_value; + template (present) ReportType mw_reportType_choice_Extensions( + template (present) ReportType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_reportType_choice_Extensions - template (present) FiveG_ProSePC5QoSParameters mw_fiveG_ProSePC5QoSParameters( - template (present) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList := ?, - template BitRate p_fiveGProSepc5LinkAggregateBitRates := *, - template FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := * - ) := { - fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, - fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveG_ProSePC5QoSParameters + template (present) NumberOfMeasurementReportingLevels mw_numberOfMeasurementReportingLevels(template (present) NumberOfMeasurementReportingLevels p_value := ?) := p_value; - template (present) FiveGProSePC5QoSFlowItem mw_fiveGProSePC5QoSFlowItem( - template (present) FiveQI p_fiveGproSepQI := ?, - template FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := *, - template Range p_fiveGproSerange := *, - template FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := * - ) := { - fiveGproSepQI := p_fiveGproSepQI, - fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, - fiveGproSerange := p_fiveGproSerange, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveGProSePC5QoSFlowItem + template (present) PeriodicReportingIEs mw_PeriodicReportingIEs( + template (present) ReportingPeriodicity p_reportingPeriodicity := ?, + template PeriodicReportingIEs.iE_Extensions p_iE_Extensions := * + ) := { + reportingPeriodicity := p_reportingPeriodicity, + iE_Extensions := p_iE_Extensions + } // End of template mw_PeriodicReportingIEs - template (present) FiveGProSePC5FlowBitRates mw_fiveGProSePC5FlowBitRates( - template (present) BitRate p_fiveGproSeguaranteedFlowBitRate := ?, - template (present) BitRate p_fiveGproSemaximumFlowBitRate := ?, - template FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := * - ) := { - fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, - fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveGProSePC5FlowBitRates + template (present) ReportingPeriodicity mw_reportingPeriodicity(template (present) ReportingPeriodicity p_value := ?) := p_value; - template (present) FiveG_S_TMSI mw_fiveG_S_TMSI( - template (present) AMFSetID p_aMFSetID := ?, - template (present) AMFPointer p_aMFPointer := ?, - template (present) FiveG_TMSI p_fiveG_TMSI := ?, - template FiveG_S_TMSI.iE_Extensions p_iE_Extensions := * - ) := { - aMFSetID := p_aMFSetID, - aMFPointer := p_aMFPointer, - fiveG_TMSI := p_fiveG_TMSI, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveG_S_TMSI + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_nGRAN_CellActivation( + template (present) IntersystemCellActivationReply p_nGRAN_CellActivation := ? + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template mw_intersystemSONInformationReply_nGRAN_CellActivation + + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_resourceStatus( + template (present) IntersystemResourceStatusReply p_resourceStatus := ? + ) := { + resourceStatus := p_resourceStatus + } // End of template mw_intersystemSONInformationReply_resourceStatus - template (present) ForbiddenAreaInformation_Item mw_forbiddenAreaInformation_Item( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) ForbiddenTACs p_forbiddenTACs := ?, - template ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - forbiddenTACs := p_forbiddenTACs, - iE_Extensions := p_iE_Extensions - } // End of template mw_forbiddenAreaInformation_Item + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_choice_Extensions( + template (present) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationReply_choice_Extensions - template (present) FromEUTRANtoNGRAN mw_fromEUTRANtoNGRAN( - template (present) IntersystemSONeNBID p_sourceeNBID := ?, - template (present) IntersystemSONNGRANnodeID p_targetNGRANnodeID := ?, - template FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := * - ) := { - sourceeNBID := p_sourceeNBID, - targetNGRANnodeID := p_targetNGRANnodeID, + template (present) IntersystemCellActivationReply mw_intersystemCellActivationReply( + template (present) ActivatedCellList p_activatedCellList := ?, + template (present) IntersystemCellActivationReply.activation_ID p_activation_ID := ?, + template IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := * + ) := { + activatedCellList := p_activatedCellList, + activation_ID := p_activation_ID, iE_Extensions := p_iE_Extensions - } // End of template mw_fromEUTRANtoNGRAN + } // End of template mw_intersystemCellActivationReply - template (present) FromNGRANtoEUTRAN mw_fromNGRANtoEUTRAN( - template (present) IntersystemSONNGRANnodeID p_sourceNGRANnodeID := ?, - template (present) IntersystemSONeNBID p_targeteNBID := ?, - template FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := * - ) := { - sourceNGRANnodeID := p_sourceNGRANnodeID, - targeteNBID := p_targeteNBID, - iE_Extensions := p_iE_Extensions - } // End of template mw_fromNGRANtoEUTRAN + template (present) IntersystemResourceStatusReply mw_intersystemResourceStatusReply( + template (present) ReportingSystem p_reportingsystem := ?, + template IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := * + ) := { + reportingsystem := p_reportingsystem, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusReply - template (present) GBR_QosInformation mw_gBR_QosInformation( - template (present) BitRate p_maximumFlowBitRateDL := ?, - template (present) BitRate p_maximumFlowBitRateUL := ?, - template (present) BitRate p_guaranteedFlowBitRateDL := ?, - template (present) BitRate p_guaranteedFlowBitRateUL := ?, - template NotificationControl p_notificationControl := *, - template PacketLossRate p_maximumPacketLossRateDL := *, - template PacketLossRate p_maximumPacketLossRateUL := *, - template GBR_QosInformation.iE_Extensions p_iE_Extensions := * - ) := { - maximumFlowBitRateDL := p_maximumFlowBitRateDL, - maximumFlowBitRateUL := p_maximumFlowBitRateUL, - guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, - guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, - notificationControl := p_notificationControl, - maximumPacketLossRateDL := p_maximumPacketLossRateDL, - maximumPacketLossRateUL := p_maximumPacketLossRateUL, - iE_Extensions := p_iE_Extensions - } // End of template mw_gBR_QosInformation + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_hOReportInformation( + template (present) InterSystemHOReport p_hOReportInformation := ? + ) := { + hOReportInformation := p_hOReportInformation + } // End of template mw_intersystemSONInformationReport_hOReportInformation - template (present) GBR_QosInformation.iE_Extensions mw_gBR_QosInformation_id_AlternativeQoSParaSetList( - template (present) AlternativeQoSParaSetList p_alternativeQoSParaSetList := ? - ) := { - { - id := id_AlternativeQoSParaSetList, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} - } - } // End of template mw_gBR_QosInformation_id_AlternativeQoSParaSetList + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_failureIndicationInformation( + template (present) InterSystemFailureIndication p_failureIndicationInformation := ? + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template mw_intersystemSONInformationReport_failureIndicationInformation - template (present) GlobalCable_ID_new mw_globalCable_ID_new( - template (present) GlobalCable_ID p_globalCable_ID := ?, - template (present) TAI p_tAI := ?, - template GlobalCable_ID_new.iE_Extensions p_iE_Extensions := * - ) := { - globalCable_ID := p_globalCable_ID, - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalCable_ID_new + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_choice_Extensions( + template (present) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationReport_choice_Extensions - template (present) GlobalGNB_ID mw_ie_globalGnbId( - template (present) PLMNIdentity p_plmnId := ?, - template (present) bitstring p_gnbId := ?, - template GlobalGNB_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_plmnId,//'010001'O, - gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, - iE_Extensions := p_iE_Extensions - } // End of template mw_ie_globalGnbId + template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_EnergySavingIndication( + template (present) IntersystemCellStateIndication p_intersystemCellStateIndication := ? + ) := { + id := id_EnergySavingIndication, + criticality := ignore, + value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } + } // End of template mw_intersystemSONInformationReport_id_EnergySavingIndication - template (present) GlobalN3IWF_ID mw_globalN3IWF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) N3IWF_ID p_n3IWF_ID := ?, - template GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - n3IWF_ID := p_n3IWF_ID, + template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( + template (present) IntersystemResourceStatusReport p_intersystemResourceStatusReport := ? + ) := { + id := id_IntersystemResourceStatusUpdate, + criticality := ignore, + value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } + } // End of template mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate + + template (present) NotificationCell_Item mw_notificationCell_Item( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) NotificationCell_Item.notifyFlag p_notifyFlag := ?, + template NotificationCell_Item.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + notifyFlag := p_notifyFlag, iE_Extensions := p_iE_Extensions - } // End of template mw_globalN3IWF_ID + } // End of template mw_notificationCell_Item - template (present) GlobalLine_ID mw_globalLine_ID( - template (present) GlobalLineIdentity p_globalLineIdentity := ?, - template LineType p_lineType := *, - template GlobalLine_ID.iE_Extensions p_iE_Extensions := * - ) := { - globalLineIdentity := p_globalLineIdentity, - lineType := p_lineType, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalLine_ID + template (present) IntersystemResourceStatusReport mw_intersystemResourceStatusReport( + template (present) ResourceStatusReportingSystem p_reportingSystem := ?, + template IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := * + ) := { + reportingSystem := p_reportingSystem, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusReport - template (present) GlobalLine_ID.iE_Extensions mw_globalLine_ID_id_TAI(template TAI p_tAI := *) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template mw_globalLine_ID_id_TAI + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( + template (present) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus := ? + ) := { + eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus + } // End of template mw_resourceStatusReportingSystem_eUTRAN_ReportingStatus - template (present) GlobalNgENB_ID mw_globalNgENB_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) NgENB_ID p_ngENB_ID := ?, - template GlobalNgENB_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - ngENB_ID := p_ngENB_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalNgENB_ID + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_nGRAN_ReportingStatus( + template (present) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus := ? + ) := { + nGRAN_ReportingStatus := p_nGRAN_ReportingStatus + } // End of template mw_resourceStatusReportingSystem_nGRAN_ReportingStatus - template (present) GlobalRANNodeID mw_globalRANNodeID_globalGNB_ID( - template (present) GlobalGNB_ID p_globalGNB_ID := ? - ) := { - globalGNB_ID := p_globalGNB_ID - } // End of template mw_globalRANNodeID_globalGNB_ID + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystem_choice_Extensions( + template (present) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_resourceStatusReportingSystem_choice_Extensions - template (present) GlobalRANNodeID mw_globalRANNodeID_globalNgENB_ID( - template (present) GlobalNgENB_ID p_globalNgENB_ID := ? - ) := { - globalNgENB_ID := p_globalNgENB_ID - } // End of template mw_globalRANNodeID_globalNgENB_ID + template (present) EUTRAN_ReportingStatusIEs mw_eUTRAN_ReportingStatusIEs( + template (present) EUTRAN_CellReportList p_eUTRAN_CellReportList := ?, + template EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * + ) := { + eUTRAN_CellReportList := p_eUTRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingStatusIEs - template (present) GlobalRANNodeID mw_globalRANNodeID_globalN3IWF_ID( - template (present) GlobalN3IWF_ID p_globalN3IWF_ID := ? - ) := { - globalN3IWF_ID := p_globalN3IWF_ID - } // End of template mw_globalRANNodeID_globalN3IWF_ID + template (present) EUTRAN_CellReportItem mw_eUTRAN_CellReportItem ( + template (present) EUTRA_CGI p_eCGI, + template (present) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup := ?, + template EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := *, + template NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := *, + template EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := *, + template EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := * + ):= { + eCGI := p_eCGI, + eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, + eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, + eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, + eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingStatusIEs + + template (present) EUTRAN_CompositeAvailableCapacityGroup mw_EUTRAN_CompositeAvailableCapacityGroup( + template (present) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity := ?, + template (present) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity := ?, + template EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := * + ) := { + dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, + uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, + iE_Extensions := p_iE_Extensions + } // End of template mw_EUTRAN_CompositeAvailableCapacityGroup + + template (present) CompositeAvailableCapacity mw_compositeAvailableCapacity( + template (present) CompositeAvailableCapacity.capacityValue p_capacityValue := ?, + template CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := *, + template CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := * + ) := { + cellCapacityClassValue := p_cellCapacityClassValue, + capacityValue := p_capacityValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_compositeAvailableCapacity + + template (present) EUTRAN_RadioResourceStatus mw_eUTRAN_RadioResourceStatus( + template (present) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage := ?, + template EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := *, + template EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := *, + template EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * + ) := { + dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, + uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, + dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, + uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, + dL_Total_PRB_usage := p_dL_Total_PRB_usage, + uL_Total_PRB_usage := p_uL_Total_PRB_usage, + dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, + uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_RadioResourceStatus - template (present) GlobalRANNodeID mw_globalRANNodeID_choice_Extensions( - template (present) GlobalRANNodeID.choice_Extensions p_choice_Extensions := ? + template (present) NGRAN_ReportingStatusIEs mw_nGRAN_ReportingStatusIEs( + template (present) NGRAN_CellReportList p_nGRAN_CellReportList := ?, + template NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_globalRANNodeID_choice_Extensions - - template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTNGF_ID( - template (present) GlobalTNGF_ID p_globalTNGF_ID := ? - ) := { - id := id_GlobalTNGF_ID, - criticality := reject, - value_ := { GlobalTNGF_ID := p_globalTNGF_ID } - } // End of template mw_globalRANNodeID_id_GlobalTNGF_ID - - template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTWIF_ID( - template (present) GlobalTNGF_ID p_globalTWIF_ID := ? - ) := { - id := id_GlobalTWIF_ID, - criticality := reject, - value_ := { GlobalTNGF_ID := p_globalTWIF_ID } - } // End of template mw_globalRANNodeID_id_GlobalTWIF_ID + nGRAN_CellReportList := p_nGRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_ReportingStatusIEs - template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalW_AGF_ID( - template (present) GlobalW_AGF_ID p_globalW_AGF_ID := ? - ) := { - id := id_GlobalW_AGF_ID, - criticality := reject, - value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } - } // End of template mw_globalRANNodeID_id_GlobalW_AGF_ID + template (present) NGRAN_CellReportItem mw_nGRAN_CellReportItem( + template (present) NGRAN_CGI p_nGRAN_CGI, + template (present) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup := ?, + template NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := *, + template NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := *, + template NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := *, + template NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, + nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, + nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, + nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_CellReportItem - template (present) GlobalTNGF_ID mw_globalTNGF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) TNGF_ID p_tNGF_ID := ?, - template GlobalTNGF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - tNGF_ID := p_tNGF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalTNGF_ID + template (present) NGRAN_RadioResourceStatus mw_nGRAN_RadioResourceStatus( + template (present) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO := ?, + template NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * + ) := { + dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, + uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, + dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, + uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, + dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, + uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_RadioResourceStatus - template (present) GlobalTWIF_ID mw_globalTWIF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) TWIF_ID p_tWIF_ID := ?, - template GlobalTWIF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - tWIF_ID := p_tWIF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalTWIF_ID + template (present) InterSystemHOReport mw_interSystemHOReport( + template (present) InterSystemHandoverReportType p_handoverReportType := ?, + template InterSystemHOReport.iE_Extensions p_iE_Extensions := * + ) := { + handoverReportType := p_handoverReportType, + iE_Extensions := p_iE_Extensions + } // End of template mw_interSystemHOReport - template (present) GlobalW_AGF_ID mw_GlobalW_AGF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) W_AGF_ID p_w_AGF_ID := ?, - template GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - w_AGF_ID := p_w_AGF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_GlobalW_AGF_ID + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_tooearlyIntersystemHO( + template (present) TooearlyIntersystemHO p_tooearlyIntersystemHO := ? + ) := { + tooearlyIntersystemHO := p_tooearlyIntersystemHO + } // End of template mw_interSystemHandoverReportType_tooearlyIntersystemHO - template (present) GNB_ID mw_gNB_ID_gNB_ID( - template (present) GNB_ID.gNB_ID p_gNB_ID := ? - ) := { - gNB_ID := p_gNB_ID - } // End of template mw_gNB_ID_gNB_ID + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_intersystemUnnecessaryHO( + template (present) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO := ? + ) := { + intersystemUnnecessaryHO := p_intersystemUnnecessaryHO + } // End of template mw_interSystemHandoverReportType_intersystemUnnecessaryHO - template (present) GNB_ID mw_gNB_ID_choice_Extensions( - template (present) GNB_ID.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_choice_Extensions( + template (present) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_gNB_ID_choice_Extensions + } // End of template mw_interSystemHandoverReportType_choice_Extensions - template (present) GTP_TEID mw_ie_gtpTeId(template (present) GTP_TEID p_val := ?) := p_val; + template (present) IntersystemUnnecessaryHO mw_intersystemUnnecessaryHO( + template (present) NGRAN_CGI p_sourcecellID := ?, + template (present) EUTRA_CGI p_targetcellID := ?, + template (present) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := ?, + template (present) CandidateCellList p_candidateCellList := ?, + template IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := * + ) := { + sourcecellID := p_sourcecellID, + targetcellID := p_targetcellID, + earlyIRATHO := p_earlyIRATHO, + candidateCellList := p_candidateCellList, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemUnnecessaryHO - template (present) GTPTunnel mw_ie_gTPTunnel( - in template (present) TransportLayerAddress p_tla := ?, - in template (present) GTP_TEID p_gtp_teid := ?, - in template GTPTunnel.iE_Extensions p_iE_Extensions := * - ):= { - transportLayerAddress := p_tla, - gTP_TEID := p_gtp_teid, - iE_Extensions := p_iE_Extensions - } // End of template mw_ie_gTPTunnel + template (present) LAI mw_lai( + template (present) PLMNIdentity p_pLMNidentity := ?, + template (present) LAC p_lAC := ?, + template LAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNidentity := p_pLMNidentity, + lAC := p_lAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_lai - template (present) UPTransportLayerInformation mw_ie_uPTLInf( - template (present) GTPTunnel p_gtpt := ? - ) := { - gTPTunnel := p_gtpt - } // End of template mw_ie_uPTLInf + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_nGRANCell( + template (present) LastVisitedNGRANCellInformation p_nGRANCell := ? + ) := { + nGRANCell := p_nGRANCell + } // End of template mw_interSystemHandoverReportType_nGRANCell - template (present) GUAMI mw_gUAMI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) AMFRegionID p_aMFRegionID := ?, - template (present) AMFSetID p_aMFSetID := ?, - template (present) AMFPointer p_aMFPointer := ?, - template GUAMI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - aMFRegionID := p_aMFRegionID, - aMFSetID := p_aMFSetID, - aMFPointer := p_aMFPointer, - iE_Extensions := p_iE_Extensions - } // End of template mw_gUAMI + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_eUTRANCell( + template (present) LastVisitedEUTRANCellInformation p_eUTRANCell := ? + ) := { + eUTRANCell := p_eUTRANCell + } // End of template mw_interSystemHandoverReportType_eUTRANCell - template (present) GUAMIType mw_gUAMIType(template (present) GUAMIType p_val := ?) := p_val; + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_uTRANCell( + template (present) LastVisitedUTRANCellInformation p_uTRANCell := ? + ) := { + uTRANCell := p_uTRANCell + } // End of template mw_interSystemHandoverReportType_uTRANCell - template HandoverCommandTransfer mw_handoverCommandTransfer( - template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, - template QosFlowToBeForwardedList p_qosFlowToBeForwardedList := *, - template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, - template HandoverCommandTransfer.iE_Extensions p_iE_Extensions := * - ) := { - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, - dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverCommandTransfer + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_gERANCell( + template (present) LastVisitedGERANCellInformation p_gERANCell := ? + ) := { + gERANCell := p_gERANCell + } // End of template mw_interSystemHandoverReportType_gERANCell - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( - template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? - ) := { - { - id := id_AdditionalDLForwardingUPTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation + template (present) LastVisitedCellInformation mw_lastVisitedCellInformation_choice_Extensions( + template (present) LastVisitedCellInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_lastVisitedCellInformation_choice_Extensions - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_ULForwardingUP_TNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation + template (present) LastVisitedCellItem mw_lastVisitedCellItem( + template (present) LastVisitedCellInformation p_lastVisitedCellInformation := ?, + template LastVisitedCellItem.iE_Extensions p_iE_Extensions := * + ) := { + lastVisitedCellInformation := p_lastVisitedCellInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_lastVisitedCellItem - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalULForwardingUPTNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation + template (present) LastVisitedNGRANCellInformation mw_lastVisitedNGRANCellInformation( + template (present) NGRAN_CGI p_globalCellID := ?, + template (present) CellType p_cellType := ?, + template (present) TimeUEStayedInCell p_timeUEStayedInCell := ?, + template TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := *, + template Cause p_hOCauseValue := *, + template LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := * + ) := { + globalCellID := p_globalCellID, + cellType := p_cellType, + timeUEStayedInCell := p_timeUEStayedInCell, + timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, + hOCauseValue := p_hOCauseValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_lastVisitedNGRANCellInformation - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_DataForwardingResponseERABList( - template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? - ) := { + template (present) LastVisitedNGRANCellInformation.iE_Extensions mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( + template (present) LastVisitedPSCellList p_lastVisitedPSCellList := ? + ) := { { - id := id_DataForwardingResponseERABList, + id := id_LastVisitedPSCellList, criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } } - } // End of template mw_handoverCommandTransfer_id_DataForwardingResponseERABList + } // End of template mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_QosFlowFailedToSetupList( - template (present) QosFlowListWithCause p_qosFlowListWithCause := ? - ) := { - { - id := id_QosFlowFailedToSetupList, - criticality := ignore, - extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template mwhandoverCommandTransfer_id_QosFlowFailedToSetupList + template (present) LastVisitedPSCellInformation mw_LastVisitedPSCellInformation( + template (present) NGRAN_CGI p_pSCellID := ?, + template (present) LastVisitedPSCellInformation.timeStay p_timeStay := ?, + template LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := * + ) := { + pSCellID := p_pSCellID, + timeStay := p_timeStay, + iE_Extensions := p_iE_Extensions + } // End of template mw_LastVisitedPSCellInformation - template (present) HandoverFlag mw_handoverFlag(template (present) HandoverFlag p_val := handover_preparation) := p_val; + template (present) LineType mw_lineType(template (present) LineType p_value := pon) := p_value; - template (present) HandoverPreparationUnsuccessfulTransfer mw_mandoverPreparationUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_mandoverPreparationUnsuccessfulTransfer + template (present) LocationReportingAdditionalInfo mw_locationReportingAdditionalInfo(template (present) LocationReportingAdditionalInfo p_value := includePSCell) := p_value; - template (present) HandoverRequestAcknowledgeTransfer mw_handoverRequestAcknowledgeTransfer( - template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, - template (present) QosFlowListWithDataForwarding p_qosFlowSetupResponseList := ?, - template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, - template SecurityResult p_securityResult := *, - template QosFlowListWithCause p_qosFlowFailedToSetupList := *, - template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, - template HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * - ) := { - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - securityResult := p_securityResult, - qosFlowSetupResponseList := p_qosFlowSetupResponseList, - qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, - dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverRequestAcknowledgeTransfer + template (present) LocationReportingRequestType mw_locationReportingRequestType( + template (present) EventType p_eventType := ?, + template (present) ReportArea p_reportArea := ?, + template AreaOfInterestList p_areaOfInterestList := *, + template LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := *, + template LocationReportingRequestType.iE_Extensions p_iE_Extensions := * + ) := { + eventType := p_eventType, + reportArea := p_reportArea, + areaOfInterestList := p_areaOfInterestList, + locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, + // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” + iE_Extensions := p_iE_Extensions + } // End of template mw_locationReportingRequestType - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( - template (present) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList := ? - ) := { + template (present) LocationReportingRequestType.iE_Extensions mw_locationReportingRequestType_id_LocationReportingAdditionalInfo( + template (present) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo := ? + ) := { { - id := id_AdditionalDLUPTNLInformationForHOList, - criticality := reject, - extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } + id := id_LocationReportingAdditionalInfo, + criticality := ignore, + extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList + } // End of template mw_locationReportingRequestType_id_LocationReportingAdditionalInfo - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_ULForwardingUP_TNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation + template (present) LoggedMDTNr mw_loggedMDTNr( + template (present) LoggingInterval p_loggingInterval := ?, + template (present) LoggingDuration p_loggingDuration := ?, + template (present) LoggedMDTTrigger p_loggedMDTTrigger := ?, + template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, + template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, + template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, + template AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := *, + template LoggedMDTNr.iE_Extensions p_iE_Extensions := * + ) := { + loggingInterval := p_loggingInterval, + loggingDuration := p_loggingDuration, + loggedMDTTrigger := p_loggedMDTTrigger, + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, + iE_Extensions := p_iE_Extensions + } // End of template mw_loggedMDTNr - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalULForwardingUPTNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation + template (present) LoggingInterval mw_loggingInterval(template (present) LoggingInterval p_value := ?) := p_value; - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( - template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? - ) := { - { - id := id_DataForwardingResponseERABList, - criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList + template (present) LoggingDuration mw_loggingDuration(template (present) LoggingDuration p_value := ?) := p_value; - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation + template (present) Links_to_log mw_Links_to_log(template (present) Links_to_log p_value := ?) := p_value; - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( - template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? - ) := { - { - id := id_UsedRSNInformation, - criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation + template (present) LoggedMDTTrigger mw_loggedMDTTrigger_gERANCell( + template (present) EventTrigger p_eventTrigger := ? + ) := { + eventTrigger := p_eventTrigger + } // End of template mw_loggedMDTTrigger_gERANCell - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ? - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID + template (present) LoggedMDTTrigger mw_loggedMDTTrigger_choice_Extensions( + template (present) LoggedMDTTrigger.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_loggedMDTTrigger_choice_Extensions - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( - template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator + template (present) LTEM_Indication mw_lTEM_Indication(template (present) LTEM_Indication p_value := lte_m) := p_value; - template HandoverRequiredTransfer mw_handoverRequiredTransfer( - template DirectForwardingPathAvailability p_directForwardingPathAvailability := *, - template HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := * + template LTEV2XServicesAuthorized mw_lTEV2XServicesAuthorized( + template VehicleUE p_vehicleUE := *, + template PedestrianUE p_pedestrianUE:= *, + template LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * ) := { - directForwardingPathAvailability := p_directForwardingPathAvailability, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverRequiredTransfer + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_lTEV2XServicesAuthorized - template (present) HandoverResourceAllocationUnsuccessfulTransfer mw_handoverResourceAllocationUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template CriticalityDiagnostics p_criticalityDiagnostics := *, - template HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverResourceAllocationUnsuccessfulTransfer + template (present) LTEUESidelinkAggregateMaximumBitrate mw_lTEUESidelinkAggregateMaximumBitrate( + template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, + template LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_lTEUESidelinkAggregateMaximumBitrate - template (present) HandoverType mw_handoverType(template (present) HandoverType p_value := ?) := p_value; + template (present) MaximumIntegrityProtectedDataRate mw_maximumIntegrityProtectedDataRate(template (present) MaximumIntegrityProtectedDataRate p_value := ?) := p_value; - template (present) HFCNode_ID_new mw_hFCNode_ID_new( - template (present) HFCNode_ID p_hFCNode_ID := ?, - template (present) TAI p_tAI := ?, - template HFCNode_ID_new.iE_Extensions p_iE_Extensions := * - ) := { - hFCNode_ID := p_hFCNode_ID, - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_hFCNode_ID_new + template (present) MBS_DataForwardingResponseMRBItem mw_mBS_DataForwardingResponseMRBItem( + template (present) MRB_ID p_mRB_ID := ?, + template (present) UPTransportLayerInformation p_dL_Forwarding_UPTNLInformation := ?, + template MRB_ProgressInformation p_mRB_ProgressInformation := *, + template MBS_DataForwardingResponseMRBItem.iE_Extensions p_iE_Extensions := * + ) := { + mRB_ID := p_mRB_ID, + dL_Forwarding_UPTNLInformation := p_dL_Forwarding_UPTNLInformation, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DataForwardingResponseMRBItem + + template (present) MBS_MappingandDataForwardingRequestItem mw_mBS_MappingandDataForwardingRequestItem( + template (present) MRB_ID p_mRB_ID := ?, + template (present) MBS_QoSFlowList p_mBS_QoSFlowList := ?, + template MRB_ProgressInformation p_mRB_ProgressInformation := *, + template MBS_MappingandDataForwardingRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mRB_ID := p_mRB_ID, + mBS_QoSFlowList := p_mBS_QoSFlowList, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_MappingandDataForwardingRequestItem - template (present) HOReport mw_hOReport( - template (present) HOReport.handoverReportType p_handoverReportType := ?, - template (present) Cause p_handoverCause := ?, - template (present) NGRAN_CGI p_sourcecellCGI := ?, - template (present) NGRAN_CGI p_targetcellCGI := ?, - template NGRAN_CGI p_reestablishmentcellCGI := ?, - template Bit16 p_sourcecellC_RNTI := *, - template EUTRA_CGI p_targetcellinE_UTRAN := *, - template MobilityInformation p_mobilityInformation := *, - template UERLFReportContainer p_uERLFReportContainer := *, - template HOReport.iE_Extensions p_iE_Extensions := * - ) := { - handoverReportType := p_handoverReportType, - handoverCause := p_handoverCause, - sourcecellCGI := p_sourcecellCGI, - targetcellCGI := p_targetcellCGI, - reestablishmentcellCGI := p_reestablishmentcellCGI, - // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" - sourcecellC_RNTI := p_sourcecellC_RNTI, - targetcellinE_UTRAN := p_targetcellinE_UTRAN, - // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" - mobilityInformation := p_mobilityInformation, - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_hOReport + template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length12( + template (present) MRB_ProgressInformation.pDCP_SN_Length12 p_pDCP_SN_Length12 := ? + ) := { + pDCP_SN_Length12 := p_pDCP_SN_Length12 + } // End of template mw_mRB_ProgressInformation_pDCP_SN_Length12 - template (present) IAB_Authorized mw_iAB_Authorized(template (present) IAB_Authorized p_value := ?) := p_value; + template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length18( + template (present) MRB_ProgressInformation.pDCP_SN_Length18 p_pDCP_SN_Length18 := ? + ) := { + pDCP_SN_Length18 := p_pDCP_SN_Length18 + } // End of template m_mRB_ProgressInformation_pDCP_SN_Length18 - template (present) IAB_Supported mw_iAB_Supported(template (present) IAB_Supported p_value := true_) := p_value; + template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_choice_Extensions( + template (present) MRB_ProgressInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mRB_ProgressInformation_choice_Extensions - template (present) IABNodeIndication mw_iABNodeIndication(template (present) IABNodeIndication p_value := true_) := p_value; + template (present) MBS_QoSFlowsToBeSetupItem mw_mBS_QoSFlowsToBeSetupItem( + template (present)QosFlowIdentifier p_mBSqosFlowIdentifier := ?, + template (present)QosFlowLevelQosParameters p_mBSqosFlowLevelQosParameters := ?, + template MBS_QoSFlowsToBeSetupItem.iE_Extensions p_iE_Extensions := * + ) := { + mBSqosFlowIdentifier := p_mBSqosFlowIdentifier, + mBSqosFlowLevelQosParameters := p_mBSqosFlowLevelQosParameters, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_QoSFlowsToBeSetupItem - template (present) IMSVoiceSupportIndicator mw_iMSVoiceSupportIndicator(template (present) IMSVoiceSupportIndicator p_value := ?) := p_value; + template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationindependent( + template (present) MBS_ServiceAreaInformation p_locationindependent := ? + ) := { + locationindependent := p_locationindependent + } // End of template mw_mBS_ServiceArea_locationindependent - template (present) InfoOnRecommendedCellsAndRANNodesForPaging mw_infoOnRecommendedCellsAndRANNodesForPaging( - template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, - template (present) RecommendedRANNodesForPaging p_recommendRANNodesForPaging := ?, - template InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := * - ) := { - recommendedCellsForPaging := p_recommendedCellsForPaging, - recommendRANNodesForPaging := p_recommendRANNodesForPaging, + template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationdependent( + template (present) MBS_ServiceAreaInformationList p_locationdependent := ? + ) := { + locationdependent := p_locationdependent + } // End of template mw_mBS_ServiceArea_locationdependent + + template (present) MBS_ServiceArea mw_mBS_ServiceArea_choice_Extensions( + template (present) MBS_ServiceArea.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mBS_ServiceArea_choice_Extensions + + template (present) MBS_ServiceAreaInformationItem mw_mBS_ServiceAreaInformationItem( + template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, + template (present) MBS_ServiceAreaInformation p_mBS_ServiceAreaInformation := ?, + template MBS_ServiceAreaInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceAreaInformation := p_mBS_ServiceAreaInformation, iE_Extensions := p_iE_Extensions - } // End of template mw_infoOnRecommendedCellsAndRANNodesForPaging + } // End of template mw_mBS_ServiceAreaInformationItem - template (present) IntegrityProtectionIndication mw_integrityProtectionIndication(template (present) IntegrityProtectionIndication p_value := ?) := p_value; + template MBS_ServiceAreaInformation mw_mBS_ServiceAreaInformation( + template MBS_ServiceAreaCellList p_mBS_ServiceAreaCellList := *, + template MBS_ServiceAreaTAIList p_mBS_ServiceAreaTAIList := *, + template MBS_ServiceAreaInformation.iE_Extensions p_iE_Extensions := * + ) := { + mBS_ServiceAreaCellList := p_mBS_ServiceAreaCellList, + mBS_ServiceAreaTAIList := p_mBS_ServiceAreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ServiceAreaInformation - template (present) IntegrityProtectionResult mw_integrityProtectionResult(template (present) IntegrityProtectionResult p_value := ?) := p_value; + template (present) MBS_SessionID mw_mBS_SessionID( + template (present) TMGI p_tMGI := ?, + template NID p_nID := *, + template MBS_SessionID.iE_Extensions p_iE_Extensions := * + ) := { + tMGI := p_tMGI, + nID := p_nID, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_SessionID - template (present) ImmediateMDTNr mw_immediateMDTNr( - template (present) MeasurementsToActivate p_measurementsToActivate := ?, - template M1Configuration p_m1Configuration := *, - template M4Configuration p_m4Configuration := *, - template M5Configuration p_m5Configuration := *, - template M6Configuration p_m6Configuration := *, - template M7Configuration p_m7Configuration := *, - template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, - template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, - template MDT_Location_Info p_mDT_Location_Info := *, - template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, - template ImmediateMDTNr.iE_Extensions p_iE_Extensions := * - ) := { - measurementsToActivate := p_measurementsToActivate, - m1Configuration := p_m1Configuration, - // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” - m4Configuration := p_m4Configuration, - // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” - m5Configuration := p_m5Configuration, - // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” - m6Configuration := p_m6Configuration, - // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” - m7Configuration := p_m7Configuration, - // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” - bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, - wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, - mDT_Location_Info := p_mDT_Location_Info, - sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, - iE_Extensions := p_iE_Extensions - } // End of template mw_immediateMDTNr + template (present) MBSSessionFailedtoSetupItem mw_mBSSessionFailedtoSetupItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBSSessionFailedtoSetupItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionFailedtoSetupItem - template InterSystemFailureIndication mw_interSystemFailureIndication( - template UERLFReportContainer p_uERLFReportContainer := *, - template InterSystemFailureIndication.iE_Extensions p_iE_Extensions := * - ) := { - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_interSystemFailureIndication + template (present) MBS_ActiveSessionInformation_SourcetoTargetItem mw_mBS_ActiveSessionInformation_SourcetoTargetItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBS_ServiceArea p_mBS_ServiceArea := *, + template MBS_MappingandDataForwardingRequestList p_mBS_MappingandDataForwardingRequestList := *, + template MBS_ActiveSessionInformation_SourcetoTargetItem.iE_Extensions p_iE_Extensions := * + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceArea := p_mBS_ServiceArea, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBS_MappingandDataForwardingRequestList := p_mBS_MappingandDataForwardingRequestList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ActiveSessionInformation_SourcetoTargetItem - template (present) IntersystemSONConfigurationTransfer mw_intersystemSONConfigurationTransfer( - template (present) IntersystemSONTransferType p_transferType := ?, - template (present) IntersystemSONInformation p_intersystemSONInformation := ?, - template IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := * - ) := { - transferType := p_transferType, - intersystemSONInformation := p_intersystemSONInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemSONConfigurationTransfer + template (present) MBS_ActiveSessionInformation_TargettoSourceItem mw_mBS_ActiveSessionInformation_TargettoSourceItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_DataForwardingResponseMRBList p_mBS_DataForwardingResponseMRBList := *, + template MBS_ActiveSessionInformation_TargettoSourceItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_DataForwardingResponseMRBList := p_mBS_DataForwardingResponseMRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ActiveSessionInformation_TargettoSourceItem - template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromEUTRANtoNGRAN( - template (present) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN := ? + template (present) MBSSessionSetupOrModFailureTransfer mw_mBSSessionSetupOrModFailureTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template MBSSessionSetupOrModFailureTransfer.iE_Extensions p_iE_Extensions := * ) := { - fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN - } // End of template mw_intersystemSONTransferType_fromEUTRANtoNGRAN + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupOrModFailureTransfer - template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromNGRANtoEUTRAN( - template (present) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN := ? - ) := { - fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN - } // End of template mw_intersystemSONTransferType_fromNGRANtoEUTRAN + template (present) MBSSessionSetupResponseItem mw_mBSSessionSetupResponseItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBSSessionSetupResponseItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupResponseItem - template (present) IntersystemSONTransferType mw_intersystemSONTransferType_choice_Extensions( - template (present) IntersystemSONTransferType.choice_Extensions p_choice_Extensions := ? + template (present) MBSSessionSetupOrModRequestTransfer mw_mBSSessionSetupOrModRequestTransfer( + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs := ? ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONTransferType_choice_Extensions + protocolIEs := p_protocolIEs + } // End of template mw_mBSSessionSetupOrModRequestTransfer - template (present) IntersystemSONeNBID mw_intersystemSONeNBID( - template (present) GlobalENB_ID p_globaleNBID := ?, - template (present) EPS_TAI p_selectedEPSTAI := ?, - template IntersystemSONeNBID.iE_Extensions p_iE_Extensions := * - ) := { - globaleNBID := p_globaleNBID, - selectedEPSTAI := p_selectedEPSTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemSONeNBID + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( + template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC - template (present) IntersystemSONNGRANnodeID mw_intersystemSONNGRANnodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template (present) TAI p_selectedTAI := ?, - template IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := * - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemSONNGRANnodeID + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList - template (present) IntersystemSONInformation mw_intersystemSONInformation_intersystemSONInformationReport( - in template (present) IntersystemSONInformationReport p_intersystemSONInformationReport := ? - ) := { - intersystemSONInformationReport := p_intersystemSONInformationReport - } // End of template mw_intersystemSONInformation_intersystemSONInformationReport + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( + template (present) MBS_SessionFSAIDList p_mBS_SessionFSAIDList := ? + ) := { + { + id := id_MBS_SessionFSAIDList, + criticality := ignore, + value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList - template (present) IntersystemSONInformation mw_intersystemSONInformation_choice_Extensions( - template (present) IntersystemSONInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformation_choice_Extensions + template MBSSessionReleaseResponseTransfer mw_mBSSessionReleaseResponseTransfer( + template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, + template MBSSessionReleaseResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionReleaseResponseTransfer - template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationRequest( - template (present) IntersystemSONInformationRequest p_intersystemSONInformationRequest := ? - ) := { - id := id_IntersystemSONInformationRequest, - criticality := ignore, - value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } - } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationRequest + template MBSSessionSetupOrModResponseTransfer mw_mBSSessionSetupOrModResponseTransfer( + template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, + template MBSSessionSetupOrModResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupOrModResponseTransfer - template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationReply( - template (present) IntersystemSONInformationReply p_intersystemSONInformationReply := ? - ) := { - id := id_IntersystemSONInformationReply, - criticality := ignore, - value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } - } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationReply + template (present) MBS_SupportIndicator mw_mBS_SupportIndicator(template (present) MBS_SupportIndicator p_value := true_) := p_value; - template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_nGRAN_CellActivation( - template (present) IntersystemCellActivationRequest p_nGRAN_CellActivation := ? - ) := { - nGRAN_CellActivation := p_nGRAN_CellActivation - } // End of template mw_intersystemSONInformationRequest_nGRAN_CellActivation + template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationindependent( + template (present) SharedNGU_MulticastTNLInformation p_locationindependent := ? + ) := { + locationindependent := p_locationindependent + } // End of template mw_mBS_SessionTNLInfo5GC_locationindependent - template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_resourceStatus( - template (present) IntersystemResourceStatusRequest p_resourceStatus := ? - ) := { - resourceStatus := p_resourceStatus - } // End of template mw_intersystemSONInformationRequest_resourceStatus + template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationdependent( + template (present) MBS_SessionTNLInfo5GCList p_locationdependent := ? + ) := { + locationdependent := p_locationdependent + } // End of template mw_mBS_SessionTNLInfo5GC_locationdependent - template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_choice_Extensions( - template (present) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_choice_Extensions( + template (present) MBS_SessionTNLInfo5GC.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformationRequest_choice_Extensions + } // End of template mw_mBS_SessionTNLInfo5GC_choice_Extensions - template (present) IntersystemCellActivationRequest mw_intersystemCellActivationRequest( - template (present) IntersystemCellActivationRequest.activationID p_activationID := ?, - template (present) CellsToActivateList p_cellsToActivateList := ?, - template IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := * + + template (present) MBS_SessionTNLInfo5GCItem mw_mBS_SessionTNLInfo5GCItem( + template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, + template (present) SharedNGU_MulticastTNLInformation p_sharedNGU_MulticastTNLInformation := ?, + template MBS_SessionTNLInfo5GCItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_SessionTNLInfo5GCItem + + template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationindependent( + template (present) UPTransportLayerInformation p_locationindependent := ? + ) := { + locationindependent := p_locationindependent + } // End of template mw_mBS_SessionTNLInfoNGRAN_locationindependent + + template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationdependent( + template (present) MBS_SessionTNLInfoNGRANList p_locationdependent := ? ) := { - activationID := p_activationID, - cellsToActivateList := p_cellsToActivateList, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemCellActivationRequest + locationdependent := p_locationdependent + } // End of template mw_mBS_SessionTNLInfoNGRAN_locationdependent - template (present) IntersystemResourceStatusRequest mw_intersystemResourceStatusRequest( - template (present) ReportingSystem p_reportingSystem := ?, - template (present) ReportCharacteristics p_reportCharacteristics := ?, - template (present) ReportType p_reportType := ?, - template IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := * + template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_choice_Extensions( + template (present) MBS_SessionTNLInfoNGRAN.choice_Extensions p_choice_Extensions := ? ) := { - reportingSystem := p_reportingSystem, - reportCharacteristics := p_reportCharacteristics, - reportType := p_reportType, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemResourceStatusRequest + choice_Extensions := p_choice_Extensions + } // End of template mw_mBS_SessionTNLInfoNGRAN_choice_Extensions - template (present) ReportingSystem mw_reportingSystem_eUTRAN( - template (present) EUTRAN_ReportingSystemIEs p_eUTRAN := ? - ) := { - eUTRAN := p_eUTRAN - } // End of template mw_reportingSystem_eUTRAN + template (present) MBS_SessionTNLInfoNGRANItem mw_mBS_SessionTNLInfoNGRANItem( + template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, + template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, + template MBS_SessionTNLInfoNGRANItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_SessionTNLInfoNGRANItem - template (present) ReportingSystem mw_reportingSystem_nGRAN( - template (present) NGRAN_ReportingSystemIEs p_nGRAN := ? - ) := { - nGRAN := p_nGRAN - } // End of template mw_reportingSystem_nGRAN + template (present) MBS_DistributionReleaseRequestTransfer mw_mBS_DistributionReleaseRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, + template MBS_DistributionReleaseRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionReleaseRequestTransfer - template (present) ReportingSystem mw_reportingSystem_choice_Extensions( - template (present) ReportingSystem.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_reportingSystem_choice_Extensions + template (present) MBS_DistributionSetupRequestTransfer mw_mBS_DistributionSetupRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, + template MBS_DistributionSetupRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionSetupRequestTransfer - template (present) EUTRAN_ReportingSystemIEs mw_eUTRAN_ReportingSystemIEs( - template (present) EUTRAN_CellToReportList p_eUTRAN_CellToReportList := ?, - template EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * - ) := { - eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_ReportingSystemIEs + template (present) MBS_DistributionSetupResponseTransfer mw_mBS_DistributionSetupResponseTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, + template (present) MBSSessionStatus p_mBSSessionStatus := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBS_SessionTNLInfo5GCItem p_sharedNGU_MulticastTNLInformation := *, + template MBS_ServiceArea p_mBS_ServiceArea := *, + template MBS_DistributionSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBSSessionStatus := p_mBSSessionStatus, + mBS_ServiceArea := p_mBS_ServiceArea, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionSetupResponseTransfer - template (present) NGRAN_ReportingSystemIEs mw_nGRAN_ReportingSystemIEs( - template (present) NGRAN_CellToReportList p_nGRAN_CellToReportList := ?, - template NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CellToReportList := p_nGRAN_CellToReportList, + template (present) MBS_DistributionSetupUnsuccessfulTransfer mw_mBS_DistributionSetupUnsuccessfulTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template MBS_DistributionSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_ReportingSystemIEs + } // End of template mw_mBS_DistributionSetupUnsuccessfulTransfer - template (present) EUTRAN_CellToReportItem mw_eUTRAN_CellToReportItem( - template (present) EUTRA_CGI p_eCGI := ?, - template EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * - ) := { - eCGI := p_eCGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_CellToReportItem + template (present) MBSSessionSetupRequestItem mw_mBSSessionSetupRequestItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := *, + template MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := * + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetupRequestList := p_associatedMBSQosFlowSetupRequestList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupRequestItem - template (present) NGRAN_CellToReportItem mw_nGRAN_CellToReportItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * - ):= { - nGRAN_CGI := p_nGRAN_CGI, + template (present) MBSSessionSetuporModifyRequestItem mw_mBSSessionSetuporModifyRequestItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template AssociatedMBSQosFlowSetuporModifyRequestList p_associatedMBSQosFlowSetuporModifyRequestList := *, + template QosFlowListWithCause p_mBS_QosFlowToReleaseList := *, + template MBSSessionSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetuporModifyRequestList := p_associatedMBSQosFlowSetuporModifyRequestList, + mBS_QosFlowToReleaseList := p_mBS_QosFlowToReleaseList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetuporModifyRequestItem + + template (present) MBSSessionToReleaseItem mw_mBSSessionToReleaseItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBSSessionToReleaseItem.iE_Extensions p_iE_Extensions := * + ):= { + mBS_SessionID := p_mBS_SessionID, + cause := p_cause, iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_CellToReportItem + } // End of template mw_mBSSessionToReleaseItem - template (present) ReportType mw_reportType_eventBasedReporting( - template (present) EventBasedReportingIEs p_eventBasedReporting := ? - ) := { - eventBasedReporting := p_eventBasedReporting - } // End of template mw_reportType_eventBasedReporting + template (present) MBSSessionStatus mw_mBSSessionStatus(template (present) MBSSessionStatus p_value := ?) := p_value; - template (present) ReportType mw_reportType_periodicReporting( - template (present) PeriodicReportingIEs p_periodicReporting := ? - ) := { - periodicReporting := p_periodicReporting - } // End of template mw_reportType_periodicReporting + template (present) MicoAllPLMN mw_micoAllPLMN(template (present) MicoAllPLMN p_value := true_) := p_value; - template (present) ReportType mw_reportType_choice_Extensions( - template (present) ReportType.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_reportType_choice_Extensions + template (present) MICOModeIndication mw_mICOModeIndication(template (present) MICOModeIndication p_value := true_) := p_value; - template (present) NumberOfMeasurementReportingLevels mw_numberOfMeasurementReportingLevels(template (present) NumberOfMeasurementReportingLevels p_value := ?) := p_value; + template (present) MobilityRestrictionList mw_mobilityRestrictionList( + template (present) PLMNIdentity p_servingPLMN := ?, + template EquivalentPLMNs p_equivalentPLMNs := *, + template RATRestrictions p_rATRestrictions := *, + template ForbiddenAreaInformation p_forbiddenAreaInformation := *, + template ServiceAreaInformation p_serviceAreaInformation := *, + template MobilityRestrictionList.iE_Extensions p_iE_Extensions := * + ) := { + servingPLMN := p_servingPLMN, + equivalentPLMNs := p_equivalentPLMNs, + rATRestrictions := p_rATRestrictions, + forbiddenAreaInformation := p_forbiddenAreaInformation, + serviceAreaInformation := p_serviceAreaInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mobilityRestrictionList - template (present) PeriodicReportingIEs mw_PeriodicReportingIEs( - template (present) ReportingPeriodicity p_reportingPeriodicity := ?, - template PeriodicReportingIEs.iE_Extensions p_iE_Extensions := * - ) := { - reportingPeriodicity := p_reportingPeriodicity, - iE_Extensions := p_iE_Extensions - } // End of template mw_PeriodicReportingIEs + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( + template (present) PLMNIdentity p_pLMNIdentity := ? + ) := { + { + id := id_LastEUTRAN_PLMNIdentity, + criticality := ignore, + extensionValue := { PLMNIdentity := p_pLMNIdentity } + } + } // End of template mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity - template (present) ReportingPeriodicity mw_reportingPeriodicity(template (present) ReportingPeriodicity p_value := ?) := p_value; + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing( + template (present) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing := ? + ) := { + { + id := id_CNTypeRestrictionsForServing, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } + } + } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing - template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_nGRAN_CellActivation( - template (present) IntersystemCellActivationReply p_nGRAN_CellActivation := ? - ) := { - nGRAN_CellActivation := p_nGRAN_CellActivation - } // End of template mw_intersystemSONInformationReply_nGRAN_CellActivation + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( + template (present) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent := ? + ) := { + { + id := id_CNTypeRestrictionsForEquivalent, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } + } + } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent - template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_resourceStatus( - template (present) IntersystemResourceStatusReply p_resourceStatus := ? - ) := { - resourceStatus := p_resourceStatus - } // End of template mw_intersystemSONInformationReply_resourceStatus + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_NPN_MobilityInformation( + template (present) NPN_MobilityInformation p_nPN_MobilityInformation := ? + ) := { + { + id := id_NPN_MobilityInformation, + criticality := reject, + extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } + } + } // End of template mw_mobilityRestrictionList_id_NPN_MobilityInformation - template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_choice_Extensions( - template (present) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_s_basedMDT( + template (present) NGRANTraceID p_s_basedMDT := ? + ) := { + s_basedMDT := p_s_basedMDT + } // End of template mw_mDT_AlignmentInfo_s_basedMDT + + template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_choice_Extensions( + template (present) MDT_AlignmentInfo.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformationReply_choice_Extensions + } // End of template mw_mDT_AlignmentInfo_choice_Extensions - template (present) IntersystemCellActivationReply mw_intersystemCellActivationReply( - template (present) ActivatedCellList p_activatedCellList := ?, - template (present) IntersystemCellActivationReply.activation_ID p_activation_ID := ?, - template IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := * - ) := { - activatedCellList := p_activatedCellList, - activation_ID := p_activation_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemCellActivationReply + template MDT_Configuration mw_mDT_Configuration( + template MDT_Configuration_NR p_mdt_Config_NR := *, + template MDT_Configuration_EUTRA p_mdt_Config_EUTRA := *, + template MDT_Configuration.iE_Extensions p_iE_Extensions := * + ) := { + mdt_Config_NR := p_mdt_Config_NR, + mdt_Config_EUTRA := p_mdt_Config_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Configuration - template (present) IntersystemResourceStatusReply mw_intersystemResourceStatusReply( - template (present) ReportingSystem p_reportingsystem := ?, - template IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := * - ) := { - reportingsystem := p_reportingsystem, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemResourceStatusReply + template (present) MDT_Configuration_NR mw_mDT_Configuration_NR( + template (present) MDT_Activation p_mdt_Activation := ?, + template (present) AreaScopeOfMDT_NR p_areaScopeOfMDT := ?, + template (present) MDTModeNr p_mDTModeNr := ?, + template MDTPLMNList p_signallingBasedMDTPLMNList := *, + template MDT_Configuration_NR.iE_Extensions p_iE_Extensions := * + ) := { + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTModeNr := p_mDTModeNr, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Configuration_NR - template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_hOReportInformation( - template (present) InterSystemHOReport p_hOReportInformation := ? - ) := { - hOReportInformation := p_hOReportInformation - } // End of template mw_intersystemSONInformationReport_hOReportInformation + template (present) MDT_Configuration_EUTRA mw_mDT_Configuration_EUTRA( + template (present) MDT_Activation p_mdt_Activation := ?, + template (present) AreaScopeOfMDT_EUTRA p_areaScopeOfMDT := ?, + template (present) MDTModeEutra p_mDTMode := ?, + template MDTPLMNList p_signallingBasedMDTPLMNList := *, + template MDT_Configuration_EUTRA.iE_Extensions p_iE_Extensions := * + ) := { + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTMode := p_mDTMode, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Configuration_EUTRA - template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_failureIndicationInformation( - template (present) InterSystemFailureIndication p_failureIndicationInformation := ? - ) := { - failureIndicationInformation := p_failureIndicationInformation - } // End of template mw_intersystemSONInformationReport_failureIndicationInformation + template (present) MDT_Activation mw_mDT_Activation(template (present) MDT_Activation p_value := ?) := p_value; - template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_choice_Extensions( - template (present) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformationReport_choice_Extensions + template (present) MDTModeNr mw_mDTModeNro_immediateMDTNr( + template (present) ImmediateMDTNr p_immediateMDTNr := ? + ) := { + immediateMDTNr := p_immediateMDTNr + } // End of template mw_mDTModeNr_immediateMDTNr - template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_EnergySavingIndication( - template (present) IntersystemCellStateIndication p_intersystemCellStateIndication := ? - ) := { - id := id_EnergySavingIndication, - criticality := ignore, - value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } - } // End of template mw_intersystemSONInformationReport_id_EnergySavingIndication + template (present) MDTModeNr mw_mDTModeNro_loggedMDTNr( + template (present) LoggedMDTNr p_loggedMDTNr := ? + ) := { + loggedMDTNr := p_loggedMDTNr + } // End of template mw_mDTModeNr_loggedMDTNr - template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( - template (present) IntersystemResourceStatusReport p_intersystemResourceStatusReport := ? - ) := { - id := id_IntersystemResourceStatusUpdate, - criticality := ignore, - value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } - } // End of template mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate + template (present) MDTModeNr mw_mDTModeNr_choice_Extensions( + template (present) MDTModeNr.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mDTModeNr_choice_Extensions - template (present) NotificationCell_Item mw_notificationCell_Item( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template (present) NotificationCell_Item.notifyFlag p_notifyFlag := ?, - template NotificationCell_Item.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - notifyFlag := p_notifyFlag, + template (present) MulticastSessionActivationRequestTransfer mw_multicastSessionActivationRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MulticastSessionActivationRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, iE_Extensions := p_iE_Extensions - } // End of template mw_notificationCell_Item - - template (present) IntersystemResourceStatusReport mw_intersystemResourceStatusReport( - template (present) ResourceStatusReportingSystem p_reportingSystem := ?, - template IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := * - ) := { - reportingSystem := p_reportingSystem, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemResourceStatusReport + } // End of template mw_multicastSessionActivationRequestTransfer - template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( - template (present) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus := ? - ) := { - eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus - } // End of template mw_resourceStatusReportingSystem_eUTRAN_ReportingStatus + template (present) MulticastSessionDeactivationRequestTransfer mw_multicastSessionDeactivationRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MulticastSessionDeactivationRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastSessionDeactivationRequestTransfer - template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_nGRAN_ReportingStatus( - template (present) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus := ? - ) := { - nGRAN_ReportingStatus := p_nGRAN_ReportingStatus - } // End of template mw_resourceStatusReportingSystem_nGRAN_ReportingStatus + template (present) MulticastSessionUpdateRequestTransfer mw_multicastSessionUpdateRequestTransfer( + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { + protocolIEs := p_protocolIEs + } // End of template mw_multicastSessionUpdateRequestTransfer - template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystem_choice_Extensions( - template (present) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_resourceStatusReportingSystem_choice_Extensions + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( + template (present) MBS_SessionID p_mBS_SessionID := ? + ) := { + { + id := id_MBS_SessionID, + criticality := reject, + value_ := { MBS_SessionID := p_mBS_SessionID } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID - template (present) EUTRAN_ReportingStatusIEs mw_eUTRAN_ReportingStatusIEs( - template (present) EUTRAN_CellReportList p_eUTRAN_CellReportList := ?, - template EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * - ) := { - eUTRAN_CellReportList := p_eUTRAN_CellReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_ReportingStatusIEs + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( + template (present) MBS_ServiceArea p_mBS_ServiceArea := ? + ) := { + { + id := id_MBS_ServiceArea, + criticality := reject, + value_ := { MBS_ServiceArea := p_mBS_ServiceArea } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea - template (present) EUTRAN_CellReportItem mw_eUTRAN_CellReportItem ( - template (present) EUTRA_CGI p_eCGI, - template (present) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup := ?, - template EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := *, - template NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := *, - template EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := *, - template EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := * - ):= { - eCGI := p_eCGI, - eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, - eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, - eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, - eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_ReportingStatusIEs + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList - template (present) EUTRAN_CompositeAvailableCapacityGroup mw_EUTRAN_CompositeAvailableCapacityGroup( - template (present) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity := ?, - template (present) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity := ?, - template EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := * - ) := { - dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, - uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, - iE_Extensions := p_iE_Extensions - } // End of template mw_EUTRAN_CompositeAvailableCapacityGroup + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( + template (present) QosFlowListWithCause p_qosFlowListWithCause := ? + ) := { + { + id := id_MBS_QoSFlowToReleaseList, + criticality := reject, + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList - template (present) CompositeAvailableCapacity mw_compositeAvailableCapacity( - template (present) CompositeAvailableCapacity.capacityValue p_capacityValue := ?, - template CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := *, - template CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := * - ) := { - cellCapacityClassValue := p_cellCapacityClassValue, - capacityValue := p_capacityValue, - iE_Extensions := p_iE_Extensions - } // End of template mw_compositeAvailableCapacity - - template (present) EUTRAN_RadioResourceStatus mw_eUTRAN_RadioResourceStatus( - template (present) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage := ?, - template EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := *, - template EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := *, - template EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * - ) := { - dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, - uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, - dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, - uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, - dL_Total_PRB_usage := p_dL_Total_PRB_usage, - uL_Total_PRB_usage := p_uL_Total_PRB_usage, - dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, - uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_RadioResourceStatus + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( + template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC - template (present) NGRAN_ReportingStatusIEs mw_nGRAN_ReportingStatusIEs( - template (present) NGRAN_CellReportList p_nGRAN_CellReportList := ?, - template NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CellReportList := p_nGRAN_CellReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_ReportingStatusIEs + template (present) MulticastGroupPagingAreaItem mw_multicastGroupPagingAreaItem( + template (present) MulticastGroupPagingArea p_multicastGroupPagingArea := ?, + template UE_PagingList p_uE_PagingList := *, + template MulticastGroupPagingAreaItem.iE_Extensions p_iE_Extensions := * + ) := { + multicastGroupPagingArea := p_multicastGroupPagingArea, + uE_PagingList := p_uE_PagingList, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastGroupPagingAreaItem - template (present) NGRAN_CellReportItem mw_nGRAN_CellReportItem( - template (present) NGRAN_CGI p_nGRAN_CGI, - template (present) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup := ?, - template NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := *, - template NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := *, - template NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := *, - template NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, - nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, - nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, - nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_CellReportItem + template (present) MulticastGroupPagingArea mw_multicastGroupPagingArea( + template (present) MBS_AreaTAIList p_mBS_AreaTAIList := ?, + template MulticastGroupPagingArea.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaTAIList := p_mBS_AreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastGroupPagingArea - template (present) NGRAN_RadioResourceStatus mw_nGRAN_RadioResourceStatus( - template (present) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO := ?, - template NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * - ) := { - dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, - uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, - dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, - uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, - dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, - uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_RadioResourceStatus + template (present) UE_PagingItem mw_uE_PagingItem( + template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, + template PagingDRX p_pagingDRX := *, + template UE_PagingItem.iE_Extensions p_iE_Extensions := * + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + pagingDRX := p_pagingDRX, + iE_Extensions := p_iE_Extensions + } // End of template mw_uE_PagingItem - template (present) InterSystemHOReport mw_interSystemHOReport( - template (present) InterSystemHandoverReportType p_handoverReportType := ?, - template InterSystemHOReport.iE_Extensions p_iE_Extensions := * - ) := { - handoverReportType := p_handoverReportType, - iE_Extensions := p_iE_Extensions - } // End of template mw_interSystemHOReport + template (present) M1Configuration mw_m1Configuration( + template (present) M1ReportingTrigger p_m1reportingTrigger := ?, + template M1ThresholdEventA2 p_m1thresholdEventA2 := *, + template M1PeriodicReporting p_m1periodicReporting := *, + template M1Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m1reportingTrigger := p_m1reportingTrigger, + m1thresholdEventA2 := p_m1thresholdEventA2, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” + m1periodicReporting := p_m1periodicReporting, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” + iE_Extensions := p_iE_Extensions + } // End of template mw_m1Configuration - template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_tooearlyIntersystemHO( - template (present) TooearlyIntersystemHO p_tooearlyIntersystemHO := ? - ) := { - tooearlyIntersystemHO := p_tooearlyIntersystemHO - } // End of template mw_interSystemHandoverReportType_tooearlyIntersystemHO + template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_IncludeBeamMeasurementsIndication( + template (present) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication := ? + ) := { + { + id := id_IncludeBeamMeasurementsIndication, + criticality := ignore, + extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } + } + } // End of template mw_m1Configuration_id_IncludeBeamMeasurementsIndication - template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_intersystemUnnecessaryHO( - template (present) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO := ? + template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_BeamMeasurementsReportConfiguration( + template (present) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration := ? ) := { - intersystemUnnecessaryHO := p_intersystemUnnecessaryHO - } // End of template mw_interSystemHandoverReportType_intersystemUnnecessaryHO - - template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_choice_Extensions( - template (present) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_interSystemHandoverReportType_choice_Extensions - - template (present) IntersystemUnnecessaryHO mw_intersystemUnnecessaryHO( - template (present) NGRAN_CGI p_sourcecellID := ?, - template (present) EUTRA_CGI p_targetcellID := ?, - template (present) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := ?, - template (present) CandidateCellList p_candidateCellList := ?, - template IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := * - ) := { - sourcecellID := p_sourcecellID, - targetcellID := p_targetcellID, - earlyIRATHO := p_earlyIRATHO, - candidateCellList := p_candidateCellList, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemUnnecessaryHO + { + id := id_BeamMeasurementsReportConfiguration, + criticality := ignore, + extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } + } + } // End of template mw_m1Configuration_id_BeamMeasurementsReportConfiguration - template (present) LAI mw_lai( - template (present) PLMNIdentity p_pLMNidentity := ?, - template (present) LAC p_lAC := ?, - template LAI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNidentity := p_pLMNidentity, - lAC := p_lAC, - iE_Extensions := p_iE_Extensions - } // End of template mw_lai + template (present) IncludeBeamMeasurementsIndication mw_includeBeamMeasurementsIndication(template (present) IncludeBeamMeasurementsIndication p_value := true_) := p_value; - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_nGRANCell( - template (present) LastVisitedNGRANCellInformation p_nGRANCell := ? - ) := { - nGRANCell := p_nGRANCell - } // End of template mw_interSystemHandoverReportType_nGRANCell + template (present) M1ReportingTrigger mw_m1ReportingTrigger(template (present) M1ReportingTrigger p_value := ?) := p_value; - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_eUTRANCell( - template (present) LastVisitedEUTRANCellInformation p_eUTRANCell := ? - ) := { - eUTRANCell := p_eUTRANCell - } // End of template mw_interSystemHandoverReportType_eUTRANCell + template (present) M1ThresholdEventA2 mw_m1ThresholdEventA2( + template (present) M1ThresholdType p_m1ThresholdType := ?, + template M1ThresholdEventA2.iE_Extensions p_iE_Extensions := * + ) := { + m1ThresholdType := p_m1ThresholdType, + iE_Extensions := p_iE_Extensions + } // End of template mw_m1ThresholdEventA2 - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_uTRANCell( - template (present) LastVisitedUTRANCellInformation p_uTRANCell := ? - ) := { - uTRANCell := p_uTRANCell - } // End of template mw_interSystemHandoverReportType_uTRANCell + template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRP( + template (present) Threshold_RSRP p_threshold_RSRP := ? + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template mw_m1ThresholdType_threshold_RSRP - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_gERANCell( - template (present) LastVisitedGERANCellInformation p_gERANCell := ? - ) := { - gERANCell := p_gERANCell - } // End of template mw_interSystemHandoverReportType_gERANCell + template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRQ( + template (present) Threshold_RSRQ p_threshold_RSRQ := ? + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template mw_m1ThresholdType_threshold_RSRQ - template (present) LastVisitedCellInformation mw_lastVisitedCellInformation_choice_Extensions( - template (present) LastVisitedCellInformation.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) M1ThresholdType mw_m1ThresholdType_threshold_SINR( + template (present) Threshold_SINR p_threshold_SINR := ? + ) := { + threshold_SINR := p_threshold_SINR + } // End of template mw_m1ThresholdType_threshold_SINR + + template (present) M1ThresholdType mw_m1ThresholdType_choice_Extensions( + template (present) M1ThresholdType.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_lastVisitedCellInformation_choice_Extensions + } // End of template mw_m1ThresholdType_choice_Extensions - template (present) LastVisitedCellItem mw_lastVisitedCellItem( - template (present) LastVisitedCellInformation p_lastVisitedCellInformation := ?, - template LastVisitedCellItem.iE_Extensions p_iE_Extensions := * + template (present) M1PeriodicReporting mw_m1PeriodicReporting( + template (present) ReportIntervalMDT p_reportInterval := ?, + template (present) ReportAmountMDT p_reportAmount := ?, + template M1PeriodicReporting.iE_Extensions p_iE_Extensions := * ) := { - lastVisitedCellInformation := p_lastVisitedCellInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_lastVisitedCellItem - - template (present) LastVisitedNGRANCellInformation mw_lastVisitedNGRANCellInformation( - template (present) NGRAN_CGI p_globalCellID := ?, - template (present) CellType p_cellType := ?, - template (present) TimeUEStayedInCell p_timeUEStayedInCell := ?, - template TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := *, - template Cause p_hOCauseValue := *, - template LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := * - ) := { - globalCellID := p_globalCellID, - cellType := p_cellType, - timeUEStayedInCell := p_timeUEStayedInCell, - timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, - hOCauseValue := p_hOCauseValue, - iE_Extensions := p_iE_Extensions - } // End of template mw_lastVisitedNGRANCellInformation + reportInterval := p_reportInterval, + reportAmount := p_reportAmount, + iE_Extensions := p_iE_Extensions + } // End of template mw_m1PeriodicReporting - template (present) LastVisitedNGRANCellInformation.iE_Extensions mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( - template (present) LastVisitedPSCellList p_lastVisitedPSCellList := ? - ) := { + template (present) M1PeriodicReporting.iE_Extensions mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT( + template (present) ExtendedReportIntervalMDT p_extendedReportIntervalMDT := ? + ) := { { - id := id_LastVisitedPSCellList, + id := id_ExtendedReportIntervalMDT, criticality := ignore, - extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } + extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } } - } // End of template mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList + } // End of template mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT - template (present) LastVisitedPSCellInformation mw_LastVisitedPSCellInformation( - template (present) NGRAN_CGI p_pSCellID := ?, - template (present) LastVisitedPSCellInformation.timeStay p_timeStay := ?, - template LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := * - ) := { - pSCellID := p_pSCellID, - timeStay := p_timeStay, - iE_Extensions := p_iE_Extensions - } // End of template mw_LastVisitedPSCellInformation + template (present) M4Configuration mw_m4Configuration( + template (present) M4period p_m4period := ?, + template (present) Links_to_log p_m4_links_to_log := ?, + template M4Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m4period := p_m4period, + m4_links_to_log := p_m4_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m4Configuration - template (present) LineType mw_lineType(template (present) LineType p_value := pon) := p_value; + template (present) M4Configuration.iE_Extensions mw_m4Configuration_id_M4ReportAmount( + template (present) M4ReportAmountMDT p_m4ReportAmountMDT := ? + ) := { + { + id := id_ExtendedReportIntervalMDT, + criticality := ignore, + extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } + } + } // End of template mw_m4Configuration_id_M4ReportAmount - template (present) LocationReportingAdditionalInfo mw_locationReportingAdditionalInfo(template (present) LocationReportingAdditionalInfo p_value := includePSCell) := p_value; + template (present) M4ReportAmountMDT mw_m4ReportAmountMDT(template (present) M4ReportAmountMDT p_value := ?) := p_value; - template (present) LocationReportingRequestType mw_locationReportingRequestType( - template (present) EventType p_eventType := ?, - template (present) ReportArea p_reportArea := ?, - template AreaOfInterestList p_areaOfInterestList := *, - template LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := *, - template LocationReportingRequestType.iE_Extensions p_iE_Extensions := * - ) := { - eventType := p_eventType, - reportArea := p_reportArea, - areaOfInterestList := p_areaOfInterestList, - locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, - // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” - iE_Extensions := p_iE_Extensions - } // End of template mw_locationReportingRequestType + template (present) M4period mw_m4period(template (present) M4period p_value := ?) := p_value; - template (present) LocationReportingRequestType.iE_Extensions mw_locationReportingRequestType_id_LocationReportingAdditionalInfo( - template (present) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo := ? - ) := { + template (present) M5Configuration mw_m5Configuration( + template (present) M5period p_m5period := ?, + template (present) Links_to_log p_m5_links_to_log := ?, + template M5Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m5period := p_m5period, + m5_links_to_log := p_m5_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m5Configuration + + template (present) M5Configuration.iE_Extensions mw_m5Configuration_id_M5ReportAmount( + template (present) M5ReportAmountMDT p_m5ReportAmountMDT := ? + ) := { { - id := id_LocationReportingAdditionalInfo, + id := id_M5ReportAmount, criticality := ignore, - extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } + extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } } - } // End of template mw_locationReportingRequestType_id_LocationReportingAdditionalInfo + } // End of template mw_m5Configuration_id_M5ReportAmount - template (present) LoggedMDTNr mw_loggedMDTNr( - template (present) LoggingInterval p_loggingInterval := ?, - template (present) LoggingDuration p_loggingDuration := ?, - template (present) LoggedMDTTrigger p_loggedMDTTrigger := ?, - template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, - template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, - template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, - template AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := *, - template LoggedMDTNr.iE_Extensions p_iE_Extensions := * - ) := { - loggingInterval := p_loggingInterval, - loggingDuration := p_loggingDuration, - loggedMDTTrigger := p_loggedMDTTrigger, - bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, - wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, - sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, - areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, - iE_Extensions := p_iE_Extensions - } // End of template mw_loggedMDTNr + template (present) M5ReportAmountMDT mw_m5ReportAmountMDT(template (present) M5ReportAmountMDT p_value := ?) := p_value; - template (present) LoggingInterval mw_loggingInterval(template (present) LoggingInterval p_value := ?) := p_value; + template (present) M5period mw_m5period(template (present) M5period p_value := ?) := p_value; - template (present) LoggingDuration mw_loggingDuration(template (present) LoggingDuration p_value := ?) := p_value; + template (present) M6Configuration mw_m6Configuration( + template (present) M6report_Interval p_m6report_Interval := ?, + template (present) Links_to_log p_m6_links_to_log := ?, + template M6Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m6report_Interval := p_m6report_Interval, + m6_links_to_log := p_m6_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m6Configuration - template (present) Links_to_log mw_Links_to_log(template (present) Links_to_log p_value := ?) := p_value; + template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_M6ReportAmount( + template (present) M6ReportAmountMDT p_m6ReportAmountMDT := ? + ) := { + { + id := id_M6ReportAmount, + criticality := ignore, + extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } + } + } // End of template mw_m6Configuration_id_M6ReportAmount - template (present) LoggedMDTTrigger mw_loggedMDTTrigger_gERANCell( - template (present) EventTrigger p_eventTrigger := ? - ) := { - eventTrigger := p_eventTrigger - } // End of template mw_loggedMDTTrigger_gERANCell + template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( + template (present) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration := ? + ) := { + { + id := id_ExcessPacketDelayThresholdConfiguration, + criticality := ignore, + extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } + } + } // End of template mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration - template (present) LoggedMDTTrigger mw_loggedMDTTrigger_choice_Extensions( - template (present) LoggedMDTTrigger.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_loggedMDTTrigger_choice_Extensions + template (present) M6ReportAmountMDT mw_m6ReportAmountMDT(template (present) M6ReportAmountMDT p_value := ?) := p_value; - template (present) LTEM_Indication mw_lTEM_Indication(template (present) LTEM_Indication p_value := lte_m) := p_value; + template (present) M6report_Interval mw_m6report_Interval(template (present) M6report_Interval p_value := ?) := p_value; - template LTEV2XServicesAuthorized mw_lTEV2XServicesAuthorized( - template VehicleUE p_vehicleUE := *, - template PedestrianUE p_pedestrianUE:= *, - template LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * - ) := { - vehicleUE := p_vehicleUE, - pedestrianUE := p_pedestrianUE, - iE_Extensions := p_iE_Extensions - } // End of template mw_lTEV2XServicesAuthorized + template (present) M7Configuration mw_m7Configuration( + template (present) M7period p_m7period := ?, + template (present) Links_to_log p_m7_links_to_log := ?, + template M7Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m7period := p_m7period, + m7_links_to_log := p_m7_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m7Configuration - template (present) LTEUESidelinkAggregateMaximumBitrate mw_lTEUESidelinkAggregateMaximumBitrate( - template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, - template LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * - ) := { - uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_lTEUESidelinkAggregateMaximumBitrate + template (present) M7Configuration.iE_Extensions mw_m7Configuration_id_M7ReportAmount( + template (present) M7ReportAmountMDT p_m7ReportAmountMDT := ? + ) := { + { + id := id_M7ReportAmount, + criticality := ignore, + extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } + } + } // End of template mw_m7Configuration_id_M7ReportAmount - template (present) MaximumIntegrityProtectedDataRate mw_maximumIntegrityProtectedDataRate(template (present) MaximumIntegrityProtectedDataRate p_value := ?) := p_value; + template (present) M7ReportAmountMDT mw_m7ReportAmountMDT(template (present) M7ReportAmountMDT p_value := ?) := p_value; + + template (present) MDT_Location_Info mw_mDT_Location_Info( + template (present) MDT_Location_Information p_mDT_Location_Information := ?, + template MDT_Location_Info.iE_Extensions p_iE_Extensions := * + ) := { + mDT_Location_Information := p_mDT_Location_Information, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Location_Info + + template (present) N3IWF_ID mw_n3IWF_ID_n3IWF_ID( + template (present) N3IWF_ID.n3IWF_ID p_n3IWF_ID := ? + ) := { + n3IWF_ID := p_n3IWF_ID + } // End of template mw_n3IWF_ID_n3IWF_ID - template (present) MBS_DataForwardingResponseMRBItem mw_mBS_DataForwardingResponseMRBItem( - template (present) MRB_ID p_mRB_ID := ?, - template (present) UPTransportLayerInformation p_dL_Forwarding_UPTNLInformation := ?, - template MRB_ProgressInformation p_mRB_ProgressInformation := *, - template MBS_DataForwardingResponseMRBItem.iE_Extensions p_iE_Extensions := * - ) := { - mRB_ID := p_mRB_ID, - dL_Forwarding_UPTNLInformation := p_dL_Forwarding_UPTNLInformation, - mRB_ProgressInformation := p_mRB_ProgressInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DataForwardingResponseMRBItem + template (present) N3IWF_ID mw_n3IWF_ID_choice_Extensions( + template (present) N3IWF_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_n3IWF_ID_choice_Extensions - template (present) MBS_MappingandDataForwardingRequestItem mw_mBS_MappingandDataForwardingRequestItem( - template (present) MRB_ID p_mRB_ID := ?, - template (present) MBS_QoSFlowList p_mBS_QoSFlowList := ?, - template MRB_ProgressInformation p_mRB_ProgressInformation := *, - template MBS_MappingandDataForwardingRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - mRB_ID := p_mRB_ID, - mBS_QoSFlowList := p_mBS_QoSFlowList, - mRB_ProgressInformation := p_mRB_ProgressInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_MappingandDataForwardingRequestItem + template (present) NB_IoT_DefaultPagingDRX mw_nB_IoT_DefaultPagingDRX(template (present) NB_IoT_DefaultPagingDRX p_value := ?) := p_value; - template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length12( - template (present) MRB_ProgressInformation.pDCP_SN_Length12 p_pDCP_SN_Length12 := ? - ) := { - pDCP_SN_Length12 := p_pDCP_SN_Length12 - } // End of template mw_mRB_ProgressInformation_pDCP_SN_Length12 + template (present) NB_IoT_PagingDRX mw_nB_IoT_PagingDRX(template (present) NB_IoT_PagingDRX p_value := ?) := p_value; - template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length18( - template (present) MRB_ProgressInformation.pDCP_SN_Length18 p_pDCP_SN_Length18 := ? - ) := { - pDCP_SN_Length18 := p_pDCP_SN_Length18 - } // End of template m_mRB_ProgressInformation_pDCP_SN_Length18 + template (present) NB_IoT_Paging_eDRXCycle mw_nB_IoT_Paging_eDRXCycle(template (present) NB_IoT_Paging_eDRXCycle p_value := ?) := p_value; - template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_choice_Extensions( - template (present) MRB_ProgressInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mRB_ProgressInformation_choice_Extensions + template (present) NB_IoT_Paging_TimeWindow mw_nB_IoT_Paging_TimeWindow(template (present) NB_IoT_Paging_TimeWindow p_value := ?) := p_value; - template (present) MBS_QoSFlowsToBeSetupItem mw_mBS_QoSFlowsToBeSetupItem( - template (present)QosFlowIdentifier p_mBSqosFlowIdentifier := ?, - template (present)QosFlowLevelQosParameters p_mBSqosFlowLevelQosParameters := ?, - template MBS_QoSFlowsToBeSetupItem.iE_Extensions p_iE_Extensions := * - ) := { - mBSqosFlowIdentifier := p_mBSqosFlowIdentifier, - mBSqosFlowLevelQosParameters := p_mBSqosFlowLevelQosParameters, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_QoSFlowsToBeSetupItem + template (present) NB_IoT_Paging_eDRXInfo mw_nB_IoT_Paging_eDRXInfo( + template (present) NB_IoT_Paging_eDRXCycle p_nB_IoT_Paging_eDRXCycle := ?, + template NB_IoT_Paging_TimeWindow p_nB_IoT_Paging_TimeWindow := *, + template NB_IoT_Paging_eDRXInfo.iE_Extensions p_iE_Extensions := * + ) := { + nB_IoT_Paging_eDRXCycle := p_nB_IoT_Paging_eDRXCycle, + nB_IoT_Paging_TimeWindow := p_nB_IoT_Paging_TimeWindow, + iE_Extensions := p_iE_Extensions + } // End of template mw_nB_IoT_Paging_eDRXInfo - template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationindependent( - template (present) MBS_ServiceAreaInformation p_locationindependent := ? - ) := { - locationindependent := p_locationindependent - } // End of template mw_mBS_ServiceArea_locationindependent + template (present) NewSecurityContextInd mw_newSecurityContextInd(template (present) NewSecurityContextInd p_value := true_) := p_value; - template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationdependent( - template (present) MBS_ServiceAreaInformationList p_locationdependent := ? - ) := { - locationdependent := p_locationdependent - } // End of template mw_mBS_ServiceArea_locationdependent + template (present) NextPagingAreaScope mw_nextPagingAreaScope(template (present) NextPagingAreaScope p_value := ?) := p_value; - template (present) MBS_ServiceArea mw_mBS_ServiceArea_choice_Extensions( - template (present) MBS_ServiceArea.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mBS_ServiceArea_choice_Extensions + template (present) NGAPIESupportInformationRequestItem mw_nGAPIESupportInformationRequestItem( + template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, + template NGAPIESupportInformationRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGAPIESupportInformationRequestItem - template (present) MBS_ServiceAreaInformationItem mw_mBS_ServiceAreaInformationItem( - template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, - template (present) MBS_ServiceAreaInformation p_mBS_ServiceAreaInformation := ?, - template MBS_ServiceAreaInformationItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_AreaSessionID := p_mBS_AreaSessionID, - mBS_ServiceAreaInformation := p_mBS_ServiceAreaInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_ServiceAreaInformationItem + template (present) NGAPIESupportInformationResponseItem mw_nGAPIESupportInformationResponseItem( + template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, + template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIESupportInfo p_ngap_ProtocolIESupportInfo := ?, + template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIEPresenceInfo p_ngap_ProtocolIEPresenceInfo := ?, + template NGAPIESupportInformationResponseItem.iE_Extensions p_iE_Extensions := * + ) := { + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + ngap_ProtocolIESupportInfo := p_ngap_ProtocolIESupportInfo, + ngap_ProtocolIEPresenceInfo := p_ngap_ProtocolIEPresenceInfo, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGAPIESupportInformationResponseItem - template MBS_ServiceAreaInformation mw_mBS_ServiceAreaInformation( - template MBS_ServiceAreaCellList p_mBS_ServiceAreaCellList := *, - template MBS_ServiceAreaTAIList p_mBS_ServiceAreaTAIList := *, - template MBS_ServiceAreaInformation.iE_Extensions p_iE_Extensions := * - ) := { - mBS_ServiceAreaCellList := p_mBS_ServiceAreaCellList, - mBS_ServiceAreaTAIList := p_mBS_ServiceAreaTAIList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_ServiceAreaInformation + template (present) NgENB_ID mw_ngENB_ID_macroNgENB_ID( + template (present) NgENB_ID.macroNgENB_ID p_macroNgENB_ID := ? + ) := { + macroNgENB_ID := p_macroNgENB_ID + } // End of template mw_ngENB_ID_macroNgENB_ID - template (present) MBS_SessionID mw_mBS_SessionID( - template (present) TMGI p_tMGI := ?, - template NID p_nID := *, - template MBS_SessionID.iE_Extensions p_iE_Extensions := * - ) := { - tMGI := p_tMGI, - nID := p_nID, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_SessionID + template (present) NgENB_ID mw_ngENB_ID_shortMacroNgENB_ID( + template (present) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID := ? + ) := { + shortMacroNgENB_ID := p_shortMacroNgENB_ID + } // End of template mw_ngENB_ID_shortMacroNgENB_ID - template (present) MBSSessionFailedtoSetupItem mw_mBSSessionFailedtoSetupItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) Cause p_cause := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template MBSSessionFailedtoSetupItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionFailedtoSetupItem + template (present) NgENB_ID mw_ngENB_ID_longMacroNgENB_ID( + template (present) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID := ? + ) := { + longMacroNgENB_ID := p_longMacroNgENB_ID + } // End of template mw_ngENB_ID_longMacroNgENB_ID - template (present) MBS_ActiveSessionInformation_SourcetoTargetItem mw_mBS_ActiveSessionInformation_SourcetoTargetItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template MBS_ServiceArea p_mBS_ServiceArea := *, - template MBS_MappingandDataForwardingRequestList p_mBS_MappingandDataForwardingRequestList := *, - template MBS_ActiveSessionInformation_SourcetoTargetItem.iE_Extensions p_iE_Extensions := * - ):= { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - mBS_ServiceArea := p_mBS_ServiceArea, - mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, - mBS_MappingandDataForwardingRequestList := p_mBS_MappingandDataForwardingRequestList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_ActiveSessionInformation_SourcetoTargetItem + template (present) NgENB_ID mw_ngENB_ID_choice_Extensions( + template (present) NgENB_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_ngENB_ID_choice_Extensions - template (present) MBS_ActiveSessionInformation_TargettoSourceItem mw_mBS_ActiveSessionInformation_TargettoSourceItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_DataForwardingResponseMRBList p_mBS_DataForwardingResponseMRBList := *, - template MBS_ActiveSessionInformation_TargettoSourceItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_DataForwardingResponseMRBList := p_mBS_DataForwardingResponseMRBList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_ActiveSessionInformation_TargettoSourceItem + template (present) NotifySourceNGRANNode mw_notifySourceNGRANNode(template (present) NotifySourceNGRANNode p_value := ?) := p_value; - template (present) MBSSessionSetupOrModFailureTransfer mw_mBSSessionSetupOrModFailureTransfer( - template (present) Cause p_cause := ?, - template CriticalityDiagnostics p_criticalityDiagnostics := *, - template MBSSessionSetupOrModFailureTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetupOrModFailureTransfer + template (present) NGRAN_CGI mw_ngENB_ID_nR_CGI( + template (present) NR_CGI p_nR_CGI + ) := { + nR_CGI := p_nR_CGI + } // End of template mw_ngENB_ID_nR_CGI - template (present) MBSSessionSetupResponseItem mw_mBSSessionSetupResponseItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template MBSSessionSetupResponseItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetupResponseItem + template (present) NGRAN_CGI mw_ngENB_ID_eUTRA_CGI( + template (present) EUTRA_CGI p_eUTRA_CGI := ? + ) := { + eUTRA_CGI := p_eUTRA_CGI + } // End of template mw_ngENB_ID_eUTRA_CGI - template (present) MBSSessionSetupOrModRequestTransfer mw_mBSSessionSetupOrModRequestTransfer( - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs := ? - ) := { - protocolIEs := p_protocolIEs - } // End of template mw_mBSSessionSetupOrModRequestTransfer + template (present) NGRAN_CGI mw_nGRAN_CGI_choice_Extensions( + template (present) NGRAN_CGI.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nGRAN_CGI_choice_Extensions - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( - template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? - ) := { - { - id := id_MBS_SessionTNLInfo5GC, - criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } - } - } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC + template (present) NGRAN_TNLAssociationToRemoveItem mw_nGRAN_TNLAssociationToRemoveItem( + template (present) CPTransportLayerInformation p_tNLAssociationTransportLayerAddress := ?, + template CPTransportLayerInformation p_tNLAssociationTransportLayerAddressAMF := *, + template NGRAN_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * + ) := { + tNLAssociationTransportLayerAddress := p_tNLAssociationTransportLayerAddress, + tNLAssociationTransportLayerAddressAMF := p_tNLAssociationTransportLayerAddressAMF, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_TNLAssociationToRemoveItem - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( - template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? - ) := { + template (present) NonDynamic5QIDescriptor mw_nonDynamic5QIDescriptor( + template (present) FiveQI p_fiveQI := ?, + template PriorityLevelQos p_priorityLevelQos := *, + template AveragingWindow p_averagingWindow := *, + template MaximumDataBurstVolume p_maximumDataBurstVolume := *, + template NonDynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * + ) := { + fiveQI := p_fiveQI, + priorityLevelQos := p_priorityLevelQos, + averagingWindow := p_averagingWindow, + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template mw_nonDynamic5QIDescriptor + + template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { { - id := id_MBS_QoSFlowsToBeSetupModList, - criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } - } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( - template (present) MBS_SessionFSAIDList p_mBS_SessionFSAIDList := ? - ) := { + template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { { - id := id_MBS_SessionFSAIDList, - criticality := ignore, - value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } - } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList - - template MBSSessionReleaseResponseTransfer mw_mBSSessionReleaseResponseTransfer( - template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, - template MBSSessionReleaseResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionReleaseResponseTransfer - - template MBSSessionSetupOrModResponseTransfer mw_mBSSessionSetupOrModResponseTransfer( - template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, - template MBSSessionSetupOrModResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetupOrModResponseTransfer + } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL - template (present) MBS_SupportIndicator mw_mBS_SupportIndicator(template (present) MBS_SupportIndicator p_value := true_) := p_value; + template (present) NotificationCause mw_notificationCause(template (present) NotificationCause p_value := ?) := p_value; - template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationindependent( - template (present) SharedNGU_MulticastTNLInformation p_locationindependent := ? - ) := { - locationindependent := p_locationindependent - } // End of template mw_mBS_SessionTNLInfo5GC_locationindependent + template (present) NotificationControl mw_notificationControl(template (present) NotificationControl p_value := ?) := p_value; - template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationdependent( - template (present) MBS_SessionTNLInfo5GCList p_locationdependent := ? - ) := { - locationdependent := p_locationdependent - } // End of template mw_mBS_SessionTNLInfo5GC_locationdependent + template (present) NPN_AccessInformation mw_nPN_AccessInformation_pNI_NPN_Access_Information( + template (present) CellCAGList p_pNI_NPN_Access_Information := ? + ) := { + pNI_NPN_Access_Information := p_pNI_NPN_Access_Information + } // End of template mw_nPN_AccessInformation_pNI_NPN_Access_Information - template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_choice_Extensions( - template (present) MBS_SessionTNLInfo5GC.choice_Extensions p_choice_Extensions := ? + template (present) NPN_AccessInformation mw_nPN_AccessInformation_choice_Extensions( + template (present) NPN_AccessInformation.choice_Extensions p_choice_Extensions := ? ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_mBS_SessionTNLInfo5GC_choice_Extensions - + } // End of template mw_nPN_AccessInformation_choice_Extensions - template (present) MBS_SessionTNLInfo5GCItem mw_mBS_SessionTNLInfo5GCItem( - template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, - template (present) SharedNGU_MulticastTNLInformation p_sharedNGU_MulticastTNLInformation := ?, - template MBS_SessionTNLInfo5GCItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_SessionTNLInfo5GCItem + template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_sNPN_MobilityInformation( + template (present) SNPN_MobilityInformation p_sNPN_MobilityInformation := ? + ) := { + sNPN_MobilityInformation := p_sNPN_MobilityInformation + } // End of template mw_nPN_MobilityInformation_sNPN_MobilityInformation - template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationindependent( - template (present) UPTransportLayerInformation p_locationindependent := ? - ) := { - locationindependent := p_locationindependent - } // End of template mw_mBS_SessionTNLInfoNGRAN_locationindependent + template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation( + template (present) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation := ? + ) := { + pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation + } // End of template mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation - template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationdependent( - template (present) MBS_SessionTNLInfoNGRANList p_locationdependent := ? + template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_choice_Extensions( + template (present) NPN_MobilityInformation.choice_Extensions p_choice_Extensions := ? ) := { - locationdependent := p_locationdependent - } // End of template mw_mBS_SessionTNLInfoNGRAN_locationdependent + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_MobilityInformation_choice_Extensions - template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_choice_Extensions( - template (present) MBS_SessionTNLInfoNGRAN.choice_Extensions p_choice_Extensions := ? - ) := { + template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance( + template (present) Allowed_PNI_NPN_List p_pNI_NPN_PagingAssistance := ? + ) := { + pNI_NPN_PagingAssistance := p_pNI_NPN_PagingAssistance + } // End of template mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance + + template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_choice_Extensions( + template (present) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions := ? + ) := { choice_Extensions := p_choice_Extensions - } // End of template mw_mBS_SessionTNLInfoNGRAN_choice_Extensions + } // End of template mw_nPN_PagingAssistanceInformation_choice_Extensions - template (present) MBS_SessionTNLInfoNGRANItem mw_mBS_SessionTNLInfoNGRANItem( - template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, - template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, - template MBS_SessionTNLInfoNGRANItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_SessionTNLInfoNGRANItem + template (present) NPN_Support mw_nPN_Support_sNPN( + template (present) NID p_sNPN := ? + ) := { + sNPN := p_sNPN + } // End of template mw_nPN_Support_sNPN - template (present) MBS_DistributionReleaseRequestTransfer mw_mBS_DistributionReleaseRequestTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) Cause p_cause := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, - template MBS_DistributionReleaseRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DistributionReleaseRequestTransfer + template (present) NPN_Support mw_nPN_Support_choice_Extensions( + template (present) NPN_Support.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_Support_choice_Extensions - template (present) MBS_DistributionSetupRequestTransfer mw_mBS_DistributionSetupRequestTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, - template MBS_DistributionSetupRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DistributionSetupRequestTransfer + template (present) NR_CGI mw_nR_CGI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) NRCellIdentity p_nRCellIdentity := ?, + template NR_CGI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + nRCellIdentity := p_nRCellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template mw_nR_CGI - template (present) MBS_DistributionSetupResponseTransfer mw_mBS_DistributionSetupResponseTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, - template (present) MBSSessionStatus p_mBSSessionStatus := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template MBS_SessionTNLInfo5GCItem p_sharedNGU_MulticastTNLInformation := *, - template MBS_ServiceArea p_mBS_ServiceArea := *, - template MBS_DistributionSetupResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, - mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, - mBSSessionStatus := p_mBSSessionStatus, - mBS_ServiceArea := p_mBS_ServiceArea, + template (present) NR_PagingeDRXInformation mw_NR_PagingeDRXInformation( + template (present) NR_Paging_eDRX_Cycle p_nR_paging_eDRX_Cycle := ?, + template NR_Paging_Time_Window p_nR_paging_Time_Window := *, + template NR_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * + ) := { + nR_paging_eDRX_Cycle := p_nR_paging_eDRX_Cycle, + nR_paging_Time_Window := p_nR_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template mw_NR_PagingeDRXInformation + + template (present) NR_Paging_eDRX_Cycle mw_nR_Paging_eDRX_Cycle(template (present) NR_Paging_eDRX_Cycle p_value := ?) := p_value; + + template (present) NR_Paging_Time_Window mw_nR_Paging_Time_Window(template (present) NR_Paging_Time_Window p_value := ?) := p_value; + + template (present) NRNTNTAIInformation mw_nRNTNTAIInformation( + template (present) PLMNIdentity p_servingPLMN := ?, + template (present) TACListInNRNTN p_tACListInNRNTN := ?, + template TAC p_uELocationDerivedTACInNRNTN := *, + template NRNTNTAIInformation.iE_Extensions p_iE_Extensions := * + ) := { + servingPLMN := p_servingPLMN, + tACListInNRNTN := p_tACListInNRNTN, + uELocationDerivedTACInNRNTN := p_uELocationDerivedTACInNRNTN, + iE_Extensions := p_iE_Extensions + } // End of template mw_nRNTNTAIInformation + + template (present) NRFrequencyBandItem mw_nRFrequencyBandItem( + template (present) NRFrequencyBand p_nr_frequency_band := ?, + template NRFrequencyBandItem.iE_Extension p_iE_Extension := * + ) := { + nr_frequency_band := p_nr_frequency_band, + iE_Extension := p_iE_Extension + } // End of template mw_nRFrequencyBandItem + + template (present) NRFrequencyInfo mw_nRFrequencyInfo( + template (present) NRARFCN p_nrARFCN := ?, + template (present) NRFrequencyBand_List p_frequencyBand_List, + template NRFrequencyInfo.iE_Extension p_iE_Extension := * + ) := { + nrARFCN := p_nrARFCN, + frequencyBand_List := p_frequencyBand_List, + iE_Extension := p_iE_Extension + } // End of template mw_nRFrequencyInfo + + template (present) NRV2XServicesAuthorized mw_nRV2XServicesAuthorized( + template VehicleUE p_vehicleUE := *, + template PedestrianUE p_pedestrianUE := *, + template NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * + ) := { + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_nRV2XServicesAuthorized + + template (present) VehicleUE mw_vehicleUE(template (present) VehicleUE p_value := ?) := p_value; + + template (present) PedestrianUE mw_pedestrianUE(template (present) PedestrianUE p_value := ?) := p_value; + + template (present) NRUESidelinkAggregateMaximumBitrate mw_nRUESidelinkAggregateMaximumBitrate( + template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, + template NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DistributionSetupResponseTransfer + } // End of template mw_nRUESidelinkAggregateMaximumBitrate - template (present) MBS_DistributionSetupUnsuccessfulTransfer mw_mBS_DistributionSetupUnsuccessfulTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) Cause p_cause := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template CriticalityDiagnostics p_criticalityDiagnostics := *, - template MBS_DistributionSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DistributionSetupUnsuccessfulTransfer + template (present) OnboardingSupport mw_onboardingSupport(template (present) OnboardingSupport p_value := true_) := p_value; + + template (present) OverloadAction mw_overloadAction(template (present) OverloadAction p_value := ?) := p_value; - template (present) MBSSessionSetupRequestItem mw_mBSSessionSetupRequestItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := *, - template MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := * - ):= { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - associatedMBSQosFlowSetupRequestList := p_associatedMBSQosFlowSetupRequestList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetupRequestItem + template (present) OverloadResponse mw_overloadResponse_overloadAction( + template (present) OverloadAction p_overloadAction := ? + ) := { + overloadAction := p_overloadAction + } // End of template mw_overloadResponse_overloadAction - template (present) MBSSessionSetuporModifyRequestItem mw_mBSSessionSetuporModifyRequestItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template AssociatedMBSQosFlowSetuporModifyRequestList p_associatedMBSQosFlowSetuporModifyRequestList := *, - template QosFlowListWithCause p_mBS_QosFlowToReleaseList := *, - template MBSSessionSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - associatedMBSQosFlowSetuporModifyRequestList := p_associatedMBSQosFlowSetuporModifyRequestList, - mBS_QosFlowToReleaseList := p_mBS_QosFlowToReleaseList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetuporModifyRequestItem + template (present) OverloadResponse mw_overloadResponse_choice_Extensions( + template (present) OverloadResponse.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_overloadResponse_choice_Extensions - template (present) MBSSessionToReleaseItem mw_mBSSessionToReleaseItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) Cause p_cause := ?, - template MBSSessionToReleaseItem.iE_Extensions p_iE_Extensions := * - ):= { - mBS_SessionID := p_mBS_SessionID, - cause := p_cause, + + template (present) OverloadStartNSSAIItem mw_overloadStartNSSAIItem( + template (present) SliceOverloadList p_sliceOverloadList := ?, + template OverloadResponse p_sliceOverloadResponse := *, + template TrafficLoadReductionIndication p_sliceTrafficLoadReductionIndication := *, + template OverloadStartNSSAIItem.iE_Extensions p_iE_Extensions := * + ) := { + sliceOverloadList := p_sliceOverloadList, + sliceOverloadResponse := p_sliceOverloadResponse, + sliceTrafficLoadReductionIndication := p_sliceTrafficLoadReductionIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_overloadStartNSSAIItem + + template (present) PacketErrorRate mw_PacketErrorRate( + template (present) PacketErrorRate.pERScalar p_pERScalar := ?, + template (present) PacketErrorRate.pERExponent p_pERExponent := ?, + template PacketErrorRate.iE_Extensions p_iE_Extensions := * + ) := { + pERScalar := p_pERScalar, + pERExponent := p_pERExponent, iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionToReleaseItem + } // End of template mw_PacketErrorRate - template (present) MBSSessionStatus mw_mBSSessionStatus(template (present) MBSSessionStatus p_value := ?) := p_value; + template (present) PagingAssisDataforCEcapabUE mw_pagingAssisDataforCEcapabUE( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) CoverageEnhancementLevel p_coverageEnhancementLevel := ?, + template PagingAssisDataforCEcapabUE.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + coverageEnhancementLevel := p_coverageEnhancementLevel, + iE_Extensions := p_iE_Extensions + } // End of template mw_pagingAssisDataforCEcapabUE - template (present) MicoAllPLMN mw_micoAllPLMN(template (present) MicoAllPLMN p_value := true_) := p_value; + template (present) PagingAttemptInformation mw_pagingAttemptInformation( + template (present) PagingAttemptCount p_pagingAttemptCount := ?, + template (present) IntendedNumberOfPagingAttempts p_intendedNumberOfPagingAttempts := ?, + template NextPagingAreaScope p_nextPagingAreaScope := *, + template PagingAttemptInformation.iE_Extensions p_iE_Extensions := * + ) := { + pagingAttemptCount := p_pagingAttemptCount, + intendedNumberOfPagingAttempts := p_intendedNumberOfPagingAttempts, + nextPagingAreaScope := p_nextPagingAreaScope, + iE_Extensions := p_iE_Extensions + } // End of template mw_pagingAttemptInformation - template (present) MICOModeIndication mw_mICOModeIndication(template (present) MICOModeIndication p_value := true_) := p_value; + template (present) PagingCause mw_pagingCause(template (present) PagingCause p_value := voice) := p_value; - template (present) MobilityRestrictionList mw_mobilityRestrictionList( - template (present) PLMNIdentity p_servingPLMN := ?, - template EquivalentPLMNs p_equivalentPLMNs := *, - template RATRestrictions p_rATRestrictions := *, - template ForbiddenAreaInformation p_forbiddenAreaInformation := *, - template ServiceAreaInformation p_serviceAreaInformation := *, - template MobilityRestrictionList.iE_Extensions p_iE_Extensions := * - ) := { - servingPLMN := p_servingPLMN, - equivalentPLMNs := p_equivalentPLMNs, - rATRestrictions := p_rATRestrictions, - forbiddenAreaInformation := p_forbiddenAreaInformation, - serviceAreaInformation := p_serviceAreaInformation, + template (present) PagingCauseIndicationForVoiceService mw_pagingCauseIndicationForVoiceService(template (present) PagingCauseIndicationForVoiceService p_value := ?) := p_value; + + template (present) PagingDRX mw_pagingDRX(template (present) PagingDRX p_value := ?) := p_value; + + template (present) PagingOrigin mw_pagingOrigin(template (present) PagingOrigin p_value := ?) := p_value; + + template (present) PagingPriority mw_pagingPriority(template (present) PagingPriority p_value := ?) := p_value; + + template (present) PagingProbabilityInformation mw_pagingProbabilityInformation(template (present) PagingProbabilityInformation p_value := ?) := p_value; + + template PathSwitchRequestAcknowledgeTransfer mw_PathSwitchRequestAcknowledgeTransfer( + template UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := *, + template SecurityIndication p_securityIndication := *, + template PathSwitchRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + securityIndication := p_securityIndication, iE_Extensions := p_iE_Extensions - } // End of template mw_mobilityRestrictionList + } // End of template mw_PathSwitchRequestAcknowledgeTransfer - template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( - template (present) PLMNIdentity p_pLMNIdentity := ? - ) := { + template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { { - id := id_LastEUTRAN_PLMNIdentity, + id := id_AdditionalNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { PLMNIdentity := p_pLMNIdentity } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } - } // End of template mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity + } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation - template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing( - template (present) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing := ? - ) := { + template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { { - id := id_CNTypeRestrictionsForServing, + id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } - } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing + } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation - template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( - template (present) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent := ? - ) := { + template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { { - id := id_CNTypeRestrictionsForEquivalent, + id := id_AdditionalRedundantNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } - } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent + } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation - template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_NPN_MobilityInformation( - template (present) NPN_MobilityInformation p_nPN_MobilityInformation := ? + template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList( + template (present) QosFlowParametersList p_qosFlowParametersList := ? + ) := { + { + id := id_QosFlowParametersList, + criticality := ignore, + extensionValue := { QosFlowParametersList := p_qosFlowParametersList } + } + } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList + + template (present) PathSwitchRequestSetupFailedTransfer mw_pathSwitchRequestSetupFailedTransfer( + template (present) Cause p_cause := ?, + template PathSwitchRequestSetupFailedTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pathSwitchRequestSetupFailedTransfer + + template (present) PathSwitchRequestTransfer mw_pathSwitchRequestTransfer( + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template (present) QosFlowAcceptedList p_qosFlowAcceptedList := ?, + template DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := *, + template UserPlaneSecurityInformation p_userPlaneSecurityInformation := *, + template PathSwitchRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused, + userPlaneSecurityInformation := p_userPlaneSecurityInformation, + qosFlowAcceptedList := p_qosFlowAcceptedList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pathSwitchRequestTransfer + + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation + + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation + + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused( + template (present) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := ? + ) := { + { + id := id_RedundantDL_NGU_TNLInformationReused, + criticality := ignore, + extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } + } + } // End of template mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused + + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_UsedRSNInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? ) := { { - id := id_NPN_MobilityInformation, - criticality := reject, - extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } } - } // End of template mw_mobilityRestrictionList_id_NPN_MobilityInformation + } // End of template mw_pathSwitchRequestTransferr_id_UsedRSNInformation - template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_s_basedMDT( - template (present) NGRANTraceID p_s_basedMDT := ? - ) := { - s_basedMDT := p_s_basedMDT - } // End of template mw_mDT_AlignmentInfo_s_basedMDT + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template mw_pathSwitchRequestTransferr_id_GlobalRANNodeID - template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_choice_Extensions( - template (present) MDT_AlignmentInfo.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mDT_AlignmentInfo_choice_Extensions + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template mw_pathSwitchRequestTransfer_id_MBS_SupportIndicator - template MDT_Configuration mw_mDT_Configuration( - template MDT_Configuration_NR p_mdt_Config_NR := *, - template MDT_Configuration_EUTRA p_mdt_Config_EUTRA := *, - template MDT_Configuration.iE_Extensions p_iE_Extensions := * - ) := { - mdt_Config_NR := p_mdt_Config_NR, - mdt_Config_EUTRA := p_mdt_Config_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_mDT_Configuration + template (present) PathSwitchRequestUnsuccessfulTransfer mw_pathSwitchRequestUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template PathSwitchRequestUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pathSwitchRequestUnsuccessfulTransfer - template (present) MDT_Configuration_NR mw_mDT_Configuration_NR( - template (present) MDT_Activation p_mdt_Activation := ?, - template (present) AreaScopeOfMDT_NR p_areaScopeOfMDT := ?, - template (present) MDTModeNr p_mDTModeNr := ?, - template MDTPLMNList p_signallingBasedMDTPLMNList := *, - template MDT_Configuration_NR.iE_Extensions p_iE_Extensions := * - ) := { - mdt_Activation := p_mdt_Activation, - areaScopeOfMDT := p_areaScopeOfMDT, - mDTModeNr := p_mDTModeNr, - signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mDT_Configuration_NR + template (present) PC5QoSParameters mw_pC5QoSParameters( + template (present) PC5QoSFlowList p_pc5QoSFlowList := ?, + template BitRate p_pc5LinkAggregateBitRates := *, + template PC5QoSParameters.iE_Extensions p_iE_Extensions := * + ) := { + pc5QoSFlowList := p_pc5QoSFlowList, + pc5LinkAggregateBitRates := p_pc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template mw_pC5QoSParameters - template (present) MDT_Configuration_EUTRA mw_mDT_Configuration_EUTRA( - template (present) MDT_Activation p_mdt_Activation := ?, - template (present) AreaScopeOfMDT_EUTRA p_areaScopeOfMDT := ?, - template (present) MDTModeEutra p_mDTMode := ?, - template MDTPLMNList p_signallingBasedMDTPLMNList := *, - template MDT_Configuration_EUTRA.iE_Extensions p_iE_Extensions := * - ) := { - mdt_Activation := p_mdt_Activation, - areaScopeOfMDT := p_areaScopeOfMDT, - mDTMode := p_mDTMode, - signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mDT_Configuration_EUTRA + template (present) PC5QoSFlowItem mw_pC5QoSFlowItem( + template (present) FiveQI p_pQI := ?, + template PC5FlowBitRates p_pc5FlowBitRates := *, + template Range p_range := *, + template PC5QoSFlowItem.iE_Extensions p_iE_Extensions := * + ) := { + pQI := p_pQI, + pc5FlowBitRates := p_pc5FlowBitRates, + range := p_range, + iE_Extensions := p_iE_Extensions + } // End of template mw_pC5QoSFlowItem - template (present) MDT_Activation mw_mDT_Activation(template (present) MDT_Activation p_value := ?) := p_value; + template (present) PC5FlowBitRates mw_pC5FlowBitRates( + template (present) BitRate p_guaranteedFlowBitRate := ?, + template (present) BitRate p_maximumFlowBitRate := ?, + template PC5FlowBitRates.iE_Extensions p_iE_Extensions := * + ) := { + guaranteedFlowBitRate := p_guaranteedFlowBitRate, + maximumFlowBitRate := p_maximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_pC5FlowBitRates - template (present) MDTModeNr mw_mDTModeNro_immediateMDTNr( - template (present) ImmediateMDTNr p_immediateMDTNr := ? - ) := { - immediateMDTNr := p_immediateMDTNr - } // End of template mw_mDTModeNr_immediateMDTNr + template (present) PrivacyIndicator mw_privacyIndicator(template (present) PrivacyIndicator p_value := ?) := p_value; - template (present) MDTModeNr mw_mDTModeNro_loggedMDTNr( - template (present) LoggedMDTNr p_loggedMDTNr := ? - ) := { - loggedMDTNr := p_loggedMDTNr - } // End of template mw_mDTModeNr_loggedMDTNr + template (present) PDUSessionAggregateMaximumBitRate mw_pDUSessionAggregateMaximumBitRate( + template (present) BitRate p_pDUSessionAggregateMaximumBitRateDL := ?, + template (present) BitRate p_pDUSessionAggregateMaximumBitRateUL := ?, + template PDUSessionAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionAggregateMaximumBitRateDL := p_pDUSessionAggregateMaximumBitRateDL, + pDUSessionAggregateMaximumBitRateUL := p_pDUSessionAggregateMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionAggregateMaximumBitRate + + template (present) PDUSessionResourceAdmittedItem mw_pDUSessionResourceAdmittedItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceAdmittedItem.handoverRequestAcknowledgeTransfer p_handoverRequestAcknowledgeTransfer := ?, + template PDUSessionResourceAdmittedItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + handoverRequestAcknowledgeTransfer := p_handoverRequestAcknowledgeTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceAdmittedItem + + template (present) PDUSessionResourceFailedToModifyItemModCfm mw_pDUSessionResourceFailedToModifyItemModCfm( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToModifyItemModCfm.pDUSessionResourceModifyIndicationUnsuccessfulTransfer p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyIndicationUnsuccessfulTransfer := p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToModifyItemModCfm + + template (present) PDUSessionResourceFailedToModifyItemModRes mw_pDUSessionResourceFailedToModifyItemModRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToModifyItemModRes.pDUSessionResourceModifyUnsuccessfulTransfer p_pDUSessionResourceModifyUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToModifyItemModRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyUnsuccessfulTransfer := p_pDUSessionResourceModifyUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToModifyItemModRes + + template (present) PDUSessionResourceFailedToResumeItemRESReq mw_pDUSessionResourceFailedToResumeItemRESReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) Cause p_cause := ?, + template PDUSessionResourceFailedToResumeItemRESReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToResumeItemRESReq + + template (present) PDUSessionResourceFailedToResumeItemRESRes mw_pDUSessionResourceFailedToResumeItemRESRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) Cause p_cause := ?, + template PDUSessionResourceFailedToResumeItemRESRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToResumeItemRESRes + + template (present) PDUSessionResourceFailedToSetupItemCxtFail mw_pDUSessionResourceFailedToSetupItemCxtFail( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemCxtFail.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToSetupItemCxtFail.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemCxtFail + + template (present) PDUSessionResourceFailedToSetupItemCxtRes mw_pDUSessionResourceFailedToSetupItemCxtRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemCxtRes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToSetupItemCxtRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemCxtRes + + template (present) PDUSessionResourceFailedToSetupItemHOAck mw_pDUSessionResourceFailedToSetupItemHOAck( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToSetupItemHOAck.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + handoverResourceAllocationUnsuccessfulTransfer := p_handoverResourceAllocationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemHOAck + + template (present) PDUSessionResourceFailedToSetupItemPSReq mw_pDUSessionResourceFailedToSetupItemPSReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer := ?, + template PDUSessionResourceFailedToSetupItemPSReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestSetupFailedTransfer := p_pathSwitchRequestSetupFailedTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemPSReq + + template (present) PDUSessionResourceFailedToSetupItemSURes mw_pDUSessionResourceFailedToSetupItemSURes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemSURes + + template (present) PDUSessionResourceHandoverItem mw_pDUSessionResourceHandoverItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceHandoverItem.handoverCommandTransfer p_handoverCommandTransfer := ?, + template PDUSessionResourceHandoverItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + handoverCommandTransfer := p_handoverCommandTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceHandoverItem + + template (present) PDUSessionResourceInformationItem mw_pDUSessionResourceInformationItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) QosFlowInformationList p_qosFlowInformationList := ?, + template DRBsToQosFlowsMappingList p_dRBsToQosFlowsMappingList := *, + template PDUSessionResourceInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + qosFlowInformationList := p_qosFlowInformationList, + dRBsToQosFlowsMappingList := p_dRBsToQosFlowsMappingList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceInformationItem - template (present) MDTModeNr mw_mDTModeNr_choice_Extensions( - template (present) MDTModeNr.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mDTModeNr_choice_Extensions + template (present) PDUSessionResourceItemCxtRelCpl mw_pDUSessionResourceItemCxtRelCpl( + template (present) PDUSessionID p_pDUSessionID := ?, + template PDUSessionResourceItemCxtRelCpl.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceItemCxtRelCpl - template (present) MulticastSessionActivationRequestTransfer mw_multicastSessionActivationRequestTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MulticastSessionActivationRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, + template (present) PDUSessionResourceItemCxtRelCpl.iE_Extensions mw_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer( + template (present) PDUSessionResourceReleaseResponseTransfer_OCTET_STRING p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING := ? + ) := { + { + id := id_PDUSessionResourceReleaseResponseTransfer, + criticality := ignore, + extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } + } + } // End of template mw_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer + + template (present) PDUSessionResourceItemCxtRelReq mw_pDUSessionResourceItemCxtRelReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template PDUSessionResourceItemCxtRelReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, iE_Extensions := p_iE_Extensions - } // End of template mw_multicastSessionActivationRequestTransfer + } // End of template mw_pDUSessionResourceItemCxtRelReq - template (present) MulticastSessionDeactivationRequestTransfer mw_multicastSessionDeactivationRequestTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MulticastSessionDeactivationRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, + template (present) PDUSessionResourceItemHORqd mw_pDUSessionResourceItemHORqd( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceItemHORqd.handoverRequiredTransfer p_handoverRequiredTransfer := ?, + template PDUSessionResourceItemHORqd.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + handoverRequiredTransfer := p_handoverRequiredTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceItemHORqd + + template (present) PDUSessionResourceModifyConfirmTransfer mw_pDUSessionResourceModifyConfirmTransfer( + template (present) QosFlowModifyConfirmList p_qosFlowModifyConfirmList := ?, + template (present) UPTransportLayerInformation p_uLNGU_UP_TNLInformation := ?, + template UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := *, + template QosFlowListWithCause p_qosFlowFailedToModifyList := *, + template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowModifyConfirmList := p_qosFlowModifyConfirmList, + uLNGU_UP_TNLInformation := p_uLNGU_UP_TNLInformation, + additionalNG_UUPTNLInformation := p_additionalNG_UUPTNLInformation, + qosFlowFailedToModifyList := p_qosFlowFailedToModifyList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyConfirmTransfer + + template (present) PDUSessionResourceModifyConfirmTransfer.iE_Extensions mw_pDUSessionResourceModifyConfirmTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceModifyConfirmTransferr_id_RedundantUL_NGU_UP_TNLInformation + + template (present) PDUSessionResourceModifyConfirmTransfer.iE_Extensions mw_pDUSessionResourceModifyConfirmTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template mw_pDUSessionResourceModifyConfirmTransferr_id_AdditionalRedundantNGU_UP_TNLInformation + + template (present) PDUSessionResourceModifyIndicationUnsuccessfulTransfer mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template PDUSessionResourceModifyIndicationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, iE_Extensions := p_iE_Extensions - } // End of template mw_multicastSessionDeactivationRequestTransfer + } // End of template mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer - template (present) MulticastSessionUpdateRequestTransfer mw_multicastSessionUpdateRequestTransfer( - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs p_protocolIEs := ? - ) := { + template (present) PDUSessionResourceModifyRequestTransfer mw_pDUSessionResourceModifyRequestTransfer( + template PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { protocolIEs := p_protocolIEs - } // End of template mw_multicastSessionUpdateRequestTransfer + } // End of template mw_pDUSessionResourceModifyRequestTransfer - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( - template (present) MBS_SessionID p_mBS_SessionID := ? - ) := { + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( + template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? + ) := { { - id := id_MBS_SessionID, + id := id_PDUSessionAggregateMaximumBitRate, criticality := reject, - value_ := { MBS_SessionID := p_mBS_SessionID } + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( - template (present) MBS_ServiceArea p_mBS_ServiceArea := ? - ) := { + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( + template (present) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList := ? + ) := { { - id := id_MBS_ServiceArea, + id := id_UL_NGU_UP_TNLModifyList, criticality := reject, - value_ := { MBS_ServiceArea := p_mBS_ServiceArea } + value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( - template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? - ) := { + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( + template (present) NetworkInstance p_networkInstance := ? + ) := { { - id := id_MBS_QoSFlowsToBeSetupModList, + id := id_NetworkInstance, criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + value_ := { NetworkInstance := p_networkInstance } } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( + template (present) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList := ? + ) := { + { + id := id_QosFlowAddOrModifyRequestList, + criticality := reject, + value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList + + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( template (present) QosFlowListWithCause p_qosFlowListWithCause := ? ) := { { - id := id_MBS_QoSFlowToReleaseList, + id := id_QosFlowToReleaseList, criticality := reject, value_ := { QosFlowListWithCause := p_qosFlowListWithCause } } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( - template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? - ) := { + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { { - id := id_MBS_SessionTNLInfo5GC, + id := id_AdditionalUL_NGU_UP_TNLInformation, criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation - template (present) MulticastGroupPagingAreaItem mw_multicastGroupPagingAreaItem( - template (present) MulticastGroupPagingArea p_multicastGroupPagingArea := ?, - template UE_PagingList p_uE_PagingList := *, - template MulticastGroupPagingAreaItem.iE_Extensions p_iE_Extensions := * - ) := { - multicastGroupPagingArea := p_multicastGroupPagingArea, - uE_PagingList := p_uE_PagingList, - iE_Extensions := p_iE_Extensions - } // End of template mw_multicastGroupPagingAreaItem + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? + ) := { + { + id := id_CommonNetworkInstance, + criticality := reject, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance - template (present) MulticastGroupPagingArea mw_multicastGroupPagingArea( - template (present) MBS_AreaTAIList p_mBS_AreaTAIList := ?, - template MulticastGroupPagingArea.iE_Extensions p_iE_Extensions := * - ) := { - mBS_AreaTAIList := p_mBS_AreaTAIList, - iE_Extensions := p_iE_Extensions - } // End of template mw_multicastGroupPagingArea + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation - template (present) UE_PagingItem mw_uE_PagingItem( - template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, - template PagingDRX p_pagingDRX := *, - template UE_PagingItem.iE_Extensions p_iE_Extensions := * - ) := { - uEIdentityIndexValue := p_uEIdentityIndexValue, - pagingDRX := p_pagingDRX, - iE_Extensions := p_iE_Extensions - } // End of template mw_uE_PagingItem + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? + ) := { + { + id := id_RedundantCommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance - template (present) M1Configuration mw_m1Configuration( - template (present) M1ReportingTrigger p_m1reportingTrigger := ?, - template M1ThresholdEventA2 p_m1thresholdEventA2 := *, - template M1PeriodicReporting p_m1periodicReporting := *, - template M1Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m1reportingTrigger := p_m1reportingTrigger, - m1thresholdEventA2 := p_m1thresholdEventA2, - // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” - m1periodicReporting := p_m1periodicReporting, - // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” - iE_Extensions := p_iE_Extensions - } // End of template mw_m1Configuration + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation - template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_IncludeBeamMeasurementsIndication( - template (present) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication := ? - ) := { + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( + template (present) SecurityIndication p_securityIndication := ? + ) := { { - id := id_IncludeBeamMeasurementsIndication, + id := id_SecurityIndication, + criticality := ignore, + value_ := { SecurityIndication := p_securityIndication } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication + + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( + template (present) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList := ? + ) := { + { + id := id_MBSSessionSetuporModifyRequestList, + criticality := ignore, + value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList + + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( + template (present) MBSSessionToReleaseList p_mBSSessionToReleaseList := ? + ) := { + { + id := id_MBSSessionToReleaseList, + criticality := ignore, + value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList + + template PDUSessionResourceModifyResponseTransfer mw_pDUSessionResourceModifyResponseTransfer( + template UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := *, + template UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := *, + template QosFlowAddOrModifyResponseList p_qosFlowAddOrModifyResponseList := *, + template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + template QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := *, + template PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + qosFlowAddOrModifyResponseList := p_qosFlowAddOrModifyResponseList, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + qosFlowFailedToAddOrModifyList := p_qosFlowFailedToAddOrModifyList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyResponseTransfer + + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { + { + id := id_AdditionalNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } - } // End of template mw_m1Configuration_id_IncludeBeamMeasurementsIndication + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation - template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_BeamMeasurementsReportConfiguration( - template (present) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration := ? - ) := { + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { { - id := id_BeamMeasurementsReportConfiguration, + id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } - } // End of template mw_m1Configuration_id_BeamMeasurementsReportConfiguration + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation - template (present) IncludeBeamMeasurementsIndication mw_includeBeamMeasurementsIndication(template (present) IncludeBeamMeasurementsIndication p_value := true_) := p_value; + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation - template (present) M1ReportingTrigger mw_m1ReportingTrigger(template (present) M1ReportingTrigger p_value := ?) := p_value; + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - template (present) M1ThresholdEventA2 mw_m1ThresholdEventA2( - template (present) M1ThresholdType p_m1ThresholdType := ?, - template M1ThresholdEventA2.iE_Extensions p_iE_Extensions := * - ) := { - m1ThresholdType := p_m1ThresholdType, - iE_Extensions := p_iE_Extensions - } // End of template mw_m1ThresholdEventA2 + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation - template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRP( - template (present) Threshold_RSRP p_threshold_RSRP := ? - ) := { - threshold_RSRP := p_threshold_RSRP - } // End of template mw_m1ThresholdType_threshold_RSRP + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation - template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRQ( - template (present) Threshold_RSRQ p_threshold_RSRQ := ? - ) := { - threshold_RSRQ := p_threshold_RSRQ - } // End of template mw_m1ThresholdType_threshold_RSRQ + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator - template (present) M1ThresholdType mw_m1ThresholdType_threshold_SINR( - template (present) Threshold_SINR p_threshold_SINR := ? - ) := { - threshold_SINR := p_threshold_SINR - } // End of template mw_m1ThresholdType_threshold_SINR + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList( + template (present) MBSSessionSetupResponseList p_mBSSessionSetupResponseList := ? + ) := { + { + id := id_MBSSessionSetuporModifyResponseList, + criticality := ignore, + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList - template (present) M1ThresholdType mw_m1ThresholdType_choice_Extensions( - template (present) M1ThresholdType.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_m1ThresholdType_choice_Extensions + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList( + template (present) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList := ? + ) := { + { + id := id_MBSSessionFailedtoSetuporModifyList, + criticality := ignore, + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList - template (present) M1PeriodicReporting mw_m1PeriodicReporting( - template (present) ReportIntervalMDT p_reportInterval := ?, - template (present) ReportAmountMDT p_reportAmount := ?, - template M1PeriodicReporting.iE_Extensions p_iE_Extensions := * - ) := { - reportInterval := p_reportInterval, - reportAmount := p_reportAmount, - iE_Extensions := p_iE_Extensions - } // End of template mw_m1PeriodicReporting + template (present) PDUSessionResourceModifyIndicationTransfer mw_pDUSessionResourceModifyIndicationTransfer( + template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyIndicationTransfer - template (present) M1PeriodicReporting.iE_Extensions mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT( - template (present) ExtendedReportIntervalMDT p_extendedReportIntervalMDT := ? - ) := { + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { { - id := id_ExtendedReportIntervalMDT, + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation + + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult( + template (present) SecurityResult p_securityResult := ? + ) := { + { + id := id_SecurityResult, criticality := ignore, - extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } + extensionValue := { SecurityResult := p_securityResult } } - } // End of template mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult - template (present) M4Configuration mw_m4Configuration( - template (present) M4period p_m4period := ?, - template (present) Links_to_log p_m4_links_to_log := ?, - template M4Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m4period := p_m4period, - m4_links_to_log := p_m4_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template mw_m4Configuration + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ? + ) := { + { + id := id_RedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + } + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation - template (present) M4Configuration.iE_Extensions mw_m4Configuration_id_M4ReportAmount( - template (present) M4ReportAmountMDT p_m4ReportAmountMDT := ? - ) := { + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { { - id := id_ExtendedReportIntervalMDT, + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } - } // End of template mw_m4Configuration_id_M4ReportAmount + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID - template (present) M4ReportAmountMDT mw_m4ReportAmountMDT(template (present) M4ReportAmountMDT p_value := ?) := p_value; + template (present) PDUSessionResourceModifyItemModCfm mw_pDUSessionResourceModifyItemModCfm( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceModifyItemModCfm.pDUSessionResourceModifyConfirmTransfer p_pDUSessionResourceModifyConfirmTransfer := ?, + template PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyConfirmTransfer := p_pDUSessionResourceModifyConfirmTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyItemModCfm - template (present) M4period mw_m4period(template (present) M4period p_value := ?) := p_value; + template (present) PDUSessionResourceModifyItemModInd mw_pDUSessionResourceModifyItemModInd( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceModifyItemModInd.pDUSessionResourceModifyIndicationTransfer p_pDUSessionResourceModifyIndicationTransfer := ?, + template PDUSessionResourceModifyItemModInd.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyIndicationTransfer := p_pDUSessionResourceModifyIndicationTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyItemModInd + + template (present) PDUSessionResourceModifyItemModReq mw_pDUSessionResourceModifyItemModReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceModifyItemModReq.pDUSessionResourceModifyRequestTransfer p_pDUSessionResourceModifyRequestTransfer := ?, + template NAS_PDU p_nAS_PDU := *, + template PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + nAS_PDU := p_nAS_PDU, + pDUSessionResourceModifyRequestTransfer := p_pDUSessionResourceModifyRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyItemModReq - template (present) M5Configuration mw_m5Configuration( - template (present) M5period p_m5period := ?, - template (present) Links_to_log p_m5_links_to_log := ?, - template M5Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m5period := p_m5period, - m5_links_to_log := p_m5_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template mw_m5Configuration + template (present) PDUSessionResourceModifyItemModReq.iE_Extensions mw_pDUSessionResourceModifyItemModReq_id_S_NSSAI( + template (present) S_NSSAI p_s_nSSAI := ? + ) := { + { + id := id_S_NSSAI, + criticality := reject, + extensionValue := { S_NSSAI := p_s_nSSAI } + } + } // End of template mw_pDUSessionResourceModifyItemModReq_id_S_NSSAI - template (present) M5Configuration.iE_Extensions mw_m5Configuration_id_M5ReportAmount( - template (present) M5ReportAmountMDT p_m5ReportAmountMDT := ? - ) := { + template (present) PDUSessionResourceModifyItemModReq.iE_Extensions mw_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { { - id := id_M5ReportAmount, + id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } - } // End of template mw_m5Configuration_id_M5ReportAmount + } // End of template mw_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour - template (present) M5ReportAmountMDT mw_m5ReportAmountMDT(template (present) M5ReportAmountMDT p_value := ?) := p_value; + template (present) PDUSessionResourceModifyItemModRes mw_pDUSessionResourceModifyItemModRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceModifyItemModRes.pDUSessionResourceModifyResponseTransfer p_pDUSessionResourceModifyResponseTransfer := ?, + template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * + ) := { - template (present) M5period mw_m5period(template (present) M5period p_value := ?) := p_value; + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyResponseTransfer := p_pDUSessionResourceModifyResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyItemModRes - template (present) M6Configuration mw_m6Configuration( - template (present) M6report_Interval p_m6report_Interval := ?, - template (present) Links_to_log p_m6_links_to_log := ?, - template M6Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m6report_Interval := p_m6report_Interval, - m6_links_to_log := p_m6_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template mw_m6Configuration + template (present) PDUSessionResourceModifyUnsuccessfulTransfer mw_pDUSessionResourceModifyUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyUnsuccessfulTransfer - template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_M6ReportAmount( - template (present) M6ReportAmountMDT p_m6ReportAmountMDT := ? - ) := { + template (present) PDUSessionResourceNotifyItem mw_pDUSessionResourceNotifyItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer, + template PDUSessionResourceNotifyItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceNotifyTransfer := p_pDUSessionResourceNotifyTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceNotifyItem + + template (present) PDUSessionResourceNotifyReleasedTransfer mw_pDUSessionResourceNotifyReleasedTransfer( + template (present) Cause p_cause := ?, + template PDUSessionResourceNotifyReleasedTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceNotifyReleasedTransfer + + template (present) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { { - id := id_M6ReportAmount, + id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } - } // End of template mw_m6Configuration_id_M6ReportAmount + } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation - template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( - template (present) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration := ? - ) := { + template PDUSessionResourceNotifyTransfer mw_pDUSessionResourceNotifyTransfer( + template QosFlowNotifyList p_qosFlowNotifyList := *, + template QosFlowListWithCause p_qosFlowReleasedList := *, + template PDUSessionResourceNotifyTransfer.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowNotifyList := p_qosFlowNotifyList, + qosFlowReleasedList := p_qosFlowReleasedList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceNotifyTransfer + + template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceNotifyTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { { - id := id_ExcessPacketDelayThresholdConfiguration, + id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } - } // End of template mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration + } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation - template (present) M6ReportAmountMDT mw_m6ReportAmountMDT(template (present) M6ReportAmountMDT p_value := ?) := p_value; + template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceNotifyTransfer_id_QosFlowFeedbackList( + template (present) QosFlowFeedbackList p_qosFlowFeedbackList := ? + ) := { + { + id := id_QosFlowFeedbackList, + criticality := ignore, + extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } + } + } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_QosFlowFeedbackList - template (present) M6report_Interval mw_m6report_Interval(template (present) M6report_Interval p_value := ?) := p_value; + template (present) PDUSessionResourceReleaseCommandTransfer mw_pDUSessionResourceReleaseCommandTransfer( + template (present) Cause p_cause := ?, + template PDUSessionResourceReleaseCommandTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleaseCommandTransfer - template (present) M7Configuration mw_m7Configuration( - template (present) M7period p_m7period := ?, - template (present) Links_to_log p_m7_links_to_log := ?, - template M7Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m7period := p_m7period, - m7_links_to_log := p_m7_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template mw_m7Configuration + template (present) PDUSessionResourceReleasedItemNot mw_pDUSessionResourceReleasedItemNot( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceReleasedItemNot.pDUSessionResourceNotifyReleasedTransfer p_pDUSessionResourceNotifyReleasedTransfer := ?, + template PDUSessionResourceReleasedItemNot.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceNotifyReleasedTransfer := p_pDUSessionResourceNotifyReleasedTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleasedItemNot + + template (present) PDUSessionResourceReleasedItemPSAck mw_pDUSessionResourceReleasedItemPSAck( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceReleasedItemPSAck.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer := ?, + template PDUSessionResourceReleasedItemPSAck.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleasedItemPSAck - template (present) M7Configuration.iE_Extensions mw_m7Configuration_id_M7ReportAmount( - template (present) M7ReportAmountMDT p_m7ReportAmountMDT := ? - ) := { + template (present) PDUSessionResourceReleasedItemPSFail mw_pDUSessionResourceReleasedItemPSFail( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceReleasedItemPSFail.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer := ?, + template PDUSessionResourceReleasedItemPSFail.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleasedItemPSFail + + template (present) PDUSessionResourceReleasedItemRelRes mw_pDUSessionResourceReleasedItemRelRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceReleaseResponseTransfer := p_pDUSessionResourceReleaseResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleasedItemRelRes + + template PDUSessionResourceReleaseResponseTransfer mw_pDUSessionResourceReleaseResponseTransfer( + template PDUSessionResourceReleaseResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleaseResponseTransfer + + template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { { - id := id_M7ReportAmount, + id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } - } // End of template mw_m7Configuration_id_M7ReportAmount + } // End of template mw_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation - template (present) M7ReportAmountMDT mw_m7ReportAmountMDT(template (present) M7ReportAmountMDT p_value := ?) := p_value; + template (present) PDUSessionResourceResumeItemRESReq mw_pDUSessionResourceResumeItemRESReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceResumeItemRESReq.uEContextResumeRequestTransfer p_uEContextResumeRequestTransfer := ?, + template PDUSessionResourceResumeItemRESReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + uEContextResumeRequestTransfer := p_uEContextResumeRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceResumeItemRESReq - template (present) MDT_Location_Info mw_mDT_Location_Info( - template (present) MDT_Location_Information p_mDT_Location_Information := ?, - template MDT_Location_Info.iE_Extensions p_iE_Extensions := * - ) := { - mDT_Location_Information := p_mDT_Location_Information, - iE_Extensions := p_iE_Extensions - } // End of template mw_mDT_Location_Info + template (present) PDUSessionResourceResumeItemRESRes mw_pDUSessionResourceResumeItemRESRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceResumeItemRESRes.uEContextResumeResponseTransfer p_uEContextResumeResponseTransfer := ?, + template PDUSessionResourceResumeItemRESRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + uEContextResumeResponseTransfer := p_uEContextResumeResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceResumeItemRESRes - template (present) N3IWF_ID mw_n3IWF_ID_n3IWF_ID( - template (present) N3IWF_ID.n3IWF_ID p_n3IWF_ID := ? - ) := { - n3IWF_ID := p_n3IWF_ID - } // End of template mw_n3IWF_ID_n3IWF_ID + template (present) PDUSessionResourceSecondaryRATUsageItem mw_pPDUSessionResourceSecondaryRATUsageItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceSecondaryRATUsageItem.secondaryRATDataUsageReportTransfer p_secondaryRATDataUsageReportTransfer := ?, + template PDUSessionResourceSecondaryRATUsageItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + secondaryRATDataUsageReportTransfer := p_secondaryRATDataUsageReportTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pPDUSessionResourceSecondaryRATUsageItem + + template (present) PDUSessionResourceSetupItemCxtReq mw_pDUSessionResourceSetupItemCxtReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) S_NSSAI p_s_NSSAI := ?, + template (present) PDUSessionResourceSetupItemCxtReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer := ?, + template NAS_PDU p_nAS_PDU := *, + template PDUSessionResourceSetupItemCxtReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + nAS_PDU := p_nAS_PDU, + s_NSSAI := p_s_NSSAI, + pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemCxtReq - template (present) N3IWF_ID mw_n3IWF_ID_choice_Extensions( - template (present) N3IWF_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_n3IWF_ID_choice_Extensions + template (present) PDUSessionResourceSetupItemCxtReq.iE_Extensions mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour - template (present) NB_IoT_DefaultPagingDRX mw_nB_IoT_DefaultPagingDRX(template (present) NB_IoT_DefaultPagingDRX p_value := ?) := p_value; + template (present) PDUSessionResourceSetupItemCxtRes mw_pDUSessionResourceSetupItemCxtRes( + template (present) PDUSessionID p_pDUSessionID, + template (present) PDUSessionResourceSetupItemCxtRes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + template PDUSessionResourceSetupItemCxtRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemCxtRes - template (present) NB_IoT_PagingDRX mw_nB_IoT_PagingDRX(template (present) NB_IoT_PagingDRX p_value := ?) := p_value; + template (present) PDUSessionResourceSetupItemHOReq mw_pDUSessionResourceSetupItemHOReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) S_NSSAI p_s_NSSAI := ?, + template (present) PDUSessionResourceSetupItemHOReq.handoverRequestTransfer p_handoverRequestTransfer := ?, + template PDUSessionResourceSetupItemHOReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + s_NSSAI := p_s_NSSAI, + handoverRequestTransfer := p_handoverRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemHOReq - template (present) NB_IoT_Paging_eDRXCycle mw_nB_IoT_Paging_eDRXCycle(template (present) NB_IoT_Paging_eDRXCycle p_value := ?) := p_value; + template (present) PDUSessionResourceSetupItemHOReq.iE_Extensions mw_pDUSessionResourceSetupItemHOReq_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour - template (present) NB_IoT_Paging_TimeWindow mw_nB_IoT_Paging_TimeWindow(template (present) NB_IoT_Paging_TimeWindow p_value := ?) := p_value; + template (present) PDUSessionResourceSetupItemSUReq mw_pDUSessionResourceSetupItemSUReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) S_NSSAI p_s_NSSAI := ?, + template (present) PDUSessionResourceSetupItemSUReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer := ?, + template NAS_PDU p_pDUSessionNAS_PDU := *, + template PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionNAS_PDU := p_pDUSessionNAS_PDU, + s_NSSAI := p_s_NSSAI, + pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemSUReq - template (present) NB_IoT_Paging_eDRXInfo mw_nB_IoT_Paging_eDRXInfo( - template (present) NB_IoT_Paging_eDRXCycle p_nB_IoT_Paging_eDRXCycle := ?, - template NB_IoT_Paging_TimeWindow p_nB_IoT_Paging_TimeWindow := *, - template NB_IoT_Paging_eDRXInfo.iE_Extensions p_iE_Extensions := * - ) := { - nB_IoT_Paging_eDRXCycle := p_nB_IoT_Paging_eDRXCycle, - nB_IoT_Paging_TimeWindow := p_nB_IoT_Paging_TimeWindow, - iE_Extensions := p_iE_Extensions - } // End of template mw_nB_IoT_Paging_eDRXInfo + template (present) PDUSessionResourceSetupItemSUReq.iE_Extensions mw_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour - template (present) NewSecurityContextInd mw_newSecurityContextInd(template (present) NewSecurityContextInd p_value := true_) := p_value; + template (present) PDUSessionResourceSetupItemSURes mw_pDUSessionResourceSetupItemSURes( + template (present) PDUSessionID p_pDUSessionID, + template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemSURes - template (present) NextPagingAreaScope mw_nextPagingAreaScope(template (present) NextPagingAreaScope p_value := ?) := p_value; + template (present) PDUSessionResourceSetupRequestTransfer mw_pDUSessionResourceSetupRequestTransfer( + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { + protocolIEs := p_protocolIEs + } // End of template mw_pDUSessionResourceSetupRequestTransfer - template (present) NGAPIESupportInformationRequestItem mw_nGAPIESupportInformationRequestItem( - template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, - template NGAPIESupportInformationRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGAPIESupportInformationRequestItem + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( + template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? + ) := { + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate - template (present) NGAPIESupportInformationResponseItem mw_nGAPIESupportInformationResponseItem( - template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, - template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIESupportInfo p_ngap_ProtocolIESupportInfo := ?, - template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIEPresenceInfo p_ngap_ProtocolIEPresenceInfo := ?, - template NGAPIESupportInformationResponseItem.iE_Extensions p_iE_Extensions := * - ) := { - ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, - ngap_ProtocolIESupportInfo := p_ngap_ProtocolIESupportInfo, - ngap_ProtocolIEPresenceInfo := p_ngap_ProtocolIEPresenceInfo, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGAPIESupportInformationResponseItem + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_UL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation - template (present) NgENB_ID mw_ngENB_ID_macroNgENB_ID( - template (present) NgENB_ID.macroNgENB_ID p_macroNgENB_ID := ? - ) := { - macroNgENB_ID := p_macroNgENB_ID - } // End of template mw_ngENB_ID_macroNgENB_ID + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible( + template (present) DataForwardingNotPossible p_dataForwardingNotPossible := ? + ) := { + { + id := id_DataForwardingNotPossible, + criticality := reject, + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible - template (present) NgENB_ID mw_ngENB_ID_shortMacroNgENB_ID( - template (present) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID := ? - ) := { - shortMacroNgENB_ID := p_shortMacroNgENB_ID - } // End of template mw_ngENB_ID_shortMacroNgENB_ID + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType( + template (present) PDUSessionType p_pDUSessionType := ? + ) := { + { + id := id_PDUSessionType, + criticality := reject, + value_ := { PDUSessionType := p_pDUSessionType } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType - template (present) NgENB_ID mw_ngENB_ID_longMacroNgENB_ID( - template (present) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID := ? - ) := { - longMacroNgENB_ID := p_longMacroNgENB_ID - } // End of template mw_ngENB_ID_longMacroNgENB_ID + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication( + template (present) SecurityIndication p_securityIndication := ? + ) := { + { + id := id_SecurityIndication, + criticality := reject, + value_ := { SecurityIndication := p_securityIndication } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication - template (present) NgENB_ID mw_ngENB_ID_choice_Extensions( - template (present) NgENB_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_ngENB_ID_choice_Extensions + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance( + template (present) NetworkInstance p_networkInstance := ? + ) := { + { + id := id_NetworkInstance, + criticality := reject, + value_ := { NetworkInstance := p_networkInstance } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance - template (present) NotifySourceNGRANNode mw_notifySourceNGRANNode(template (present) NotifySourceNGRANNode p_value := ?) := p_value; + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList( + template (present) QosFlowSetupRequestList p_qosFlowSetupRequestList := ? + ) := { + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList - template (present) NGRAN_CGI mw_ngENB_ID_nR_CGI( - template (present) NR_CGI p_nR_CGI - ) := { - nR_CGI := p_nR_CGI - } // End of template mw_ngENB_ID_nR_CGI + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? + ) := { + { + id := id_CommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance - template (present) NGRAN_CGI mw_ngENB_ID_eUTRA_CGI( - template (present) EUTRA_CGI p_eUTRA_CGI := ? - ) := { - eUTRA_CGI := p_eUTRA_CGI - } // End of template mw_ngENB_ID_eUTRA_CGI + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability( + template (present) DirectForwardingPathAvailability p_directForwardingPathAvailability := ? + ) := { + { + id := id_DirectForwardingPathAvailability, + criticality := ignore, + value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability + + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation + + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation - template (present) NGRAN_CGI mw_nGRAN_CGI_choice_Extensions( - template (present) NGRAN_CGI.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nGRAN_CGI_choice_Extensions + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstancen( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? + ) := { + { + id := id_RedundantCommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstance - template (present) NGRAN_TNLAssociationToRemoveItem mw_nGRAN_TNLAssociationToRemoveItem( - template (present) CPTransportLayerInformation p_tNLAssociationTransportLayerAddress := ?, - template CPTransportLayerInformation p_tNLAssociationTransportLayerAddressAMF := *, - template NGRAN_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * - ) := { - tNLAssociationTransportLayerAddress := p_tNLAssociationTransportLayerAddress, - tNLAssociationTransportLayerAddressAMF := p_tNLAssociationTransportLayerAddressAMF, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_TNLAssociationToRemoveItem + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? + ) := { + { + id := id_RedundantPDUSessionInformation, + criticality := ignore, + value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation - template (present) NonDynamic5QIDescriptor mw_nonDynamic5QIDescriptor( - template (present) FiveQI p_fiveQI := ?, - template PriorityLevelQos p_priorityLevelQos := *, - template AveragingWindow p_averagingWindow := *, - template MaximumDataBurstVolume p_maximumDataBurstVolume := *, - template NonDynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * - ) := { - fiveQI := p_fiveQI, - priorityLevelQos := p_priorityLevelQos, - averagingWindow := p_averagingWindow, - maximumDataBurstVolume := p_maximumDataBurstVolume, - iE_Extensions := p_iE_Extensions - } // End of template mw_nonDynamic5QIDescriptor + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList( + template (present) MBSSessionSetupRequestList p_mBSSessionSetupRequestList := ? + ) := { + { + id := id_MBSSessionSetupRequestList, + criticality := ignore, + value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList - template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { + template (present) PDUSessionResourceSetupResponseTransfer mw_pDUSessionResourceSetupResponseTransfer( + template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + template SecurityResult p_securityResult := *, + template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + securityResult := p_securityResult, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupResponseTransfer + + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ? + ) := { { - id := id_CNPacketDelayBudgetDL, + id := id_RedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } } - } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation - template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { { - id := id_CNPacketDelayBudgetUL, + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } - } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - template (present) NotificationCause mw_notificationCause(template (present) NotificationCause p_value := ?) := p_value; - - template (present) NotificationControl mw_notificationControl(template (present) NotificationControl p_value := ?) := p_value; + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation - template (present) NPN_AccessInformation mw_nPN_AccessInformation_pNI_NPN_Access_Information( - template (present) CellCAGList p_pNI_NPN_Access_Information := ? - ) := { - pNI_NPN_Access_Information := p_pNI_NPN_Access_Information - } // End of template mw_nPN_AccessInformation_pNI_NPN_Access_Information + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID - template (present) NPN_AccessInformation mw_nPN_AccessInformation_choice_Extensions( - template (present) NPN_AccessInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nPN_AccessInformation_choice_Extensions + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator - template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_sNPN_MobilityInformation( - template (present) SNPN_MobilityInformation p_sNPN_MobilityInformation := ? - ) := { - sNPN_MobilityInformation := p_sNPN_MobilityInformation - } // End of template mw_nPN_MobilityInformation_sNPN_MobilityInformation + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList( + template (present) MBSSessionSetupResponseList p_mBSSessionSetupResponseList := ? + ) := { + { + id := id_MBSSessionSetupResponseList, + criticality := ignore, + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList - template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation( - template (present) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation := ? - ) := { - pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation - } // End of template mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList( + template (present) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList := ? + ) := { + { + id := id_MBSSessionFailedtoSetupList, + criticality := ignore, + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList - template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_choice_Extensions( - template (present) NPN_MobilityInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nPN_MobilityInformation_choice_Extensions + template (present) PDUSessionResourceSetupUnsuccessfulTransfer mw_pDUSessionResourceSetupUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupUnsuccessfulTransfer - template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance( - template (present) Allowed_PNI_NPN_List p_pNI_NPN_PagingAssistance := ? - ) := { - pNI_NPN_PagingAssistance := p_pNI_NPN_PagingAssistance - } // End of template mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance + template (present) PDUSessionResourceSuspendItemSUSReq mw_pDUSessionResourceSuspendItemSUSReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceSuspendItemSUSReq.uEContextSuspendRequestTransfer p_uEContextSuspendRequestTransfer := ?, + template PDUSessionResourceSuspendItemSUSReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + uEContextSuspendRequestTransfer := p_uEContextSuspendRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSuspendItemSUSReq - template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_choice_Extensions( - template (present) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nPN_PagingAssistanceInformation_choice_Extensions + template (present) PDUSessionResourceSwitchedItem mw_pDUSessionResourceSwitchedItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceSwitchedItem.pathSwitchRequestAcknowledgeTransfer p_pathSwitchRequestAcknowledgeTransfer := ?, + template PDUSessionResourceSwitchedItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestAcknowledgeTransfer := p_pathSwitchRequestAcknowledgeTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSwitchedItem - template (present) NPN_Support mw_nPN_Support_sNPN( - template (present) NID p_sNPN := ? - ) := { - sNPN := p_sNPN - } // End of template mw_nPN_Support_sNPN + template (present) PDUSessionResourceSwitchedItem.iE_Extensions mw_pDUSessionResourceSwitchedItemw_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceSwitchedItemw_id_PduSessionExpectedUEActivityBehaviour - template (present) NPN_Support mw_nPN_Support_choice_Extensions( - template (present) NPN_Support.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nPN_Support_choice_Extensions + template (present) PDUSessionResourceToBeSwitchedDLItem mw_pDUSessionResourceToBeSwitchedDLItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceToBeSwitchedDLItem.pathSwitchRequestTransfer p_pathSwitchRequestTransfer := ?, + template PDUSessionResourceToBeSwitchedDLItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestTransfer := p_pathSwitchRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceToBeSwitchedDLItem - template (present) NR_CGI mw_nR_CGI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) NRCellIdentity p_nRCellIdentity := ?, - template NR_CGI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - nRCellIdentity := p_nRCellIdentity, - iE_Extensions := p_iE_Extensions - } // End of template mw_nR_CGI + template (present) PDUSessionResourceToReleaseItemHOCmd mw_pDUSessionResourceToReleaseItemHOCmd( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceToReleaseItemHOCmd.handoverPreparationUnsuccessfulTransfer p_handoverPreparationUnsuccessfulTransfer := ?, + template PDUSessionResourceToReleaseItemHOCmd.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + handoverPreparationUnsuccessfulTransfer := p_handoverPreparationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceToReleaseItemHOCmd - template (present) NR_PagingeDRXInformation mw_NR_PagingeDRXInformation( - template (present) NR_Paging_eDRX_Cycle p_nR_paging_eDRX_Cycle := ?, - template NR_Paging_Time_Window p_nR_paging_Time_Window := *, - template NR_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * - ) := { - nR_paging_eDRX_Cycle := p_nR_paging_eDRX_Cycle, - nR_paging_Time_Window := p_nR_paging_Time_Window, - iE_Extensions := p_iE_Extensions - } // End of template mw_NR_PagingeDRXInformation + template (present) PDUSessionResourceToReleaseItemRelCmd mw_pDUSessionResourceToReleaseItemRelCmd( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceToReleaseItemRelCmd.pDUSessionResourceReleaseCommandTransfer p_pDUSessionResourceReleaseCommandTransfer := ?, + template PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceReleaseCommandTransfer := p_pDUSessionResourceReleaseCommandTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceToReleaseItemRelCmd - template (present) NR_Paging_eDRX_Cycle mw_nR_Paging_eDRX_Cycle(template (present) NR_Paging_eDRX_Cycle p_value := ?) := p_value; + template (present) PDUSessionType mw_pDUSessionType(in PDUSessionType p_value := ipv4) := p_value; - template (present) NR_Paging_Time_Window mw_nR_Paging_Time_Window(template (present) NR_Paging_Time_Window p_value := ?) := p_value; + template (present) PDUSessionUsageReport mw_pDUSessionUsageReport( + template (present) PDUSessionUsageReport.rATType p_rATType := ?, + template (present) VolumeTimedReportList p_pDUSessionTimedReportList := ?, + template PDUSessionUsageReport.iE_Extensions p_iE_Extensions := * + ) := { + rATType := p_rATType, + pDUSessionTimedReportList := p_pDUSessionTimedReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionUsageReport - template (present) NRNTNTAIInformation mw_nRNTNTAIInformation( - template (present) PLMNIdentity p_servingPLMN := ?, - template (present) TACListInNRNTN p_tACListInNRNTN := ?, - template TAC p_uELocationDerivedTACInNRNTN := *, - template NRNTNTAIInformation.iE_Extensions p_iE_Extensions := * - ) := { - servingPLMN := p_servingPLMN, - tACListInNRNTN := p_tACListInNRNTN, - uELocationDerivedTACInNRNTN := p_uELocationDerivedTACInNRNTN, - iE_Extensions := p_iE_Extensions - } // End of template mw_nRNTNTAIInformation + template (present) PEIPSassistanceInformation mw_pEIPSassistanceInformation( + template (present)CNsubgroupID p_cNsubgroupID := ?, + template PEIPSassistanceInformation.iE_Extensions p_iE_Extensions := * + ) := { + cNsubgroupID := p_cNsubgroupID, + iE_Extensions := p_iE_Extensions + } // End of template mw_pEIPSassistanceInformation - template (present) NRFrequencyBandItem mw_nRFrequencyBandItem( - template (present) NRFrequencyBand p_nr_frequency_band := ?, - template NRFrequencyBandItem.iE_Extension p_iE_Extension := * - ) := { - nr_frequency_band := p_nr_frequency_band, - iE_Extension := p_iE_Extension - } // End of template mw_nRFrequencyBandItem + template (present) PLMNAreaBasedQMC mw_pLMNAreaBasedQMC( + template (present) PLMNListforQMC p_plmnListforQMC := ?, + template PLMNAreaBasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + plmnListforQMC := p_plmnListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_pLMNAreaBasedQMC - template (present) NRFrequencyInfo mw_nRFrequencyInfo( - template (present) NRARFCN p_nrARFCN := ?, - template (present) NRFrequencyBand_List p_frequencyBand_List, - template NRFrequencyInfo.iE_Extension p_iE_Extension := * + template (present) PLMNSupportItem mw_pLMNSupportItem( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) SliceSupportList p_sliceSupportList := ?, + template PLMNSupportItem.iE_Extensions p_iE_Extensions := * ) := { - nrARFCN := p_nrARFCN, - frequencyBand_List := p_frequencyBand_List, - iE_Extension := p_iE_Extension - } // End of template mw_nRFrequencyInfo - - template NRV2XServicesAuthorized mw_nRV2XServicesAuthorized( - template VehicleUE p_vehicleUE := *, - template PedestrianUE p_pedestrianUE := *, - template NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * - ) := { - vehicleUE := p_vehicleUE, - pedestrianUE := p_pedestrianUE, - iE_Extensions := p_iE_Extensions - } // End of template mw_nRV2XServicesAuthorized + pLMNIdentity := p_pLMNIdentity, + sliceSupportList := p_sliceSupportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pLMNSupportItem - template (present) VehicleUE mw_vehicleUE(template (present) VehicleUE p_value := ?) := p_value; + template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_NPN_Support( + template (present) NPN_Support p_nPN_Support := ? + ) := { + { + id := id_NPN_Support, + criticality := reject, + extensionValue := { NPN_Support := p_nPN_Support } + } + } // End of template mw_pLMNSupportItemw_id_NPN_Support - template (present) PedestrianUE mw_pedestrianUE(template (present) PedestrianUE p_value := ?) := p_value; + template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_ExtendedSliceSupportList( + template (present) ExtendedSliceSupportList p_extendedSliceSupportList := ? + ) := { + { + id := id_ExtendedSliceSupportList, + criticality := reject, + extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } + } + } // End of template mw_pLMNSupportItemw_id_ExtendedSliceSupportList - template (present) NRUESidelinkAggregateMaximumBitrate mw_nRUESidelinkAggregateMaximumBitrate( - template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, - template NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * - ) := { - uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_nRUESidelinkAggregateMaximumBitrate + template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_OnboardingSupport( + template (present) OnboardingSupport p_onboardingSupport := ? + ) := { + { + id := id_OnboardingSupport, + criticality := ignore, + extensionValue := { OnboardingSupport := p_onboardingSupport } + } + } // End of template mw_pLMNSupportItemw_id_OnboardingSupport - template (present) OnboardingSupport mw_onboardingSupport(template (present) OnboardingSupport p_value := true_) := p_value; + template (present) PNI_NPN_MobilityInformation mw_pNI_NPN_MobilityInformation( + template (present) Allowed_PNI_NPN_List p_allowed_PNI_NPI_List := ?, + template PNI_NPN_MobilityInformation.iE_Extensions p_iE_Extensions := * + ) := { + allowed_PNI_NPI_List := p_allowed_PNI_NPI_List, + iE_Extensions := p_iE_Extensions + } // End of template mw_pNI_NPN_MobilityInformation - template (present) OverloadAction mw_overloadAction(template (present) OverloadAction p_value := ?) := p_value; + template (present) Pre_emptionCapability mw_pre_emptionCapability(template (present) Pre_emptionCapability p_value := ?) := p_value; - template (present) OverloadResponse mw_overloadResponse_overloadAction( - template (present) OverloadAction p_overloadAction := ? - ) := { - overloadAction := p_overloadAction - } // End of template mw_overloadResponse_overloadAction + template (present) Pre_emptionVulnerability mw_pre_emptionVulnerability(template (present) Pre_emptionVulnerability p_value := ?) := p_value; - template (present) OverloadResponse mw_overloadResponse_choice_Extensions( - template (present) OverloadResponse.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_overloadResponse_choice_Extensions + template (present) PWSFailedCellIDList mw_pWSFailedCellIDList_nR_CGI_PWSFailedList( + template (present) NR_CGIList p_nR_CGI_PWSFailedList := ? + ) := { + nR_CGI_PWSFailedList := p_nR_CGI_PWSFailedList + } // End of template mw_pWSFailedCellIDList_nR_CGI_PWSFailedList + template (present) PWSFailedCellIDList mw_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList( + template (present) EUTRA_CGIList p_eUTRA_CGI_PWSFailedList := ? + ) := { + eUTRA_CGI_PWSFailedList := p_eUTRA_CGI_PWSFailedList + } // End of template mw_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList - template (present) OverloadStartNSSAIItem mw_overloadStartNSSAIItem( - template (present) SliceOverloadList p_sliceOverloadList := ?, - template OverloadResponse p_sliceOverloadResponse := *, - template TrafficLoadReductionIndication p_sliceTrafficLoadReductionIndication := *, - template OverloadStartNSSAIItem.iE_Extensions p_iE_Extensions := * - ) := { - sliceOverloadList := p_sliceOverloadList, - sliceOverloadResponse := p_sliceOverloadResponse, - sliceTrafficLoadReductionIndication := p_sliceTrafficLoadReductionIndication, - iE_Extensions := p_iE_Extensions - } // End of template mw_overloadStartNSSAIItem + template (present) PWSFailedCellIDList mw_pWSFailedCellIDList_choice_Extensions( + template (present) PWSFailedCellIDList.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_pWSFailedCellIDList_choice_Extensions - // type integer PacketDelayBudget ( - // type record PacketErrorRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PacketErrorRate_ExtIEs (?); - // type integer PacketLossRate ( - // type record PagingAssisDataforCEcapabUE { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAssisDataforCEcapabUE_ExtIEs (?); - // type record PagingAttemptInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PagingAttemptInformation_ExtIEs (?); - // type integer PagingAttemptCount ( - // type enumerated PagingCause { - // type enumerated PagingCauseIndicationForVoiceService { - // type enumerated PagingDRX { - // type enumerated PagingOrigin { - // type enumerated PagingPriority { - // type enumerated PagingProbabilityInformation { - // type record PathSwitchRequestAcknowledgeTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestAcknowledgeTransfer_ExtIEs ( - // type record PathSwitchRequestSetupFailedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestSetupFailedTransfer_ExtIEs (?); - // type record PathSwitchRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestTransfer_ExtIEs ( - // type record PathSwitchRequestUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PathSwitchRequestUnsuccessfulTransfer_ExtIEs (?); - // type record PC5QoSParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSParameters_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPC5QoSFlows) of PC5QoSFlowItem PC5QoSFlowList; - // type record PC5QoSFlowItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5QoSFlowItem_ExtIEs (?); - // type record PC5FlowBitRates { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PC5FlowBitRates_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNeighPCIforMDT) of NR_PCI PCIListForMDT; - // type enumerated PrivacyIndicator { - // type record PDUSessionAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionAggregateMaximumBitRate_ExtIEs (?); - // type integer PDUSessionID (0 .. 255); - // type integer PDUSessionPairID ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceAdmittedItem PDUSessionResourceAdmittedList; - // type record PDUSessionResourceAdmittedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceAdmittedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModCfm PDUSessionResourceFailedToModifyListModCfm; - // type record PDUSessionResourceFailedToModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToModifyItemModRes PDUSessionResourceFailedToModifyListModRes; - // type record PDUSessionResourceFailedToModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToModifyItemModRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESReq PDUSessionResourceFailedToResumeListRESReq; - // type record PDUSessionResourceFailedToResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToResumeItemRESRes PDUSessionResourceFailedToResumeListRESRes; - // type record PDUSessionResourceFailedToResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtFail PDUSessionResourceFailedToSetupListCxtFail; - // type record PDUSessionResourceFailedToSetupItemCxtFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemCxtRes PDUSessionResourceFailedToSetupListCxtRes; - // type record PDUSessionResourceFailedToSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemHOAck PDUSessionResourceFailedToSetupListHOAck; - // type record PDUSessionResourceFailedToSetupItemHOAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemHOAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemPSReq PDUSessionResourceFailedToSetupListPSReq; - // type record PDUSessionResourceFailedToSetupItemPSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemPSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceFailedToSetupItemSURes PDUSessionResourceFailedToSetupListSURes; - // type record PDUSessionResourceFailedToSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceFailedToSetupItemSURes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceHandoverItem PDUSessionResourceHandoverList; - // type record PDUSessionResourceHandoverItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceHandoverItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceInformationItem PDUSessionResourceInformationList; - // type record PDUSessionResourceInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceInformationItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelCpl PDUSessionResourceListCxtRelCpl; - // type record PDUSessionResourceItemCxtRelCpl { - // type octetstring PDUSessionResourceReleaseResponseTransfer_OCTET_STRING; - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelCpl_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemCxtRelReq PDUSessionResourceListCxtRelReq; - // type record PDUSessionResourceItemCxtRelReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemCxtRelReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceItemHORqd PDUSessionResourceListHORqd; - // type record PDUSessionResourceItemHORqd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceItemHORqd_ExtIEs (?); - // type record PDUSessionResourceModifyConfirmTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyConfirmTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationUnsuccessfulTransfer_ExtIEs (?); - // type record PDUSessionResourceModifyRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceModifyRequestTransferIEs ( - // type record PDUSessionResourceModifyResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyResponseTransfer_ExtIEs ( - // type record PDUSessionResourceModifyIndicationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyIndicationTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModCfm PDUSessionResourceModifyListModCfm; - // type record PDUSessionResourceModifyItemModCfm { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModCfm_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModInd PDUSessionResourceModifyListModInd; - // type record PDUSessionResourceModifyItemModInd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModInd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModReq PDUSessionResourceModifyListModReq; - // type record PDUSessionResourceModifyItemModReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceModifyItemModRes PDUSessionResourceModifyListModRes; - // type record PDUSessionResourceModifyItemModRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyItemModRes_ExtIEs (?); - // type record PDUSessionResourceModifyUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceModifyUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceNotifyItem PDUSessionResourceNotifyList; - // type record PDUSessionResourceNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyItem_ExtIEs (?); - // type record PDUSessionResourceNotifyReleasedTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyReleasedTransfer_ExtIEs ( - // type record PDUSessionResourceNotifyTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceNotifyTransfer_ExtIEs ( - // type record PDUSessionResourceReleaseCommandTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseCommandTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemNot PDUSessionResourceReleasedListNot; - // type record PDUSessionResourceReleasedItemNot { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemNot_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSAck PDUSessionResourceReleasedListPSAck; - // type record PDUSessionResourceReleasedItemPSAck { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSAck_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemPSFail PDUSessionResourceReleasedListPSFail; - // type record PDUSessionResourceReleasedItemPSFail { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemPSFail_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceReleasedItemRelRes PDUSessionResourceReleasedListRelRes; - // type record PDUSessionResourceReleasedItemRelRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleasedItemRelRes_ExtIEs (?); - // type record PDUSessionResourceReleaseResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceReleaseResponseTransfer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESReq PDUSessionResourceResumeListRESReq; - // type record PDUSessionResourceResumeItemRESReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceResumeItemRESRes PDUSessionResourceResumeListRESRes; - // type record PDUSessionResourceResumeItemRESRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceResumeItemRESRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSecondaryRATUsageItem PDUSessionResourceSecondaryRATUsageList; - // type record PDUSessionResourceSecondaryRATUsageItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSecondaryRATUsageItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtReq PDUSessionResourceSetupListCxtReq; - // type record PDUSessionResourceSetupItemCxtReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemCxtRes PDUSessionResourceSetupListCxtRes; - // type record PDUSessionResourceSetupItemCxtRes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemCxtRes_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemHOReq PDUSessionResourceSetupListHOReq; - // type record PDUSessionResourceSetupItemHOReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemHOReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSUReq PDUSessionResourceSetupListSUReq; - // type record PDUSessionResourceSetupItemSUReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSUReq_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSetupItemSURes PDUSessionResourceSetupListSURes; - // type record PDUSessionResourceSetupItemSURes { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupItemSURes_ExtIEs (?); - // type record PDUSessionResourceSetupRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_IES PDUSessionResourceSetupRequestTransferIEs ( - // type record PDUSessionResourceSetupResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupResponseTransfer_ExtIEs ( - // type record PDUSessionResourceSetupUnsuccessfulTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSetupUnsuccessfulTransfer_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSuspendItemSUSReq PDUSessionResourceSuspendListSUSReq; - // type record PDUSessionResourceSuspendItemSUSReq { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSuspendItemSUSReq_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceSwitchedItem PDUSessionResourceSwitchedList; - // type record PDUSessionResourceSwitchedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceSwitchedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToBeSwitchedDLItem PDUSessionResourceToBeSwitchedDLList; - // type record PDUSessionResourceToBeSwitchedDLItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToBeSwitchedDLItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemHOCmd PDUSessionResourceToReleaseListHOCmd; - // type record PDUSessionResourceToReleaseItemHOCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemHOCmd_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPDUSessions) of PDUSessionResourceToReleaseItemRelCmd PDUSessionResourceToReleaseListRelCmd; - // type record PDUSessionResourceToReleaseItemRelCmd { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionResourceToReleaseItemRelCmd_ExtIEs (?); - // type enumerated PDUSessionType { - // type record PDUSessionUsageReport { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PDUSessionUsageReport_ExtIEs (?); - // type record PEIPSassistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PEIPSassistanceInformation_ExtIEs (?); - // type integer Periodicity ( - // type bitstring PeriodicRegistrationUpdateTimer length (8); - // type octetstring PLMNIdentity length (3); - // type record PLMNAreaBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNAreaBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofPLMNforQMC) of PLMNIdentity PLMNListforQMC; - // type record length (1 .. NGAP_Constants.maxnoofPLMNs) of PLMNSupportItem PLMNSupportList; - // type record PLMNSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PLMNSupportItem_ExtIEs ( - // type record PNI_NPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION PNI_NPN_MobilityInformation_ExtIEs (?); - // type octetstring PortNumber length (2); - // type enumerated Pre_emptionCapability { - // type enumerated Pre_emptionVulnerability { - // type integer PriorityLevelARP (1 .. 15); - // type integer PriorityLevelQos ( - // type union PWSFailedCellIDList { - // type NGAP_Containers.NGAP_PROTOCOL_IES PWSFailedCellIDList_ExtIEs (?); // type record QMCConfigInfo { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); // type record QMCDeactivation { -- GitLab From e1ed7422d6d1811bc9a0f6da35165f5bbf094d44 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 13 Feb 2024 10:33:02 +0100 Subject: [PATCH 138/365] TTF T033: Implement ASN.1 send/receive templates Q --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 8 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 821 ++++++++++++++++++++---- 2 files changed, 700 insertions(+), 129 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 832f3fc..d9334eb 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -72,7 +72,7 @@ module NGAP_TestCases { m_ie_gtpTeId )), { m_qosFlowItemWithDataForwarding( - m_qosFlowIdentifier, + 0, m_dataForwardingAccepted ) } @@ -85,10 +85,10 @@ module NGAP_TestCases { m_ie_gtpTeId )), { m_qosFlowItemWithDataForwarding( - m_qosFlowIdentifier, + 0, m_dataForwardingAccepted, - m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( - m_alternativeQoSParaSetIndex + m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( + m_alternativeQoSParaSetIndex )) }, -, diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index fc45f66..6e56143 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -6493,61 +6493,331 @@ module LibNGAP_Templates { choice_Extensions := p_choice_Extensions } // End of template m_pWSFailedCellIDList_choice_Extensions - // type record QMCConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); - // type record QMCDeactivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; - // type octetstring QoEReference length (6); - // type union QosCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; - // type record QosFlowAcceptedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; - // type record QosFlowAddOrModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; - // type record QosFlowAddOrModifyResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; - // type record QosFlowFeedbackItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); - template (value) QosFlowIdentifier m_qosFlowIdentifier(in QosFlowIdentifier p_value := 0) := p_value; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; - // type record QosFlowInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( - // type record QosFlowLevelQosParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( - // type enumerated QosMonitoringRequest { - // type integer QosMonitoringReportingFrequency ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; - // type record QosFlowWithCauseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; - // type record QosFlowModifyConfirmItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; - // type record QosFlowNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; - // type record QosFlowParametersItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( - // type record QosFlowPerTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; - // type record QosFlowPerTNLInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); - - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; - template (value) QosFlowSetupRequestList m_ie_qosFlowSetReqList(in QosFlowSetupRequestList p_list) := p_list; - // type record QosFlowSetupRequestItem { - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( + template (omit) QMCConfigInfo m_qMCConfigInfo( + in template (value) UEAppLayerMeasInfoList p_uEAppLayerMeasInfoList, + in template (omit) QMCConfigInfo.iE_Extensions p_iE_Extensions := omit + ) := { + uEAppLayerMeasInfoList := p_uEAppLayerMeasInfoList, + iE_Extensions := p_iE_Extensions + } // End of template m_qMCConfigInfo + + template (omit) QMCDeactivation m_qMCDeactivation( + in template (value) QoEReferenceList p_qoEReferenceList, + in template (omit) QMCDeactivation.iE_Extensions p_iE_Extensions := omit + ) := { + qoEReferenceList := p_qoEReferenceList, + iE_Extensions := p_iE_Extensions + } // End of template m_qMCDeactivation + + template (value) QosCharacteristics m_qosCharacteristics_nonDynamic5QI( + in template (value) NonDynamic5QIDescriptor p_nonDynamic5QI + ) := { + nonDynamic5QI := p_nonDynamic5QI + } // End of template m_qosCharacteristics_nonDynamic5QI + + template (value) QosCharacteristics m_qosCharacteristics_dynamic5QI( + in template (value) Dynamic5QIDescriptor p_dynamic5QI + ) := { + dynamic5QI := p_dynamic5QI + } // End of template m_qosCharacteristics_dynamic5QI + + template (value) QosCharacteristics m_qosCharacteristics_choice_Extensions( + in template (value) QosCharacteristics.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_qosCharacteristics_choice_Extensions + + template (omit) QosFlowAcceptedItem m_qosFlowAcceptedItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) QosFlowAcceptedItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template + + template (value) QosFlowAcceptedItem.iE_Extensions m_pLMNSupportItem_id_CurrentQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_pLMNSupportItem_id_ExtendedSliceSupportList + + template (omit) QosFlowAddOrModifyRequestItem m_qosFlowAddOrModifyRequestItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) QosFlowLevelQosParameters p_qosFlowLevelQosParameters := omit, + in template (omit) E_RAB_ID p_e_RAB_ID := omit, + in template (omit) QosFlowAddOrModifyRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, + e_RAB_ID := p_e_RAB_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowAddOrModifyRequestItem + + template (value) QosFlowAddOrModifyRequestItem.iE_Extensions m_qosFlowAddOrModifyRequestItem_id_TSCTrafficCharacteristics( + in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + } + } // End of template m_qosFlowAddOrModifyRequestItem_id_TSCTrafficCharacteristics + + template (value) QosFlowAddOrModifyRequestItem.iE_Extensions m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator( + in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator + ) := { + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator + + template (omit) QosFlowAddOrModifyResponseItem m_qosFlowAddOrModifyResponseItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) QosFlowAddOrModifyResponseItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowAddOrModifyResponseItem + + template (value) QosFlowAddOrModifyResponseItem.iE_Extensions m_qosFlowAddOrModifyResponseItem_id_CurrentQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_qosFlowAddOrModifyResponseItem_id_CurrentQoSParaSetIndex + + template (omit) QosFlowFeedbackItem m_qosFlowFeedbackItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) UpdateFeedback p_updateFeedback := omit, + in template (omit) ExtendedPacketDelayBudget p_cNpacketDelayBudgetDL := omit, + in template (omit) ExtendedPacketDelayBudget p_cNpacketDelayBudgetUL := omit, + in template (omit) QosFlowFeedbackItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + updateFeedback := p_updateFeedback, + cNpacketDelayBudgetDL := p_cNpacketDelayBudgetDL, + cNpacketDelayBudgetUL := p_cNpacketDelayBudgetUL, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowFeedbackItem + + template (omit) QosFlowInformationItem m_qosFlowInformationItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) DLForwarding p_dLForwarding := omit, + in template (omit) QosFlowInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dLForwarding := p_dLForwarding, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowInformationItem + + template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_ULForwarding( + in template (value) ULForwarding p_uLForwarding + ) := { + { + id := id_ULForwarding, + criticality := ignore, + extensionValue := { ULForwarding := p_uLForwarding } + } + } // End of template m_qosFlowInformationItem_id_ULForwarding + + template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceTNLAddrInfo( + in template (value) TransportLayerAddress p_transportLayerAddress + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template m_qosFlowInformationItem_id_SourceTNLAddrInfo + + template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceNodeTNLAddrInfo( + in template (value) TransportLayerAddress p_transportLayerAddress + ) := { + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template m_qosFlowInformationItem_id_SourceNodeTNLAddrInfo + + template (omit) QosFlowLevelQosParameters m_qosFlowLevelQosParameters( + in template (value) QosCharacteristics p_qosCharacteristics, + in template (value) AllocationAndRetentionPriority p_allocationAndRetentionPriority, + in template (omit) GBR_QosInformation p_gBR_QosInformation := omit, + in template (omit) ReflectiveQosAttribute p_reflectiveQosAttribute := omit, + in template (omit) AdditionalQosFlowInformation p_additionalQosFlowInformation := omit, + in template (omit) QosFlowLevelQosParameters.iE_Extensions p_iE_Extensions := omit + ) := { + qosCharacteristics := p_qosCharacteristics, + allocationAndRetentionPriority := p_allocationAndRetentionPriority, + gBR_QosInformation := p_gBR_QosInformation, + reflectiveQosAttribute := p_reflectiveQosAttribute, + additionalQosFlowInformation := p_additionalQosFlowInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowLevelQosParameters + + template (value) QosFlowLevelQosParameters.iE_Extensions m_qosFlowLevelQosParameters_id_QosMonitoringRequest( + in template (value) QosMonitoringRequest p_qosMonitoringRequest + ) := { + { + id := id_QosMonitoringRequest, + criticality := ignore, + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + } + } // End of template m_qosFlowLevelQosParameters_id_QosMonitoringRequest + + template (value) QosFlowLevelQosParameters.iE_Extensions m_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency( + in template (value) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency + ) := { + { + id := id_QosMonitoringReportingFrequency, + criticality := ignore, + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + } + } // End of template m_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency + + template (value) QosMonitoringRequest m_qosMonitoringRequest(in QosMonitoringRequest p_value := ul) := p_value; + + template (omit) QosFlowWithCauseItem m_qosFlowWithCauseItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (value) Cause p_cause, + in template (omit) QosFlowWithCauseItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowWithCauseItem + + template (omit) QosFlowModifyConfirmItem m_qosFlowModifyConfirmItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) QosFlowModifyConfirmItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowModifyConfirmItem + + template (omit) QosFlowNotifyItem m_qosFlowNotifyItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (value) NotificationCause p_notificationCause, + in template (omit) QosFlowNotifyItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + notificationCause := p_notificationCause, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowNotifyItem + + template (value) QosFlowNotifyItem.iE_Extensions m_qosFlowNotifyItem_id_CurrentQoSParaSetIndex( + in template (value) AlternativeQoSParaSetNotifyIndex p_alternativeQoSParaSetNotifyIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } + } + } // End of template m_qosFlowNotifyItem_id_CurrentQoSParaSetIndex + + template (omit) QosFlowParametersItem m_qosFlowParametersItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) AlternativeQoSParaSetList p_alternativeQoSParaSetList := omit, + in template (omit) QosFlowParametersItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + alternativeQoSParaSetList := p_alternativeQoSParaSetList, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowParametersItem + + template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_CNPacketDelayBudgetDL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_qosFlowParametersItem_id_CNPacketDelayBudgetDL + + template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_CNPacketDelayBudgetUL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_qosFlowParametersItem_id_CNPacketDelayBudgetUL + + template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_BurstArrivalTimeDownlink( + in template (value) BurstArrivalTime p_burstArrivalTime + ) := { + { + id := id_BurstArrivalTimeDownlink, + criticality := ignore, + extensionValue := { BurstArrivalTime := p_burstArrivalTime } + } + } // End of template m_qosFlowParametersItem_id_BurstArrivalTimeDownlink + + template (omit) QosFlowPerTNLInformation m_qosFlowPerTNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, + in template (value) AssociatedQosFlowList p_associatedQosFlowList, + in template (omit) QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := omit + ) := { + uPTransportLayerInformation := p_uPTransportLayerInformation, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowPerTNLInformation + + template (omit) QosFlowPerTNLInformationItem m_qosFlowPerTNLInformationItem( + in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation, + in template (omit) QosFlowPerTNLInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowPerTNLInformation := p_qosFlowPerTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowPerTNLInformationItem + + template (omit) QosFlowSetupRequestItem m_qosFlowSetupRequestItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (value) QosFlowLevelQosParameters p_qosFlowLevelQosParameters, + in template (omit) E_RAB_ID p_e_RAB_ID := omit, + in template (omit) QosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, + e_RAB_ID := p_e_RAB_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowSetupRequestItem + + template (value) QosFlowSetupRequestItem.iE_Extensions m_qosFlowSetupRequestItem_id_TSCTrafficCharacteristics( + in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + } + } // End of template m_qosFlowSetupRequestItem_id_TSCTrafficCharacteristics + + template (value) QosFlowSetupRequestItem.iE_Extensions m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator( + in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator + ) := { + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator + template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding( in template (value) QosFlowIdentifier p_qosFlowIdentifier, - in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, + in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, in template (omit) QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := omit ) := { qosFlowIdentifier := p_qosFlowIdentifier, @@ -6555,22 +6825,36 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_qosFlowItemWithDataForwarding - template (omit) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( + template (value) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } } - } // End of template m_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowItemWithDataForwarding_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; - // type record QosFlowToBeForwardedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; - // type record QoSFlowsUsageReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); + } // End of template m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex + + template (omit) QosFlowToBeForwardedItem m_qosFlowToBeForwardedItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (omit) QosFlowToBeForwardedItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowToBeForwardedItem + + template (omit) QoSFlowsUsageReport_Item m_qoSFlowsUsageReport_Item( + in template (value) QosFlowIdentifier p_qosFlowIdentifier, + in template (value) QoSFlowsUsageReport_Item.rATType p_rATType := nr, + in template (value) VolumeTimedReportList p_qoSFlowsTimedReportList, + in template (omit) QoSFlowsUsageReport_Item.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + rATType := p_rATType, + qoSFlowsTimedReportList := p_qoSFlowsTimedReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_qoSFlowsUsageReport_Item + // type enumerated Range { // type ASNAUX.PrintableString RANNodeName length ( // type ASNAUX.VisibleString RANNodeNameVisibleString length ( @@ -12249,59 +12533,331 @@ module LibNGAP_Templates { choice_Extensions := p_choice_Extensions } // End of template mw_pWSFailedCellIDList_choice_Extensions - // type record QMCConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCConfigInfo_ExtIEs (?); - // type record QMCDeactivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QMCDeactivation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of QoEReference QoEReferenceList; - // type octetstring QoEReference length (6); - // type union QosCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_IES QosCharacteristics_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAcceptedItem QosFlowAcceptedList; - // type record QosFlowAcceptedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAcceptedItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyRequestItem QosFlowAddOrModifyRequestList; - // type record QosFlowAddOrModifyRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowAddOrModifyResponseItem QosFlowAddOrModifyResponseList; - // type record QosFlowAddOrModifyResponseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowAddOrModifyResponseItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowFeedbackItem QosFlowFeedbackList; - // type record QosFlowFeedbackItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowFeedbackItem_ExtIEs (?); - template (present) QosFlowIdentifier mw_qosFlowIdentifier(template (present) QosFlowIdentifier p_value := ?) := p_value; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowInformationItem QosFlowInformationList; - // type record QosFlowInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowInformationItem_ExtIEs ( - // type record QosFlowLevelQosParameters { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowLevelQosParameters_ExtIEs ( - // type enumerated QosMonitoringRequest { - // type integer QosMonitoringReportingFrequency ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowIdentifier QoSFlowList; - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowWithCauseItem QosFlowListWithCause; - // type record QosFlowWithCauseItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowWithCauseItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowModifyConfirmItem QosFlowModifyConfirmList; - // type record QosFlowModifyConfirmItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowModifyConfirmItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowNotifyItem QosFlowNotifyList; - // type record QosFlowNotifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowNotifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowParametersItem QosFlowParametersList; - // type record QosFlowParametersItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowParametersItem_ExtIEs ( - // type record QosFlowPerTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of QosFlowPerTNLInformationItem QosFlowPerTNLInformationList; - // type record QosFlowPerTNLInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowPerTNLInformationItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowSetupRequestItem QosFlowSetupRequestList; - // type record QosFlowSetupRequestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowSetupRequestItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowItemWithDataForwarding QosFlowListWithDataForwarding; + template (present) QMCConfigInfo mw_qMCConfigInfo( + template (present) UEAppLayerMeasInfoList p_uEAppLayerMeasInfoList := ?, + template QMCConfigInfo.iE_Extensions p_iE_Extensions := * + ) := { + uEAppLayerMeasInfoList := p_uEAppLayerMeasInfoList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qMCConfigInfo + + template (present) QMCDeactivation mw_qMCDeactivation( + template (present) QoEReferenceList p_qoEReferenceList := ?, + template QMCDeactivation.iE_Extensions p_iE_Extensions := * + ) := { + qoEReferenceList := p_qoEReferenceList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qMCDeactivation + + template (present) QosCharacteristics mw_qosCharacteristics_nonDynamic5QI( + template (present) NonDynamic5QIDescriptor p_nonDynamic5QI := ? + ) := { + nonDynamic5QI := p_nonDynamic5QI + } // End of template mw_qosCharacteristics_nonDynamic5QI + + template (present) QosCharacteristics mw_qosCharacteristics_dynamic5QI( + template (present) Dynamic5QIDescriptor p_dynamic5QI := ? + ) := { + dynamic5QI := p_dynamic5QI + } // End of template mw_qosCharacteristics_dynamic5QI + + template (present) QosCharacteristics mw_qosCharacteristics_choice_Extensions( + template (present) QosCharacteristics.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_qosCharacteristics_choice_Extensions + + template (present) QosFlowAcceptedItem mw_qosFlowAcceptedItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowAcceptedItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template + + template (present) QosFlowAcceptedItem.iE_Extensions mw_pLMNSupportItemw_id_CurrentQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_pLMNSupportItemw_id_ExtendedSliceSupportList + + template (present) QosFlowAddOrModifyRequestItem mw_qosFlowAddOrModifyRequestItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowLevelQosParameters p_qosFlowLevelQosParameters := *, + template E_RAB_ID p_e_RAB_ID := *, + template QosFlowAddOrModifyRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, + e_RAB_ID := p_e_RAB_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowAddOrModifyRequestItem + + template (present) QosFlowAddOrModifyRequestItem.iE_Extensions mw_qosFlowAddOrModifyRequestItemw_id_TSCTrafficCharacteristics( + template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ? + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + } + } // End of template mw_qosFlowAddOrModifyRequestItemw_id_TSCTrafficCharacteristics + + template (present) QosFlowAddOrModifyRequestItem.iE_Extensions mw_qosFlowAddOrModifyRequestItemw_id_RedundantQosFlowIndicator( + template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? + ) := { + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template mw_qosFlowAddOrModifyRequestItemw_id_RedundantQosFlowIndicator + + template (present) QosFlowAddOrModifyResponseItem mw_qosFlowAddOrModifyResponseItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowAddOrModifyResponseItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowAddOrModifyResponseItem + + template (present) QosFlowAddOrModifyResponseItem.iE_Extensions mw_qosFlowAddOrModifyResponseItemw_id_CurrentQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_qosFlowAddOrModifyResponseItemw_id_CurrentQoSParaSetIndex + + template (present) QosFlowFeedbackItem mw_qosFlowFeedbackItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template UpdateFeedback p_updateFeedback := *, + template ExtendedPacketDelayBudget p_cNpacketDelayBudgetDL := *, + template ExtendedPacketDelayBudget p_cNpacketDelayBudgetUL := *, + template QosFlowFeedbackItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + updateFeedback := p_updateFeedback, + cNpacketDelayBudgetDL := p_cNpacketDelayBudgetDL, + cNpacketDelayBudgetUL := p_cNpacketDelayBudgetUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowFeedbackItem + + template (present) QosFlowInformationItem mw_qosFlowInformationItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template DLForwarding p_dLForwarding := *, + template QosFlowInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dLForwarding := p_dLForwarding, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowInformationItem + + template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_ULForwarding( + template (present) ULForwarding p_uLForwarding := ? + ) := { + { + id := id_ULForwarding, + criticality := ignore, + extensionValue := { ULForwarding := p_uLForwarding } + } + } // End of template mw_qosFlowInformationItemw_id_ULForwarding + + template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_SourceTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_qosFlowInformationItemw_id_SourceTNLAddrInfo + + template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_SourceNodeTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_qosFlowInformationItemw_id_SourceNodeTNLAddrInfo + + template (present) QosFlowLevelQosParameters mw_qosFlowLevelQosParameters( + template (present) QosCharacteristics p_qosCharacteristics := ?, + template (present) AllocationAndRetentionPriority p_allocationAndRetentionPriority := ?, + template GBR_QosInformation p_gBR_QosInformation := *, + template ReflectiveQosAttribute p_reflectiveQosAttribute := *, + template AdditionalQosFlowInformation p_additionalQosFlowInformation := *, + template QosFlowLevelQosParameters.iE_Extensions p_iE_Extensions := * + ) := { + qosCharacteristics := p_qosCharacteristics, + allocationAndRetentionPriority := p_allocationAndRetentionPriority, + gBR_QosInformation := p_gBR_QosInformation, + reflectiveQosAttribute := p_reflectiveQosAttribute, + additionalQosFlowInformation := p_additionalQosFlowInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowLevelQosParameters + + template (present) QosFlowLevelQosParameters.iE_Extensions mw_qosFlowLevelQosParameters_id_QosMonitoringRequest( + template (present) QosMonitoringRequest p_qosMonitoringRequest := ? + ) := { + { + id := id_QosMonitoringRequest, + criticality := ignore, + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + } + } // End of template mw_qosFlowLevelQosParameters_id_QosMonitoringRequest + + template (present) QosFlowLevelQosParameters.iE_Extensions mw_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency( + template (present) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency := ? + ) := { + { + id := id_QosMonitoringReportingFrequency, + criticality := ignore, + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + } + } // End of template mw_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency + + template (present) QosMonitoringRequest mw_qosMonitoringRequest(template (present) QosMonitoringRequest p_value := ?) := p_value; + + template (present) QosFlowWithCauseItem mw_qosFlowWithCauseItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template (present) Cause p_cause := ?, + template QosFlowWithCauseItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowWithCauseItem + + template (present) QosFlowModifyConfirmItem mw_qosFlowModifyConfirmItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowModifyConfirmItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowModifyConfirmItem + + template (present) QosFlowNotifyItem mw_qosFlowNotifyItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template (present) NotificationCause p_notificationCause := ?, + template QosFlowNotifyItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + notificationCause := p_notificationCause, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowNotifyItem + + template (present) QosFlowNotifyItem.iE_Extensions mw_qosFlowNotifyItemw_id_CurrentQoSParaSetIndex( + template (present) AlternativeQoSParaSetNotifyIndex p_alternativeQoSParaSetNotifyIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } + } + } // End of template mw_qosFlowNotifyItemw_id_CurrentQoSParaSetIndex + + template (present) QosFlowParametersItem mw_qosFlowParametersItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template AlternativeQoSParaSetList p_alternativeQoSParaSetList := *, + template QosFlowParametersItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + alternativeQoSParaSetList := p_alternativeQoSParaSetList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowParametersItem + + template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_CNPacketDelayBudgetDL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_qosFlowParametersItemw_id_CNPacketDelayBudgetDL + + template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_CNPacketDelayBudgetUL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_qosFlowParametersItemw_id_CNPacketDelayBudgetUL + + template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_BurstArrivalTimeDownlink( + template (present) BurstArrivalTime p_burstArrivalTime := ? + ) := { + { + id := id_BurstArrivalTimeDownlink, + criticality := ignore, + extensionValue := { BurstArrivalTime := p_burstArrivalTime } + } + } // End of template mw_qosFlowParametersItemw_id_BurstArrivalTimeDownlink + + template (present) QosFlowPerTNLInformation mw_qosFlowPerTNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ?, + template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, + template QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := * + ) := { + uPTransportLayerInformation := p_uPTransportLayerInformation, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowPerTNLInformation + + template (present) QosFlowPerTNLInformationItem mw_qosFlowPerTNLInformationItem( + template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ?, + template QosFlowPerTNLInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowPerTNLInformation := p_qosFlowPerTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowPerTNLInformationItem + + template (present) QosFlowSetupRequestItem mw_qosFlowSetupRequestItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template (present) QosFlowLevelQosParameters p_qosFlowLevelQosParameters := ?, + template E_RAB_ID p_e_RAB_ID := *, + template QosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, + e_RAB_ID := p_e_RAB_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowSetupRequestItem + + template (present) QosFlowSetupRequestItem.iE_Extensions mw_qosFlowSetupRequestItemw_id_TSCTrafficCharacteristics( + template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ? + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + } + } // End of template mw_qosFlowSetupRequestItemw_id_TSCTrafficCharacteristics + + template (present) QosFlowSetupRequestItem.iE_Extensions mw_qosFlowSetupRequestItemw_id_RedundantQosFlowIndicator( + template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? + ) := { + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template mw_qosFlowSetupRequestItemw_id_RedundantQosFlowIndicator + template (present) QosFlowItemWithDataForwarding mw_qosFlowItemWithDataForwarding( template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template DataForwardingAccepted p_dataForwardingAccepted := *, + template DataForwardingAccepted p_dataForwardingAccepted := *, template QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := * ) := { qosFlowIdentifier := p_qosFlowIdentifier, @@ -12309,21 +12865,36 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_qosFlowItemWithDataForwarding - template (present) QosFlowItemWithDataForwarding.iE_Extensions mw_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndex( + template (present) QosFlowItemWithDataForwarding.iE_Extensions mw_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } } - } // End of template mw_qosFlowItemWithDamw_qosFlowItemWithDataForwarding_alternativeQoSParaSetIndextaForwarding_ - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QosFlowToBeForwardedItem QosFlowToBeForwardedList; - // type record QosFlowToBeForwardedItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QosFlowToBeForwardedItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofQosFlows) of QoSFlowsUsageReport_Item QoSFlowsUsageReportList; - // type record QoSFlowsUsageReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION QoSFlowsUsageReport_Item_ExtIEs (?); + } // End of template mw_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex + + template (present) QosFlowToBeForwardedItem mw_qosFlowToBeForwardedItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowToBeForwardedItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowToBeForwardedItem + + template (present) QoSFlowsUsageReport_Item mw_qoSFlowsUsageReport_Item( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template (present) QoSFlowsUsageReport_Item.rATType p_rATType := ?, + template (present) VolumeTimedReportList p_qoSFlowsTimedReportList, + template QoSFlowsUsageReport_Item.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + rATType := p_rATType, + qoSFlowsTimedReportList := p_qoSFlowsTimedReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qoSFlowsUsageReport_Item + // type enumerated Range { // type ASNAUX.PrintableString RANNodeName length ( // type ASNAUX.VisibleString RANNodeNameVisibleString length ( -- GitLab From f375d70f4e5c1d311e22ffa1061219e1e7f415c1 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 13 Feb 2024 12:07:13 +0100 Subject: [PATCH 139/365] TTF T033: Implement ASN.1 send/receive templates R --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 413 +++++++++++++++++------- 1 file changed, 304 insertions(+), 109 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 6e56143..ea1b9d9 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -6855,61 +6855,156 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_qoSFlowsUsageReport_Item - // type enumerated Range { - // type ASNAUX.PrintableString RANNodeName length ( - // type ASNAUX.VisibleString RANNodeNameVisibleString length ( - // type ASNAUX.UTF8String RANNodeNameUTF8String length ( - // type integer RANPagingPriority (1 .. 256); - // type record RANStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); - - // type integer RAN_UE_NGAP_ID (0 .. 4294967295); - template (value) RAN_UE_NGAP_ID m_ie_rANUeNgapId(in integer p_val := 1) := p_val; - - // type enumerated RAT_Information { - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; - // type record RATRestrictions_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( - // type bitstring RATRestrictionInformation length ( - // type record RecommendedCellsForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; - // type record RecommendedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); - // type record RecommendedRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; - // type record RecommendedRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); - // type enumerated RedCapIndication { - // type enumerated RedirectionVoiceFallback { - // type record RedundantPDUSessionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( - // type enumerated RedundantQosFlowIndicator { - // type enumerated ReflectiveQosAttribute { - // type integer RelativeAMFCapacity (0 .. 255); - // type enumerated ReportArea { - // type integer RepetitionPeriod (0 .. 131071); - // type enumerated ResetAll { - // type enumerated ReportAmountMDT { - // type enumerated ReportIntervalMDT { - // type enumerated ExtendedReportIntervalMDT { - // type union ResetType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); - // type octetstring RGLevelWirelineAccessCharacteristics; - // type integer RNC_ID (0 .. 4095); - // type octetstring RoutingID; - // type octetstring RRCContainer; - // type enumerated RRCEstablishmentCause { - template (value) RRCEstablishmentCause m_ie_rrcEstCause(template (value) RRCEstablishmentCause p_rrcEstCause:=mo_Signalling):=p_rrcEstCause; - - // type enumerated RRCInactiveTransitionReportRequest { - // type enumerated RRCState { - // type enumerated RSN { - // type record RIMInformationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); - // type record RIMInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); + template (value) Range m_range(in Range p_value := m50) := p_value; + + template (omit) RANStatusTransfer_TransparentContainer m_rANStatusTransfer_TransparentContainer( + in template (value) DRBsSubjectToStatusTransferList p_dRBsSubjectToStatusTransferList, + in template (omit) RANStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := omit + ) := { + dRBsSubjectToStatusTransferList := p_dRBsSubjectToStatusTransferList, + iE_Extensions := p_iE_Extensions + } // End of template m_rANStatusTransfer_TransparentContainer + + template (value) RAT_Information m_rAT_Information(in RAT_Information p_value := unlicensed) := p_value; + + template (omit) RATRestrictions_Item m_rATRestrictions_Item( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) RATRestrictionInformation p_rATRestrictionInformation, + in template (omit) RATRestrictions_Item.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + rATRestrictionInformation := p_rATRestrictionInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_rATRestrictions_Item + + template (value) RATRestrictions_Item.iE_Extensions m_rATRestrictions_Item_id_ExtendedRATRestrictionInformation( + in template (value) ExtendedRATRestrictionInformation p_extendedRATRestrictionInformation + ) := { + { + id := id_ExtendedRATRestrictionInformation, + criticality := ignore, + extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } + } + } // End of template m_rATRestrictions_Item_id_ExtendedRATRestrictionInformation + + template (omit) RecommendedCellsForPaging m_recommendedCellsForPaging( + in template (value) RecommendedCellList p_recommendedCellList, + in template (omit) RecommendedCellsForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + recommendedCellList := p_recommendedCellList, + iE_Extensions := p_iE_Extensions + } // End of template m_recommendedCellsForPaging + + template (omit) RecommendedCellItem m_recommendedCellItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (omit) RecommendedCellItem.timeStayedInCell p_timeStayedInCell := omit, + in template (omit) RecommendedCellItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template m_recommendedCellItem + + template (omit) RecommendedRANNodesForPaging m_recommendedRANNodesForPaging( + in template (value) RecommendedRANNodeList p_recommendedRANNodeList, + in template (omit) RecommendedRANNodesForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + recommendedRANNodeList := p_recommendedRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template m_recommendedRANNodesForPaging + + template (omit) RecommendedRANNodeItem m_recommendedRANNodeItem( + in template (value) AMFPagingTarget p_aMFPagingTarget, + in template (omit) RecommendedRANNodeItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMFPagingTarget := p_aMFPagingTarget, + iE_Extensions := p_iE_Extensions + } // End of template m_recommendedRANNodeItem + + template (value) RedCapIndication m_redCapIndication(in RedCapIndication p_value := redcap) := p_value; + + template (value) RedirectionVoiceFallback m_redirectionVoiceFallback(in RedirectionVoiceFallback p_value := possible) := p_value; + + template (omit) RedundantPDUSessionInformation m_redundantPDUSessionInformation( + in template (value) RSN p_rSN, + in template (omit) RedundantPDUSessionInformation.iE_Extensions p_iE_Extensions := omit + ) := { + rSN := p_rSN, + iE_Extensions := p_iE_Extensions + } // End of template m_redundantPDUSessionInformation + + template (value) RedundantPDUSessionInformation.iE_Extensions m_redundantPDUSessionInformation_id_PDUSessionPairID( + in template (value) PDUSessionPairID p_pDUSessionPairID + ) := { + { + id := id_PDUSessionPairID, + criticality := ignore, + extensionValue := { PDUSessionPairID := p_pDUSessionPairID } + } + } // End of template m_redundantPDUSessionInformation_id_PDUSessionPairID + + template (value) RedundantQosFlowIndicator m_RedundantQosFlowIndicator(in RedundantQosFlowIndicator p_value := true_) := p_value; + + template (value) ReflectiveQosAttribute m_reflectiveQosAttribute(in ReflectiveQosAttribute p_value := subject_to) := p_value; + + template (value) ReportArea m_reportArea(in ReportArea p_value := cell) := p_value; + + template (value) ResetAll m_resetAll(in ResetAll p_value := reset_all) := p_value; + + template (value) ReportAmountMDT m_reportAmountMDT(in ReportAmountMDT p_value := r1) := p_value; + + template (value) ReportIntervalMDT m_reportIntervalMDT(in ReportIntervalMDT p_value := ms120) := p_value; + + template (value) ExtendedReportIntervalMDT m_extendedReportIntervalMDT(in ExtendedReportIntervalMDT p_value := ms20480) := p_value; + + template (value) ResetType m_resetType_nG_Interface( + in template (value) ResetAll p_nG_Interface + ) := { + nG_Interface := p_nG_Interface + } // End of template m_resetType_nG_Interface + + template (value) ResetType m_resetType_partOfNG_Interface( + in template (value) UE_associatedLogicalNG_connectionList p_partOfNG_Interface + ) := { + partOfNG_Interface := p_partOfNG_Interface + } // End of template m_resetType_partOfNG_Interface + + template (value) ResetType m_resetType_choice_Extensions( + in template (value) ResetType.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_resetType_choice_Extensions + + template (value) RRCEstablishmentCause m_rRCEstablishmentCause(in RRCEstablishmentCause p_value := emergency) := p_value; + + template (value) RRCInactiveTransitionReportRequest m_rRCInactiveTransitionReportRequest(in RRCInactiveTransitionReportRequest p_value := subsequent_state_transition_report) := p_value; + + template (value) RRCState m_rRCState(in RRCState p_value := inactive) := p_value; + + template (value) RSN m_rSN(in RSN p_value := v1) := p_value; + + template (omit) RIMInformationTransfer m_rIMInformationTransfer( + in template (value) TargetRANNodeID_RIM p_targetRANNodeID_RIM, + in template (value) SourceRANNodeID p_sourceRANNodeID, + in template (value) RIMInformation p_rIMInformation, + in template (omit) RIMInformationTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + targetRANNodeID_RIM := p_targetRANNodeID_RIM, + sourceRANNodeID := p_sourceRANNodeID, + rIMInformation := p_rIMInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_rIMInformationTransfer + + template (omit) RIMInformation m_rIMInformation( + in template (value) GNBSetID p_targetgNBSetID, + in template (value) RIMInformation.rIM_RSDetection p_rIM_RSDetection := rs_detected, + in template (omit) RIMInformation.iE_Extensions p_iE_Extensions := omit + ) := { + targetgNBSetID := p_targetgNBSetID, + rIM_RSDetection := p_rIM_RSDetection, + iE_Extensions := p_iE_Extensions + } // End of template m_rIMInformation + // type bitstring GNBSetID length (22); // type record ScheduledCommunicationTime { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); @@ -7361,11 +7456,13 @@ module LibNGAP_Templates { ) := { globalRANNodeID := p_globalRANNodeID } // End of template mw_aMFPagingTarget_globalRANNodeID + template (present) AMFPagingTarget mw_aMFPagingTarget_tAI( template (present) TAI p_tAI := ? ) := { tAI := p_tAI } // End of template mw_aMFPagingTarget_tAI + template (present) AMFPagingTarget mw_aMFPagingTarget_ext( template (present) AMFPagingTarget.choice_Extensions p_choice_Extensions := ? ) := { @@ -12886,7 +12983,7 @@ module LibNGAP_Templates { template (present) QoSFlowsUsageReport_Item mw_qoSFlowsUsageReport_Item( template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, template (present) QoSFlowsUsageReport_Item.rATType p_rATType := ?, - template (present) VolumeTimedReportList p_qoSFlowsTimedReportList, + template (present) VolumeTimedReportList p_qoSFlowsTimedReportList := ?, template QoSFlowsUsageReport_Item.iE_Extensions p_iE_Extensions := * ) := { qosFlowIdentifier := p_qosFlowIdentifier, @@ -12895,59 +12992,157 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_qoSFlowsUsageReport_Item - // type enumerated Range { - // type ASNAUX.PrintableString RANNodeName length ( - // type ASNAUX.VisibleString RANNodeNameVisibleString length ( - // type ASNAUX.UTF8String RANNodeNameUTF8String length ( - // type integer RANPagingPriority (1 .. 256); - // type record RANStatusTransfer_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RANStatusTransfer_TransparentContainer_ExtIEs (?); - - // type integer RAN_UE_NGAP_ID (0 .. 4294967295); - template (present) RAN_UE_NGAP_ID mw_ie_rANUeNgapId(template (present) integer p_val := ?) := p_val; - - // type enumerated RAT_Information { - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of RATRestrictions_Item RATRestrictions; - // type record RATRestrictions_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RATRestrictions_Item_ExtIEs ( - // type bitstring RATRestrictionInformation length ( - // type record RecommendedCellsForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellsForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedCells) of RecommendedCellItem RecommendedCellList; - // type record RecommendedCellItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedCellItem_ExtIEs (?); - // type record RecommendedRANNodesForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodesForPaging_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofRecommendedRANNodes) of RecommendedRANNodeItem RecommendedRANNodeList; - // type record RecommendedRANNodeItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RecommendedRANNodeItem_ExtIEs (?); - // type enumerated RedCapIndication { - // type enumerated RedirectionVoiceFallback { - // type record RedundantPDUSessionInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RedundantPDUSessionInformation_ExtIEs ( - // type enumerated RedundantQosFlowIndicator { - // type enumerated ReflectiveQosAttribute { - // type integer RelativeAMFCapacity (0 .. 255); - // type enumerated ReportArea { - // type integer RepetitionPeriod (0 .. 131071); - // type enumerated ResetAll { - // type enumerated ReportAmountMDT { - // type enumerated ReportIntervalMDT { - // type enumerated ExtendedReportIntervalMDT { - // type union ResetType { - // type NGAP_Containers.NGAP_PROTOCOL_IES ResetType_ExtIEs (?); - // type octetstring RGLevelWirelineAccessCharacteristics; - // type integer RNC_ID (0 .. 4095); - // type octetstring RoutingID; - // type octetstring RRCContainer; - // type enumerated RRCEstablishmentCause { - // type enumerated RRCInactiveTransitionReportRequest { - // type enumerated RRCState { - // type enumerated RSN { - // type record RIMInformationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformationTransfer_ExtIEs (?); - // type record RIMInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION RIMInformation_ExtIEs (?); + + template (present) Range mw_range(template (present) Range p_value := ?) := p_value; + + template (present) RANStatusTransfer_TransparentContainer mw_rANStatusTransfer_TransparentContainer( + template (present) DRBsSubjectToStatusTransferList p_dRBsSubjectToStatusTransferList := ?, + template RANStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * + ) := { + dRBsSubjectToStatusTransferList := p_dRBsSubjectToStatusTransferList, + iE_Extensions := p_iE_Extensions + } // End of template mw_rANStatusTransfer_TransparentContainer + + template (present) RAT_Information mw_rAT_Information(template (present) RAT_Information p_value := ?) := p_value; + + template (present) RATRestrictions_Item mw_rATRestrictions_Item( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) RATRestrictionInformation p_rATRestrictionInformation := ?, + template RATRestrictions_Item.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + rATRestrictionInformation := p_rATRestrictionInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_rATRestrictions_Item + + template (present) RATRestrictions_Item.iE_Extensions mw_rATRestrictions_Item_id_ExtendedRATRestrictionInformation( + template (present) ExtendedRATRestrictionInformation p_extendedRATRestrictionInformation := ? + ) := { + { + id := id_ExtendedRATRestrictionInformation, + criticality := ignore, + extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } + } + } // End of template mw_rATRestrictions_Item_id_ExtendedRATRestrictionInformation + + template (present) RecommendedCellsForPaging mw_recommendedCellsForPaging( + template (present) RecommendedCellList p_recommendedCellList := ?, + template RecommendedCellsForPaging.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellList := p_recommendedCellList, + iE_Extensions := p_iE_Extensions + } // End of template mw_recommendedCellsForPaging + + template (present) RecommendedCellItem mw_recommendedCellItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template RecommendedCellItem.timeStayedInCell p_timeStayedInCell := *, + template RecommendedCellItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template mw_recommendedCellItem + + template (present) RecommendedRANNodesForPaging mw_recommendedRANNodesForPaging( + template (present) RecommendedRANNodeList p_recommendedRANNodeList := ?, + template RecommendedRANNodesForPaging.iE_Extensions p_iE_Extensions := * + ) := { + recommendedRANNodeList := p_recommendedRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_recommendedRANNodesForPaging + + template (present) RecommendedRANNodeItem mw_recommendedRANNodeItem( + template (present) AMFPagingTarget p_aMFPagingTarget := ?, + template RecommendedRANNodeItem.iE_Extensions p_iE_Extensions := * + ) := { + aMFPagingTarget := p_aMFPagingTarget, + iE_Extensions := p_iE_Extensions + } // End of template mw_recommendedRANNodeItem + + template (present) RedCapIndication mw_redCapIndication(template (present) RedCapIndication p_value := redcap) := p_value; + + template (present) RedirectionVoiceFallback mw_redirectionVoiceFallback(template (present) RedirectionVoiceFallback p_value := ?) := p_value; + + template (present) RedundantPDUSessionInformation mw_redundantPDUSessionInformation( + template (present) RSN p_rSN := ?, + template RedundantPDUSessionInformation.iE_Extensions p_iE_Extensions := * + ) := { + rSN := p_rSN, + iE_Extensions := p_iE_Extensions + } // End of template mw_redundantPDUSessionInformation + + template (present) RedundantPDUSessionInformation.iE_Extensions mw_redundantPDUSessionInformation_id_PDUSessionPairID( + template (present) PDUSessionPairID p_pDUSessionPairID := ? + ) := { + { + id := id_PDUSessionPairID, + criticality := ignore, + extensionValue := { PDUSessionPairID := p_pDUSessionPairID } + } + } // End of template m_redundantPDUSessionInformation_id_PDUSessionPairID + + template (present) RedundantQosFlowIndicator mw_RedundantQosFlowIndicator(template (present) RedundantQosFlowIndicator p_value := ?) := p_value; + + template (present) ReflectiveQosAttribute mw_reflectiveQosAttribute(template (present) ReflectiveQosAttribute p_value := ?) := p_value; + + template (present) ReportArea mw_reportArea(template (present) ReportArea p_value := ?) := p_value; + + template (present) ResetAll mw_resetAll(template (present) ResetAll p_value := ?) := p_value; + + template (present) ReportAmountMDT mw_reportAmountMDT(template (present) ReportAmountMDT p_value := ?) := p_value; + + template (present) ReportIntervalMDT mw_reportIntervalMDT(template (present) ReportIntervalMDT p_value := ?) := p_value; + + template (present) ExtendedReportIntervalMDT mw_extendedReportIntervalMDT(template (present) ExtendedReportIntervalMDT p_value := ?) := p_value; + + template (present) ResetType mw_resetType_nG_Interface( + template (present) ResetAll p_nG_Interface := ? + ) := { + nG_Interface := p_nG_Interface + } // End of template mw_resetType_nG_Interface + + template (present) ResetType mw_resetType_partOfNG_Interface( + template (present) UE_associatedLogicalNG_connectionList p_partOfNG_Interface := ? + ) := { + partOfNG_Interface := p_partOfNG_Interface + } // End of template mw_resetType_partOfNG_Interface + + template (present) ResetType mw_resetType_choice_Extensions( + template (present) ResetType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_resetType_choice_Extensions + + template (present) RRCEstablishmentCause mw_rRCEstablishmentCause(template (present) RRCEstablishmentCause p_value := ?) := p_value; + + template (present) RRCInactiveTransitionReportRequest mw_rRCInactiveTransitionReportRequest(template (present) RRCInactiveTransitionReportRequest p_value := ?) := p_value; + + template (present) RRCState mw_rRCState(template (present) RRCState p_value := ?) := p_value; + + template (present) RSN mw_rSN(template (present) RSN p_value := ?) := p_value; + + template (present) RIMInformationTransfer mw_rIMInformationTransfer( + template (present) TargetRANNodeID_RIM p_targetRANNodeID_RIM := ?, + template (present) SourceRANNodeID p_sourceRANNodeID := ?, + template (present) RIMInformation p_rIMInformation := ?, + template RIMInformationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + targetRANNodeID_RIM := p_targetRANNodeID_RIM, + sourceRANNodeID := p_sourceRANNodeID, + rIMInformation := p_rIMInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_rIMInformationTransfer + + template (present) RIMInformation mw_rIMInformation( + template (present) GNBSetID p_targetgNBSetID := ?, + template (present) RIMInformation.rIM_RSDetection p_rIM_RSDetection := ?, + template RIMInformation.iE_Extensions p_iE_Extensions := * + ) := { + targetgNBSetID := p_targetgNBSetID, + rIM_RSDetection := p_rIM_RSDetection, + iE_Extensions := p_iE_Extensions + } // End of template mw_rIMInformation + // type bitstring GNBSetID length (22); // type record ScheduledCommunicationTime { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); -- GitLab From a0bdc7146fa55565b70633d69da3233eb22a66d2 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 23 Feb 2024 21:52:39 +0100 Subject: [PATCH 140/365] add PICS reference to commons file and update PICS reference within TPs for MMP group --- test_purposes/Ngap_Common.tplan2 | 8 ++++++++ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 16 ++++++++-------- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 3d42066..8cfaa7f 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -37,6 +37,14 @@ Package Ngap_Common { - PICS_A3/2_8 //gnB - UE Context Management Procedures - RAN CP Relocation Indication - PICS_A3/2_11 //gnB - UE Context Management Procedures - UE CONTEXT SUSPEND REQUEST - PICS_A3/2_12 //gnB - UE Context Management Procedures - UE CONTEXT RESUME REQUEST + - PICS_A3/3_1 //gnB - UE Mobility Management Procedures - HANDOVER REQUIRED + - PICS_A3/3_2 //gnB - UE Mobility Management Procedures - HANDOVER REQUEST + - PICS_A3/3_3 //gnB - UE Mobility Management Procedures - HANDOVER NOTIFY + - PICS_A3/3_4 //gnB - UE Mobility Management Procedures - PATH SWITCH REQUEST + - PICS_A3/3_5 //gnB - UE Mobility Management Procedures - HANDOVER CANCEL + - PICS_A3/3_6 //gnB - UE Mobility Management Procedures - UPLINK RAN STATUS TRANSFER + - PICS_A3/3_8 //gnB - UE Mobility Management Procedures - HANDOVER SUCCESS + - PICS_A3/3_9 //gnB - UE Mobility Management Procedures - UPLINK RAN EARLY STATUS TRANSFER - PICS_A3/5_1 //gNB - Transport of NAS Messages Procedures - INITIAL UE MESSAGE - PICS_A3/8_1 //gNB - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST - PICS_A3/8_2 //gNB - Warning Message Transmission procedure - PWS CANCEL REQUEST diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 17d5522..2dfd6e8 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1063,7 +1063,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/3_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1113,7 +1113,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/3_2 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1177,7 +1177,7 @@ Package TP_GNB { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/3_3 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1219,7 +1219,7 @@ Package TP_GNB { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/3_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1268,7 +1268,7 @@ Package TP_GNB { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/3_5 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1307,7 +1307,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/3_6 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1346,7 +1346,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/3_8 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1384,7 +1384,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A3/3_9 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions -- GitLab From 4ef40a3ad478e6f921b7c964aa3041dbc38f3ed2 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Sat, 24 Feb 2024 21:59:22 +0100 Subject: [PATCH 141/365] add PICS references to commons file and update PICS reference within TPs for the NAS, IMP, CTP and LRP groups --- test_purposes/Ngap_Common.tplan2 | 7 ++++++- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 12 ++++++------ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 8cfaa7f..e0e0689 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -45,7 +45,10 @@ Package Ngap_Common { - PICS_A3/3_6 //gnB - UE Mobility Management Procedures - UPLINK RAN STATUS TRANSFER - PICS_A3/3_8 //gnB - UE Mobility Management Procedures - HANDOVER SUCCESS - PICS_A3/3_9 //gnB - UE Mobility Management Procedures - UPLINK RAN EARLY STATUS TRANSFER - - PICS_A3/5_1 //gNB - Transport of NAS Messages Procedures - INITIAL UE MESSAGE + - PICS_A3/5_1 //gNB - Transport of NAS Messages Procedures - INITIAL UE MESSAGE + - PICS_A3/5_3 //gNB - Transport of NAS Messages Procedures - UPLINK NAS TRANSPORT + - PICS_A3/5_4 //gNB - Transport of NAS Messages Procedures - NAS NON DELIVERY INDICATION + - PICS_A3/7_1 //gNB - Configuration Transfer Procedures - UPLINK RAN CONFIGURATION TRANSFER - PICS_A3/8_1 //gNB - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST - PICS_A3/8_2 //gNB - Warning Message Transmission procedure - PWS CANCEL REQUEST - PICS_A3/8_3 //gNB - Warning Message Transmission procedure - PWS RESTART INDICATION @@ -58,6 +61,8 @@ Package Ngap_Common { - PICS_A3/10_2 //gNB - Trace procedure - TRACE FAILURE INDICATION messages - PICS_A3/10_3 //gNB - Trace procedure - DEACTIVATE TRACE messages - PICS_A3/10_4 //gNB - Trace procedure - CELL TRAFFIC TRACE messages + - PICS_A3/11_2 //gNB - Location Reporting Procedures - LOCATION REPORTING FAILURE INDICATION + - PICS_A3/11_3 //gNB - Location Reporting Procedures - LOCATION REPORT - PICS_A4/1_1 //AMF - PDU session management procedure - PDU SESSION RESOURCE SETUP REQUEST - PICS_A4/1_2 //AMF - PDU session management procedure - PDU SESSION RESOURCE RELEASE COMMAND - PICS_A4/1_3 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 2dfd6e8..65dc090 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1415,12 +1415,12 @@ Package TP_GNB { Group "Initial UE Message" { import all from Ngap_Common; - + Test Purpose { TP Id TP_NGAP_GNB_NAS_01 - Test objective "Verify that the IUT can send an INITIAL_UE_MESSAGE to indicate the initiation of a NAS Transport procedure" + Test objective "Verify that the IUT can send an INITIAL UE MESSAGE to indicate the initiation of a NAS Transport procedure" Reference "ETSI TS 138 413 [1], Clauses 8.6.1.2 and 9.2.5.1" @@ -1475,7 +1475,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A3/5_3 Initial conditions with { the UE entity isCMCONNECTED in the GNB entity @@ -1518,7 +1518,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A3/5_4 Initial conditions with { the UE entity isNoLongerAvailable to the GNB entity @@ -1571,7 +1571,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A3/7_1 Expected behaviour ensure that { @@ -2003,7 +2003,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A3/11_2 Expected behaviour ensure that { -- GitLab From 8b001ce9f73dcc0ea17a27362a39349f21db3d3e Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Tue, 27 Feb 2024 11:52:16 +0100 Subject: [PATCH 142/365] add PICS for AMF implementations --- test_purposes/Ngap_Common.tplan2 | 25 +++++++ test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 90 +++++++++++++------------- 2 files changed, 70 insertions(+), 45 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index e0e0689..f41e1df 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -68,7 +68,32 @@ Package Ngap_Common { - PICS_A4/1_3 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST - PICS_A4/1_4 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY NOTIFY - PICS_A4/1_5 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY INDICATION + - PICS_A4/2_3 //AMF - UE Context Management Procedures - UE CONTEXT RELEASE COMMAND + - PICS_A4/2_4 //AMF - UE Context Management Procedures - UE CONTEXT MODIFICATION REQUEST + - PICS_A4/2_6 //AMF - UE Context Management Procedures - CONNECTION ESTABLISHMENT INDICATION + - PICS_A4/2_7 //AMF - UE Context Management Procedures - AMF CP RELOCATION INDICATION + - PICS_A4/2_9 //AMF - UE Context Management Procedures - RETRIEVE UE INFORMATION + - PICS_A4/2_10 //AMF - UE Context Management Procedures - UE INFORMATION TRANSFER + - PICS_A4/2_11 //AMF - UE Context Management Procedures - UE CONTEXT SUSPEND REQUEST + - PICS_A4/2_12 //AMF - UE Context Management Procedures - UE CONTEXT RESUME REQUEST + - PICS_A4/3_1 //AMF - UE Mobility Management Procedures - HANDOVER REQUIRED + - PICS_A4/3_2 //AMF - UE Mobility Management Procedures - HANDOVER REQUEST + - PICS_A4/3_4 //AMF - UE Mobility Management Procedures - PATH SWITCH REQUESTS + - PICS_A4/3_5 //AMF - UE Mobility Management Procedures - HANDOVER CANCEL + - PICS_A4/3_6 //AMF - UE Mobility Management Procedures - UPLINK RAN STATUS TRANSFER + - PICS_A4/3_9 //AMF - UE Mobility Management Procedures - UPLINK RAN EARLY STATUS TRANSFER - PICS_A4/4_1 //AMF - Paging procedures - Paging + - PICS_A4/5_2 //AMF - Transport of NAS Messages Procedures - DOWNLINK NAS TRANSPORT + - PICS_A4/5_5 //AMF - Transport of NAS Messages Procedures - REROUTE NAS REQUEST + - PICS_A4/6_1 //AMF - Interface Management Procedures - NG SETUP REQUEST + - PICS_A4/6_2 //AMF - Interface Management Procedures - RAN CONFIGURATION UPDATE + - PICS_A4/6_3 //AMF - Interface Management Procedures - AMF CONFIGURATION UPDATE + - PICS_A4/6_4 //AMF - Interface Management Procedures - NG RESET + - PICS_A4/6_5 //AMF - Interface Management Procedures - ERROR INDICATION + - PICS_A4/6_6 //AMF - Interface Management Procedures - AMF STATUS INDICATION + - PICS_A4/6_7 //AMF - Interface Management Procedures - OVERLOAD START + - PICS_A4/6_8 //AMF - Interface Management Procedures - OVERLOAD STOP + - PICS_A4/7_2 //AMF - Configuration Transfer Procedures - DOWNLINK RAN CONFIGURATION TRANSFER - PICS_A4/8_1 //AMF - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST - PICS_A4/8_2 //AMF - Warning Message Transmission procedure - PWS CANCEL REQUEST - PICS_A4/8_3 //AMF - Warning Message Transmission procedure - PWS RESTART INDICATION diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 6f08cfb..e9fe7b0 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -291,7 +291,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A3/5_1 //TODO: Not sure here. What is the PIC for INITIAL CONTEXT SETUP REQUEST? Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -342,7 +342,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/2_3 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO:check Initial conditions @@ -380,7 +380,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/2_3 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO:check Initial conditions @@ -424,7 +424,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/2_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -458,14 +458,14 @@ Package TP_AMF { TP Id TP_NGAP_AMF_CMP_09 - Test objective "Verify that the IUT can send a Connection Establishment Indication that contains mandatory IEs." + Test objective "Verify that the IUT can send a CONNECTION ESTABLISHMENT INDICATION that contains mandatory IEs." Reference "ETSI TS 138 413 [1], Clauses 8.3.6.2" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/2_6 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -499,14 +499,14 @@ Package TP_AMF { TP Id TP_NGAP_AMF_CMP_10 - Test objective "Verify that the IUT can send a AMF CP Relocation Indication that contains mandatory IEs." + Test objective "Verify that the IUT can send a AMF CP RELOCATION INDICATION that contains mandatory IEs." Reference "ETSI TS 138 413 [1], Clauses 8.3.7.2" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/2_7 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -548,7 +548,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/2_9 and PICS_A4/2_10 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -598,7 +598,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/2_11 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -641,7 +641,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/2_11 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -691,7 +691,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/2_12 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -753,7 +753,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/3_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -807,7 +807,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/3_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -863,7 +863,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/3_2 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -916,7 +916,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/3_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -968,7 +968,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/3_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1022,14 +1022,14 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_06 - Test objective "Verify that the AMF node successfully processes a HANDOVER CANCEL message that contains mandatory IEs and answers with PHANDOVER CANCEL ACKNOWLEDGE to confirm that the ongoing handover was cancelled." + Test objective "Verify that the AMF node successfully processes a HANDOVER CANCEL message that contains mandatory IEs and answers with HANDOVER CANCEL ACKNOWLEDGE to confirm that the ongoing handover was cancelled." Reference "ETSI TS 138 413 [1], Clauses 8.4.5.2" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/3_5 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1069,11 +1069,11 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully sends a UPLINK RAN STATUS TRANSFER message that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.4.5.2" + "ETSI TS 138 413 [1], Clauses 8.4.6.2" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/3_6 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1109,11 +1109,11 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.4.7.2" + "ETSI TS 138 413 [1], Clauses 8.4.9.2" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/3_9 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1157,7 +1157,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A4/4_1 + PICS Selection PICS_A2/2 and PICS_A4/4_1 // TODO: initial condition? Initial conditions with { @@ -1203,7 +1203,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/5_2 //TODO: Section 8.6.2.1 describes additional triggers for the DOWNLINK NAS TRANSPORT @@ -1247,7 +1247,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/5_5 Expected behaviour ensure that { @@ -1287,7 +1287,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/6_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1347,7 +1347,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/6_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1401,7 +1401,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/6_2 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1438,14 +1438,14 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_04 - Test objective "Verify that the AMF node successfully declines a AMF CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." + Test objective "Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." Reference - "ETSI TS 138 413 [1], Clauses 8.7.3.2" + "ETSI TS 138 413 [1], Clauses 8.7.2.2" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/6_2 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1489,14 +1489,14 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_05 - Test objective "Verify that the AMF node successfully processes a AMF CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." + Test objective "Verify that the AMF node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." Reference - "ETSI TS 138 413 [1], Clauses 8.7.2.2" + "ETSI TS 138 413 [1], Clauses 8.7.3.2" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/6_3 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1547,7 +1547,7 @@ Package TP_AMF { } // End Group "AMF Configuration Update" - Group "NG Reset" + Group "NG Reset" //XX { import all from Ngap_Common; @@ -1558,11 +1558,11 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." Reference - "ETSI TS 138 413 [1], Clauses 8.7.4.2.2" + "ETSI TS 138 413 [1], Clauses 8.7.4.2.1" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 //TODO: Not sure here. PIC means item 5.1 in table A3 but couldn't find either. + PICS Selection PICS_A2/2 and PICS_A4/6_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1606,7 +1606,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/6_5 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -1641,7 +1641,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/6_6 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -1683,7 +1683,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/6_7 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -1720,11 +1720,11 @@ Package TP_AMF { Test objective "Verify that the AMF can send a OVERLOAD STOP to the GNB." Reference - "ETSI TS 138 413 [1], Clauses 8.7.7.2" + "ETSI TS 138 413 [1], Clauses 8.7.8.2" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/6_8 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -1756,14 +1756,14 @@ Package TP_AMF { TP Id TP_NGAP_AMF_CTP_01 - Test objective "Verify that the IUT can send an Downlink RAN Configuration Transfer message to transfer RAN configuration information to the NG-RAN." + Test objective "Verify that the IUT can send an DOWNLINK RAN CONFIGURATION TRANSFER message to transfer RAN configuration information to the NG-RAN." Reference "ETSI TS 138 413 [1], Clauses 8.8.2 and 9.2.7.2" Config Id CFG_AMF_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/2 and PICS_A4/7_2 Expected behaviour ensure that { -- GitLab From 99c90370b8b5b2a6357201fcc4bd5edfc123c44d Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Tue, 27 Feb 2024 15:26:18 +0100 Subject: [PATCH 143/365] add missing PICS_A2/1 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 45 +++++++++++++-------------- 1 file changed, 22 insertions(+), 23 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 65dc090..91ab7c8 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -547,7 +547,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_1 + PICS Selection PICS_A2/1 and PICS_A3/2_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO @@ -598,7 +598,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_1 + PICS Selection PICS_A2/1 and PICS_A3/2_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO; check initial conditions @@ -655,7 +655,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_2 + PICS Selection PICS_A2/1 and PICS_A3/2_2 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -701,7 +701,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_3 + PICS Selection PICS_A2/1 and PICS_A3/2_3 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO @@ -748,7 +748,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_3 + PICS Selection PICS_A2/1 and PICS_A3/2_3 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO @@ -800,7 +800,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_4 + PICS Selection PICS_A2/1 and PICS_A3/2_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO; check initial conditions @@ -838,7 +838,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_4 + PICS Selection PICS_A2/1 and PICS_A3/2_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -881,7 +881,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_5 + PICS Selection PICS_A2/1 and PICS_A3/2_5 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -923,7 +923,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_8 + PICS Selection PICS_A2/1 and PICS_A3/2_8 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -966,7 +966,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_11 + PICS Selection PICS_A2/1 and PICS_A3/2_11 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1012,7 +1012,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/2_12 + PICS Selection PICS_A2/1 and PICS_A3/2_12 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1063,7 +1063,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/3_1 + PICS Selection PICS_A2/1 and PICS_A3/3_1 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1113,7 +1113,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/3_2 + PICS Selection PICS_A2/1 and PICS_A3/3_2 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1177,7 +1177,7 @@ Package TP_GNB { Config Id CFG_AMF_01 - PICS Selection PICS_A3/3_3 + PICS Selection PICS_A2/1 and PICS_A3/3_3 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1219,7 +1219,7 @@ Package TP_GNB { Config Id CFG_AMF_01 - PICS Selection PICS_A3/3_4 + PICS Selection PICS_A2/1 and PICS_A3/3_4 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1268,7 +1268,7 @@ Package TP_GNB { Config Id CFG_AMF_01 - PICS Selection PICS_A3/3_5 + PICS Selection PICS_A2/1 and PICS_A3/3_5 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1307,7 +1307,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/3_6 + PICS Selection PICS_A2/1 and PICS_A3/3_6 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1346,7 +1346,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/3_8 + PICS Selection PICS_A2/1 and PICS_A3/3_8 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1384,7 +1384,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/3_9 + PICS Selection PICS_A2/1 and PICS_A3/3_9 Initial conditions with { the UE entity isRegisteredTo the AMF // TODO: check initial conditions @@ -1427,7 +1427,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/5_1 Initial conditions with { the UE entity isCMIDLE in the GNB entity @@ -1475,7 +1475,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_3 + PICS Selection PICS_A2/1 and PICS_A3/5_3 Initial conditions with { the UE entity isCMCONNECTED in the GNB entity @@ -1518,7 +1518,6 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_4 Initial conditions with { the UE entity isNoLongerAvailable to the GNB entity @@ -1571,7 +1570,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/7_1 + PICS Selection PICS_A2/1 and PICS_A3/7_1 Expected behaviour ensure that { -- GitLab From 4c34cd85a1e8e48a031b399e5209e3f0b0abff04 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 29 Feb 2024 09:45:18 +0100 Subject: [PATCH 144/365] TTF T033: Implement ASN.1 send/receive templates S --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1138 ++++++++++++++++++----- 2 files changed, 918 insertions(+), 222 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 024b5cf..edc73dd 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -86,7 +86,7 @@ module NGAP_TCFunctions { { m_pDUSessionResourceSetupItemSUReq( 0, - m_ie_sNSSAI(m_ie_sST(-),m_ie_sD(-)), + m_s_NSSAI('00'O,'000000'O), '00'O //TODO replace with template /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( m_ie_uPTLInf(m_ie_gTPTunnel( diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index ea1b9d9..6c0dbcd 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -7005,143 +7005,470 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_rIMInformation - // type bitstring GNBSetID length (22); - // type record ScheduledCommunicationTime { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; - - // type octetstring SD length (3); - template (value) SD m_ie_sD(in SD p_val := '000000'O) := p_val; - - // type record SecondaryRATUsageInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); - // type record SecondaryRATDataUsageReportTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); - // type record SecurityContext { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); - // type record SecurityIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( - // type bitstring SecurityKey length (256); - // type record SecurityResult { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); - // type record SensorMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; - // type record SensorMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); - // type enumerated SensorMeasConfig { - // type union SensorNameConfig { - // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); - // type bitstring SerialNumber length (16); - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; - // type record ServedGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; - // type record ServiceAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); - // type enumerated ServiceType { - // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); - // type record SharedNGU_MulticastTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; - // type record SliceOverloadItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); - - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; - template (value) SliceSupportList m_ie_sliceSupportList(in template (value) SliceSupportList p_list) := p_list; - - // type record SliceSupportItem { - template (omit) SliceSupportItem m_ie_sliceSupportItem( - in template (value) S_NSSAI p_S_NSSAI, - in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit - ) := { - s_NSSAI := p_S_NSSAI, - iE_Extensions :=p_iE_Extensions - } // End of template m_ie_sliceSupportItem - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; - // type record SliceSupportQMC_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); - // type record SNPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); - // type record S_NSSAI { - template (omit) S_NSSAI m_ie_sNSSAI( - in template (value) SST p_sST, - in template (value) SD p_sD, - in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit - ) := { - sST := p_sST,//'00'O, - sD := p_sD,//'000000'O, + template (omit) ScheduledCommunicationTime m_scheduledCommunicationTime( + in template (omit) ScheduledCommunicationTime.dayofWeek p_dayofWeek := omit, + in template (omit) ScheduledCommunicationTime.timeofDayStart p_timeofDayStart := omit, + in template (omit) ScheduledCommunicationTime.timeofDayEnd p_timeofDayEnd := omit, + in template (omit) ScheduledCommunicationTime.iE_Extensions p_iE_Extensions := omit + ) := { + dayofWeek := p_dayofWeek, + timeofDayStart := p_timeofDayStart, + timeofDayEnd := p_timeofDayEnd, + iE_Extensions := p_iE_Extensions + } // End of template m_scheduledCommunicationTime + + template (omit) SecondaryRATUsageInformation m_secondaryRATUsageInformation( + in template (omit) PDUSessionUsageReport p_pDUSessionUsageReport := omit, + in template (omit) QoSFlowsUsageReportList p_qosFlowsUsageReportList := omit, + in template (omit) SecondaryRATUsageInformation.iE_Extension p_iE_Extensions := omit + ) := { + pDUSessionUsageReport := p_pDUSessionUsageReport, + qosFlowsUsageReportList := p_qosFlowsUsageReportList, + iE_Extension := p_iE_Extensions + } // End of template m_secondaryRATUsageInformation + + template (omit) SecondaryRATDataUsageReportTransfer m_secondaryRATDataUsageReportTransfer( + in template (omit) SecondaryRATUsageInformation p_secondaryRATUsageInformation := omit, + in template (omit) SecondaryRATDataUsageReportTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + secondaryRATUsageInformation := p_secondaryRATUsageInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_secondaryRATDataUsageReportTransfer + + template (omit) SecurityContext m_securityContext( + in template (value) NextHopChainingCount p_nextHopChainingCount, + in template (value) SecurityKey p_nextHopNH, + in template (omit) SecurityContext.iE_Extensions p_iE_Extensions := omit + ) := { + nextHopChainingCount := p_nextHopChainingCount, + nextHopNH := p_nextHopNH, + iE_Extensions := p_iE_Extensions + } // End of template m_securityContext + + template (omit) SecurityIndication m_securityIndication( + in template (value) IntegrityProtectionIndication p_integrityProtectionIndication, + in template (value) ConfidentialityProtectionIndication p_confidentialityProtectionIndication, + in template (omit) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate_UL := omit, + in template (omit) SecurityIndication.iE_Extensions p_iE_Extensions := omit + ) := { + integrityProtectionIndication := p_integrityProtectionIndication, + confidentialityProtectionIndication := p_confidentialityProtectionIndication, + maximumIntegrityProtectedDataRate_UL := p_maximumIntegrityProtectedDataRate_UL, + // The above IE shall be present if integrity protection is required or preferred + iE_Extensions := p_iE_Extensions + } // End of template m_securityIndication + + template (value) SecurityIndication.iE_Extensions m_securityIndication_id_MaximumIntegrityProtectedDataRate_DL( + in template (value) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate + ) := { + { + id := id_MaximumIntegrityProtectedDataRate_DL, + criticality := ignore, + extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } + } + } // End of template m_securityIndication_id_MaximumIntegrityProtectedDataRate_DL + + template (omit) SecurityResult m_securityResult( + in template (value) IntegrityProtectionResult p_integrityProtectionResult, + in template (value) ConfidentialityProtectionResult p_confidentialityProtectionResult, + in template (omit) SecurityResult.iE_Extensions p_iE_Extensions := omit + ) := { + integrityProtectionResult := p_integrityProtectionResult, + confidentialityProtectionResult := p_confidentialityProtectionResult, + iE_Extensions := p_iE_Extensions + } // End of template m_securityResult + + template (omit) SensorMeasurementConfiguration m_sensorMeasurementConfiguration( + in template (value) SensorMeasConfig p_sensorMeasConfig, + in template (omit) SensorMeasConfigNameList p_sensorMeasConfigNameList := omit, + in template (omit) SensorMeasurementConfiguration.iE_Extensions p_iE_Extensions := omit + ) := { + sensorMeasConfig := p_sensorMeasConfig, + sensorMeasConfigNameList := p_sensorMeasConfigNameList, + iE_Extensions := p_iE_Extensions + } // End of template m_sensorMeasurementConfiguration + + template (omit) SensorMeasConfigNameItem m_sensorMeasConfigNameItem( + in template (value) SensorNameConfig p_sensorNameConfig, + in template (omit) SensorMeasConfigNameItem.iE_Extensions p_iE_Extensions := omit + ) := { + sensorNameConfig := p_sensorNameConfig, + iE_Extensions := p_iE_Extensions + } // End of template m_sensorMeasConfigNameItem + + template (value) SensorMeasConfig m_sensorMeasConfig(in SensorMeasConfig p_value := setup) := p_value; + + template (value) SensorNameConfig m_sensorNameConfig_uncompensatedBarometricConfig( + in template (value) SensorNameConfig.uncompensatedBarometricConfig p_uncompensatedBarometricConfig := true_ + ) := { + uncompensatedBarometricConfig := p_uncompensatedBarometricConfig + } // End of template m_sensorNameConfig_uncompensatedBarometricConfig + + template (value) SensorNameConfig m_sensorNameConfig_ueSpeedConfig( + in template (value) SensorNameConfig.ueSpeedConfig p_ueSpeedConfig := true_ + ) := { + ueSpeedConfig := p_ueSpeedConfig + } // End of template m_sensorNameConfig_ueSpeedConfig + + template (value) SensorNameConfig m_sensorNameConfig_ueOrientationConfig( + in template (value) SensorNameConfig.ueOrientationConfig p_ueOrientationConfig := true_ + ) := { + ueOrientationConfig := p_ueOrientationConfig + } // End of template m_sensorNameConfig_ueOrientationConfig + + template (value) SensorNameConfig m_sensorNameConfig_choice_Extensions( + in template (value) SensorNameConfig.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_sensorNameConfig_choice_Extensions + + template (omit) ServedGUAMIItem m_servedGUAMIItem( + in template (value) GUAMI p_gUAMI, + in template (omit) AMFName p_backupAMFName := omit, + in template (omit) ServedGUAMIItem.iE_Extensions p_iE_Extensions := omit + ) := { + gUAMI := p_gUAMI, + backupAMFName := p_backupAMFName, iE_Extensions := p_iE_Extensions - } // End of template m_ie_sNSSAI - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); - // type record SONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); - // type union SONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( - // type record SONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); - // type union SONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; - // type record SuccessfulHandoverReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); - // type enumerated SONInformationRequest { - // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( - // type union SourceNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); - // type enumerated SourceOfUEActivityBehaviourInformation { - // type record SourceRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); - // type octetstring SourceToTarget_TransparentContainer; - // type record SourceToTarget_AMFInformationReroute { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); - // type enumerated SRVCCOperationPossible { - // type octetstring ConfiguredNSSAI length (128); - // type octetstring RejectedNSSAIinPLMN length (32); - // type octetstring RejectedNSSAIinTA length (32); - // type octetstring SST length (1); - template (value) SST m_ie_sST(in SST p_val := '00'O) := p_val; - - // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; - template (value) SupportedTAList m_ie_supportedTAList(in template (value) SupportedTAList p_list) := p_list; - - // type record SupportedTAItem { - template (omit) SupportedTAItem m_ie_supportedTAItem( - in template (value) TAC p_tAC, - in template (value) BroadcastPLMNList p_broadcastPLMNList, - in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit - ) := { + } // End of template m_servedGUAMIItem + + template (value) ServedGUAMIItem.iE_Extensions m_servedGUAMIItem_id_GUAMIType( + in template (value) GUAMIType p_gUAMIType + ) := { + { + id := id_GUAMIType, + criticality := ignore, + extensionValue := { GUAMIType := p_gUAMIType } + } + } // End of template m_servedGUAMIItem_id_GUAMIType + + template (omit) ServiceAreaInformation_Item m_serviceAreaInformation_Item( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (omit) AllowedTACs p_allowedTACs := omit, + in template (omit) NotAllowedTACs p_notAllowedTACs := omit, + in template (omit) ServiceAreaInformation_Item.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + allowedTACs := p_allowedTACs, + notAllowedTACs := p_notAllowedTACs, + iE_Extensions := p_iE_Extensions + } // End of template m_serviceAreaInformation_Item + + template (value) ServiceType m_serviceType(in ServiceType p_value := streaming) := p_value; + + template (omit) SharedNGU_MulticastTNLInformation m_sharedNGU_MulticastTNLInformation( + in template (value) TransportLayerAddress p_iP_MulticastAddress, + in template (value) TransportLayerAddress p_iP_SourceAddress, + in template (value) GTP_TEID p_gTP_TEID, + in template (omit) SharedNGU_MulticastTNLInformation.iE_Extensions p_iE_Extensions := omit + ) := { + iP_MulticastAddress := p_iP_MulticastAddress, + iP_SourceAddress := p_iP_SourceAddress, + gTP_TEID := p_gTP_TEID, + iE_Extensions := p_iE_Extensions + } // End of template m_sharedNGU_MulticastTNLInformation + + template (omit) SliceOverloadItem m_sliceOverloadItem( + in template (value) S_NSSAI p_s_NSSAI, + in template (omit) SliceOverloadItem.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template m_sliceOverloadItem + + template (omit) SliceSupportItem m_sliceSupportItem( + in template (value) S_NSSAI p_s_NSSAI, + in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template m_sliceSupportItem + + template (omit) SliceSupportQMC_Item m_sliceSupportQMC_Item( + in template (value) S_NSSAI p_s_NSSAI, + in template (omit) SliceSupportQMC_Item.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template m_sliceSupportQMC_Item + + template (omit) SNPN_MobilityInformation m_sNPN_MobilityInformation( + in template (value) NID p_serving_NID, + in template (omit) SNPN_MobilityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + serving_NID := p_serving_NID, + iE_Extensions := p_iE_Extensions + } // End of template m_sNPN_MobilityInformation + + template (omit) S_NSSAI m_s_NSSAI( + in template (value) SST p_sST, + in template (omit) SD p_sD := omit, + in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ) := { + sST := p_sST, + sD := p_sD, + iE_Extensions := p_iE_Extensions + } // End of template m_s_NSSAI + + template (omit) SONConfigurationTransfer m_sONConfigurationTransfer( + in template (value) TargetRANNodeID_SON p_targetRANNodeID_SON, + in template (value) SourceRANNodeID p_sourceRANNodeID, + in template (value) SONInformation p_sONInformation, + in template (omit) XnTNLConfigurationInfo p_xnTNLConfigurationInfo := omit, + in template (omit) SONConfigurationTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + targetRANNodeID_SON := p_targetRANNodeID_SON, + sourceRANNodeID := p_sourceRANNodeID, + sONInformation := p_sONInformation, + xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, + // The above IE shall be present if the SON Information IE contains the SON Information Request IE set to “Xn TNL Configuration Info” + iE_Extensions := p_iE_Extensions + } // End of template m_sONConfigurationTransfer + + template (value) SONInformation m_sONInformation_sONInformationRequest( + in template (value) SONInformationRequest p_sONInformationRequest + ) := { + sONInformationRequest := p_sONInformationRequest + } // End of template m_sONInformation_sONInformationRequest + + template (value) SONInformation m_sONInformation_sONInformationReply( + in template (value) SONInformationReply p_sONInformationReply + ) := { + sONInformationReply := p_sONInformationReply + } // End of template m_sONInformation_sONInformationReply + + template (value) SONInformation m_sONInformation_choice_Extensions( + in template (value) SONInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_sONInformation_choice_Extensions + + template (value) SONInformation.choice_Extensions m_sONInformatio_id_SONInformationReport( + in template (value) SONInformationReport p_sONInformationReport + ) := { + id := id_SONInformationReport, + criticality := ignore, + value_ := { SONInformationReport := p_sONInformationReport } + } // End of template m_sONInformatio_id_SONInformationReport + + template (omit) SONInformationReply m_sONInformationReply( + in template (omit) XnTNLConfigurationInfo p_xnTNLConfigurationInfo := omit, + in template (omit) SONInformationReply.iE_Extensions p_iE_Extensions := omit + ) := { + xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, + iE_Extensions := p_iE_Extensions + } // End of template m_sONInformationReply + + template (value) SONInformationReport m_sONInformationReport_failureIndicationInformation( + in template (value) FailureIndication p_failureIndicationInformation + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template m_sONInformationReport_failureIndicationInformation + + template (value) SONInformationReport m_sONInformationReport_hOReportInformation( + in template (value) HOReport p_hOReportInformation + ) := { + hOReportInformation := p_hOReportInformation + } // End of template m_sONInformationReport_hOReportInformation + + template (value) SONInformationReport m_sONInformationReport_choice_Extensions( + in template (value) SONInformationReport.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_sONInformationReport_choice_Extensions + + template (value) SONInformationReport.choice_Extensions m_sONInformationReport_id_SONInformationReport( + in template (value) SuccessfulHandoverReportList p_successfulHandoverReportList + ) := { + id := id_SONInformationReport, + criticality := ignore, + value_ := { SuccessfulHandoverReportList := p_successfulHandoverReportList } + } // End of template m_sONInformationReport_id_SONInformationReport + + template (omit) SuccessfulHandoverReport_Item m_successfulHandoverReport_Item( + in template (value) octetstring p_successfulHOReportContainer, + in template (omit) SuccessfulHandoverReport_Item.iE_Extensions p_iE_Extensions := omit + ) := { + successfulHOReportContainer := p_successfulHOReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_successfulHandoverReport_Item + + template (value) SONInformationRequest m_sONInformationRequest(in SONInformationRequest p_value := xn_TNL_configuration_info) := p_value; + + template (omit) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer( + in template (value) NGRAN_CGI p_targetCell_ID, + in template (value) RRCContainer p_rRCContainer, + in template (value) UEHistoryInformation p_uEHistoryInformation, + in template (omit) PDUSessionResourceInformationList p_pDUSessionResourceInformationList := omit, + in template (omit) E_RABInformationList p_e_RABInformationList := omit, + in template (omit) IndexToRFSP p_indexToRFSP := omit, + in template (omit) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := omit + ):= { + rRCContainer := p_rRCContainer, + pDUSessionResourceInformationList := p_pDUSessionResourceInformationList, + e_RABInformationList := p_e_RABInformationList, + targetCell_ID := p_targetCell_ID, + indexToRFSP := p_indexToRFSP, + uEHistoryInformation := p_uEHistoryInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID( + in template (value) SgNB_UE_X2AP_ID p_sgNB_UE_X2AP_ID + ) := { + { + id := id_SgNB_UE_X2AP_ID, + criticality := ignore, + extensionValue := { SgNB_UE_X2AP_ID := p_sgNB_UE_X2AP_ID } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE( + in template (value) UEHistoryInformationFromTheUE p_uEHistoryInformationFromTheUE + ) := { + { + id := id_UEHistoryInformationFromTheUE, + criticality := ignore, + extensionValue := { UEHistoryInformationFromTheUE := p_uEHistoryInformationFromTheUE } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID( + in template (value) SourceNodeID p_sourceNodeID + ) := { + { + id := id_SourceNodeID, + criticality := ignore, + extensionValue := { SourceNodeID := p_sourceNodeID } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource( + in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID + ) := { + { + id := id_UEContextReferenceAtSource, + criticality := ignore, + extensionValue := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList( + in template (value) MBS_ActiveSessionInformation_SourcetoTargetList p_mBS_ActiveSessionInformation_SourcetoTargetListD + ) := { + { + id := id_MBS_ActiveSessionInformation_SourcetoTargetList, + criticality := ignore, + extensionValue := { MBS_ActiveSessionInformation_SourcetoTargetList := p_mBS_ActiveSessionInformation_SourcetoTargetListD } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo( + in template (value) QMCConfigInfo p_qMCConfigInfo + ) := { + { + id := id_QMCConfigInfo, + criticality := ignore, + extensionValue := { QMCConfigInfo := p_qMCConfigInfo } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList( + in template (value) NGAPIESupportInformationRequestList p_nGAPIESupportInformationRequestList + ) := { + { + id := id_NGAPIESupportInformationRequestList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationRequestList := p_nGAPIESupportInformationRequestList } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList + + template (value) SourceNodeID m_sourceNodeID_sourceengNB_ID( + in template (value) GlobalGNB_ID p_sourceengNB_ID + ) := { + sourceengNB_ID := p_sourceengNB_ID + } // End of template m_sourceNodeID_sourceengNB_ID + + template (value) SourceNodeID m_sourceNodeID_choice_Extensions( + in template (value) SourceNodeID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_sourceNodeID_choice_Extensions + + template (value) SourceOfUEActivityBehaviourInformation m_sourceOfUEActivityBehaviourInformation(in SourceOfUEActivityBehaviourInformation p_value := subscription_information) := p_value; + + template (omit) SourceRANNodeID m_sourceRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) SourceRANNodeID.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_sourceRANNodeID + + // This IE includes a transparent container from the source RAN node to the target RAN node. + // The octets of the OCTET STRING are encoded according to the specifications of the target system. + + template (omit) SourceToTarget_AMFInformationReroute m_sourceToTarget_AMFInformationReroute( + in template (omit) ConfiguredNSSAI p_configuredNSSAI := omit, + in template (omit) RejectedNSSAIinPLMN p_rejectedNSSAIinPLMN := omit, + in template (omit) RejectedNSSAIinTA p_rejectedNSSAIinTA := omit, + in template (omit) SourceToTarget_AMFInformationReroute.iE_Extensions p_iE_Extensions := omit + ) := { + configuredNSSAI := p_configuredNSSAI, + rejectedNSSAIinPLMN := p_rejectedNSSAIinPLMN, + rejectedNSSAIinTA := p_rejectedNSSAIinTA, + iE_Extensions := p_iE_Extensions + } // End of template m_sourceToTarget_AMFInformationReroute + + // This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF. + // The octets of the OCTET STRING are encoded according to the specifications of the Core network. + + template (value) SRVCCOperationPossible m_sRVCCOperationPossible(in SRVCCOperationPossible p_value := possible) := p_value; + + template (omit) SupportedTAItem m_supportedTAItem( + in template (value) TAC p_tAC, + in template (value) BroadcastPLMNList p_broadcastPLMNList, + in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ) := { tAC := p_tAC, broadcastPLMNList := p_broadcastPLMNList, iE_Extensions := p_iE_Extensions - } // End of template m_ie_supportedTAItem + } // End of template m_supportedTAItem + + template (value) SupportedTAItem.iE_Extensions m_supportedTAItem_id_ConfiguredTACIndication( + in template (value) ConfiguredTACIndication p_configuredTACIndication + ) := { + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + } + } // End of template m_supportedTAItem_id_ConfiguredTACIndication + + template (value) SupportedTAItem.iE_Extensions m_supportedTAItem_id_RAT_Information( + in template (value) RAT_Information p_rAT_Information + ) := { + { + id := id_RAT_Information, + criticality := reject, + extensionValue := { RAT_Information := p_rAT_Information } + } + } // End of template m_supportedTAItem_id_RAT_Information - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( + template (value) SuspendIndicator m_suspendIndicator(in SuspendIndicator p_value := true_) := p_value; + + template (value) Suspend_Request_Indication m_suspend_Request_Indication(in Suspend_Request_Indication p_value := suspend_requested) := p_value; + + template (value) Suspend_Response_Indication m_suspend_Response_Indication(in Suspend_Response_Indication p_value := suspend_indicated) := p_value; - // type enumerated SuspendIndicator { - // type enumerated Suspend_Request_Indication { - // type enumerated Suspend_Response_Indication { - // type integer SurvivalTime ( - // type octetstring TAC length (3); - template (value) TAC m_ie_tAC(in template (value) TAC p_val) := p_val; + + // type octetstring TAC length (3); // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; // type record TAI { - template (value) TAI m_ie_tAI( - template (value) PLMNIdentity p_plmnId, - template (value) TAC p_tac, - in template (omit) TAI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_plmnId, - tAC := p_tac, - iE_Extensions := p_iE_Extensions - } //End of template m_ie_tAI - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; // type record TAIBroadcastEUTRA_Item { @@ -7417,17 +7744,10 @@ module LibNGAP_Templates { pre_emptionVulnerability := p_pre_emptionVulnerability, iE_Extensions := p_iE_Extensions } // End of template mw_allocationAndRetentionPriority - // type record length (1 .. NGAP_Constants.maxnoofAllowedCAGsperPLMN) of CAG_ID Allowed_CAG_List_per_PLMN; - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of AllowedNSSAI_Item AllowedNSSAI; - // type record AllowedNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION AllowedNSSAI_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of Allowed_PNI_NPN_Item Allowed_PNI_NPN_List; - // type record Allowed_PNI_NPN_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION Allowed_PNI_NPN_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedAreas) of TAC AllowedTACs; - template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(in template (present) integer p_value := ?) := p_value; - - template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(in template (present) integer p_value := ?) := p_value; + + template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(template (present) integer p_value := ?) := p_value; + + template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(template (present) integer p_value := ?) := p_value; template (present) AlternativeQoSParaSetItem mw_alternativeQoSParaSetItem( template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ?, @@ -12532,7 +12852,7 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_pDUSessionResourceToReleaseItemRelCmd - template (present) PDUSessionType mw_pDUSessionType(in PDUSessionType p_value := ipv4) := p_value; + template (present) PDUSessionType mw_pDUSessionType(template (present) PDUSessionType p_value := ipv4) := p_value; template (present) PDUSessionUsageReport mw_pDUSessionUsageReport( template (present) PDUSessionUsageReport.rATType p_rATType := ?, @@ -13143,88 +13463,464 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_rIMInformation - // type bitstring GNBSetID length (22); - // type record ScheduledCommunicationTime { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ScheduledCommunicationTime_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress SCTP_TLAs; - // type octetstring SD length (3); - // type record SecondaryRATUsageInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATUsageInformation_ExtIEs (?); - // type record SecondaryRATDataUsageReportTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecondaryRATDataUsageReportTransfer_ExtIEs (?); - // type record SecurityContext { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityContext_ExtIEs (?); - // type record SecurityIndication { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityIndication_ExtIEs ( - // type bitstring SecurityKey length (256); - // type record SecurityResult { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SecurityResult_ExtIEs (?); - // type record SensorMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSensorName) of SensorMeasConfigNameItem SensorMeasConfigNameList; - // type record SensorMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SensorMeasConfigNameItem_ExtIEs (?); - // type enumerated SensorMeasConfig { - // type union SensorNameConfig { - // type NGAP_Containers.NGAP_PROTOCOL_IES SensorNameConfig_ExtIEs (?); - // type bitstring SerialNumber length (16); - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of ServedGUAMIItem ServedGUAMIList; - // type record ServedGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServedGUAMIItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofEPLMNsPlusOne) of ServiceAreaInformation_Item ServiceAreaInformation; - // type record ServiceAreaInformation_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION ServiceAreaInformation_Item_ExtIEs (?); - // type enumerated ServiceType { - // type integer SgNB_UE_X2AP_ID (0 .. 4294967295); - // type record SharedNGU_MulticastTNLInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SharedNGU_MulticastTNLInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceOverloadItem SliceOverloadList; - // type record SliceOverloadItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceOverloadItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; - // type record SliceSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofSNSSAIforQMC) of SliceSupportQMC_Item SliceSupportListQMC; - // type record SliceSupportQMC_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SliceSupportQMC_Item_ExtIEs (?); - // type record SNPN_MobilityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SNPN_MobilityInformation_ExtIEs (?); - // type record S_NSSAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION S_NSSAI_ExtIEs (?); - // type record SONConfigurationTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONConfigurationTransfer_ExtIEs (?); - // type union SONInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformation_ExtIEs ( - // type record SONInformationReply { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SONInformationReply_ExtIEs (?); - // type union SONInformationReport { - // type NGAP_Containers.NGAP_PROTOCOL_IES SONInformationReport_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofSuccessfulHOReports) of SuccessfulHandoverReport_Item SuccessfulHandoverReportList; - // type record SuccessfulHandoverReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SuccessfulHandoverReport_Item_ExtIEs (?); - // type enumerated SONInformationRequest { - // type record SourceNGRANNode_ToTargetNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceNGRANNode_ToTargetNGRANNode_TransparentContainer_ExtIEs ( - // type union SourceNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_IES SourceNodeID_ExtIEs (?); - // type enumerated SourceOfUEActivityBehaviourInformation { - // type record SourceRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceRANNodeID_ExtIEs (?); - // type octetstring SourceToTarget_TransparentContainer; - // type record SourceToTarget_AMFInformationReroute { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SourceToTarget_AMFInformationReroute_ExtIEs (?); - // type enumerated SRVCCOperationPossible { - // type octetstring ConfiguredNSSAI length (128); - // type octetstring RejectedNSSAIinPLMN length (32); - // type octetstring RejectedNSSAIinTA length (32); - // type octetstring SST length (1); - // type record length (1 .. NGAP_Constants.maxnoofTACs) of SupportedTAItem SupportedTAList; - // type record SupportedTAItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION SupportedTAItem_ExtIEs ( - // type enumerated SuspendIndicator { - // type enumerated Suspend_Request_Indication { - // type enumerated Suspend_Response_Indication { - // type integer SurvivalTime ( + template ScheduledCommunicationTime mw_scheduledCommunicationTime( + template ScheduledCommunicationTime.dayofWeek p_dayofWeek := *, + template ScheduledCommunicationTime.timeofDayStart p_timeofDayStart := *, + template ScheduledCommunicationTime.timeofDayEnd p_timeofDayEnd := *, + template ScheduledCommunicationTime.iE_Extensions p_iE_Extensions := * + ) := { + dayofWeek := p_dayofWeek, + timeofDayStart := p_timeofDayStart, + timeofDayEnd := p_timeofDayEnd, + iE_Extensions := p_iE_Extensions + } // End of template mw_scheduledCommunicationTime + + template SecondaryRATUsageInformation mw_secondaryRATUsageInformation( + template PDUSessionUsageReport p_pDUSessionUsageReport := *, + template QoSFlowsUsageReportList p_qosFlowsUsageReportList := *, + template SecondaryRATUsageInformation.iE_Extension p_iE_Extensions := * + ) := { + pDUSessionUsageReport := p_pDUSessionUsageReport, + qosFlowsUsageReportList := p_qosFlowsUsageReportList, + iE_Extension := p_iE_Extensions + } // End of template mw_secondaryRATUsageInformation + + template SecondaryRATDataUsageReportTransfer mw_secondaryRATDataUsageReportTransfer( + template SecondaryRATUsageInformation p_secondaryRATUsageInformation := *, + template SecondaryRATDataUsageReportTransfer.iE_Extensions p_iE_Extensions := * + ) := { + secondaryRATUsageInformation := p_secondaryRATUsageInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_secondaryRATDataUsageReportTransfer + + template (present) SecurityContext mw_securityContext( + template (present) NextHopChainingCount p_nextHopChainingCount := ?, + template (present) SecurityKey p_nextHopNH := ?, + template SecurityContext.iE_Extensions p_iE_Extensions := * + ) := { + nextHopChainingCount := p_nextHopChainingCount, + nextHopNH := p_nextHopNH, + iE_Extensions := p_iE_Extensions + } // End of template mw_securityContext + + template (present) SecurityIndication mw_securityIndication( + template (present) IntegrityProtectionIndication p_integrityProtectionIndication := ?, + template (present) ConfidentialityProtectionIndication p_confidentialityProtectionIndication := ?, + template MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate_UL := *, + template SecurityIndication.iE_Extensions p_iE_Extensions := * + ) := { + integrityProtectionIndication := p_integrityProtectionIndication, + confidentialityProtectionIndication := p_confidentialityProtectionIndication, + maximumIntegrityProtectedDataRate_UL := p_maximumIntegrityProtectedDataRate_UL, + // The above IE shall be present if integrity protection is required or preferred + iE_Extensions := p_iE_Extensions + } // End of template mw_securityIndication + + template (present) SecurityIndication.iE_Extensions mw_securityIndication_id_MaximumIntegrityProtectedDataRate_DL( + template (present) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate := ? + ) := { + { + id := id_MaximumIntegrityProtectedDataRate_DL, + criticality := ignore, + extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } + } + } // End of template mw_securityIndication_id_MaximumIntegrityProtectedDataRate_DL + + template (present) SecurityResult mw_securityResult( + template (present) IntegrityProtectionResult p_integrityProtectionResult := ?, + template (present) ConfidentialityProtectionResult p_confidentialityProtectionResult := ?, + template SecurityResult.iE_Extensions p_iE_Extensions := * + ) := { + integrityProtectionResult := p_integrityProtectionResult, + confidentialityProtectionResult := p_confidentialityProtectionResult, + iE_Extensions := p_iE_Extensions + } // End of template mw_securityResult + + template (present) SensorMeasurementConfiguration mw_sensorMeasurementConfiguration( + template (present) SensorMeasConfig p_sensorMeasConfig := ?, + template SensorMeasConfigNameList p_sensorMeasConfigNameList := *, + template SensorMeasurementConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + sensorMeasConfig := p_sensorMeasConfig, + sensorMeasConfigNameList := p_sensorMeasConfigNameList, + iE_Extensions := p_iE_Extensions + } // End of template mw_sensorMeasurementConfiguration + + template (present) SensorMeasConfigNameItem mw_sensorMeasConfigNameItem( + template (present) SensorNameConfig p_sensorNameConfig := ?, + template SensorMeasConfigNameItem.iE_Extensions p_iE_Extensions := * + ) := { + sensorNameConfig := p_sensorNameConfig, + iE_Extensions := p_iE_Extensions + } // End of template mw_sensorMeasConfigNameItem + + template (present) SensorMeasConfig mw_sensorMeasConfig(template (present) SensorMeasConfig p_value := setup) := p_value; + + template (present) SensorNameConfig mw_sensorNameConfig_uncompensatedBarometricConfig( + template (present) SensorNameConfig.uncompensatedBarometricConfig p_uncompensatedBarometricConfig := true_ + ) := { + uncompensatedBarometricConfig := p_uncompensatedBarometricConfig + } // End of template mw_sensorNameConfig_uncompensatedBarometricConfig + + template (present) SensorNameConfig mw_sensorNameConfig_ueSpeedConfig( + template (present) SensorNameConfig.ueSpeedConfig p_ueSpeedConfig := true_ + ) := { + ueSpeedConfig := p_ueSpeedConfig + } // End of template mw_sensorNameConfig_ueSpeedConfig + + template (present) SensorNameConfig mw_sensorNameConfig_ueOrientationConfig( + template (present) SensorNameConfig.ueOrientationConfig p_ueOrientationConfig := true_ + ) := { + ueOrientationConfig := p_ueOrientationConfig + } // End of template mw_sensorNameConfig_ueOrientationConfig + + template (present) SensorNameConfig mw_sensorNameConfig_choice_Extensions( + template (present) SensorNameConfig.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_sensorNameConfig_choice_Extensions + + template (present) ServedGUAMIItem mw_servedGUAMIItem( + template (present) GUAMI p_gUAMI := ?, + template AMFName p_backupAMFName := *, + template ServedGUAMIItem.iE_Extensions p_iE_Extensions := * + ) := { + gUAMI := p_gUAMI, + backupAMFName := p_backupAMFName, + iE_Extensions := p_iE_Extensions + } // End of template mw_servedGUAMIItem + + template (present) ServedGUAMIItem.iE_Extensions mw_servedGUAMIItemw_id_GUAMIType( + template (present) GUAMIType p_gUAMIType := ? + ) := { + { + id := id_GUAMIType, + criticality := ignore, + extensionValue := { GUAMIType := p_gUAMIType } + } + } // End of template mw_servedGUAMIItemw_id_GUAMIType + + template (present) ServiceAreaInformation_Item mw_serviceAreaInformation_Item( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template AllowedTACs p_allowedTACs := *, + template NotAllowedTACs p_notAllowedTACs := *, + template ServiceAreaInformation_Item.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + allowedTACs := p_allowedTACs, + notAllowedTACs := p_notAllowedTACs, + iE_Extensions := p_iE_Extensions + } // End of template mw_serviceAreaInformation_Item + + template (present) ServiceType mw_serviceType(template (present) ServiceType p_value := streaming) := p_value; + + template (present) SharedNGU_MulticastTNLInformation mw_sharedNGU_MulticastTNLInformation( + template (present) TransportLayerAddress p_iP_MulticastAddress := ?, + template (present) TransportLayerAddress p_iP_SourceAddress := ?, + template (present) GTP_TEID p_gTP_TEID := ?, + template SharedNGU_MulticastTNLInformation.iE_Extensions p_iE_Extensions := * + ) := { + iP_MulticastAddress := p_iP_MulticastAddress, + iP_SourceAddress := p_iP_SourceAddress, + gTP_TEID := p_gTP_TEID, + iE_Extensions := p_iE_Extensions + } // End of template mw_sharedNGU_MulticastTNLInformation + + template (present) SliceOverloadItem mw_sliceOverloadItem( + template (present) S_NSSAI p_s_NSSAI := ?, + template SliceOverloadItem.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_sliceOverloadItem + + template (present) SliceSupportItem mw_sliceSupportItem( + template (present) S_NSSAI p_s_NSSAI := ?, + template SliceSupportItem.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_sliceSupportItem + + template (present) SliceSupportQMC_Item mw_sliceSupportQMC_Item( + template (present) S_NSSAI p_s_NSSAI := ?, + template SliceSupportQMC_Item.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_sliceSupportQMC_Item + + template (present) SNPN_MobilityInformation mw_sNPN_MobilityInformation( + template (present) NID p_serving_NID := ?, + template SNPN_MobilityInformation.iE_Extensions p_iE_Extensions := * + ) := { + serving_NID := p_serving_NID, + iE_Extensions := p_iE_Extensions + } // End of template mw_sNPN_MobilityInformation + + template (present) S_NSSAI mw_s_NSSAI( + template (present) SST p_sST := ?, + template SD p_sD := *, + template S_NSSAI.iE_Extensions p_iE_Extensions := * + ) := { + sST := p_sST, + sD := p_sD, + iE_Extensions := p_iE_Extensions + } // End of template mw_s_NSSAI + + template (present) SONConfigurationTransfer mw_sONConfigurationTransfer( + template (present) TargetRANNodeID_SON p_targetRANNodeID_SON := ?, + template (present) SourceRANNodeID p_sourceRANNodeID := ?, + template (present) SONInformation p_sONInformation := ?, + template XnTNLConfigurationInfo p_xnTNLConfigurationInfo := *, + template SONConfigurationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + targetRANNodeID_SON := p_targetRANNodeID_SON, + sourceRANNodeID := p_sourceRANNodeID, + sONInformation := p_sONInformation, + xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, + // The above IE shall be present if the SON Information IE contains the SON Information Request IE set to “Xn TNL Configuration Info” + iE_Extensions := p_iE_Extensions + } // End of template mw_sONConfigurationTransfer + + template (present) SONInformation mw_sONInformation_sONInformationRequest( + template (present) SONInformationRequest p_sONInformationRequest := ? + ) := { + sONInformationRequest := p_sONInformationRequest + } // End of template mw_sONInformation_sONInformationRequest + + template (present) SONInformation mw_sONInformation_sONInformationReply( + template (present) SONInformationReply p_sONInformationReply := ? + ) := { + sONInformationReply := p_sONInformationReply + } // End of template mw_sONInformation_sONInformationReply + + template (present) SONInformation mw_sONInformation_choice_Extensions( + template (present) SONInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_sONInformation_choice_Extensions + + template (present) SONInformation.choice_Extensions mw_sONInformatio_id_SONInformationReport( + template (present) SONInformationReport p_sONInformationReport := ? + ) := { + id := id_SONInformationReport, + criticality := ignore, + value_ := { SONInformationReport := p_sONInformationReport } + } // End of template mw_sONInformatio_id_SONInformationReport + + template SONInformationReply mw_sONInformationReply( + template XnTNLConfigurationInfo p_xnTNLConfigurationInfo := *, + template SONInformationReply.iE_Extensions p_iE_Extensions := * + ) := { + xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, + iE_Extensions := p_iE_Extensions + } // End of template mw_sONInformationReply + + template (present) SONInformationReport mw_sONInformationReport_failureIndicationInformation( + template (present) FailureIndication p_failureIndicationInformation := ? + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template mw_sONInformationReport_failureIndicationInformation + + template (present) SONInformationReport mw_sONInformationReport_hOReportInformation( + template (present) HOReport p_hOReportInformation := ? + ) := { + hOReportInformation := p_hOReportInformation + } // End of template mw_sONInformationReport_hOReportInformation + + template (present) SONInformationReport mw_sONInformationReport_choice_Extensions( + template (present) SONInformationReport.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_sONInformationReport_choice_Extensions + + template (present) SONInformationReport.choice_Extensions mw_sONInformationReport_id_SONInformationReport( + template (present) SuccessfulHandoverReportList p_successfulHandoverReportList := ? + ) := { + id := id_SONInformationReport, + criticality := ignore, + value_ := { SuccessfulHandoverReportList := p_successfulHandoverReportList } + } // End of template mw_sONInformationReport_id_SONInformationReport + + template (present) SuccessfulHandoverReport_Item mw_successfulHandoverReport_Item( + template (present) octetstring p_successfulHOReportContainer := ?, + template SuccessfulHandoverReport_Item.iE_Extensions p_iE_Extensions := * + ) := { + successfulHOReportContainer := p_successfulHOReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_successfulHandoverReport_Item + + template (present) SONInformationRequest mw_sONInformationRequest(template (present) SONInformationRequest p_value := ?) := p_value; + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer( + template (present) NGRAN_CGI p_targetCell_ID := ?, + template (present) RRCContainer p_rRCContainer := ?, + template (present) UEHistoryInformation p_uEHistoryInformation := ?, + template PDUSessionResourceInformationList p_pDUSessionResourceInformationList := *, + template E_RABInformationList p_e_RABInformationList := *, + template IndexToRFSP p_indexToRFSP := *, + template SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := * + ):= { + rRCContainer := p_rRCContainer, + pDUSessionResourceInformationList := p_pDUSessionResourceInformationList, + e_RABInformationList := p_e_RABInformationList, + targetCell_ID := p_targetCell_ID, + indexToRFSP := p_indexToRFSP, + uEHistoryInformation := p_uEHistoryInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID( + template (present) SgNB_UE_X2AP_ID p_sgNB_UE_X2AP_ID := ? + ) := { + { + id := id_SgNB_UE_X2AP_ID, + criticality := ignore, + extensionValue := { SgNB_UE_X2AP_ID := p_sgNB_UE_X2AP_ID } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE( + template (present) UEHistoryInformationFromTheUE p_uEHistoryInformationFromTheUE := ? + ) := { + { + id := id_UEHistoryInformationFromTheUE, + criticality := ignore, + extensionValue := { UEHistoryInformationFromTheUE := p_uEHistoryInformationFromTheUE } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID( + template (present) SourceNodeID p_sourceNodeID := ? + ) := { + { + id := id_SourceNodeID, + criticality := ignore, + extensionValue := { SourceNodeID := p_sourceNodeID } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource( + template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ? + ) := { + { + id := id_UEContextReferenceAtSource, + criticality := ignore, + extensionValue := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList( + template (present) MBS_ActiveSessionInformation_SourcetoTargetList p_mBS_ActiveSessionInformation_SourcetoTargetListD := ? + ) := { + { + id := id_MBS_ActiveSessionInformation_SourcetoTargetList, + criticality := ignore, + extensionValue := { MBS_ActiveSessionInformation_SourcetoTargetList := p_mBS_ActiveSessionInformation_SourcetoTargetListD } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo( + template (present) QMCConfigInfo p_qMCConfigInfo := ? + ) := { + { + id := id_QMCConfigInfo, + criticality := ignore, + extensionValue := { QMCConfigInfo := p_qMCConfigInfo } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList( + template (present) NGAPIESupportInformationRequestList p_nGAPIESupportInformationRequestList := ? + ) := { + { + id := id_NGAPIESupportInformationRequestList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationRequestList := p_nGAPIESupportInformationRequestList } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList + + template (present) SourceNodeID mw_sourceNodeID_sourceengNB_ID( + template (present) GlobalGNB_ID p_sourceengNB_ID := ? + ) := { + sourceengNB_ID := p_sourceengNB_ID + } // End of template mw_sourceNodeID_sourceengNB_ID + + template (present) SourceNodeID mw_sourceNodeID_choice_Extensions( + template (present) SourceNodeID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_sourceNodeID_choice_Extensions + + template (present) SourceOfUEActivityBehaviourInformation mw_sourceOfUEActivityBehaviourInformation(template (present) SourceOfUEActivityBehaviourInformation p_value := ?) := p_value; + + template (present) SourceRANNodeID mw_sourceRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template SourceRANNodeID.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_sourceRANNodeID + + // This IE includes a transparent container from the source RAN node to the target RAN node. + // The octets of the OCTET STRING are encoded according to the specifications of the target system. + + template SourceToTarget_AMFInformationReroute mw_sourceToTarget_AMFInformationReroute( + template ConfiguredNSSAI p_configuredNSSAI := *, + template RejectedNSSAIinPLMN p_rejectedNSSAIinPLMN := *, + template RejectedNSSAIinTA p_rejectedNSSAIinTA := *, + template SourceToTarget_AMFInformationReroute.iE_Extensions p_iE_Extensions := * + ) := { + configuredNSSAI := p_configuredNSSAI, + rejectedNSSAIinPLMN := p_rejectedNSSAIinPLMN, + rejectedNSSAIinTA := p_rejectedNSSAIinTA, + iE_Extensions := p_iE_Extensions + } // End of template mw_sourceToTarget_AMFInformationReroute + + // This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF. + // The octets of the OCTET STRING are encoded according to the specifications of the Core network. + + template (present) SRVCCOperationPossible mw_sRVCCOperationPossible(template (present) SRVCCOperationPossible p_value := ?) := p_value; + + template (present) SupportedTAItem mw_supportedTAItem( + template (present) TAC p_tAC := ?, + template (present) BroadcastPLMNList p_broadcastPLMNList := ?, + template SupportedTAItem.iE_Extensions p_iE_Extensions := * + ) := { + tAC := p_tAC, + broadcastPLMNList := p_broadcastPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template mw_supportedTAItem + + template (present) SupportedTAItem.iE_Extensions mw_supportedTAItemw_id_ConfiguredTACIndication( + template (present) ConfiguredTACIndication p_configuredTACIndication := ? + ) := { + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + } + } // End of template mw_supportedTAItemw_id_ConfiguredTACIndication + + template (present) SupportedTAItem.iE_Extensions mw_supportedTAItemw_id_RAT_Information( + template (present) RAT_Information p_rAT_Information := ? + ) := { + { + id := id_RAT_Information, + criticality := reject, + extensionValue := { RAT_Information := p_rAT_Information } + } + } // End of template mw_supportedTAItemw_id_RAT_Information + + template (present) SuspendIndicator mw_suspendIndicator(template (present) SuspendIndicator p_value := true_) := p_value; + + template (present) Suspend_Request_Indication mw_suspend_Request_Indication(template (present) Suspend_Request_Indication p_value := suspend_requested) := p_value; + + template (present) Suspend_Response_Indication mw_suspend_Response_Indication(template (present) Suspend_Response_Indication p_value := suspend_indicated) := p_value; + // type octetstring TAC length (3); // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; // type record TAI { -- GitLab From ec65ea25252e52cf544bdd9f351212d0f40d8ad3 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 29 Feb 2024 15:16:19 +0100 Subject: [PATCH 145/365] TTF T033: Implement ASN.1 send/receive templates t --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 6 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1063 ++++++++++++++++++----- 2 files changed, 866 insertions(+), 203 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index d9334eb..d624127 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -68,7 +68,7 @@ module NGAP_TestCases { m_additionalDLUPTNLInformationForHOItem( m_ie_uPTLInf( m_ie_gTPTunnel( - m_ie_tla, + '0'B, m_ie_gtpTeId )), { m_qosFlowItemWithDataForwarding( @@ -81,7 +81,7 @@ module NGAP_TestCases { m_additionalDLUPTNLInformationForHOItem( m_ie_uPTLInf( m_ie_gTPTunnel( - m_ie_tla, + '0'B, m_ie_gtpTeId )), { m_qosFlowItemWithDataForwarding( @@ -95,7 +95,7 @@ module NGAP_TestCases { m_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( m_ie_uPTLInf( m_ie_gTPTunnel( - m_ie_tla, + '0'B, m_ie_gtpTeId ))))); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 6c0dbcd..c8d3f7f 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -7463,110 +7463,439 @@ module LibNGAP_Templates { template (value) Suspend_Response_Indication m_suspend_Response_Indication(in Suspend_Response_Indication p_value := suspend_indicated) := p_value; + template (omit) TAI m_tAI( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) TAC p_tAC, + in template (omit) TAI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + tAC := p_tAC, + iE_Extensions := p_iE_Extensions + } // End of template m_tAI + + template (omit) TAIBroadcastEUTRA_Item m_tAIBroadcastEUTRA_Item( + in template (value) TAI p_tAI, + in template (value) CompletedCellsInTAI_EUTRA p_completedCellsInTAI_EUTRA, + in template (omit) TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + completedCellsInTAI_EUTRA := p_completedCellsInTAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIBroadcastEUTRA_Item + + template (omit) TAIBroadcastNR_Item m_tAIBroadcastNR_Item( + in template (value) TAI p_tAI, + in template (value) CompletedCellsInTAI_NR p_completedCellsInTAI_NR, + in template (omit) TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + completedCellsInTAI_NR := p_completedCellsInTAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIBroadcastNR_Item + + template (omit) TAICancelledEUTRA_Item m_tAICancelledEUTRA_Item( + in template (value) TAI p_tAI, + in template (value) CancelledCellsInTAI_EUTRA p_cancelledCellsInTAI_EUTRA, + in template (omit) TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + cancelledCellsInTAI_EUTRA := p_cancelledCellsInTAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_tAICancelledEUTRA_Item + + template (omit) TAICancelledNR_Item m_tAICancelledNR_Item( + in template (value) TAI p_tAI, + in template (value) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR, + in template (omit) TAICancelledNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + cancelledCellsInTAI_NR := p_cancelledCellsInTAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template m_tAICancelledNR_Item + + template (omit) TAIListForInactiveItem m_tAIListForInactiveItem( + in template (value) TAI p_tAI, + in template (omit) TAIListForInactiveItem.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIListForInactiveItem + + template (omit) TAIListForPagingItem m_tAIListForPagingItem( + in template (value) TAI p_tAI, + in template (omit) TAIListForPagingItem.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIListForPagingItem + + template (omit) TAINSAGSupportItem m_tAINSAGSupportItem( + in template (value) NSAG_ID p_nSAG_ID, + in template (value) ExtendedSliceSupportList p_nSAGSliceSupportList, + in template (omit) TAINSAGSupportItem.iE_Extensions p_iE_Extensions := omit + ) := { + nSAG_ID := p_nSAG_ID, + nSAGSliceSupportList := p_nSAGSliceSupportList, + iE_Extensions := p_iE_Extensions + } // End of template m_tAINSAGSupportItem + + template (omit) TargeteNB_ID m_targeteNB_ID( + in template (value) GlobalNgENB_ID p_globalENB_ID, + in template (value) EPS_TAI p_selected_EPS_TAI, + in template (omit) TargeteNB_ID.iE_Extensions p_iE_Extensions := omit + ) := { + globalENB_ID := p_globalENB_ID, + selected_EPS_TAI := p_selected_EPS_TAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targeteNB_ID + + template (omit) TargetHomeENB_ID m_targetHomeENB_ID( + in template (value) PLMNIdentity p_pLMNidentity, + in template (value) TargetHomeENB_ID.homeENB_ID p_homeENB_ID, + in template (value) EPS_TAI p_selected_EPS_TAI, + in template (omit) TargetHomeENB_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNidentity := p_pLMNidentity, + homeENB_ID := p_homeENB_ID, + selected_EPS_TAI := p_selected_EPS_TAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetHomeENB_ID + + template (value) TargetID m_targetID_targetRANNodeID( + in template (value) TargetRANNodeID p_targetRANNodeID + ) := { + targetRANNodeID := p_targetRANNodeID + } // End of template m_targetID_targetRANNodeID + + template (value) TargetID m_targetID_targeteNB_ID( + in template (value) TargeteNB_ID p_targeteNB_ID + ) := { + targeteNB_ID := p_targeteNB_ID + } // End of template m_targetID_targeteNB_ID + + template (value) TargetID m_targetID_choice_Extensions( + in template (value) TargetID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_targetID_choice_Extensions + + template (value) TargetID.choice_Extensions m_targetID_id_TargetRNC_ID( + in template (value) TargetRNC_ID p_targetRNC_ID + ) := { + id := id_TargetRNC_ID, + criticality := reject, + value_ := { TargetRNC_ID := p_targetRNC_ID } + } // End of template m_sONInformationReport_id_SONInformationReport + template (value) TargetID.choice_Extensions m_targetID_id_TargetHomeENB_ID( + in template (value) TargetHomeENB_ID p_targetHomeENB_ID + ) := { + id := id_TargetHomeENB_ID, + criticality := reject, + value_ := { TargetHomeENB_ID := p_targetHomeENB_ID } + } // End of template m_sONInformationReport_id_TargetHomeENB_ID + + template (omit) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer( + in template (value) RRCContainer p_rRCContainer, + in template (omit) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := omit + ) := { + rRCContainer := p_rRCContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer + + template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList( + in template (value) DAPSResponseInfoList p_dAPSResponseInfoList + ) := { + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList + + template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability( + in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability + ) := { + { + id := id_DirectForwardingPathAvailability, + criticality := ignore, + extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability + + template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList( + in template (value) MBS_ActiveSessionInformation_TargettoSourceList p_mBS_ActiveSessionInformation_TargettoSourceList + ) := { + { + id := id_MBS_ActiveSessionInformation_TargettoSourceList, + criticality := ignore, + extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList + template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList( + in template (value) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList + ) := { + { + id := id_NGAPIESupportInformationResponseList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList + + template (omit) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer( + in template (omit) Cell_CAGInformation p_cell_CAGInformation := omit, + in template (omit) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions p_iE_Extensions := omit + ) := { + cell_CAGInformation := p_cell_CAGInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer + + template (value) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList( + in template (value) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList + ) := { + { + id := id_NGAPIESupportInformationResponseList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList + + template (omit) TargetNSSAI_Item m_targetNSSAI_Item( + in template (value) S_NSSAI p_s_NSSAI, + in template (omit) TargetNSSAI_Item.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetNSSAI_Item + + template (omit) TargetNSSAIInformation m_targetNSSAIInformation( + in template (value) TargetNSSAI p_targetNSSAI, + in template (value) IndexToRFSP p_indexToRFSP, + in template (omit) TargetNSSAIInformation.iE_Extensions p_iE_Extensions := omit + ) := { + targetNSSAI := p_targetNSSAI, + indexToRFSP := p_indexToRFSP, + iE_Extensions := p_iE_Extensions + } // End of template m_targetNSSAIInformation + + template (omit) TargetRANNodeID m_targetRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) TargetRANNodeID.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetRANNodeID + + template (omit) TargetRANNodeID_RIM m_targetRANNodeID_RIM( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) TargetRANNodeID_RIM.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetRANNodeID_RIM + + template (omit) TargetRANNodeID_SON m_targetRANNodeID_SON( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) TargetRANNodeID_SON.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetRANNodeID_SON + + template (value) TargetRANNodeID_SON.iE_Extensions m_targetRANNodeID_SON_id_NR_CGI( + in template (value) NR_CGI p_nR_CGI + ) := { + { + id := id_NR_CGI, + criticality := ignore, + extensionValue := { NR_CGI := p_nR_CGI } + } + } // End of template m_targetRANNodeID_SON_id_NR_CGI + + template (omit) TargetRNC_ID m_targetRNC_ID( + in template (value) LAI p_lAI, + in template (value) RNC_ID p_rNC_ID, + in template (omit) ExtendedRNC_ID p_extendedRNC_ID := omit, + in template (omit) TargetRNC_ID.iE_Extensions p_iE_Extensions := omit + ) := { + lAI := p_lAI, + rNC_ID := p_rNC_ID, + extendedRNC_ID := p_extendedRNC_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_targetRNC_ID + + template (value) TimerApproachForGUAMIRemoval m_timerApproachForGUAMIRemoval(in TimerApproachForGUAMIRemoval p_value := apply_timer) := p_value; + + template (omit) TimeSyncAssistanceInfo m_timeSyncAssistanceInfo( + in template (value) TimeSyncAssistanceInfo.timeDistributionIndication p_timeDistributionIndication := enabled, + in template (omit) TimeSyncAssistanceInfo.uUTimeSyncErrorBudget p_uUTimeSyncErrorBudget := omit, + in template (omit) TimeSyncAssistanceInfo.iE_Extensions p_iE_Extensions := omit + ) := { + timeDistributionIndication := p_timeDistributionIndication, + uUTimeSyncErrorBudget := p_uUTimeSyncErrorBudget, + // The above IE shall be present if the Time Distribution Indication IE is set to the value “enabled” + iE_Extensions := p_iE_Extensions + } // End of template m_timeSyncAssistanceInfo + + template (value) TimeToWait m_timeToWait(in TimeToWait p_value := v1s) := p_value; + + template (value) TNGF_ID m_tNGF_ID_tNGF_ID( + in template (value) TNGF_ID.tNGF_ID p_tNGF_ID + ) := { + tNGF_ID := p_tNGF_ID + } // End of template m_tNGF_ID_tNGF_ID + + template (value) TNGF_ID m_tNGF_ID_choice_Extensions( + in template (value) TNGF_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_tNGF_ID_choice_Extensions + + template (omit) TNLAssociationItem m_tNLAssociationItem( + in template (value) CPTransportLayerInformation p_tNLAssociationAddress, + in template (value) Cause p_cause, + in template (omit) TNLAssociationItem.iE_Extensions p_iE_Extensions := omit + ) := { + tNLAssociationAddress := p_tNLAssociationAddress, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_tNLAssociationItem + + template (value) TNLAssociationUsage m_TNLAssociationUsage(in TNLAssociationUsage p_value := ue) := p_value; + + template (omit) TooearlyIntersystemHO m_tooearlyIntersystemHO( + in template (value) EUTRA_CGI p_sourcecellID, + in template (value) NGRAN_CGI p_failurecellID, + in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, + in template (omit) TooearlyIntersystemHO.iE_Extensions p_iE_Extensions := omit + ) := { + sourcecellID := p_sourcecellID, + failurecellID := p_failurecellID, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_tooearlyIntersystemHO + + template (omit) TraceActivation m_traceActivation( + in template (value) NGRANTraceID p_nGRANTraceID, + in template (value) InterfacesToTrace p_interfacesToTrace, + in template (value) TraceDepth p_traceDepth, + in template (value) TransportLayerAddress p_traceCollectionEntityIPAddress, + in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit + ) := { + nGRANTraceID := p_nGRANTraceID, + interfacesToTrace := p_interfacesToTrace, + traceDepth := p_traceDepth, + traceCollectionEntityIPAddress := p_traceCollectionEntityIPAddress, + iE_Extensions := p_iE_Extensions + } // End of template m_traceActivation + + template (value) TraceActivation.iE_Extensions m_traceActivation_id_MDTConfiguration( + in template (value) MDT_Configuration p_mDT_Configuration + ) := { + { + id := id_MDTConfiguration, + criticality := ignore, + extensionValue := { MDT_Configuration := p_mDT_Configuration } + } + } // End of template m_traceActivation_id_MDTConfiguration + + template (value) TraceActivation.iE_Extensions m_traceActivation_id_TraceCollectionEntityURI( + in template (value) URI_address p_uRI_address + ) := { + { + id := id_TraceCollectionEntityURI, + criticality := ignore, + extensionValue := { URI_address := p_uRI_address } + } + } // End of template m_traceActivation_id_TraceCollectionEntityURI + + template (value) TraceDepth m_traceDepth(in TraceDepth p_value := minimum) := p_value; + + template (value) TypeOfError m_typeOfError(in TypeOfError p_value := not_understood) := p_value; + + template (omit) TAIBasedMDT m_tAIBasedMDT( + in template (value) TAIListforMDT p_tAIListforMDT, + in template (omit) TAIBasedMDT.iE_Extensions p_iE_Extensions := omit + ) := { + tAIListforMDT := p_tAIListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIBasedMDT + + template (omit) TAIBasedQMC m_tAIBasedQMC( + in template (value) TAIListforQMC p_tAIListforQMC, + in template (omit) TAIBasedQMC.iE_Extensions p_iE_Extensions := omit + ) := { + tAIListforQMC := p_tAIListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIBasedQMC + + template (omit) TABasedQMC m_tABasedQMC( + in template (value) TAListforQMC p_tAListforQMC, + in template (omit) TABasedQMC.iE_Extensions p_iE_Extensions := omit + ) := { + tAListforQMC := p_tAListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template m_tABasedQMC + + template (omit) TABasedMDT m_tABasedMDT( + in template (value) TAListforMDT p_tAListforMDT, + in template (omit) TABasedMDT.iE_Extensions p_iE_Extensions := omit + ) := { + tAListforMDT := p_tAListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_tABasedMDT + + template (value) TimeToTrigger m_timeToTrigger(in TimeToTrigger p_value := ms0) := p_value; + + template (value) TWIF_ID m_tWIF_ID_tWIF_ID( + in template (value) TWIF_ID.tWIF_ID p_tWIF_ID + ) := { + tWIF_ID := p_tWIF_ID + } // End of template m_tWIF_ID_tWIF_ID + + template (value) TWIF_ID m_tWIF_ID_choice_Extensions( + in template (value) TWIF_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_tWIF_ID_choice_Extensions + + template (omit) TSCAssistanceInformation m_tSCAssistanceInformation( + in template (value) Periodicity p_periodicity, + in template (omit) BurstArrivalTime p_burstArrivalTime := omit, + in template (omit) TSCAssistanceInformation.iE_Extensions p_iE_Extensions := omit + ) := { + periodicity := p_periodicity, + burstArrivalTime := p_burstArrivalTime, + iE_Extensions := p_iE_Extensions + } // End of template m_tSCAssistanceInformation + + template (value) TSCAssistanceInformation.iE_Extensions m_tSCAssistanceInformation_id_SurvivalTime( + in template (value) SurvivalTime p_survivalTime + ) := { + { + id := id_SurvivalTime, + criticality := ignore, + extensionValue := { SurvivalTime := p_survivalTime } + } + } // End of template m_tSCAssistanceInformation_id_SurvivalTime + + template (omit) TSCTrafficCharacteristics m_tSCTrafficCharacteristics( + in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationDL := omit, + in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationUL := omit, + in template (omit) TSCTrafficCharacteristics.iE_Extensions p_iE_Extensions := omit + ) := { + tSCAssistanceInformationDL := p_tSCAssistanceInformationDL, + tSCAssistanceInformationUL := p_tSCAssistanceInformationUL, + iE_Extensions := p_iE_Extensions + } // End of template m_tSCTrafficCharacteristics - // type octetstring TAC length (3); - // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; - // type record TAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; - // type record TAIBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; - // type record TAIBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; - // type record TAICancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; - // type record TAICancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; - // type record TAIListForInactiveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; - // type record TAIListForPagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; - // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; - // type record TAINSAGSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); - // type record TargeteNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); - // type record TargetHomeENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); - // type union TargetID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; - // type record TargetNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); - // type record TargetNSSAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); - // type record TargetRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); - // type record TargetRANNodeID_RIM { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); - // type record TargetRANNodeID_SON { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( - // type record TargetRNC_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); - // type octetstring TargetToSource_TransparentContainer; - // type octetstring TargettoSource_Failure_TransparentContainer; - // type enumerated TimerApproachForGUAMIRemoval { - // type octetstring TimeStamp length (4); - // type record TimeSyncAssistanceInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); - // type enumerated TimeToWait { - // type integer TimeUEStayedInCell (0 .. 4095); - // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); - // type octetstring TMGI length (6); - // type octetstring TNAP_ID; - // type union TNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); - // type integer TNLAddressWeightFactor (0 .. 255); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; - // type record TNLAssociationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); - // type enumerated TNLAssociationUsage { - // type record TooearlyIntersystemHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); - // type record TraceActivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( - // type enumerated TraceDepth { - // type integer TrafficLoadReductionIndication (1 .. 99); - - template (value) TransportLayerAddress m_ie_tla(in bitstring p_val := '0'B) := p_val; - - // type enumerated TypeOfError { - // type record TAIBasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; - // type record TAIBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; - // type record TABasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; - // type record TABasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; - // type integer Threshold_RSRP (0 .. 127); - // type integer Threshold_RSRQ (0 .. 127); - // type integer Threshold_SINR (0 .. 127); - // type enumerated TimeToTrigger { - // type octetstring TWAP_ID; - // type union TWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); - // type record TSCAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( - // type record TSCTrafficCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); // type record UEAggregateMaximumBitRate { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; @@ -13921,105 +14250,439 @@ module LibNGAP_Templates { template (present) Suspend_Response_Indication mw_suspend_Response_Indication(template (present) Suspend_Response_Indication p_value := suspend_indicated) := p_value; - // type octetstring TAC length (3); - // type record length (1 .. NGAP_Constants.maxnoofTACsinNTN) of TAC TACListInNRNTN; - // type record TAI { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAI_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastEUTRA_Item TAIBroadcastEUTRA; - // type record TAIBroadcastEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAIBroadcastNR_Item TAIBroadcastNR; - // type record TAIBroadcastNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBroadcastNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledEUTRA_Item TAICancelledEUTRA; - // type record TAICancelledEUTRA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledEUTRA_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAICancelledNR_Item TAICancelledNR; - // type record TAICancelledNR_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAICancelledNR_Item_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforInactive) of TAIListForInactiveItem TAIListForInactive; - // type record TAIListForInactiveItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForInactiveItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforPaging) of TAIListForPagingItem TAIListForPaging; - // type record TAIListForPagingItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIListForPagingItem_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAIforRestart) of TAI TAIListForRestart; - // type record length (1 .. NGAP_Constants.maxnoofTAIforWarning) of TAI TAIListForWarning; - // type record length (1 .. NGAP_Constants.maxnoofNSAGs) of TAINSAGSupportItem TAINSAGSupportList; - // type record TAINSAGSupportItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAINSAGSupportItem_ExtIEs (?); - // type record TargeteNB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargeteNB_ID_ExtIEs (?); - // type record TargetHomeENB_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetHomeENB_ID_ExtIEs (?); - // type union TargetID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TargetID_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_TransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_TransparentContainer_ExtIEs ( - // type record TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofTargetS_NSSAIs) of TargetNSSAI_Item TargetNSSAI; - // type record TargetNSSAI_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAI_Item_ExtIEs (?); - // type record TargetNSSAIInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetNSSAIInformation_Item_ExtIEs (?); - // type record TargetRANNodeID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_ExtIEs (?); - // type record TargetRANNodeID_RIM { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_RIM_ExtIEs (?); - // type record TargetRANNodeID_SON { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRANNodeID_SON_ExtIEs ( - // type record TargetRNC_ID { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TargetRNC_ID_ExtIEs (?); - // type octetstring TargetToSource_TransparentContainer; - // type octetstring TargettoSource_Failure_TransparentContainer; - // type enumerated TimerApproachForGUAMIRemoval { - // type octetstring TimeStamp length (4); - // type record TimeSyncAssistanceInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TimeSyncAssistanceInfo_ExtIEs (?); - // type enumerated TimeToWait { - // type integer TimeUEStayedInCell (0 .. 4095); - // type integer TimeUEStayedInCellEnhancedGranularity (0 .. 40950); - // type octetstring TMGI length (6); - // type octetstring TNAP_ID; - // type union TNGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TNGF_ID_ExtIEs (?); - // type integer TNLAddressWeightFactor (0 .. 255); - // type record length (1 .. NGAP_Constants.maxnoofTNLAssociations) of TNLAssociationItem TNLAssociationList; - // type record TNLAssociationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TNLAssociationItem_ExtIEs (?); - // type enumerated TNLAssociationUsage { - // type record TooearlyIntersystemHO { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TooearlyIntersystemHO_ExtIEs (?); - // type record TraceActivation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TraceActivation_ExtIEs ( - // type enumerated TraceDepth { - // type integer TrafficLoadReductionIndication (1 .. 99); - template (present) TransportLayerAddress mw_ie_tla(template (present) bitstring p_val := ?) := p_val; - // type enumerated TypeOfError { - // type record TAIBasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAI TAIListforMDT; - // type record TAIBasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TAIBasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAI TAIListforQMC; - // type record TABasedQMC { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedQMC_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforQMC) of TAC TAListforQMC; - // type record TABasedMDT { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TABasedMDT_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTAforMDT) of TAC TAListforMDT; - // type integer Threshold_RSRP (0 .. 127); - // type integer Threshold_RSRQ (0 .. 127); - // type integer Threshold_SINR (0 .. 127); - // type enumerated TimeToTrigger { - // type octetstring TWAP_ID; - // type union TWIF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES TWIF_ID_ExtIEs (?); - // type record TSCAssistanceInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCAssistanceInformation_ExtIEs ( - // type record TSCTrafficCharacteristics { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION TSCTrafficCharacteristics_ExtIEs (?); + template (present) TAI mw_tAI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TAC p_tAC := ?, + template TAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tAC := p_tAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAI + + template (present) TAIBroadcastEUTRA_Item mw_tAIBroadcastEUTRA_Item( + template (present) TAI p_tAI := ?, + template (present) CompletedCellsInTAI_EUTRA p_completedCellsInTAI_EUTRA := ?, + template TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + completedCellsInTAI_EUTRA := p_completedCellsInTAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIBroadcastEUTRA_Item + + template (present) TAIBroadcastNR_Item mw_tAIBroadcastNR_Item( + template (present) TAI p_tAI := ?, + template (present) CompletedCellsInTAI_NR p_completedCellsInTAI_NR := ?, + template TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + completedCellsInTAI_NR := p_completedCellsInTAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIBroadcastNR_Item + + template (present) TAICancelledEUTRA_Item mw_tAICancelledEUTRA_Item( + template (present) TAI p_tAI := ?, + template (present) CancelledCellsInTAI_EUTRA p_cancelledCellsInTAI_EUTRA := ?, + template TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + cancelledCellsInTAI_EUTRA := p_cancelledCellsInTAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAICancelledEUTRA_Item + + template (present) TAICancelledNR_Item mw_tAICancelledNR_Item( + template (present) TAI p_tAI := ?, + template (present) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR := ?, + template TAICancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + cancelledCellsInTAI_NR := p_cancelledCellsInTAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAICancelledNR_Item + + template (present) TAIListForInactiveItem mw_tAIListForInactiveItem( + template (present) TAI p_tAI := ?, + template TAIListForInactiveItem.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIListForInactiveItem + + template (present) TAIListForPagingItem mw_tAIListForPagingItem( + template (present) TAI p_tAI := ?, + template TAIListForPagingItem.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIListForPagingItem + + template (present) TAINSAGSupportItem mw_tAINSAGSupportItem( + template (present) NSAG_ID p_nSAG_ID := ?, + template (present) ExtendedSliceSupportList p_nSAGSliceSupportList := ?, + template TAINSAGSupportItem.iE_Extensions p_iE_Extensions := * + ) := { + nSAG_ID := p_nSAG_ID, + nSAGSliceSupportList := p_nSAGSliceSupportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAINSAGSupportItem + + template (present) TargeteNB_ID mw_targeteNB_ID( + template (present) GlobalNgENB_ID p_globalENB_ID := ?, + template (present) EPS_TAI p_selected_EPS_TAI := ?, + template TargeteNB_ID.iE_Extensions p_iE_Extensions := * + ) := { + globalENB_ID := p_globalENB_ID, + selected_EPS_TAI := p_selected_EPS_TAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targeteNB_ID + + template (present) TargetHomeENB_ID mw_targetHomeENB_ID( + template (present) PLMNIdentity p_pLMNidentity := ?, + template (present) TargetHomeENB_ID.homeENB_ID p_homeENB_ID := ?, + template (present) EPS_TAI p_selected_EPS_TAI := ?, + template TargetHomeENB_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNidentity := p_pLMNidentity, + homeENB_ID := p_homeENB_ID, + selected_EPS_TAI := p_selected_EPS_TAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetHomeENB_ID + + template (present) TargetID mw_targetID_targetRANNodeID( + template (present) TargetRANNodeID p_targetRANNodeID := ? + ) := { + targetRANNodeID := p_targetRANNodeID + } // End of template mw_targetID_targetRANNodeID + + template (present) TargetID mw_targetID_targeteNB_ID( + template (present) TargeteNB_ID p_targeteNB_ID := ? + ) := { + targeteNB_ID := p_targeteNB_ID + } // End of template mw_targetID_targeteNB_ID + + template (present) TargetID mw_targetID_choice_Extensions( + template (present) TargetID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_targetID_choice_Extensions + + template (present) TargetID.choice_Extensions mw_targetID_id_TargetRNC_ID( + template (present) TargetRNC_ID p_targetRNC_ID := ? + ) := { + id := id_TargetRNC_ID, + criticality := reject, + value_ := { TargetRNC_ID := p_targetRNC_ID } + } // End of template mw_sONInformationReport_id_SONInformationReport + + template (present) TargetID.choice_Extensions mw_targetID_id_TargetHomeENB_ID( + template (present) TargetHomeENB_ID p_targetHomeENB_ID := ? + ) := { + id := id_TargetHomeENB_ID, + criticality := reject, + value_ := { TargetHomeENB_ID := p_targetHomeENB_ID } + } // End of template mw_sONInformationReport_id_TargetHomeENB_ID + + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer( + template (present) RRCContainer p_rRCContainer := ?, + template TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := * + ) := { + rRCContainer := p_rRCContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer + + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList( + template (present) DAPSResponseInfoList p_dAPSResponseInfoList := ? + ) := { + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList + + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability( + template (present) DirectForwardingPathAvailability p_directForwardingPathAvailability := ? + ) := { + { + id := id_DirectForwardingPathAvailability, + criticality := ignore, + extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability + + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList( + template (present) MBS_ActiveSessionInformation_TargettoSourceList p_mBS_ActiveSessionInformation_TargettoSourceList := ? + ) := { + { + id := id_MBS_ActiveSessionInformation_TargettoSourceList, + criticality := ignore, + extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList + + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList( + template (present) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList := ? + ) := { + { + id := id_NGAPIESupportInformationResponseList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList + + template TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer( + template Cell_CAGInformation p_cell_CAGInformation := *, + template TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions p_iE_Extensions := * + ) := { + cell_CAGInformation := p_cell_CAGInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer + + template (present) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList( + template (present) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList := ? + ) := { + { + id := id_NGAPIESupportInformationResponseList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList + + template (present) TargetNSSAI_Item mw_targetNSSAI_Item( + template (present) S_NSSAI p_s_NSSAI := ?, + template TargetNSSAI_Item.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetNSSAI_Item + + template (present) TargetNSSAIInformation mw_targetNSSAIInformation( + template (present) TargetNSSAI p_targetNSSAI := ?, + template (present) IndexToRFSP p_indexToRFSP := ?, + template TargetNSSAIInformation.iE_Extensions p_iE_Extensions := * + ) := { + targetNSSAI := p_targetNSSAI, + indexToRFSP := p_indexToRFSP, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetNSSAIInformation + + template (present) TargetRANNodeID mw_targetRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template TargetRANNodeID.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetRANNodeID + + template (present) TargetRANNodeID_RIM mw_targetRANNodeID_RIM( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template TargetRANNodeID_RIM.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetRANNodeID_RIM + + template (present) TargetRANNodeID_SON mw_targetRANNodeID_SON( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template TargetRANNodeID_SON.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetRANNodeID_SON + + template (present) TargetRANNodeID_SON.iE_Extensions mw_targetRANNodeID_SON_id_NR_CGI( + template (present) NR_CGI p_nR_CGI := ? + ) := { + { + id := id_NR_CGI, + criticality := ignore, + extensionValue := { NR_CGI := p_nR_CGI } + } + } // End of template mw_targetRANNodeID_SON_id_NR_CGI + + template (present) TargetRNC_ID mw_targetRNC_ID( + template (present) LAI p_lAI := ?, + template (present) RNC_ID p_rNC_ID := ?, + template ExtendedRNC_ID p_extendedRNC_ID := *, + template TargetRNC_ID.iE_Extensions p_iE_Extensions := * + ) := { + lAI := p_lAI, + rNC_ID := p_rNC_ID, + extendedRNC_ID := p_extendedRNC_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetRNC_ID + + template (present) TimerApproachForGUAMIRemoval mw_timerApproachForGUAMIRemoval(template (present) TimerApproachForGUAMIRemoval p_value := ?) := p_value; + + template (present) TimeSyncAssistanceInfo mw_timeSyncAssistanceInfo( + template (present) TimeSyncAssistanceInfo.timeDistributionIndication p_timeDistributionIndication := enabled, + template TimeSyncAssistanceInfo.uUTimeSyncErrorBudget p_uUTimeSyncErrorBudget := *, + template TimeSyncAssistanceInfo.iE_Extensions p_iE_Extensions := * + ) := { + timeDistributionIndication := p_timeDistributionIndication, + uUTimeSyncErrorBudget := p_uUTimeSyncErrorBudget, + // The above IE shall be present if the Time Distribution Indication IE is set to the value “enabled” + iE_Extensions := p_iE_Extensions + } // End of template mw_timeSyncAssistanceInfo + + template (present) TimeToWait mw_timeToWait(template (present) TimeToWait p_value := ?) := p_value; + + template (present) TNGF_ID mw_tNGF_ID_tNGF_ID( + template (present) TNGF_ID.tNGF_ID p_tNGF_ID := ? + ) := { + tNGF_ID := p_tNGF_ID + } // End of template mw_tNGF_ID_tNGF_ID + + template (present) TNGF_ID mw_tNGF_ID_choice_Extensions( + template (present) TNGF_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_tNGF_ID_choice_Extensions + + template (present) TNLAssociationItem mw_tNLAssociationItem( + template (present) CPTransportLayerInformation p_tNLAssociationAddress := ?, + template (present) Cause p_cause := ?, + template TNLAssociationItem.iE_Extensions p_iE_Extensions := * + ) := { + tNLAssociationAddress := p_tNLAssociationAddress, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_tNLAssociationItem + + template (present) TNLAssociationUsage mw_TNLAssociationUsage(template (present) TNLAssociationUsage p_value := ?) := p_value; + + template (present) TooearlyIntersystemHO mw_tooearlyIntersystemHO( + template (present) EUTRA_CGI p_sourcecellID := ?, + template (present) NGRAN_CGI p_failurecellID := ?, + template UERLFReportContainer p_uERLFReportContainer := *, + template TooearlyIntersystemHO.iE_Extensions p_iE_Extensions := * + ) := { + sourcecellID := p_sourcecellID, + failurecellID := p_failurecellID, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_tooearlyIntersystemHO + + template (present) TraceActivation mw_traceActivation( + template (present) NGRANTraceID p_nGRANTraceID := ?, + template (present) InterfacesToTrace p_interfacesToTrace := ?, + template (present) TraceDepth p_traceDepth := ?, + template (present) TransportLayerAddress p_traceCollectionEntityIPAddress := ?, + template TraceActivation.iE_Extensions p_iE_Extensions := * + ) := { + nGRANTraceID := p_nGRANTraceID, + interfacesToTrace := p_interfacesToTrace, + traceDepth := p_traceDepth, + traceCollectionEntityIPAddress := p_traceCollectionEntityIPAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_traceActivation + + template (present) TraceActivation.iE_Extensions mw_traceActivation_id_MDTConfiguration( + template (present) MDT_Configuration p_mDT_Configuration := ? + ) := { + { + id := id_MDTConfiguration, + criticality := ignore, + extensionValue := { MDT_Configuration := p_mDT_Configuration } + } + } // End of template mw_traceActivation_id_MDTConfiguration + + template (present) TraceActivation.iE_Extensions mw_traceActivation_id_TraceCollectionEntityURI( + template (present) URI_address p_uRI_address := ? + ) := { + { + id := id_TraceCollectionEntityURI, + criticality := ignore, + extensionValue := { URI_address := p_uRI_address } + } + } // End of template mw_traceActivation_id_TraceCollectionEntityURI + + template (present) TraceDepth mw_traceDepth(template (present) TraceDepth p_value := ?) := p_value; + + template (present) TypeOfError mw_typeOfError(template (present) TypeOfError p_value := ?) := p_value; + + template (present) TAIBasedMDT mw_tAIBasedMDT( + template (present) TAIListforMDT p_tAIListforMDT := ?, + template TAIBasedMDT.iE_Extensions p_iE_Extensions := * + ) := { + tAIListforMDT := p_tAIListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIBasedMDT + + template (present) TAIBasedQMC mw_tAIBasedQMC( + template (present) TAIListforQMC p_tAIListforQMC := ?, + template TAIBasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + tAIListforQMC := p_tAIListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIBasedQMC + + template (present) TABasedQMC mw_tABasedQMC( + template (present) TAListforQMC p_tAListforQMC := ?, + template TABasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + tAListforQMC := p_tAListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_tABasedQMC + + template (present) TABasedMDT mw_tABasedMDT( + template (present) TAListforMDT p_tAListforMDT := ?, + template TABasedMDT.iE_Extensions p_iE_Extensions := * + ) := { + tAListforMDT := p_tAListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_tABasedMDT + + template (present) TimeToTrigger mw_timeToTrigger(template (present) TimeToTrigger p_value := ?) := p_value; + + template (present) TWIF_ID mw_tWIF_ID_tWIF_ID( + template (present) TWIF_ID.tWIF_ID p_tWIF_ID := ? + ) := { + tWIF_ID := p_tWIF_ID + } // End of template mw_tWIF_ID_tWIF_ID + + template (present) TWIF_ID mw_tWIF_ID_choice_Extensions( + template (present) TWIF_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_tWIF_ID_choice_Extensions + + template (present) TSCAssistanceInformation mw_tSCAssistanceInformation( + template (present) Periodicity p_periodicity := ?, + template BurstArrivalTime p_burstArrivalTime := *, + template TSCAssistanceInformation.iE_Extensions p_iE_Extensions := * + ) := { + periodicity := p_periodicity, + burstArrivalTime := p_burstArrivalTime, + iE_Extensions := p_iE_Extensions + } // End of template mw_tSCAssistanceInformation + + template (present) TSCAssistanceInformation.iE_Extensions mw_tSCAssistanceInformation_id_SurvivalTime( + template (present) SurvivalTime p_survivalTime := ? + ) := { + { + id := id_SurvivalTime, + criticality := ignore, + extensionValue := { SurvivalTime := p_survivalTime } + } + } // End of template mw_tSCAssistanceInformation_id_SurvivalTime + + template TSCTrafficCharacteristics mw_tSCTrafficCharacteristics( + template TSCAssistanceInformation p_tSCAssistanceInformationDL := *, + template TSCAssistanceInformation p_tSCAssistanceInformationUL := *, + template TSCTrafficCharacteristics.iE_Extensions p_iE_Extensions := * + ) := { + tSCAssistanceInformationDL := p_tSCAssistanceInformationDL, + tSCAssistanceInformationUL := p_tSCAssistanceInformationUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_tSCTrafficCharacteristics + // type record UEAggregateMaximumBitRate { // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; -- GitLab From 72828a8eb476ddc46ed4e8ffcf58b0058b44b741 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 5 Mar 2024 13:56:29 +0100 Subject: [PATCH 146/365] Terminate implementation of template for NGAP_IEs.asn --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 10 +- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 18 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1655 +++++++++++++++++++---- 3 files changed, 1394 insertions(+), 289 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index edc73dd..91abbb7 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -80,8 +80,8 @@ module NGAP_TCFunctions { f_send_NGAP_PDU( m_ngap_initMsg( m_n2_PDUSessionResourceSetupRequest( - m_ie_aMFUeNgapId(-), - m_ie_aMFUeNgapId(-), + 1, + 1, //m_ie_pDUSessionResourceSetupListSUReq( { m_pDUSessionResourceSetupItemSUReq( @@ -89,9 +89,9 @@ module NGAP_TCFunctions { m_s_NSSAI('00'O,'000000'O), '00'O //TODO replace with template /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( - m_ie_uPTLInf(m_ie_gTPTunnel( - m_ie_tla(-), - m_ie_gtpTeId(-))), + m_uPTLInf(m_gTPTunnel( + '0'B', + '00000000'O(-))), m_ie_PDUSessionType(-), m_ie_qosFlowSetReqList({}) )))*/ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index d624127..d833735 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -66,10 +66,10 @@ module NGAP_TestCases { // Start v_test := valueof( m_additionalDLUPTNLInformationForHOItem( - m_ie_uPTLInf( - m_ie_gTPTunnel( + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel( '0'B, - m_ie_gtpTeId + '00000000'O )), { m_qosFlowItemWithDataForwarding( 0, @@ -79,10 +79,10 @@ module NGAP_TestCases { )); v_test1 := valueof( m_additionalDLUPTNLInformationForHOItem( - m_ie_uPTLInf( - m_ie_gTPTunnel( + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel( '0'B, - m_ie_gtpTeId + '00000000'O )), { m_qosFlowItemWithDataForwarding( 0, @@ -93,10 +93,10 @@ module NGAP_TestCases { }, -, m_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( - m_ie_uPTLInf( - m_ie_gTPTunnel( + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel( '0'B, - m_ie_gtpTeId + '00000000'O ))))); v_ngap_gnb_or_amf.start(f_TC_NGAP_gNB_or_aMF_functionName_01()); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index c8d3f7f..fd784c0 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -9,7 +9,7 @@ * All rights reserved. * @see ETSI TS 138 413 / 3GPP TS 38.413 version 16.12 Release 16 */ -module LibNGAP_Templates { +module LibNGAP_Templates { // LibCommon import from LibCommon_BasicTypesAndValues all; @@ -1332,8 +1332,6 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_aMF_TNLAssociationToUpdateItem - template (value) AMF_UE_NGAP_ID m_ie_aMFUeNgapId(in integer p_val := 1) := p_val; - template (omit) AreaOfInterest m_areaOfInterest( in template (omit) AreaOfInterestTAIList p_areaOfInterestTAIList := omit, in template (omit) AreaOfInterestCellList p_areaOfInterestCellList := omit, @@ -2988,18 +2986,15 @@ module LibNGAP_Templates { choice_Extensions := p_choice_Extensions } // End of template m_gNB_ID_choice_Extensions - template (value) GTP_TEID m_ie_gtpTeId(in GTP_TEID p_val := '00000000'O) :=p_val; - - // type record GTPTunnel { - template (omit) GTPTunnel m_ie_gTPTunnel( - in template (value) TransportLayerAddress p_tla, - in template (value) GTP_TEID p_gtp_teid, - in template (omit) GTPTunnel.iE_Extensions p_iE_Extensions := omit - ):= { + template (omit) GTPTunnel m_gTPTunnel( + in template (value) TransportLayerAddress p_tla, + in template (value) GTP_TEID p_gtp_teid, + in template (omit) GTPTunnel.iE_Extensions p_iE_Extensions := omit + ):= { transportLayerAddress := p_tla, gTP_TEID := p_gtp_teid, iE_Extensions := p_iE_Extensions - } // End of template m_ie_gTPTunnel + } // End of template m_gTPTunnel template (omit) GUAMI m_gUAMI( in template (value) PLMNIdentity p_pLMNIdentity, @@ -7896,143 +7891,691 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_tSCTrafficCharacteristics - // type record UEAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; - // type record UEAppLayerMeasInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); - // type record UEAppLayerMeasConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; - // type record UE_associatedLogicalNG_connectionItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); - // type enumerated UECapabilityInfoRequest { - // type enumerated UEContextRequest { - // type record UEContextResumeRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); - // type record UEContextResumeResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); - // type record UEContextSuspendRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); - // type record UE_DifferentiationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; - // type union UEHistoryInformationFromTheUE { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); - // type union UEIdentityIndexValue { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); - // type union UE_NGAP_IDs { - // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); - // type record UE_NGAP_ID_pair { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); - // type union UEPagingIdentity { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); - // type enumerated UEPresence { - // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; - // type record UEPresenceInAreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); - // type octetstring UERadioCapability; - // type record UERadioCapabilityForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( - // type octetstring UERadioCapabilityForPagingOfNB_IoT; - // type octetstring UERadioCapabilityForPagingOfNR; - // type octetstring UERadioCapabilityForPagingOfEUTRA; - // type octetstring UERadioCapabilityID; - // type enumerated UERetentionInformation { - // type union UERLFReportContainer { - // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); - // type record UESecurityCapabilities { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; - // type record UESliceMaximumBitRateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); - // type enumerated UE_UP_CIoT_Support { - // type record UL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); - // type bitstring UL_NAS_MAC length (16); - // type bitstring UL_NAS_Count length (5); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; - // type record UL_NGU_UP_TNLModifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; - // type record UnavailableGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); - // type enumerated ULForwarding { - // type bitstring UpdateFeedback length ( - - // type union UPTransportLayerInformation { - template (value) UPTransportLayerInformation m_ie_uPTLInf( - in template (value) GTPTunnel p_gtpt + template (omit) UEAggregateMaximumBitRate m_uEAggregateMaximumBitRate( + in template (value) BitRate p_uEAggregateMaximumBitRateDL, + in template (value) BitRate p_uEAggregateMaximumBitRateUL, + in template (omit) UEAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit + ) := { + uEAggregateMaximumBitRateDL := p_uEAggregateMaximumBitRateDL, + uEAggregateMaximumBitRateUL := p_uEAggregateMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template m_uEAggregateMaximumBitRate + + template (omit) UEAppLayerMeasInfoItem m_uEAppLayerMeasInfoItem( + in template (value) UEAppLayerMeasConfigInfo p_uEAppLayerMeasConfigInfo, + in template (omit) UEAppLayerMeasInfoItem.iE_Extensions p_iE_Extensions := omit + ) := { + uEAppLayerMeasConfigInfo := p_uEAppLayerMeasConfigInfo, + iE_Extensions := p_iE_Extensions + } // End of template m_uEAppLayerMeasInfoItem + + template (omit) UEAppLayerMeasConfigInfo m_uEAppLayerMeasConfigInfo( + in template (value) QoEReference p_qoEReference, + in template (value) TransportLayerAddress p_measCollEntityIPAddress, + in template (omit) ServiceType p_serviceType, + in template (omit) AreaScopeOfQMC p_areaScopeOfQMC := omit, + in template (omit) UEAppLayerMeasConfigInfo.qoEMeasurementStatus p_qoEMeasurementStatus := omit, + in template (omit) UEAppLayerMeasConfigInfo.containerForAppLayerMeasConfig p_containerForAppLayerMeasConfig := omit, + in template (omit) UEAppLayerMeasConfigInfo.measConfigAppLayerID p_measConfigAppLayerID := omit, + in template (omit) SliceSupportListQMC p_sliceSupportListQMC := omit, + in template (omit) MDT_AlignmentInfo p_mDT_AlignmentInfo := omit, + in template (omit) AvailableRANVisibleQoEMetrics p_availableRANVisibleQoEMetrics := omit, + in template (omit) UEAppLayerMeasConfigInfo.iE_Extensions p_iE_Extensions := omit + ) := { + qoEReference := p_qoEReference, + serviceType := p_serviceType, + areaScopeOfQMC := p_areaScopeOfQMC, + measCollEntityIPAddress := p_measCollEntityIPAddress, + qoEMeasurementStatus := p_qoEMeasurementStatus, + containerForAppLayerMeasConfig := p_containerForAppLayerMeasConfig, + measConfigAppLayerID := p_measConfigAppLayerID, + sliceSupportListQMC := p_sliceSupportListQMC, + mDT_AlignmentInfo := p_mDT_AlignmentInfo, + availableRANVisibleQoEMetrics := p_availableRANVisibleQoEMetrics, + iE_Extensions := p_iE_Extensions + } // End of template m_uEAppLayerMeasConfigInfo + + template (omit) UE_associatedLogicalNG_connectionItem m_uE_associatedLogicalNG_connectionItem( + in template (omit) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := omit, + in template (omit) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := omit, + in template (omit) UE_associatedLogicalNG_connectionItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, + rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_uE_associatedLogicalNG_connectionItem + + template (value) UECapabilityInfoRequest m_uECapabilityInfoRequest(in UECapabilityInfoRequest p_value := requested) := p_value; + + template (value) UEContextRequest m_uEContextRequest(in UEContextRequest p_value := requested) := p_value; + + template (omit) UEContextResumeRequestTransfer m_uEContextResumeRequestTransfer( + in template (omit) QosFlowListWithCause p_qosFlowFailedToResumeList := omit, + in template (omit) UEContextResumeRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, + iE_Extensions := p_iE_Extensions + } // End of template m_uEContextResumeRequestTransfer + + template (omit) UEContextResumeResponseTransfer m_uEContextResumeResponseTransfer( + in template (omit) QosFlowListWithCause p_qosFlowFailedToResumeList := omit, + in template (omit) UEContextResumeResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, + iE_Extensions := p_iE_Extensions + } // End of template m_uEContextResumeResponseTransfer + + template (omit) UEContextSuspendRequestTransfer m_uEContextSuspendRequestTransfer( + in template (omit) SuspendIndicator p_suspendIndicator := omit, + in template (omit) UEContextSuspendRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + suspendIndicator := p_suspendIndicator, + iE_Extensions := p_iE_Extensions + } // End of template m_uEContextSuspendRequestTransfer + + template (omit) UE_DifferentiationInfo m_uE_DifferentiationInfo( + in template (omit) UE_DifferentiationInfo.periodicCommunicationIndicator p_periodicCommunicationIndicator := omit, + in template (omit) UE_DifferentiationInfo.periodicTime p_periodicTime := omit, + in template (omit) UE_DifferentiationInfo.scheduledCommunicationTime p_scheduledCommunicationTime := omit, + in template (omit) UE_DifferentiationInfo.stationaryIndication p_stationaryIndication := omit, + in template (omit) UE_DifferentiationInfo.trafficProfile p_trafficProfile := omit, + in template (omit) UE_DifferentiationInfo.batteryIndication p_batteryIndication := omit, + in template (omit) UE_DifferentiationInfo.iE_Extensions p_iE_Extensions := omit + ) := { + periodicCommunicationIndicator := p_periodicCommunicationIndicator, + periodicTime := p_periodicTime, + scheduledCommunicationTime := p_scheduledCommunicationTime, + stationaryIndication := p_stationaryIndication, + trafficProfile := p_trafficProfile, + batteryIndication := p_batteryIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_uE_DifferentiationInfo + + template (value) UEHistoryInformationFromTheUE m_uEHistoryInformationFromTheUE_nR( + in template (value) NRMobilityHistoryReport p_nR + ) := { + nR := p_nR + } // End of template m_uEHistoryInformationFromTheUE_nR + + template (value) UEHistoryInformationFromTheUE m_uEHistoryInformationFromTheUE_choice_Extensions( + in template (value) UEHistoryInformationFromTheUE.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uEHistoryInformationFromTheUE_choice_Extensions + + template (value) UEIdentityIndexValue m_uEIdentityIndexValue_indexLength10( + in template (value) UEIdentityIndexValue.indexLength10 p_indexLength10 + ) := { + indexLength10 := p_indexLength10 + } // End of template m_uEIdentityIndexValue_indexLength10 + + template (value) UEIdentityIndexValue m_uEIdentityIndexValue_choice_Extensions( + in template (value) UEIdentityIndexValue.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uEIdentityIndexValue_choice_Extensions + + template (value) UE_NGAP_IDs m_uE_NGAP_IDs_uE_NGAP_ID_pair( + in template (value) UE_NGAP_ID_pair p_uE_NGAP_ID_pair + ) := { + uE_NGAP_ID_pair := p_uE_NGAP_ID_pair + } // End of template m_uE_NGAP_IDs_uE_NGAP_ID_pair + + template (value) UE_NGAP_IDs m_uE_NGAP_IDs_aMF_UE_NGAP_ID( + in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID ) := { - gTPTunnel := p_gtpt - } // End of template m_ie_uPTLInf - - // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; - // type record UPTransportLayerInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; - // type record UPTransportLayerInformationPairItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); - // type ASNAUX.VisibleString URI_address; - // type union UserLocationInformation { - template (value) UserLocationInformation m_ie_userLocInf_NR(template (value) UserLocationInformationNR p_ulinr) := { - userLocationInformationNR := p_ulinr - } // End of template m_ie_userLocInf - - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( - // type record UserLocationInformationEUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( - // type record UserLocationInformationN3IWF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( - // type record UserLocationInformationTNGF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( - // type record UserLocationInformationTWIF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( - // type union UserLocationInformationW_AGF { - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( - // type record UserLocationInformationNR { - template (value) UserLocationInformationNR m_ie_userLocInfNR( - template (value) NR_CGI p_nrcgi, - template (value) TAI p_tai, - in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nrcgi, - tAI := p_tai, - timeStamp := omit, // optional, + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID + } // End of template m_uE_NGAP_IDs_aMF_UE_NGAP_ID + + template (value) UE_NGAP_IDs m_uE_NGAP_IDs_choice_Extensions( + in template (value) UE_NGAP_IDs.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uE_NGAP_IDs_choice_Extensions + + template (omit) UE_NGAP_ID_pair m_uE_NGAP_ID_pair( + in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID, + in template (omit) UE_NGAP_ID_pair.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, + rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_uE_NGAP_ID_pair + + template (value) UEPagingIdentity m_uEPagingIdentity_fiveG_S_TMSI( + in template (value) FiveG_S_TMSI p_fiveG_S_TMSI + ) := { + fiveG_S_TMSI := p_fiveG_S_TMSI + } // End of template m_uEPagingIdentity_fiveG_S_TMSI + + template (value) UEPagingIdentity m_uEPagingIdentity_choice_Extensions( + in template (value) UEPagingIdentity.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uEPagingIdentity_choice_Extensions + + template (value) UEPresence m_uEPresence(in UEPresence p_value := in_) := p_value; + + template (omit) UEPresenceInAreaOfInterestItem m_uEPresenceInAreaOfInterestItem( + in template (value) LocationReportingReferenceID p_locationReportingReferenceID, + in template (value) UEPresence p_uEPresence, + in template (omit) UEPresenceInAreaOfInterestItem.iE_Extensions p_iE_Extensions := omit + ) := { + locationReportingReferenceID := p_locationReportingReferenceID, + uEPresence := p_uEPresence, + iE_Extensions := p_iE_Extensions + } // End of template m_uEPresenceInAreaOfInterestItem + + template (omit) UERadioCapabilityForPaging m_uERadioCapabilityForPaging( + in template (omit) UERadioCapabilityForPagingOfNR p_uERadioCapabilityForPagingOfNR := omit, + in template (omit) UERadioCapabilityForPagingOfEUTRA p_uERadioCapabilityForPagingOfEUTRA := omit, + in template (omit) UERadioCapabilityForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + uERadioCapabilityForPagingOfNR := p_uERadioCapabilityForPagingOfNR, + uERadioCapabilityForPagingOfEUTRA := p_uERadioCapabilityForPagingOfEUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_uERadioCapabilityForPaging + + template (value) UERadioCapabilityForPaging.iE_Extensions m_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT( + in template (value) UERadioCapabilityForPagingOfNB_IoT p_uERadioCapabilityForPagingOfNB_IoT + ) := { + { + id := id_UERadioCapabilityForPagingOfNB_IoT, + criticality := ignore, + extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } + } + } // End of template m_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT + + template (value) UERetentionInformation m_uERetentionInformation(in UERetentionInformation p_value := ues_retained):= p_value; + + template (value) UERLFReportContainer m_uERLFReportContainer_nR( + in template (value) NRUERLFReportContainer p_nR + ) := { + nR := p_nR + } // End of template m_uERLFReportContainer_nR + + template (value) UERLFReportContainer m_uERLFReportContainer_lTE( + in template (value) LTEUERLFReportContainer p_lTE + ) := { + lTE := p_lTE + } // End of template m_uERLFReportContainer_lTE + + template (value) UERLFReportContainer m_uERLFReportContainer_choice_Extensions( + in template (value) UERLFReportContainer.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uERLFReportContainer_choice_Extensions + + template (omit) UESecurityCapabilities m_uESecurityCapabilities( + in template (value) NRencryptionAlgorithms p_nRencryptionAlgorithms, + in template (value) NRintegrityProtectionAlgorithms p_nRintegrityProtectionAlgorithms, + in template (value) EUTRAencryptionAlgorithms p_eUTRAencryptionAlgorithms, + in template (value) EUTRAintegrityProtectionAlgorithms p_eUTRAintegrityProtectionAlgorithms, + in template (omit) UESecurityCapabilities.iE_Extensions p_iE_Extensions := omit + ) := { + nRencryptionAlgorithms := p_nRencryptionAlgorithms, + nRintegrityProtectionAlgorithms := p_nRintegrityProtectionAlgorithms, + eUTRAencryptionAlgorithms := p_eUTRAencryptionAlgorithms, + eUTRAintegrityProtectionAlgorithms := p_eUTRAintegrityProtectionAlgorithms, + iE_Extensions := p_iE_Extensions + } // End of template m_uESecurityCapabilities + + template (omit) UESliceMaximumBitRateItem m_uESliceMaximumBitRateItem( + in template (value) S_NSSAI p_s_NSSAI, + in template (value) BitRate p_uESliceMaximumBitRateDL, + in template (value) BitRate p_uESliceMaximumBitRateUL, + in template (omit) UESliceMaximumBitRateItem.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + uESliceMaximumBitRateDL := p_uESliceMaximumBitRateDL, + uESliceMaximumBitRateUL := p_uESliceMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template m_uESliceMaximumBitRateItem + + template (value) UE_UP_CIoT_Support m_uE_UP_CIoT_Support(in UE_UP_CIoT_Support p_value := supported) := p_value; + + template (omit) UL_CP_SecurityInformation m_UL_CP_SecurityInformation( + in template (value) UL_NAS_MAC p_ul_NAS_MAC, + in template (value) UL_NAS_Count p_ul_NAS_Count, + in template (omit) UL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + ul_NAS_MAC := p_ul_NAS_MAC, + ul_NAS_Count := p_ul_NAS_Count, iE_Extensions := p_iE_Extensions - } // End of template m_ie_userLocInfNR - - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( - // type record UserPlaneSecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; - // type record VolumeTimedReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); - // type union W_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); - // type octetstring WarningAreaCoordinates length (1 .. 1024); - // type union WarningAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); - // type octetstring WarningMessageContents length (1 .. 9600); - // type octetstring WarningSecurityInfo length (50); - // type octetstring WarningType length (2); - // type record WLANMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; - // type record WLANMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); - // type enumerated WLANMeasConfig { - // type octetstring WLANName length (1 .. 32); - // type record WUS_Assistance_Information { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; - // type record XnExtTLA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; - // type record XnTNLConfigurationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); + } // End of template + + template (omit) UL_NGU_UP_TNLModifyItem m_uL_NGU_UP_TNLModifyItem( + in template (value) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation, + in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, + in template (omit) UL_NGU_UP_TNLModifyItem.iE_Extensions p_iE_Extensions := omit + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_uL_NGU_UP_TNLModifyItem + + template (value) UL_NGU_UP_TNLModifyItem.iE_Extensions m_uL_NGU_UP_TNLModifyItem_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_uL_NGU_UP_TNLModifyItem_id_RedundantUL_NGU_UP_TNLInformation + + template (value) UL_NGU_UP_TNLModifyItem.iE_Extensions m_uL_NGU_UP_TNLModifyItem_id_RedundantDL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_uL_NGU_UP_TNLModifyItem_id_RedundantDL_NGU_UP_TNLInformation + + template (omit) UnavailableGUAMIItem m_unavailableGUAMIItem( + in template (value) GUAMI p_gUAMI, + in template (omit) TimerApproachForGUAMIRemoval p_timerApproachForGUAMIRemoval := omit, + in template (omit) AMFName p_backupAMFName := omit, + in template (omit) UnavailableGUAMIItem.iE_Extensions p_iE_Extensions := omit + ) := { + gUAMI := p_gUAMI, + timerApproachForGUAMIRemoval := p_timerApproachForGUAMIRemoval, + backupAMFName := p_backupAMFName, + iE_Extensions := p_iE_Extensions + } // End of template m_unavailableGUAMIItem + + template (value) ULForwarding m_uLForwarding(in ULForwarding p_value := ul_forwarding_proposed) := p_value; + + template (value) UPTransportLayerInformation m_uPTransportLayerInformation_gTPTunnel( + in template (value) GTPTunnel p_gTPTunnel + ) := { + gTPTunnel := p_gTPTunnel + } // End of template m_uPTransportLayerInformation_gTPTunnel + + template (value) UPTransportLayerInformation m_uPTransportLayerInformation_choice_Extensions( + in template (value) UPTransportLayerInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uPTransportLayerInformation_choice_Extensions + + template (omit) UPTransportLayerInformationItem m_uPTransportLayerInformationItem( + in template (value) UPTransportLayerInformation p_nGU_UP_TNLInformation, + in template (omit) UPTransportLayerInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGU_UP_TNLInformation := p_nGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_uPTransportLayerInformationItem + + template (value) UPTransportLayerInformationItem.iE_Extensions m_uPTransportLayerInformationItem_id_CommonNetworkInstance( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_CommonNetworkInstance, + criticality := ignore, + extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_uPTransportLayerInformationItem_id_CommonNetworkInstance + + template (omit) UPTransportLayerInformationPairItem m_uPTransportLayerInformationPairItem( + in template (value) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation, + in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, + in template (omit) UPTransportLayerInformationPairItem.iE_Extensions p_iE_Extensions := omit + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_uPTransportLayerInformationPairItem + + template (value) UserLocationInformation m_uPTransportLayerInformation_userLocationInformationEUTRA( + in template (value) UserLocationInformationEUTRA p_userLocationInformationEUTRA + ) := { + userLocationInformationEUTRA := p_userLocationInformationEUTRA + } // End of template m_uPTransportLayerInformation_userLocationInformationEUTRA + + template (value) UserLocationInformation m_uPTransportLayerInformation_userLocationInformationNR( + in template (value) UserLocationInformationNR p_userLocationInformationNR + ) := { + userLocationInformationNR := p_userLocationInformationNR + } // End of template m_uPTransportLayerInformation_userLocationInformationNR + + template (value) UserLocationInformation m_uPTransportLayerInformation_userLocationInformationN3IWF( + in template (value) UserLocationInformationN3IWF p_userLocationInformationN3IWF + ) := { + userLocationInformationN3IWF := p_userLocationInformationN3IWF + } // End of template m_uPTransportLayerInformation_userLocationInformationN3IWF + + template (value) UserLocationInformation m_userLocationInformation_choice_Extensions( + in template (value) UserLocationInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_userLocationInformation_choice_Extensions + + template (value) UserLocationInformation.choice_Extensions m_userLocationInformation_id_UserLocationInformationTNGF( + in template (value) UserLocationInformationTNGF p_userLocationInformationTNGF + ) := { + id := id_UserLocationInformationTNGF, + criticality := ignore, + value_ := { UserLocationInformationTNGF := p_userLocationInformationTNGF } + } // End of template m_userLocationInformation_id_UserLocationInformationTNGF + + template (value) UserLocationInformation.choice_Extensions m_userLocationInformation_id_UserLocationInformationTWIF( + in template (value) UserLocationInformationTWIF p_userLocationInformationTWIF + ) := { + id := id_UserLocationInformationTWIF, + criticality := ignore, + value_ := { UserLocationInformationTWIF := p_userLocationInformationTWIF } + } // End of template m_userLocationInformation_id_UserLocationInformationTWIF + + template (value) UserLocationInformation.choice_Extensions m_userLocationInformation_id_UserLocationInformationW_AGF( + in template (value) UserLocationInformationW_AGF p_userLocationInformationW_AGF + ) := { + id := id_UserLocationInformationW_AGF, + criticality := ignore, + value_ := { UserLocationInformationW_AGF := p_userLocationInformationW_AGF } + } // End of template m_userLocationInformation_id_UserLocationInformationW_AGF + + template (omit) UserLocationInformationEUTRA m_userLocationInformationEUTRA( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) TAI p_tAI, + in template (omit) TimeStamp p_timeStamp := omit, + in template (omit) UserLocationInformationEUTRA.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + tAI := p_tAI, + timeStamp := p_timeStamp, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationEUTRA + + template (value) UserLocationInformationEUTRA.iE_Extensions m_userLocationInformationEUTRA_id_PSCellInformation( + in template (value) NGRAN_CGI p_nGRAN_CGI + ) := { + { + id := id_PSCellInformation, + criticality := ignore, + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + } + } // End of template m_userLocationInformationEUTRA_id_PSCellInformation + + template (omit) UserLocationInformationN3IWF m_userLocationInformationN3IWF( + in template (value) TransportLayerAddress p_iPAddress, + in template (value) PortNumber p_portNumber, + in template (omit) UserLocationInformationN3IWF.iE_Extensions p_iE_Extensions := omit + ) := { + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationN3IWF + + template (value) UserLocationInformationN3IWF.iE_Extensions m_userLocationInformationN3IWF_id_TAI( + in template (value) TAI p_tAI + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template m_userLocationInformationN3IWF_id_TAI + + template (omit) UserLocationInformationTNGF m_userLocationInformationTNGF( + in template (value) TNAP_ID p_tNAP_ID, + in template (value) TransportLayerAddress p_iPAddress, + in template (value) PortNumber p_portNumber, + in template (omit) UserLocationInformationTNGF.iE_Extensions p_iE_Extensions := omit + ) := { + tNAP_ID := p_tNAP_ID, + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationTNGF + + template (value) UserLocationInformationTNGF.iE_Extensions m_userLocationInformationTNGF_id_TAI( + in template (value) TAI p_tAI + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template m_userLocationInformationTNGF_id_TAI + + template (omit) UserLocationInformationTWIF m_userLocationInformationTWIF( + in template (value) TWAP_ID p_tWAP_ID, + in template (value) TransportLayerAddress p_iPAddress, + in template (value) PortNumber p_portNumber, + in template (omit) UserLocationInformationTWIF.iE_Extensions p_iE_Extensions := omit + ) := { + tWAP_ID := p_tWAP_ID, + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationTWIF + + template (value) UserLocationInformationTWIF.iE_Extensions m_userLocationInformationTWIF_id_TAI( + in template (value) TAI p_tAI + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template m_userLocationInformationTWIF_id_TAI + + template (value) UserLocationInformationW_AGF m_userLocationInformationW_AGF_globalLine_ID( + in template (value) GlobalLine_ID p_globalLine_ID + ) := { + globalLine_ID := p_globalLine_ID + } // End of template m_userLocationInformationW_AGF_globalLine_ID + + template (value) UserLocationInformationW_AGF m_userLocationInformationW_AGF_hFCNode_ID( + in template (value) HFCNode_ID p_hFCNode_ID + ) := { + hFCNode_ID := p_hFCNode_ID + } // End of template m_userLocationInformationW_AGF_hFCNode_ID + + template (value) UserLocationInformationW_AGF m_userLocationInformationW_AGF_choice_Extensions( + in template (value) UserLocationInformationW_AGF.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_userLocationInformationW_AGF_choice_Extensions + + template (value) UserLocationInformationW_AGF.choice_Extensions m_userLocationInformationW_AGF_id_GlobalCable_ID( + in template (value) GlobalCable_ID p_globalCable_ID + ) := { + id := id_GlobalCable_ID, + criticality := ignore, + value_ := { GlobalCable_ID := p_globalCable_ID } + } // End of template m_userLocationInformationW_AGF_id_GlobalCable_ID + + template (value) UserLocationInformationW_AGF.choice_Extensions m_userLocationInformationW_AGF_id_HFCNode_ID_new( + in template (value) HFCNode_ID_new p_hFCNode_ID_new + ) := { + id := id_HFCNode_ID_new, + criticality := ignore, + value_ := { HFCNode_ID_new := p_hFCNode_ID_new } + } // End of template m_userLocationInformationW_AGF_id_HFCNode_ID_new + + template (value) UserLocationInformationW_AGF.choice_Extensions m_userLocationInformationW_AGF_id_GlobalCable_ID_new( + in template (value) GlobalCable_ID_new p_globalCable_ID_new + ) := { + id := id_GlobalCable_ID_new, + criticality := ignore, + value_ := { GlobalCable_ID_new := p_globalCable_ID_new } + } // End of template m_userLocationInformationW_AGF_id_GlobalCable_ID_new + + + + template (omit) UserLocationInformationNR m_userLocationInformationNR( + in template (value) NR_CGI p_nR_CGI, + in template (value) TAI p_tAI, + in template (omit) TimeStamp p_timeStamp := omit, + in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + tAI := p_tAI, + timeStamp := p_timeStamp, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationNR + + template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_PSCellInformation( + in template (value) NGRAN_CGI p_nGRAN_CGI + ) := { + { + id := id_PSCellInformation, + criticality := ignore, + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + } + } // End of template m_userLocationInformationNR_id_PSCellInformation + + template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_NID( + in template (value) NID p_nID + ) := { + { + id := id_NID, + criticality := reject, + extensionValue := { NID := p_nID } + } + } // End of template m_userLocationInformationNR_id_NID + + template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_NRNTNTAIInformation( + in template (value) NRNTNTAIInformation p_nRNTNTAIInformation + ) := { + { + id := id_NRNTNTAIInformation, + criticality := ignore, + extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } + } + } // End of template m_userLocationInformationNR_id_NRNTNTAIInformation + + template (omit) UserPlaneSecurityInformation m_userPlaneSecurityInformation( + in template (value) SecurityResult p_securityResult, + in template (value) SecurityIndication p_securityIndication, + in template (omit) UserPlaneSecurityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + securityResult := p_securityResult, + securityIndication := p_securityIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_userPlaneSecurityInformation + + template (omit) VolumeTimedReport_Item m_volumeTimedReport_Item( + in template (value) VolumeTimedReport_Item.startTimeStamp p_startTimeStamp, + in template (value) VolumeTimedReport_Item.endTimeStamp p_endTimeStamp, + in template (value) VolumeTimedReport_Item.usageCountUL p_usageCountUL, + in template (value) VolumeTimedReport_Item.usageCountDL p_usageCountDL, + in template (omit) VolumeTimedReport_Item.iE_Extensions p_iE_Extensions := omit + ) := { + startTimeStamp := p_startTimeStamp, + endTimeStamp := p_endTimeStamp, + usageCountUL := p_usageCountUL, + usageCountDL := p_usageCountDL, + iE_Extensions := p_iE_Extensions + } // End of template m_volumeTimedReport_Item + + template (value) W_AGF_ID m_w_AGF_ID_w_AGF_ID( + in template (value) W_AGF_ID.w_AGF_ID p_w_AGF_ID + ) := { + w_AGF_ID := p_w_AGF_ID + } // End of template m_w_AGF_ID_w_AGF_ID + + template (value) W_AGF_ID m_w_AGF_ID_choice_Extensions( + in template (value) W_AGF_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_w_AGF_ID_choice_Extensions + + template (value) WarningAreaList m_warningAreaList_eUTRA_CGIListForWarning( + in template (value) EUTRA_CGIListForWarning p_eUTRA_CGIListForWarning + ) := { + eUTRA_CGIListForWarning := p_eUTRA_CGIListForWarning + } // End of template m_warningAreaList_eUTRA_CGIListForWarning + + template (value) WarningAreaList m_warningAreaList_nR_CGIListForWarning( + in template (value) NR_CGIListForWarning p_nR_CGIListForWarning + ) := { + nR_CGIListForWarning := p_nR_CGIListForWarning + } // End of template m_warningAreaList_nR_CGIListForWarning + + template (value) WarningAreaList m_warningAreaList_tAIListForWarning( + in template (value) TAIListForWarning p_tAIListForWarning + ) := { + tAIListForWarning := p_tAIListForWarning + } // End of template m_warningAreaList_tAIListForWarning + + template (value) WarningAreaList m_warningAreaList_emergencyAreaIDList( + in template (value) EmergencyAreaIDList p_emergencyAreaIDList + ) := { + emergencyAreaIDList := p_emergencyAreaIDList + } // End of template m_warningAreaList_emergencyAreaIDList + + template (value) WarningAreaList m_warningAreaList_choice_Extensions( + in template (value) WarningAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_warningAreaList_choice_Extensions + + template (omit) WLANMeasurementConfiguration m_wLANMeasurementConfiguration( + in template (value) WLANMeasConfig p_wlanMeasConfig, + in template (omit) WLANMeasConfigNameList p_wlanMeasConfigNameList := omit, + in template (omit) WLANMeasurementConfiguration.wlan_rssi p_wlan_rssi := omit, + in template (omit) WLANMeasurementConfiguration.wlan_rtt p_wlan_rtt := omit, + in template (omit) WLANMeasurementConfiguration.iE_Extensions p_iE_Extensions := omit + ) := { + wlanMeasConfig := p_wlanMeasConfig, + wlanMeasConfigNameList := p_wlanMeasConfigNameList, + wlan_rssi := p_wlan_rssi, + wlan_rtt := p_wlan_rtt, + iE_Extensions := p_iE_Extensions + } // End of template m_wLANMeasurementConfiguration + + template (omit) WLANMeasConfigNameItem m_wLANMeasConfigNameItem( + in template (value) WLANName p_wLANName, + in template (omit) WLANMeasConfigNameItem.iE_Extensions p_iE_Extensions := omit + ) := { + wLANName := p_wLANName, + iE_Extensions := p_iE_Extensions + } // End of template m_wLANMeasConfigNameItem + + template (value) WLANMeasConfig m_wLANMeasConfig(in WLANMeasConfig p_value := setup) := p_value; + + template (omit) WUS_Assistance_Information m_wUS_Assistance_Information( + in template (value) PagingProbabilityInformation p_pagingProbabilityInformation, + in template (omit) WUS_Assistance_Information.iE_Extensions p_iE_Extensions := omit + ) := { + pagingProbabilityInformation := p_pagingProbabilityInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_wUS_Assistance_Information + + template (omit) XnExtTLA_Item m_xnExtTLA_Item( + in template (omit) TransportLayerAddress p_iPsecTLA := omit, + in template (omit) XnGTP_TLAs p_gTP_TLAs := omit, + in template (omit) XnExtTLA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + iPsecTLA := p_iPsecTLA, + gTP_TLAs := p_gTP_TLAs, + iE_Extensions := p_iE_Extensions + } // End of template m_xnExtTLA_Item + + template (value) XnExtTLA_Item.iE_Extensions m_xnExtTLA_Item_id_SCTP_TLAs( + in template (value) SCTP_TLAs p_sCTP_TLAs + ) := { + { + id := id_SCTP_TLAs, + criticality := ignore, + extensionValue := { SCTP_TLAs := p_sCTP_TLAs } + } + } // End of template m_xnExtTLA_Item_id_SCTP_TLAs + + template (omit) XnTNLConfigurationInfo m_xnTNLConfigurationInfo( + in template (value) XnTLAs p_xnTransportLayerAddresses, + in template (omit) XnExtTLAs p_xnExtendedTransportLayerAddresses := omit, + in template (omit) XnTNLConfigurationInfo.iE_Extensions p_iE_Extensions := omit + ) := { + xnTransportLayerAddresses := p_xnTransportLayerAddresses, + xnExtendedTransportLayerAddresses := p_xnExtendedTransportLayerAddresses, + iE_Extensions := p_iE_Extensions + } // End of template m_xnTNLConfigurationInfo } // End of group send @@ -9782,21 +10325,15 @@ module LibNGAP_Templates { template (present) GTP_TEID mw_ie_gtpTeId(template (present) GTP_TEID p_val := ?) := p_val; - template (present) GTPTunnel mw_ie_gTPTunnel( - in template (present) TransportLayerAddress p_tla := ?, - in template (present) GTP_TEID p_gtp_teid := ?, - in template GTPTunnel.iE_Extensions p_iE_Extensions := * - ):= { + template (present) GTPTunnel mw_gTPTunnel( + in template (present) TransportLayerAddress p_tla := ?, + in template (present) GTP_TEID p_gtp_teid := ?, + in template GTPTunnel.iE_Extensions p_iE_Extensions := * + ):= { transportLayerAddress := p_tla, gTP_TEID := p_gtp_teid, iE_Extensions := p_iE_Extensions - } // End of template mw_ie_gTPTunnel - - template (present) UPTransportLayerInformation mw_ie_uPTLInf( - template (present) GTPTunnel p_gtpt := ? - ) := { - gTPTunnel := p_gtpt - } // End of template mw_ie_uPTLInf + } // End of template mw_gTPTunnel template (present) GUAMI mw_gUAMI( template (present) PLMNIdentity p_pLMNIdentity := ?, @@ -14682,122 +15219,690 @@ module LibNGAP_Templates { tSCAssistanceInformationUL := p_tSCAssistanceInformationUL, iE_Extensions := p_iE_Extensions } // End of template mw_tSCTrafficCharacteristics - - // type record UEAggregateMaximumBitRate { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAggregateMaximumBitRate_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofUEAppLayerMeas) of UEAppLayerMeasInfoItem UEAppLayerMeasInfoList; - // type record UEAppLayerMeasInfoItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasInfoItem_ExtIEs (?); - // type record UEAppLayerMeasConfigInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEAppLayerMeasConfigInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofNGConnectionsToReset) of UE_associatedLogicalNG_connectionItem UE_associatedLogicalNG_connectionList; - // type record UE_associatedLogicalNG_connectionItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_associatedLogicalNG_connectionItem_ExtIEs (?); - // type enumerated UECapabilityInfoRequest { - // type enumerated UEContextRequest { - // type record UEContextResumeRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeRequestTransfer_ExtIEs (?); - // type record UEContextResumeResponseTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextResumeResponseTransfer_ExtIEs (?); - // type record UEContextSuspendRequestTransfer { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEContextSuspendRequestTransfer_ExtIEs (?); - // type record UE_DifferentiationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_DifferentiationInfo_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofCellsinUEHistoryInfo) of LastVisitedCellItem UEHistoryInformation; - // type union UEHistoryInformationFromTheUE { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEHistoryInformationFromTheUE_ExtIEs (?); - // type union UEIdentityIndexValue { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEIdentityIndexValue_ExtIEs (?); - // type union UE_NGAP_IDs { - // type NGAP_Containers.NGAP_PROTOCOL_IES UE_NGAP_IDs_ExtIEs (?); - // type record UE_NGAP_ID_pair { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UE_NGAP_ID_pair_ExtIEs (?); - // type union UEPagingIdentity { - // type NGAP_Containers.NGAP_PROTOCOL_IES UEPagingIdentity_ExtIEs (?); - // type enumerated UEPresence { - // type record length (1 .. NGAP_Constants.maxnoofAoI) of UEPresenceInAreaOfInterestItem UEPresenceInAreaOfInterestList; - // type record UEPresenceInAreaOfInterestItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UEPresenceInAreaOfInterestItem_ExtIEs (?); - // type octetstring UERadioCapability; - // type record UERadioCapabilityForPaging { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UERadioCapabilityForPaging_ExtIEs ( - // type octetstring UERadioCapabilityForPagingOfNB_IoT; - // type octetstring UERadioCapabilityForPagingOfNR; - // type octetstring UERadioCapabilityForPagingOfEUTRA; - // type octetstring UERadioCapabilityID; - // type enumerated UERetentionInformation { - // type union UERLFReportContainer { - // type NGAP_Containers.NGAP_PROTOCOL_IES UERLFReportContainer_ExtIEs (?); - // type record UESecurityCapabilities { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESecurityCapabilities_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofAllowedS_NSSAIs) of UESliceMaximumBitRateItem UESliceMaximumBitRateList; - // type record UESliceMaximumBitRateItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UESliceMaximumBitRateItem_ExtIEs (?); - // type enumerated UE_UP_CIoT_Support { - // type record UL_CP_SecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_CP_SecurityInformation_ExtIEs (?); - // type bitstring UL_NAS_MAC length (16); - // type bitstring UL_NAS_Count length (5); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivity) of UL_NGU_UP_TNLModifyItem UL_NGU_UP_TNLModifyList; - // type record UL_NGU_UP_TNLModifyItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UL_NGU_UP_TNLModifyItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofServedGUAMIs) of UnavailableGUAMIItem UnavailableGUAMIList; - // type record UnavailableGUAMIItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UnavailableGUAMIItem_ExtIEs (?); - // type enumerated ULForwarding { - // type bitstring UpdateFeedback length ( - // type union UPTransportLayerInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES UPTransportLayerInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationItem UPTransportLayerInformationList; - // type record UPTransportLayerInformationItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationItem_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofMultiConnectivityMinusOne) of UPTransportLayerInformationPairItem UPTransportLayerInformationPairList; - // type record UPTransportLayerInformationPairItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UPTransportLayerInformationPairItem_ExtIEs (?); - // type ASNAUX.VisibleString URI_address; - // type union UserLocationInformation { - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformation_ExtIEs ( - // type record UserLocationInformationEUTRA { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationEUTRA_ExtIEs ( - // type record UserLocationInformationN3IWF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationN3IWF_ExtIEs ( - // type record UserLocationInformationTNGF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTNGF_ExtIEs ( - // type record UserLocationInformationTWIF { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationTWIF_ExtIEs ( - // type union UserLocationInformationW_AGF { - // type NGAP_Containers.NGAP_PROTOCOL_IES UserLocationInformationW_AGF_ExtIEs ( - // type record UserLocationInformationNR { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserLocationInformationNR_ExtIEs ( - // type record UserPlaneSecurityInformation { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION UserPlaneSecurityInformation_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofTimePeriods) of VolumeTimedReport_Item VolumeTimedReportList; - // type record VolumeTimedReport_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION VolumeTimedReport_Item_ExtIEs (?); - // type union W_AGF_ID { - // type NGAP_Containers.NGAP_PROTOCOL_IES W_AGF_ID_ExtIEs (?); - // type octetstring WarningAreaCoordinates length (1 .. 1024); - // type union WarningAreaList { - // type NGAP_Containers.NGAP_PROTOCOL_IES WarningAreaList_ExtIEs (?); - // type octetstring WarningMessageContents length (1 .. 9600); - // type octetstring WarningSecurityInfo length (50); - // type octetstring WarningType length (2); - // type record WLANMeasurementConfiguration { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasurementConfiguration_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofWLANName) of WLANMeasConfigNameItem WLANMeasConfigNameList; - // type record WLANMeasConfigNameItem { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WLANMeasConfigNameItem_ExtIEs (?); - // type enumerated WLANMeasConfig { - // type octetstring WLANName length (1 .. 32); - // type record WUS_Assistance_Information { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION WUS_Assistance_Information_ExtIEs (?); - // type record length (1 .. NGAP_Constants.maxnoofXnExtTLAs) of XnExtTLA_Item XnExtTLAs; - // type record XnExtTLA_Item { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnExtTLA_Item_ExtIEs ( - // type record length (1 .. NGAP_Constants.maxnoofXnGTP_TLAs) of TransportLayerAddress XnGTP_TLAs; - // type record length (1 .. NGAP_Constants.maxnoofXnTLAs) of TransportLayerAddress XnTLAs; - // type record XnTNLConfigurationInfo { - // type NGAP_Containers.NGAP_PROTOCOL_EXTENSION XnTNLConfigurationInfo_ExtIEs (?); + + template (present) UEAggregateMaximumBitRate mw_uEAggregateMaximumBitRate( + template (present) BitRate p_uEAggregateMaximumBitRateDL := ?, + template (present) BitRate p_uEAggregateMaximumBitRateUL := ?, + template UEAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := * + ) := { + uEAggregateMaximumBitRateDL := p_uEAggregateMaximumBitRateDL, + uEAggregateMaximumBitRateUL := p_uEAggregateMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEAggregateMaximumBitRate + + template (present) UEAppLayerMeasInfoItem mw_uEAppLayerMeasInfoItem( + template (present) UEAppLayerMeasConfigInfo p_uEAppLayerMeasConfigInfo := ?, + template UEAppLayerMeasInfoItem.iE_Extensions p_iE_Extensions := * + ) := { + uEAppLayerMeasConfigInfo := p_uEAppLayerMeasConfigInfo, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEAppLayerMeasInfoItem + + template (present) UEAppLayerMeasConfigInfo mw_uEAppLayerMeasConfigInfo( + template (present) QoEReference p_qoEReference := ?, + template (present) TransportLayerAddress p_measCollEntityIPAddress := ?, + template ServiceType p_serviceType, + template AreaScopeOfQMC p_areaScopeOfQMC := *, + template UEAppLayerMeasConfigInfo.qoEMeasurementStatus p_qoEMeasurementStatus := *, + template UEAppLayerMeasConfigInfo.containerForAppLayerMeasConfig p_containerForAppLayerMeasConfig := *, + template UEAppLayerMeasConfigInfo.measConfigAppLayerID p_measConfigAppLayerID := *, + template SliceSupportListQMC p_sliceSupportListQMC := *, + template MDT_AlignmentInfo p_mDT_AlignmentInfo := *, + template AvailableRANVisibleQoEMetrics p_availableRANVisibleQoEMetrics := *, + template UEAppLayerMeasConfigInfo.iE_Extensions p_iE_Extensions := * + ) := { + qoEReference := p_qoEReference, + serviceType := p_serviceType, + areaScopeOfQMC := p_areaScopeOfQMC, + measCollEntityIPAddress := p_measCollEntityIPAddress, + qoEMeasurementStatus := p_qoEMeasurementStatus, + containerForAppLayerMeasConfig := p_containerForAppLayerMeasConfig, + measConfigAppLayerID := p_measConfigAppLayerID, + sliceSupportListQMC := p_sliceSupportListQMC, + mDT_AlignmentInfo := p_mDT_AlignmentInfo, + availableRANVisibleQoEMetrics := p_availableRANVisibleQoEMetrics, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEAppLayerMeasConfigInfo + + template UE_associatedLogicalNG_connectionItem mw_uE_associatedLogicalNG_connectionItem( + template AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := *, + template RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := *, + template UE_associatedLogicalNG_connectionItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, + rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_uE_associatedLogicalNG_connectionItem + + template (present) UECapabilityInfoRequest mw_uECapabilityInfoRequest(template (present) UECapabilityInfoRequest p_value := requested) := p_value; + + template (present) UEContextRequest mw_uEContextRequest(template (present) UEContextRequest p_value := requested) := p_value; + + template UEContextResumeRequestTransfer mw_uEContextResumeRequestTransfer( + template QosFlowListWithCause p_qosFlowFailedToResumeList := *, + template UEContextResumeRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEContextResumeRequestTransfer + + template UEContextResumeResponseTransfer mw_uEContextResumeResponseTransfer( + template QosFlowListWithCause p_qosFlowFailedToResumeList := *, + template UEContextResumeResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEContextResumeResponseTransfer + + template UEContextSuspendRequestTransfer mw_uEContextSuspendRequestTransfer( + template SuspendIndicator p_suspendIndicator := *, + template UEContextSuspendRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + suspendIndicator := p_suspendIndicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEContextSuspendRequestTransfer + + template UE_DifferentiationInfo mw_uE_DifferentiationInfo( + template UE_DifferentiationInfo.periodicCommunicationIndicator p_periodicCommunicationIndicator := *, + template UE_DifferentiationInfo.periodicTime p_periodicTime := *, + template UE_DifferentiationInfo.scheduledCommunicationTime p_scheduledCommunicationTime := *, + template UE_DifferentiationInfo.stationaryIndication p_stationaryIndication := *, + template UE_DifferentiationInfo.trafficProfile p_trafficProfile := *, + template UE_DifferentiationInfo.batteryIndication p_batteryIndication := *, + template UE_DifferentiationInfo.iE_Extensions p_iE_Extensions := * + ) := { + periodicCommunicationIndicator := p_periodicCommunicationIndicator, + periodicTime := p_periodicTime, + scheduledCommunicationTime := p_scheduledCommunicationTime, + stationaryIndication := p_stationaryIndication, + trafficProfile := p_trafficProfile, + batteryIndication := p_batteryIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_uE_DifferentiationInfo + + template (present) UEHistoryInformationFromTheUE mw_uEHistoryInformationFromTheUE_nR( + template (present) NRMobilityHistoryReport p_nR := ? + ) := { + nR := p_nR + } // End of template mw_uEHistoryInformationFromTheUE_nR + + template (present) UEHistoryInformationFromTheUE mw_uEHistoryInformationFromTheUE_choice_Extensions( + template (present) UEHistoryInformationFromTheUE.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uEHistoryInformationFromTheUE_choice_Extensions + + template (present) UEIdentityIndexValue mw_uEIdentityIndexValue_indexLength10( + template (present) UEIdentityIndexValue.indexLength10 p_indexLength10 := ? + ) := { + indexLength10 := p_indexLength10 + } // End of template mw_uEIdentityIndexValue_indexLength10 + + template (present) UEIdentityIndexValue mw_uEIdentityIndexValue_choice_Extensions( + template (present) UEIdentityIndexValue.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uEIdentityIndexValue_choice_Extensions + + template (present) UE_NGAP_IDs mw_uE_NGAP_IDs_uE_NGAP_ID_pair( + template (present) UE_NGAP_ID_pair p_uE_NGAP_ID_pair := ? + ) := { + uE_NGAP_ID_pair := p_uE_NGAP_ID_pair + } // End of template mw_uE_NGAP_IDs_uE_NGAP_ID_pair + + template (present) UE_NGAP_IDs mw_uE_NGAP_IDs_aMF_UE_NGAP_ID( + template (present) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := ? + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID + } // End of template mw_uE_NGAP_IDs_aMF_UE_NGAP_ID + + template (present) UE_NGAP_IDs mw_uE_NGAP_IDs_choice_Extensions( + template (present) UE_NGAP_IDs.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uE_NGAP_IDs_choice_Extensions + + template (present) UE_NGAP_ID_pair mw_uE_NGAP_ID_pair( + template (present) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := ?, + template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ?, + template UE_NGAP_ID_pair.iE_Extensions p_iE_Extensions := * + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, + rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_uE_NGAP_ID_pair + + template (present) UEPagingIdentity mw_uEPagingIdentity_fiveG_S_TMSI( + template (present) FiveG_S_TMSI p_fiveG_S_TMSI := ? + ) := { + fiveG_S_TMSI := p_fiveG_S_TMSI + } // End of template mw_uEPagingIdentity_fiveG_S_TMSI + + template (present) UEPagingIdentity mw_uEPagingIdentity_choice_Extensions( + template (present) UEPagingIdentity.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uEPagingIdentity_choice_Extensions + + template (present) UEPresence mw_uEPresence(template (present) UEPresence p_value := in_) := p_value; + + template (present) UEPresenceInAreaOfInterestItem mw_uEPresenceInAreaOfInterestItem( + template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, + template (present) UEPresence p_uEPresence := ?, + template UEPresenceInAreaOfInterestItem.iE_Extensions p_iE_Extensions := * + ) := { + locationReportingReferenceID := p_locationReportingReferenceID, + uEPresence := p_uEPresence, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEPresenceInAreaOfInterestItem + + template UERadioCapabilityForPaging mw_uERadioCapabilityForPaging( + template UERadioCapabilityForPagingOfNR p_uERadioCapabilityForPagingOfNR := *, + template UERadioCapabilityForPagingOfEUTRA p_uERadioCapabilityForPagingOfEUTRA := *, + template UERadioCapabilityForPaging.iE_Extensions p_iE_Extensions := * + ) := { + uERadioCapabilityForPagingOfNR := p_uERadioCapabilityForPagingOfNR, + uERadioCapabilityForPagingOfEUTRA := p_uERadioCapabilityForPagingOfEUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_uERadioCapabilityForPaging + + template (present) UERadioCapabilityForPaging.iE_Extensions mw_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT( + template (present) UERadioCapabilityForPagingOfNB_IoT p_uERadioCapabilityForPagingOfNB_IoT := ? + ) := { + { + id := id_UERadioCapabilityForPagingOfNB_IoT, + criticality := ignore, + extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } + } + } // End of template mw_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT + + template (present) UERetentionInformation mw_uERetentionInformation(template (present) UERetentionInformation p_value := ues_retained):= p_value; + + template (present) UERLFReportContainer mw_uERLFReportContainer_nR( + template (present) NRUERLFReportContainer p_nR := ? + ) := { + nR := p_nR + } // End of template mw_uERLFReportContainer_nR + + template (present) UERLFReportContainer mw_uERLFReportContainer_lTE( + template (present) LTEUERLFReportContainer p_lTE := ? + ) := { + lTE := p_lTE + } // End of template mw_uERLFReportContainer_lTE + + template (present) UERLFReportContainer mw_uERLFReportContainer_choice_Extensions( + template (present) UERLFReportContainer.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uERLFReportContainer_choice_Extensions + + template (present) UESecurityCapabilities mw_uESecurityCapabilities( + template (present) NRencryptionAlgorithms p_nRencryptionAlgorithms := ?, + template (present) NRintegrityProtectionAlgorithms p_nRintegrityProtectionAlgorithms := ?, + template (present) EUTRAencryptionAlgorithms p_eUTRAencryptionAlgorithms := ?, + template (present) EUTRAintegrityProtectionAlgorithms p_eUTRAintegrityProtectionAlgorithms := ?, + template UESecurityCapabilities.iE_Extensions p_iE_Extensions := * + ) := { + nRencryptionAlgorithms := p_nRencryptionAlgorithms, + nRintegrityProtectionAlgorithms := p_nRintegrityProtectionAlgorithms, + eUTRAencryptionAlgorithms := p_eUTRAencryptionAlgorithms, + eUTRAintegrityProtectionAlgorithms := p_eUTRAintegrityProtectionAlgorithms, + iE_Extensions := p_iE_Extensions + } // End of template mw_uESecurityCapabilities + + template (present) UESliceMaximumBitRateItem mw_uESliceMaximumBitRateItem( + template (present) S_NSSAI p_s_NSSAI := ?, + template (present) BitRate p_uESliceMaximumBitRateDL := ?, + template (present) BitRate p_uESliceMaximumBitRateUL := ?, + template UESliceMaximumBitRateItem.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + uESliceMaximumBitRateDL := p_uESliceMaximumBitRateDL, + uESliceMaximumBitRateUL := p_uESliceMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_uESliceMaximumBitRateItem + + template (present) UE_UP_CIoT_Support mw_uE_UP_CIoT_Support(template (present) UE_UP_CIoT_Support p_value := supported) := p_value; + + template (present) UL_CP_SecurityInformation mw_UL_CP_SecurityInformation( + template (present) UL_NAS_MAC p_ul_NAS_MAC := ?, + template (present) UL_NAS_Count p_ul_NAS_Count := ?, + template UL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * + ) := { + ul_NAS_MAC := p_ul_NAS_MAC, + ul_NAS_Count := p_ul_NAS_Count, + iE_Extensions := p_iE_Extensions + } // End of template + + template (present) UL_NGU_UP_TNLModifyItem mw_uL_NGU_UP_TNLModifyItem( + template (present) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := ?, + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template UL_NGU_UP_TNLModifyItem.iE_Extensions p_iE_Extensions := * + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_uL_NGU_UP_TNLModifyItem + + template (present) UL_NGU_UP_TNLModifyItem.iE_Extensions mw_uL_NGU_UP_TNLModifyItemw_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_uL_NGU_UP_TNLModifyItemw_id_RedundantUL_NGU_UP_TNLInformation + + template (present) UL_NGU_UP_TNLModifyItem.iE_Extensions mw_uL_NGU_UP_TNLModifyItemw_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_uL_NGU_UP_TNLModifyItemw_id_RedundantDL_NGU_UP_TNLInformation + + template (present) UnavailableGUAMIItem mw_unavailableGUAMIItem( + template (present) GUAMI p_gUAMI := ?, + template TimerApproachForGUAMIRemoval p_timerApproachForGUAMIRemoval := *, + template AMFName p_backupAMFName := *, + template UnavailableGUAMIItem.iE_Extensions p_iE_Extensions := * + ) := { + gUAMI := p_gUAMI, + timerApproachForGUAMIRemoval := p_timerApproachForGUAMIRemoval, + backupAMFName := p_backupAMFName, + iE_Extensions := p_iE_Extensions + } // End of template mw_unavailableGUAMIItem + + template (present) ULForwarding mw_uLForwarding(template (present) ULForwarding p_value := ul_forwarding_proposed) := p_value; + + template (present) UPTransportLayerInformation mw_uPTransportLayerInformation_gTPTunnel( + template (present) GTPTunnel p_gTPTunnel := ? + ) := { + gTPTunnel := p_gTPTunnel + } // End of template mw_uPTransportLayerInformation_gTPTunnel + + template (present) UPTransportLayerInformation mw_uPTransportLayerInformation_choice_Extensions( + template (present) UPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uPTransportLayerInformation_choice_Extensions + + template (present) UPTransportLayerInformationItem mw_uPTransportLayerInformationItem( + template (present) UPTransportLayerInformation p_nGU_UP_TNLInformation := ?, + template UPTransportLayerInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + nGU_UP_TNLInformation := p_nGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_uPTransportLayerInformationItem + + template (present) UPTransportLayerInformationItem.iE_Extensions mw_uPTransportLayerInformationItemw_id_CommonNetworkInstance( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? + ) := { + { + id := id_CommonNetworkInstance, + criticality := ignore, + extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_uPTransportLayerInformationItemw_id_CommonNetworkInstance + + template (present) UPTransportLayerInformationPairItem mw_uPTransportLayerInformationPairItem( + template (present) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := ?, + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template UPTransportLayerInformationPairItem.iE_Extensions p_iE_Extensions := * + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_uPTransportLayerInformationPairItem + + template (present) UserLocationInformation mw_uPTransportLayerInformation_userLocationInformationEUTRA( + template (present) UserLocationInformationEUTRA p_userLocationInformationEUTRA := ? + ) := { + userLocationInformationEUTRA := p_userLocationInformationEUTRA + } // End of template mw_uPTransportLayerInformation_userLocationInformationEUTRA + + template (present) UserLocationInformation mw_uPTransportLayerInformation_userLocationInformationNR( + template (present) UserLocationInformationNR p_userLocationInformationNR := ? + ) := { + userLocationInformationNR := p_userLocationInformationNR + } // End of template mw_uPTransportLayerInformation_userLocationInformationNR + + template (present) UserLocationInformation mw_uPTransportLayerInformation_userLocationInformationN3IWF( + template (present) UserLocationInformationN3IWF p_userLocationInformationN3IWF := ? + ) := { + userLocationInformationN3IWF := p_userLocationInformationN3IWF + } // End of template mw_uPTransportLayerInformation_userLocationInformationN3IWF + + template (present) UserLocationInformation mw_userLocationInformation_choice_Extensions( + template (present) UserLocationInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_userLocationInformation_choice_Extensions + + template (present) UserLocationInformation.choice_Extensions mw_userLocationInformation_id_UserLocationInformationTNGF( + template (present) UserLocationInformationTNGF p_userLocationInformationTNGF := ? + ) := { + id := id_UserLocationInformationTNGF, + criticality := ignore, + value_ := { UserLocationInformationTNGF := p_userLocationInformationTNGF } + } // End of template mw_userLocationInformation_id_UserLocationInformationTNGF + + template (present) UserLocationInformation.choice_Extensions mw_userLocationInformation_id_UserLocationInformationTWIF( + template (present) UserLocationInformationTWIF p_userLocationInformationTWIF := ? + ) := { + id := id_UserLocationInformationTWIF, + criticality := ignore, + value_ := { UserLocationInformationTWIF := p_userLocationInformationTWIF } + } // End of template mw_userLocationInformation_id_UserLocationInformationTWIF + + template (present) UserLocationInformation.choice_Extensions mw_userLocationInformation_id_UserLocationInformationW_AGF( + template (present) UserLocationInformationW_AGF p_userLocationInformationW_AGF := ? + ) := { + id := id_UserLocationInformationW_AGF, + criticality := ignore, + value_ := { UserLocationInformationW_AGF := p_userLocationInformationW_AGF } + } // End of template mw_userLocationInformation_id_UserLocationInformationW_AGF + + template (present) UserLocationInformationEUTRA mw_userLocationInformationEUTRA( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) TAI p_tAI := ?, + template TimeStamp p_timeStamp := *, + template UserLocationInformationEUTRA.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + tAI := p_tAI, + timeStamp := p_timeStamp, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationEUTRA + + template (present) UserLocationInformationEUTRA.iE_Extensions mw_userLocationInformationEUTRA_id_PSCellInformation( + template (present) NGRAN_CGI p_nGRAN_CGI := ? + ) := { + { + id := id_PSCellInformation, + criticality := ignore, + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + } + } // End of template mw_userLocationInformationEUTRA_id_PSCellInformation + + template (present) UserLocationInformationN3IWF mw_userLocationInformationN3IWF( + template (present) TransportLayerAddress p_iPAddress := ?, + template (present) PortNumber p_portNumber := ?, + template UserLocationInformationN3IWF.iE_Extensions p_iE_Extensions := * + ) := { + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationN3IWF + + template (present) UserLocationInformationN3IWF.iE_Extensions mw_userLocationInformationN3IWF_id_TAI( + template (present) TAI p_tAI := ? + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template mw_userLocationInformationN3IWF_id_TAI + + template (present) UserLocationInformationTNGF mw_userLocationInformationTNGF( + template (present) TNAP_ID p_tNAP_ID := ?, + template (present) TransportLayerAddress p_iPAddress := ?, + template (present) PortNumber p_portNumber := ?, + template UserLocationInformationTNGF.iE_Extensions p_iE_Extensions := * + ) := { + tNAP_ID := p_tNAP_ID, + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationTNGF + + template (present) UserLocationInformationTNGF.iE_Extensions mw_userLocationInformationTNGF_id_TAI( + template (present) TAI p_tAI := ? + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template mw_userLocationInformationTNGF_id_TAI + + template (present) UserLocationInformationTWIF mw_userLocationInformationTWIF( + template (present) TWAP_ID p_tWAP_ID := ?, + template (present) TransportLayerAddress p_iPAddress := ?, + template (present) PortNumber p_portNumber := ?, + template UserLocationInformationTWIF.iE_Extensions p_iE_Extensions := * + ) := { + tWAP_ID := p_tWAP_ID, + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationTWIF + + template (present) UserLocationInformationTWIF.iE_Extensions mw_userLocationInformationTWIF_id_TAI( + template (present) TAI p_tAI := ? + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template mw_userLocationInformationTWIF_id_TAI + + template (present) UserLocationInformationW_AGF mw_userLocationInformationW_AGF_globalLine_ID( + template (present) GlobalLine_ID p_globalLine_ID := ? + ) := { + globalLine_ID := p_globalLine_ID + } // End of template mw_userLocationInformationW_AGF_globalLine_ID + + template (present) UserLocationInformationW_AGF mw_userLocationInformationW_AGF_hFCNode_ID( + template (present) HFCNode_ID p_hFCNode_ID := ? + ) := { + hFCNode_ID := p_hFCNode_ID + } // End of template mw_userLocationInformationW_AGF_hFCNode_ID + + template (present) UserLocationInformationW_AGF mw_userLocationInformationW_AGF_choice_Extensions( + template (present) UserLocationInformationW_AGF.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_userLocationInformationW_AGF_choice_Extensions + + template (present) UserLocationInformationW_AGF.choice_Extensions mw_userLocationInformationW_AGF_id_GlobalCable_ID( + template (present) GlobalCable_ID p_globalCable_ID := ? + ) := { + id := id_GlobalCable_ID, + criticality := ignore, + value_ := { GlobalCable_ID := p_globalCable_ID } + } // End of template mw_userLocationInformationW_AGF_id_GlobalCable_ID + + template (present) UserLocationInformationW_AGF.choice_Extensions mw_userLocationInformationW_AGF_id_HFCNode_ID_new( + template (present) HFCNode_ID_new p_hFCNode_ID_new := ? + ) := { + id := id_HFCNode_ID_new, + criticality := ignore, + value_ := { HFCNode_ID_new := p_hFCNode_ID_new } + } // End of template mw_userLocationInformationW_AGF_id_HFCNode_ID_new + + template (present) UserLocationInformationW_AGF.choice_Extensions mw_userLocationInformationW_AGF_id_GlobalCable_ID_new( + template (present) GlobalCable_ID_new p_globalCable_ID_new := ? + ) := { + id := id_GlobalCable_ID_new, + criticality := ignore, + value_ := { GlobalCable_ID_new := p_globalCable_ID_new } + } // End of template mw_userLocationInformationW_AGF_id_GlobalCable_ID_new + + template (present) UserLocationInformationNR mw_userLocationInformationNR( + template (present) NR_CGI p_nR_CGI := ?, + template (present) TAI p_tAI := ?, + template TimeStamp p_timeStamp := *, + template UserLocationInformationNR.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + tAI := p_tAI, + timeStamp := p_timeStamp, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationNR + + template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_PSCellInformation( + template (present) NGRAN_CGI p_nGRAN_CGI := ? + ) := { + { + id := id_PSCellInformation, + criticality := ignore, + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + } + } // End of template mw_userLocationInformationNR_id_PSCellInformation + + template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_NID( + template (present) NID p_nID := ? + ) := { + { + id := id_NID, + criticality := reject, + extensionValue := { NID := p_nID } + } + } // End of template mw_userLocationInformationNR_id_NID + + template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_NRNTNTAIInformation( + template (present) NRNTNTAIInformation p_nRNTNTAIInformation := ? + ) := { + { + id := id_NRNTNTAIInformation, + criticality := ignore, + extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } + } + } // End of template mw_userLocationInformationNR_id_NRNTNTAIInformation + + template (present) UserPlaneSecurityInformation mw_userPlaneSecurityInformation( + template (present) SecurityResult p_securityResult := ?, + template (present) SecurityIndication p_securityIndication := ?, + template UserPlaneSecurityInformation.iE_Extensions p_iE_Extensions := * + ) := { + securityResult := p_securityResult, + securityIndication := p_securityIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_userPlaneSecurityInformation + + template (present) VolumeTimedReport_Item mw_volumeTimedReport_Item( + template (present) VolumeTimedReport_Item.startTimeStamp p_startTimeStamp := ?, + template (present) VolumeTimedReport_Item.endTimeStamp p_endTimeStamp := ?, + template (present) VolumeTimedReport_Item.usageCountUL p_usageCountUL := ?, + template (present) VolumeTimedReport_Item.usageCountDL p_usageCountDL := ?, + template VolumeTimedReport_Item.iE_Extensions p_iE_Extensions := * + ) := { + startTimeStamp := p_startTimeStamp, + endTimeStamp := p_endTimeStamp, + usageCountUL := p_usageCountUL, + usageCountDL := p_usageCountDL, + iE_Extensions := p_iE_Extensions + } // End of template mw_volumeTimedReport_Item + + template (present) W_AGF_ID mw_w_AGF_ID_w_AGF_ID( + template (present) W_AGF_ID.w_AGF_ID p_w_AGF_ID := ? + ) := { + w_AGF_ID := p_w_AGF_ID + } // End of template mw_w_AGF_ID_w_AGF_ID + + template (present) W_AGF_ID mw_w_AGF_ID_choice_Extensions( + template (present) W_AGF_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_w_AGF_ID_choice_Extensions + + template (present) WarningAreaList mw_warningAreaList_eUTRA_CGIListForWarning( + template (present) EUTRA_CGIListForWarning p_eUTRA_CGIListForWarning := ? + ) := { + eUTRA_CGIListForWarning := p_eUTRA_CGIListForWarning + } // End of template mw_warningAreaList_eUTRA_CGIListForWarning + + template (present) WarningAreaList mw_warningAreaList_nR_CGIListForWarning( + template (present) NR_CGIListForWarning p_nR_CGIListForWarning := ? + ) := { + nR_CGIListForWarning := p_nR_CGIListForWarning + } // End of template mw_warningAreaList_nR_CGIListForWarning + + template (present) WarningAreaList mw_warningAreaList_tAIListForWarning( + template (present) TAIListForWarning p_tAIListForWarning := ? + ) := { + tAIListForWarning := p_tAIListForWarning + } // End of template mw_warningAreaList_tAIListForWarning + + template (present) WarningAreaList mw_warningAreaList_emergencyAreaIDList( + template (present) EmergencyAreaIDList p_emergencyAreaIDList := ? + ) := { + emergencyAreaIDList := p_emergencyAreaIDList + } // End of template mw_warningAreaList_emergencyAreaIDList + + template (present) WarningAreaList mw_warningAreaList_choice_Extensions( + template (present) WarningAreaList.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_warningAreaList_choice_Extensions + + template (present) WLANMeasurementConfiguration mw_wLANMeasurementConfiguration( + template (present) WLANMeasConfig p_wlanMeasConfig := ?, + template WLANMeasConfigNameList p_wlanMeasConfigNameList := *, + template WLANMeasurementConfiguration.wlan_rssi p_wlan_rssi := *, + template WLANMeasurementConfiguration.wlan_rtt p_wlan_rtt := *, + template WLANMeasurementConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + wlanMeasConfig := p_wlanMeasConfig, + wlanMeasConfigNameList := p_wlanMeasConfigNameList, + wlan_rssi := p_wlan_rssi, + wlan_rtt := p_wlan_rtt, + iE_Extensions := p_iE_Extensions + } // End of template mw_wLANMeasurementConfiguration + + template (present) WLANMeasConfigNameItem mw_wLANMeasConfigNameItem( + template (present) WLANName p_wLANName := ?, + template WLANMeasConfigNameItem.iE_Extensions p_iE_Extensions := * + ) := { + wLANName := p_wLANName, + iE_Extensions := p_iE_Extensions + } // End of template mw_wLANMeasConfigNameItem + + template (present) WLANMeasConfig mw_wLANMeasConfig(template (present) WLANMeasConfig p_value := ?) := p_value; + + template (present) WUS_Assistance_Information mw_wUS_Assistance_Information( + template (present) PagingProbabilityInformation p_pagingProbabilityInformation := ?, + template WUS_Assistance_Information.iE_Extensions p_iE_Extensions := * + ) := { + pagingProbabilityInformation := p_pagingProbabilityInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_wUS_Assistance_Information + + template (present) XnExtTLA_Item mw_xnExtTLA_Item( + template TransportLayerAddress p_iPsecTLA := *, + template XnGTP_TLAs p_gTP_TLAs := *, + template XnExtTLA_Item.iE_Extensions p_iE_Extensions := * + ) := { + iPsecTLA := p_iPsecTLA, + gTP_TLAs := p_gTP_TLAs, + iE_Extensions := p_iE_Extensions + } // End of template mw_xnExtTLA_Item + + template (present) XnExtTLA_Item.iE_Extensions mw_xnExtTLA_Item_id_SCTP_TLAs( + template (present) SCTP_TLAs p_sCTP_TLAs := ? + ) := { + { + id := id_SCTP_TLAs, + criticality := ignore, + extensionValue := { SCTP_TLAs := p_sCTP_TLAs } + } + } // End of template mw_xnExtTLA_Item_id_SCTP_TLAs + + template (present) XnTNLConfigurationInfo mw_xnTNLConfigurationInfo( + template (present) XnTLAs p_xnTransportLayerAddresses := ?, + template XnExtTLAs p_xnExtendedTransportLayerAddresses := *, + template XnTNLConfigurationInfo.iE_Extensions p_iE_Extensions := * + ) := { + xnTransportLayerAddresses := p_xnTransportLayerAddresses, + xnExtendedTransportLayerAddresses := p_xnExtendedTransportLayerAddresses, + iE_Extensions := p_iE_Extensions + } // End of template mw_xnTNLConfigurationInfo } // End of group receive -- GitLab From 0dd579b450d56e19fd0198ecfa38fee20eb1f54e Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 15 Mar 2024 10:26:11 +0100 Subject: [PATCH 147/365] re-work initial conditions for CMP group --- test_purposes/Ngap_Common.tplan2 | 5 ++++ test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 34 +++++++++++++++++--------- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 32 +++++++++++++++--------- 3 files changed, 47 insertions(+), 24 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index f41e1df..bba66d4 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -68,6 +68,7 @@ Package Ngap_Common { - PICS_A4/1_3 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST - PICS_A4/1_4 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY NOTIFY - PICS_A4/1_5 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY INDICATION + - PICS_A4/2_1 //AMF - UE Context Management Procedures - INITIAL CONTEXT SETUP REQUEST - PICS_A4/2_3 //AMF - UE Context Management Procedures - UE CONTEXT RELEASE COMMAND - PICS_A4/2_4 //AMF - UE Context Management Procedures - UE CONTEXT MODIFICATION REQUEST - PICS_A4/2_6 //AMF - UE Context Management Procedures - CONNECTION ESTABLISHMENT INDICATION @@ -136,12 +137,15 @@ Package Ngap_Common { - hasInitiatedPS2CSinAlertingState - hasEstablishedDialog - hasEstablishedPS2CSDialog + - hasEstablishedInitialContext - isConfiguredWithENUMentryForTelURI_E164NumberOf - hasReceivedInitialRequestForDialog - hasReceived200OkOnInitialRequestForDialogWith - hasReceived180OnInitialRequest - hasReceived200OkCancel - hasReceivedTerminatedRequest + - hasSuspendedContext + - hasPendingDataTransmission - registeredPublicIdsWithTelUriAndSipUri - hasReceivedSubsequentOrTargetRefreshRequestInDialog - previouslyEstablishedCallWith @@ -151,6 +155,7 @@ Package Ngap_Common { - isNoLongerAvailable - isTriggeredToDetachUser - isRequestedToDetachfromNetwork + - isTransitioningTo - hasAchievedFirstREGISTER - hasResponded486INVITE - hasAchievedInitialINVITE diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index e9fe7b0..e8c3692 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -291,10 +291,10 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A2/2 and PICS_A3/5_1 //TODO: Not sure here. What is the PIC for INITIAL CONTEXT SETUP REQUEST? + PICS Selection PICS_A2/2 and PICS_A4/2_1 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF } Expected behaviour @@ -345,7 +345,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/2_3 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO:check Initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -383,7 +384,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/2_3 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO:check Initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -427,7 +429,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/2_4 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -468,7 +471,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/2_6 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF } Expected behaviour @@ -509,7 +512,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/2_7 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -551,7 +555,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/2_9 and PICS_A4/2_10 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -601,7 +606,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/2_11 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -612,7 +618,7 @@ Package TP_AMF { RAN_UE_NGAP_ID, PDU_Session_Resource_Suspend_List containing PDU_Session_Resource_Suspend_Item containing - PDU_SessionId, + PDU_SessionId indicating value PX_PDU_ID, UE_Context_Suspend_Request_Transfer ; ; @@ -644,7 +650,9 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/2_11 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext and + the UE entity hasPendingDataTransmission } Expected behaviour @@ -694,7 +702,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/2_12 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasSuspendedContext } Expected behaviour @@ -730,6 +739,7 @@ Package TP_AMF { } // end TP TP_NGAP_AMF_CMP_07 + //TODO: error case 8.3.12.3 } // end Group "UE Context Resume" diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 91ab7c8..ecedb0d 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -550,7 +550,7 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_1 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO + the UE entity isRegisteredTo the AMF } Expected behaviour @@ -601,7 +601,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_1 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO; check initial conditions + the UE entity isRegisteredTo the AMF + // TODO: and the UE entity notEstablishedContextProperly } Expected behaviour @@ -613,7 +614,7 @@ Package TP_GNB { GUAMI, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing - PDU_SessionId, + PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, PDU_Session_Resource_Setup_Request_Transfer ; @@ -658,7 +659,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_2 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -704,7 +706,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_3 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -751,7 +754,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_3 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -841,7 +845,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_4 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -884,7 +889,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_5 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity isTransitioningTo the RRC_INACTIVE } Expected behaviour @@ -926,7 +932,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_8 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -969,7 +976,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_11 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -994,7 +1002,6 @@ Package TP_GNB { } // end TP TP_NGAP_GNB_CMP_05 - }// end Group UE Context Suspend Group "UE Context Resume" @@ -1015,7 +1022,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_12 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasSuspendedContext } Expected behaviour -- GitLab From eec4cf47f020f53619008373d21f2d721244303f Mon Sep 17 00:00:00 2001 From: pintar Date: Sun, 17 Mar 2024 21:37:39 +0100 Subject: [PATCH 148/365] UBP group added --- test_purposes/Ngap_Common.tplan2 | 22 +++++++++++++---- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 33 ++++++++++++++++++++++++++ 2 files changed, 51 insertions(+), 4 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 3d42066..0bae397 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -50,6 +50,13 @@ Package Ngap_Common { - PICS_A3/10_2 //gNB - Trace procedure - TRACE FAILURE INDICATION messages - PICS_A3/10_3 //gNB - Trace procedure - DEACTIVATE TRACE messages - PICS_A3/10_4 //gNB - Trace procedure - CELL TRAFFIC TRACE messages + - PICS_A3/12_1 //gNB - TNLA procedure - UE TNLA BINDING RELEASE REQUEST messages + - PICS_A3/13_1 //gNB - UE Radio Capability Management procedure - UE RADIO CAPABILITY INFO INDICATION messages + - PICS_A3/13_2 //gNB - UE Radio Capability Management procedure - UE RADIO CAPABILITY CHECK REQUEST messages + - PICS_A3/13_3 //gNB - UE Radio Capability Management procedure - UE RADIO CAPABILITY ID MAPPING REQUEST messages + - PICS_A3/14_1 //TODO opis + - PICS_A3/15_1 + - PICS_A3/15_2 - PICS_A4/1_1 //AMF - PDU session management procedure - PDU SESSION RESOURCE SETUP REQUEST - PICS_A4/1_2 //AMF - PDU session management procedure - PDU SESSION RESOURCE RELEASE COMMAND - PICS_A4/1_3 //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST @@ -64,10 +71,17 @@ Package Ngap_Common { - PICS_A4/9_2 //AMF - NRPPa Transport procedure - UPLINK UE ASSOCIATED NRPPA TRANSPORT messages - PICS_A4/9_3 //AMF - NRPPa Transport procedure - DOWNLINK NON UE ASSOCIATED NRPPA TRANSPORT messages - PICS_A4/9_4 //AMF - NRPPa Transport procedure - UPLINK NON UE ASSOCIATED NRPPA TRANSPORT messages - - PICS_A4/10_1 //gNB - Trace procedure - TRACE START messages - - PICS_A4/10_2 //gNB - Trace procedure - TRACE FAILURE INDICATION messages - - PICS_A4/10_3 //gNB - Trace procedure - DEACTIVATE TRACE messages - - PICS_A4/10_4 //gNB - Trace procedure - CELL TRAFFIC TRACE messages + - PICS_A4/10_1 //AMF - Trace procedure - TRACE START messages + - PICS_A4/10_2 //AMF - Trace procedure - TRACE FAILURE INDICATION messages + - PICS_A4/10_3 //AMF - Trace procedure - DEACTIVATE TRACE messages + - PICS_A4/10_4 //AMF - Trace procedure - CELL TRAFFIC TRACE messages + - PICS_A4/12_1 //AMF - TNLA procedure - UE TNLA BINDING RELEASE REQUEST messages + - PICS_A4/13_1 //AMF - UE Radio Capability Management procedure - UE RADIO CAPABILITY INFO INDICATION messages + - PICS_A4/13_2 //AMF - UE Radio Capability Management procedure - UE RADIO CAPABILITY CHECK REQUEST messages + - PICS_A4/13_3 //AMF - UE Radio Capability Management procedure - UE RADIO CAPABILITY ID MAPPING REQUEST messages + - PICS_A4/14_1 //TODO opis + - PICS_A4/15_1 + - PICS_A4/15_2 - NOT_PICS_2 ; entities: diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 6f08cfb..144bdc4 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -2056,6 +2056,39 @@ Package TP_AMF { Group "8.13 UE TNLA Binding Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_UBP_01 + + Test objective "Verify that the IUT can send a UE TNLA BINDING RELEASE REQUEST to initiate a UE TNLA Binding Release procedure." + + Reference + "ETSI TS 138 413 [1], Clauses 8.13.1.2 and 9.2.12.1" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/12_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE TNLA BINDING procedure + } + then { + the IUT entity sends a UE_TNLA_BINDING_RELEASE_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_UBP_01 } // end Group "8.13 UE TNLA Binding Procedures" -- GitLab From bb0d4a668de2ebc3e0f1205b9c8df48417045745 Mon Sep 17 00:00:00 2001 From: pintar Date: Sun, 17 Mar 2024 22:23:38 +0100 Subject: [PATCH 149/365] URP TP added --- test_purposes/Ngap_Common.tplan2 | 8 ++++---- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 93f2e34..ac1f570 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -14,7 +14,7 @@ * all rights reserved. * The present ETSI Source Code license shall be included in all copies of whole or part of this source code * and shall not imply any sub-license right. -* (c) ETSI 2019-2020 +* (c) ETSI 2023-2024 */ @@ -120,9 +120,9 @@ Package Ngap_Common { - PICS_A4/13_1 //AMF - UE Radio Capability Management procedure - UE RADIO CAPABILITY INFO INDICATION messages - PICS_A4/13_2 //AMF - UE Radio Capability Management procedure - UE RADIO CAPABILITY CHECK REQUEST messages - PICS_A4/13_3 //AMF - UE Radio Capability Management procedure - UE RADIO CAPABILITY ID MAPPING REQUEST messages - - PICS_A4/14_1 //gNB - Data Usage Reporting Procedures - SECONDARY RAT DATA USAGE REPORT - - PICS_A4/15_1 //gNB - RIM information Transfer procedure - UPLINK RIM INFORMATION TRANSFER - - PICS_A4/15_2 //gNB - RIM information Transfer procedure - DOWNLINK RIM INFORMATION TRANSFER + - PICS_A4/14_1 //AMF - Data Usage Reporting Procedures - SECONDARY RAT DATA USAGE REPORT + - PICS_A4/15_1 //AMF - RIM information Transfer procedure - UPLINK RIM INFORMATION TRANSFER + - PICS_A4/15_2 //AMF - RIM information Transfer procedure - DOWNLINK RIM INFORMATION TRANSFER - NOT_PICS_2 ; entities: diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index c531691..2556ce3 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -2138,7 +2138,7 @@ Package TP_GNB { } } - } // end TP_NGAP_GNB_URP_01 + } // end TP_NGAP_GNB_URP_01 } // end Group "8.14 UE Radio Capability Management Procedures" -- GitLab From ab1007c22e41e18ad17aad49b33026222bdb7e8b Mon Sep 17 00:00:00 2001 From: pintar Date: Mon, 18 Mar 2024 10:18:06 +0100 Subject: [PATCH 150/365] TPs for DRP and RIP groups --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 100 ++++++++++++++++- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 142 ++++++++++++++++++++++++- 2 files changed, 239 insertions(+), 3 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 58f55d7..e9c63bd 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -2104,16 +2104,114 @@ Package TP_AMF { Group "8.14 UE Radio Capability Management Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_URP_01 + + Test objective "Verify that the IUT can send a UE RADIO CAPABILITY CHECK REQUEST to initiate UE Radio Capability Management procedure." + + Reference + "ETSI TS 138 413 [1], Clauses 8.14.2.2 and 9.2.13.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/13_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE Radio Capability Management procedure + } + then { + the IUT entity sends a UE_RADIO_CAPABILITY_CHECK_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_URP_01 + + Test Purpose { + + TP Id TP_NGAP_AMF_URP_02 + + Test objective "Verify that the IUT can send a UE RADIO CAPABILITY ID MAPPING RESPONSE message that contains mandatory IEs to provide the UE radio capabilities id mapping." + + Reference + "ETSI TS 138 413 [1], Clauses 8.14.3.2, 9.2.13.4 and 9.2.13.5" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/13_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST containing + UE_Radio_Capability_ID; + from the GNB entity + } + then { + the IUT entity sends a UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE containing + UE_Radio_Capability_ID, + UE_Radio_Capability; + to the GNB entity + } + } + + } // end TP_NGAP_AMF_URP_02 } // end Group "8.14 UE Radio Capability Management Procedures" Group "8.15 Data Usage Reporting Procedures" { - + //NONE } // end Group "8.15 Data Usage Reporting Procedures" Group "8.16 RIM Information Transfer Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_RIP_01 + + Test objective "Verify that the IUT can send a DOWNLINK RIM INFORMATION TRANSFER." + + Reference + "ETSI TS 138 413 [1], Clauses 8.16.2.2 and 9.2.15.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/15_2 + + Initial conditions with { + the UE entity isNotRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a RIM Information Transfer procedure + } + then { + the IUT entity sends a DOWNLINK_RIM_INFORMATION_TRANSFER + to the GNB entity + } + } + + } // end TP_NGAP_AMF_RIP_01 } // end Group "8.16 RIM Information Transfer Procedures" } // End of Package TP_AMF diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 2556ce3..d029f59 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -2134,21 +2134,159 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, UE_Radio_Capability; - to the AMF entity + to the AMF entity + } + } + + } // end TP_NGAP_GNB_URP_01 + + Test Purpose { + + TP Id TP_NGAP_GNB_URP_02 + + Test objective "Verify that the IUT can send a UE RADIO CAPABILITY CHECK RESPONSE message that contains mandatory IEs to provide the UE radio capabilities." + + Reference + "ETSI TS 138 413 [1], Clauses 8.14.2.2, 9.2.13.2 and 9.2.13.3" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/13_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity sends a UE_RADIO_CAPABILITY_CHECK_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID; + from the AMF entity + } + then { + the IUT entity sends a UE_RADIO_CAPABILITY_CHECK_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + IMS_Voice_Support_Indicator; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_URP_02 + + Test Purpose { + + TP Id TP_NGAP_GNB_URP_03 + + Test objective "Verify that the IUT can send a UE RADIO CAPABILITY ID MAPPING REQUEST." + + Reference + "ETSI TS 138 413 [1], Clauses 8.14.3.2 and 9.2.13.4" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/13_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + + the IUT entity indicate a UE Radio Capability Management procedure + } + then { + the IUT entity sends a UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST containing + UE_Radio_Capability_ID; + to the AMF entity } } - } // end TP_NGAP_GNB_URP_01 + } // end TP_NGAP_GNB_URP_03 } // end Group "8.14 UE Radio Capability Management Procedures" Group "8.15 Data Usage Reporting Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_DRP_01 + + Test objective "Verify that the IUT can send a SECONDARY RAT DATA USAGE REPORT." + + Reference + "ETSI TS 138 413 [1], Clauses 8.15.1.2 and 9.2.14.1" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/14_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + + the IUT entity indicate a Data_Usage_Reporting_procedure + } + then { + the IUT entity sends a SECONDARY_RAT_DATA_USAGE_REPORT containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Secondary_RAT_Usage_List containing + PDU_Session_Resource_Secondary_RAT_Usage_Item containing + PDU_Session_Id, + Secondary_RAT_Data_Usage_Report_Transfer;;; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_DRP_01 } // end Group "8.15 Data Usage Reporting Procedures" Group "8.16 RIM Information Transfer Procedures" { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_RIP_01 + + Test objective "Verify that the IUT can send a UPLINK RIM INFORMATION TRANSFER." + + Reference + "ETSI TS 138 413 [1], Clauses 8.16.1.2 and 9.2.15.1" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/15_1 + + Initial conditions with { + the UE entity isNotRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + + the IUT entity indicate a RIM Information Transfer procedure + } + then { + the IUT entity sends a UPLINK_RIM_INFORMATION_TRANSFER + to the AMF entity + } + } + + } // end TP_NGAP_GNB_RIP_01 } // end Group "8.16 RIM Information Transfer Procedures" -- GitLab From 2ecc03eaebdd91f5f9c5d8232de49646c0b7c931 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Mon, 18 Mar 2024 14:18:07 +0100 Subject: [PATCH 151/365] revision of the initial conditions for handover --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 6 +++--- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index e9c63bd..1cd910d 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -766,7 +766,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/3_1 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF } Expected behaviour @@ -820,7 +820,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/3_1 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF } Expected behaviour @@ -876,7 +876,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/3_2 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF } Expected behaviour diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index d029f59..b39ff20 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1067,14 +1067,14 @@ Package TP_GNB { Test objective "Verify that the IUT can send a HANDOVER REQUIRED message containing mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2 and 9.2.3.1" + "ETSI TS 138 413 [1], Clauses 8.4.1.2 and 9.2.3.1" Config Id CFG_GNB_01 PICS Selection PICS_A2/1 and PICS_A3/3_1 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF } Expected behaviour @@ -1124,7 +1124,7 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/3_2 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF } Expected behaviour @@ -1188,7 +1188,7 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/3_3 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF } Expected behaviour -- GitLab From a0383a4519182dbaaa0b8f228f0bac687994b95f Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Mon, 18 Mar 2024 15:43:54 +0100 Subject: [PATCH 152/365] update initial condition for the MME group --- test_purposes/Ngap_Common.tplan2 | 2 + test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 70 +++++++++++++++++++++----- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 53 ++++--------------- 3 files changed, 69 insertions(+), 56 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index ac1f570..2854547 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -183,6 +183,8 @@ Package Ngap_Common { - indicate - isCMIDLE - isCMCONNECTED + - alreadyPreparedHandover + - completedHandover ; } // End of Domain section diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 1cd910d..5ac43d3 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -866,7 +866,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_03 - Test objective "Verify that the AMF node successfully sends a HANDOVER_REQUEST message that contains mandatory IEs to the GNB." + Test objective "Verify that the AMF node successfully sends a HANDOVER REQUEST message that contains mandatory IEs to the GNB." Reference "ETSI TS 138 413 [1], Clauses 8.4.2.2" @@ -929,7 +929,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/3_4 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -981,7 +982,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/3_4 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -1042,7 +1044,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/3_5 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the GNB entity alreadyPreparedHandover } Expected behaviour @@ -1068,6 +1071,45 @@ Package TP_AMF { } // End Group "Handover Cancellation" + Group "Handover Success" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_09 + + Test objective "Verify that the NG-RAN node successfully sends a Handover Success message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.8.2 and 9.2.3.15" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/3_8 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the GNB entity completedHandover + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of an UE handover success procedure" + } + then { + the IUT entity sends a HANDOVER_SUCCESS containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the GNB entity + } + } + } // End TP_NGAP_GNB_MMP_03 + + } // End Group "Handover Success" + Group "Downlink RAN Status Transfer" { import all from Ngap_Common; @@ -1076,7 +1118,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_07 - Test objective "Verify that the AMF node successfully sends a UPLINK RAN STATUS TRANSFER message that contains mandatory IEs." + Test objective "Verify that the AMF node successfully sends a DOWNLINK RAN STATUS TRANSFER message that contains mandatory IEs." Reference "ETSI TS 138 413 [1], Clauses 8.4.6.2" @@ -1086,16 +1128,17 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/3_6 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the GNB entity alreadyPreparedHandover } Expected behaviour ensure that { when { - the IUT entity indicate a Uplink RAN Status Transfer procedure + the IUT entity indicate a Downlink RAN Status Transfer procedure } then { - the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing + the IUT entity sends a DOWNLINK_RAN_STATUS_TRANSFER containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, RAN_Status_Transfer_Transparent_Container @@ -1108,7 +1151,7 @@ Package TP_AMF { } // End Group "Downlink RAN Status Transfer" - Group "Downlink RAN Status Transfer" + Group "Downlink RAN Early Status Transfer" { import all from Ngap_Common; @@ -1116,7 +1159,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_08 - Test objective "Verify that the AMF node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." + Test objective "Verify that the AMF node successfully sends a DOWNLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." Reference "ETSI TS 138 413 [1], Clauses 8.4.9.2" @@ -1126,16 +1169,17 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/3_9 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the GNB entity alreadyPreparedHandover } Expected behaviour ensure that { when { - the IUT entity indicate a Uplink RAN Early Status Transfer procedure + the IUT entity indicate a Downlink RAN Early Status Transfer procedure } then { - the IUT entity sends a UPLINK_RAN_EARLY_STATUS_TRANSFER containing + the IUT entity sends a DOWNLINK_RAN_EARLY_STATUS_TRANSFER containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Early_Status_Transfer_Transparent_Container diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index b39ff20..684a37d 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1230,7 +1230,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/3_4 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext } Expected behaviour @@ -1279,7 +1280,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/3_5 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the GNB entity alreadyPreparedHandover } Expected behaviour @@ -1308,7 +1310,7 @@ Package TP_GNB { TP Id TP_NGAP_GNB_MMP_02 - Test objective "Verify that the NG-RAN node successfully send a Uplink RAN Status Transfer message to the AMF." + Test objective "Verify that the NG-RAN node successfully send a UPLINK RAN STATUS TRANSFER message to the AMF." Reference "ETSI TS 138 413 [1], Clauses 8.4.6.2 and 9.2.3.13" @@ -1318,7 +1320,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/3_6 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the GNB entity alreadyPreparedHandover } Expected behaviour @@ -1339,43 +1342,6 @@ Package TP_GNB { } } // End Group "Uplink RAN Status Transfer" - Group "Handover Success" - { - import all from Ngap_Common; - - Test Purpose { - - TP Id TP_NGAP_GNB_MMP_03 - - Test objective "Verify that the NG-RAN node successfully sends a Handover Success message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.8.2 and 9.2.3.15" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/3_8 - - Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate the initiation "of an UE handover success procedure" - } - then { - the IUT entity sends a HANDOVER_SUCCESS containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - to the AMF entity - } - } - } // End TP_NGAP_GNB_MMP_03 - - } // End Group "Handover Success" Group "Uplink RAN Early Status Transfer" { @@ -1385,7 +1351,7 @@ Package TP_GNB { TP Id TP_NGAP_GNB_MMP_04 - Test objective "Verify that the NG-RAN node successfully sends a Uplink RAN Early Status Transfer message to the AMF." + Test objective "Verify that the NG-RAN node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message to the AMF." Reference "ETSI TS 138 413 [1], Clauses 8.4.9.2 and 9.2.3.16" @@ -1395,7 +1361,8 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/3_9 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the GNB entity alreadyPreparedHandover } Expected behaviour -- GitLab From 6ac80ac5e06553007d4d6df130c938988097b974 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Tue, 19 Mar 2024 11:07:56 +0100 Subject: [PATCH 153/365] finish initial condition for PAG and NAS group --- test_purposes/Ngap_Common.tplan2 | 3 +++ test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 21 +++++++++++++++++---- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 21 ++++++++------------- 3 files changed, 28 insertions(+), 17 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 2854547..c5b3f59 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -145,6 +145,7 @@ Package Ngap_Common { - isNotConfiguredForTopologyHiding - isConfiguredForTopologyHiding - isExistingIn + - isNotAppropriateToServe - establishedSecurityRelation - registeredIdentityTelURI - registeredIdentitySipURI @@ -154,12 +155,14 @@ Package Ngap_Common { - hasEstablishedDialog - hasEstablishedPS2CSDialog - hasEstablishedInitialContext + - hasEstablishedRRCConnection - isConfiguredWithENUMentryForTelURI_E164NumberOf - hasReceivedInitialRequestForDialog - hasReceived200OkOnInitialRequestForDialogWith - hasReceived180OnInitialRequest - hasReceived200OkCancel - hasReceivedTerminatedRequest + - hasReceivedNASMessage - hasSuspendedContext - hasPendingDataTransmission - registeredPublicIdsWithTelUriAndSipUri diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 5ac43d3..d5472e0 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1213,7 +1213,6 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/4_1 - // TODO: initial condition? Initial conditions with { the UE entity isRegisteredTo the AMF } @@ -1253,13 +1252,17 @@ Package TP_AMF { Test objective "Verify that the IUT can send an DOWNLINK NAS TRANSPORT message to carry NAS information over the NG interface." Reference - "ETSI TS 138 413 [1], Clauses 8.6.2.2 and 9.2.5.2" + "ETSI TS 138 413 [1], Clauses 8.6.2.2 and 9.2.5.2", + "ETSI TS 123 502 [6], Clause 4.24.1" Config Id CFG_AMF_01 PICS Selection PICS_A2/2 and PICS_A4/5_2 - //TODO: Section 8.6.2.1 describes additional triggers for the DOWNLINK NAS TRANSPORT + Initial conditions with { + the UE entity isCMCONNECTED and + the GNB entity hasReceivedNASMessage from the UE entity + } Expected behaviour ensure that { @@ -1303,10 +1306,20 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/5_5 + Initial conditions with { + the AMF entity isNotAppropriateToServe the UE + } + Expected behaviour ensure that { when { - the IUT entity indicate the initiation "of a Reroute NAS Request procedure" + the IUT entity receives an INITIAL_UE_MESSAGE containing + RAN_UE_NGAP_ID, + NAS_PDU, + User_Location_Information, + RRC_Establishmnet_Cause + ; + from the GNB entity } then { the IUT entity sends an REROUTE_NAS_REQUEST containing diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 684a37d..de64d75 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1398,24 +1398,18 @@ Package TP_GNB { Test objective "Verify that the IUT can send an INITIAL UE MESSAGE to indicate the initiation of a NAS Transport procedure" Reference - "ETSI TS 138 413 [1], Clauses 8.6.1.2 and 9.2.5.1" + "ETSI TS 138 413 [1], Clauses 8.6.1.2 and 9.2.5.1" , + "ETSI TS 123 502 [6], Clause 4.24.1" Config Id CFG_GNB_01 PICS Selection PICS_A2/1 and PICS_A3/5_1 Initial conditions with { - the UE entity isCMIDLE in the GNB entity + the UE entity isCMIDLE and + the UE entity hasEstablishedRRCConnection } - /* TODO: - * - * Maybe improve trigger (see sequence diagram 4.24.1-1 in ts_123501): - * If the UE is in CM-IDLE, the UE first establishes an RRC connection - * OR - * sends the RRCEarlyDataRequest message and sends a NAS message as part of this - * - */ Expected behaviour ensure that { when { @@ -1446,7 +1440,8 @@ Package TP_GNB { Test objective "Verify that the IUT can send an UPLINK NAS TRANSPORT message to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.6.3.2 and 9.2.5.3" + "ETSI TS 138 413 [1], Clauses 8.6.3.2 and 9.2.5.3", + "ETSI TS 123 502 [6], Clause 4.24.1" Config Id CFG_GNB_01 @@ -1456,7 +1451,6 @@ Package TP_GNB { the UE entity isCMCONNECTED in the GNB entity } - //TODO: More information about RRC UL message Expected behaviour ensure that { when { @@ -1486,13 +1480,14 @@ Package TP_GNB { TP Id TP_NGAP_GNB_NAS_03 - Test objective "Verify that the IUT can send a NAS Non Delivery Indication message to the AMF." + Test objective "Verify that the IUT can send a NAS NON DELIVERY INDICATION message to the AMF." Reference "ETSI TS 138 413 [1], Clauses 8.6.4.2 and 9.2.5.4" Config Id CFG_GNB_01 + PICS Selection PICS_A2/1 and PICS_A3/5_4 Initial conditions with { the UE entity isNoLongerAvailable to the GNB entity -- GitLab From 45c1b9c5b8967d85a1fac8c0174cb2af8b27200a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Tue, 19 Mar 2024 14:44:08 +0100 Subject: [PATCH 154/365] revised section Interface Management Procedures and initial conditions --- test_purposes/Ngap_Common.tplan2 | 7 + test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 88 +++++---- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 247 +++++++++++++++++++++++++ 3 files changed, 303 insertions(+), 39 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index c5b3f59..593054e 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -48,6 +48,11 @@ Package Ngap_Common { - PICS_A3/5_1 //gNB - Transport of NAS Messages Procedures - INITIAL UE MESSAGE - PICS_A3/5_3 //gNB - Transport of NAS Messages Procedures - UPLINK NAS TRANSPORT - PICS_A3/5_4 //gNB - Transport of NAS Messages Procedures - NAS NON DELIVERY INDICATION + - PICS_A3/6_1 //gNB - Interface Management Procedures - NG SETUP REQUEST + - PICS_A3/6_2 //gNB - Interface Management Procedures - RAN CONFIGURATION UPDATE + - PICS_A3/6_3 //gNB - Interface Management Procedures - AMF CONFIGURATION UPDATE + - PICS_A3/6_4 //gNB - Interface Management Procedures - NG RESET + - PICS_A3/6_5 //gNB - Interface Management Procedures - ERROR INDICATION - PICS_A3/7_1 //gNB - Configuration Transfer Procedures - UPLINK RAN CONFIGURATION TRANSFER - PICS_A3/8_1 //gNB - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST - PICS_A3/8_2 //gNB - Warning Message Transmission procedure - PWS CANCEL REQUEST @@ -163,6 +168,8 @@ Package Ngap_Common { - hasReceived200OkCancel - hasReceivedTerminatedRequest - hasReceivedNASMessage + - hasReceivedPAGINGMessage + - hasReceivedOVERLOADSTARTtMessage - hasSuspendedContext - hasPendingDataTransmission - registeredPublicIdsWithTelUriAndSipUri diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index d5472e0..e76a685 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1357,7 +1357,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/6_1 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity hasEstablishedRRCConnection } Expected behaviour @@ -1417,8 +1417,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/6_1 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions - // AMF cannot accept the setup + the UE entity hasEstablishedRRCConnection } Expected behaviour @@ -1428,7 +1427,7 @@ Package TP_AMF { Global_RAN_Node_ID, Supported_TA_List containing Supported_TA_Item containing - TAC, + TAC, // Implementation note: The TAC in the NG Setup Request message does not match the TAC of the AMF. Broadcast_PLMN_List containing Broadcast_PLMN_Item containing PLMN_Identity, @@ -1471,8 +1470,8 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/6_2 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions - // AMF cannot accept the setup + the UE entity isRegisteredTo the AMF + } Expected behaviour @@ -1480,8 +1479,8 @@ Package TP_AMF { when { the IUT entity receives a RAN_CONFIGURATION_UPDATE containing Supported_TA_List containing - Supported_TA_Item containing - TAC, + Supported_TA_Item containing // Implementation note: e.g. TA List is updated due to UE moving into a new TA + TAC, Broadcast_PLMN_List containing Broadcast_PLMN_Item containing PLMN_Identity, @@ -1515,8 +1514,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/6_2 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions - // AMF cannot accept the setup + the UE entity isRegisteredTo the AMF } Expected behaviour @@ -1524,8 +1522,8 @@ Package TP_AMF { when { the IUT entity receives a RAN_CONFIGURATION_UPDATE containing Supported_TA_List containing - Supported_TA_Item containing - TAC, + Supported_TA_Item containing // Implementation note: e.g. TA List is updated due to UE moving into a new TA + TAC, // Implementation note: The TAC in the NG Setup Request message does not match the TAC of the AMF. Broadcast_PLMN_List containing Broadcast_PLMN_Item containing PLMN_Identity, @@ -1556,7 +1554,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_05 - Test objective "Verify that the AMF node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." + Test objective "Verify that the IUT can send a AMF CONFIGURATION UPDATE message to the AMF." Reference "ETSI TS 138 413 [1], Clauses 8.7.3.2" @@ -1566,13 +1564,18 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/6_3 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity isCMIDLE and + the UE entity hasReceivedPAGINGMessage } Expected behaviour ensure that { - when { - the IUT entity receives a AMF_CONFIGURATION_UPDATE containing + when { + the IUT entity indicate the initiation "of a AMF CONFIGURATION UPDATE procedure" + } + then { + the IUT entity sends a AMF_CONFIGURATION_UPDATE containing Served_GUAMI_List containing Served_GUAMI_Item containing GUAMI @@ -1596,25 +1599,17 @@ Package TP_AMF { ; ; ; - from the GNB entity - } - then { - the IUT entity sends a AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE containing - AMF_TNL_Association_Setup_List containing - AMF_TNL_Association_Setup_Item containing - AMF_TNL_Association_Address - ; - ; - ; to the GNB entity - } - } + } + + } + } // end TP TP_NGAP_AMF_IMP_05 } // End Group "AMF Configuration Update" - Group "NG Reset" //XX + Group "NG Reset" { import all from Ngap_Common; @@ -1625,14 +1620,15 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." Reference - "ETSI TS 138 413 [1], Clauses 8.7.4.2.1" + "ETSI TS 138 413 [1], Clauses 8.7.4.2.2" Config Id CFG_AMF_01 PICS Selection PICS_A2/2 and PICS_A4/6_4 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO: check initial conditions + the UE entity isRegisteredTo the AMF and + the UE entity isRequestedToDetachfromNetwork } Expected behaviour @@ -1676,13 +1672,29 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/6_5 Initial conditions with { - the UE entity isRegisteredTo the AMF + the UE entity isRegisteredTo the AMF + } Expected behaviour ensure that { when { - the IUT entity indicate a ERROR INDICATION + the IUT entity sends a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI, + PDU_Session_Resource_Setup_Request_List containing + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer + ; + ;, + Allowed_NSSAI, + UE_Security_Capabilities, // Implementation Node: use a not supported security key + Security_Key + ; + from the GNB entity } then { the IUT entity sends a ERROR_INDICATION @@ -1691,7 +1703,7 @@ Package TP_AMF { } } // end TP_NGAP_AMF_IMP_07 - } + } // End Group Error Indication Group "AMF Status Indication" { @@ -1752,9 +1764,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/6_7 - Initial conditions with { - the UE entity isRegisteredTo the AMF - } + // No initial conditions Expected behaviour ensure that { @@ -1776,7 +1786,7 @@ Package TP_AMF { } // end TP_NGAP_AMF_IMP_09 } // End Group "Overload Start" - Group "Overload Stop " + Group "Overload Stop" { import all from Ngap_Common; @@ -1794,7 +1804,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/6_8 Initial conditions with { - the UE entity isRegisteredTo the AMF + the GNB entity hasReceivedOVERLOADSTARTtMessage } Expected behaviour diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index de64d75..a6ea9ee 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1519,8 +1519,255 @@ Package TP_GNB { { Group "NG Setup" { + import all from Ngap_Common; + Test Purpose { + + TP Id TP_NGAP_GNB_IMP_01 + + Test objective "Verify that the GNB node successfully sends a NG SETUP REQEST message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.1.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/6_1 + + Initial conditions with { + the UE entity hasEstablishedRRCConnection + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a NG SETUP REQUEST" + } + then { + the IUT entity sends a NG_SETUP_REQUEST containing + Global_RAN_Node_ID, + Supported_TA_List containing + Supported_TA_Item containing + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List + ; + ; + ; + ;, + Default_Paging_DRX + ; + to the AMF entity + } + + } + + } // end TP TP_NGAP_GNB_IMP_01 } // End Group "NG Setup" + + Group "RAN Configuration Update" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_IMP_02 + + Test objective "Verify that the IUT can send a RAN CONFIGURATION UPDATE message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/2 and PICS_A3/6_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a RAN CONFIGURATION UPDATE procedure" + } + then { + the IUT entity sends a RAN_CONFIGURATION_UPDATE containing + Supported_TA_List containing + Supported_TA_Item containing + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List + ; + ; + ; + ; + ; + to the AMF entity + } + + } + + + } // End TP_NGAP_GNB_IMP_02 + } // End Group RAN Configuration Update + + Group "AMF Configuration Update" + { + import all from Ngap_Common; + + + + + + Test Purpose { + + TP Id TP_NGAP_GNB_IMP_03 + + Test objective "Verify that the GNB node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.3.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/6_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity isCMIDLE and + the UE entity hasReceivedPAGINGMessage + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a AMF_CONFIGURATION_UPDATE containing + Served_GUAMI_List containing + Served_GUAMI_Item containing + GUAMI + ; + ;, + PLMN_Support_List containing + PLMN_Support_Item containing + PLMN_Identity, + Slice_Support_List + ; + ;, + AMF_TNL_Association_to_Add_List containing + AMF_TNL_Association_to_Add_item containing + AMF_TNL_Association_Address, + TNL_Address_Weight_Factor + ; + ;, + AMF_TNL_Association_to_Update_List containing + AMF_TNL_Association_to_Update_Item containing + AMF_TNL_Association_Address + ; + ; + ; + from the AMF entity + } + then { + the IUT entity sends a AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE containing + AMF_TNL_Association_Setup_List containing + AMF_TNL_Association_Setup_Item containing + AMF_TNL_Association_Address + ; + ; + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_IMP_03 + + } //End Group AMF Configuration Update + + Group "NG Reset" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_IMP_04 + + Test objective "Verify that the GNB node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.4.2.1" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/6_4 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity isRequestedToDetachfromNetwork + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a NG_RESET containing + Cause, + CHOICE_Reset_Type containing + NG_interface containing + Reset_All + ; + ; + ; + from the AMF entity + } + then { + the IUT entity sends a NG_RESET_ACKNOWLEDGE + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_IMP_04 + + } // End Group NG Reset + + Group "Error Indication" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_GNB_IMP_05 + + Test objective "Verify that the GNB can send a ERROR INDICATION to the AMF when a error occurs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.5.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/6_5 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a ERROR INDICATION + } + then { + the IUT entity sends a ERROR_INDICATION + to the AMF entity + } + } + + } // end TP_NGAP_GNB_IMP_05 + } // End Group Error Indication + } Group "8.8 Configuration Transfer Procedure" -- GitLab From 04cca5d04f8bcbc82d66e41da6369ff13c15224b Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 19 Mar 2024 15:02:14 +0100 Subject: [PATCH 155/365] Initiate message protocol template & PIXITs; Remove useless spaces & tabs --- titan-test-system-framework | 2 +- ttcn/AtsNGAP/NGAP_Pics.ttcn | 12 +- ttcn/AtsNGAP/NGAP_Pixits.ttcn | 51 +- ttcn/AtsNGAP/NGAP_Steps.ttcn | 78 +- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 362 ++--- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 382 +++-- ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn | 52 +- ttcn/AtsNGAP/NGAP_TestControl.ttcn | 8 +- ttcn/AtsNGAP/NGAP_TestSystem.ttcn | 26 +- .../lib/LibNGAP_EncdecDeclarations.ttcn | 2 +- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 205 ++- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1280 ++++++++++------- ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn | 2 +- .../LibNGAP/lib_system/LibNGAP_Interface.ttcn | 18 +- ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn | 110 +- .../ttcn/LibCommon_BasicTypesAndValues.ttcn | 10 +- .../ttcn/LibCommon_DataStrings.ttcn | 2 +- .../ttcn/LibCommon_Sync.ttcn | 12 +- 18 files changed, 1495 insertions(+), 1119 deletions(-) diff --git a/titan-test-system-framework b/titan-test-system-framework index e27aaa8..7d4fc33 160000 --- a/titan-test-system-framework +++ b/titan-test-system-framework @@ -1 +1 @@ -Subproject commit e27aaa847f49a1e459f427abc3620ef7a40223ca +Subproject commit 7d4fc3323e831d6d07fcf8cd2cf2c5303384a6c6 diff --git a/ttcn/AtsNGAP/NGAP_Pics.ttcn b/ttcn/AtsNGAP/NGAP_Pics.ttcn index 46fa084..9463c97 100644 --- a/ttcn/AtsNGAP/NGAP_Pics.ttcn +++ b/ttcn/AtsNGAP/NGAP_Pics.ttcn @@ -10,26 +10,26 @@ * @see ETSI TS */ module NGAP_Pics { - + group PICS_A2 { /** * @desc Does gNB act as the IUT? * @see ETSI */ modulepar boolean PICS_NGAP_GNB_IUT := false; - + /** * @desc Does AMF act as the IUT? * @see ETSI */ modulepar boolean PICS_NGAP_AMF_IUT := false; - + } // End of group PICS_A2 - + group PICS_A3 { } // End of group PICS_A3 - + group PICS_A4 { } // End of group PICS_A4 - + } // End of module NGAP_Pics diff --git a/ttcn/AtsNGAP/NGAP_Pixits.ttcn b/ttcn/AtsNGAP/NGAP_Pixits.ttcn index 819b6ca..8e4c0e1 100644 --- a/ttcn/AtsNGAP/NGAP_Pixits.ttcn +++ b/ttcn/AtsNGAP/NGAP_Pixits.ttcn @@ -10,72 +10,77 @@ * @see ETSI TS */ module NGAP_Pixits { - + + // LibCommon + import from LibCommon_BasicTypesAndValues all; + import from LibCommon_DataStrings all; + // LibNGAP import from NGAP_CommonDataTypes language "ASN.1:1997" all; - + import from NGAP_IEs language "ASN.1:2002" all; + group NGAP_Port_and_addresses { - + group NGAP_TS_Port_and_addresses { - + /** @desc * IP address of the test system */ modulepar charstring PX_NGAP_ETS_IPADDR := "1.1.1.10"; - + /** @desc * Port number of the test system */ modulepar integer PX_NGAP_ETS_PORT := 3868; - + /** @desc * IP address of the test system */ modulepar charstring PX_NGAP_ETS_IPADDR2 := "1.1.1.13"; - + /** @desc * Port number of the test system */ modulepar integer PX_NGAP_ETS_PORT2 := 3868; - + } // End of group NGAP_TS_Port_and_addresses - + group NGAP_SUT_Port_and_addresses { - + /** @desc * IP address of the system under test */ modulepar charstring PX_NGAP_SUT_IPADDR := "1.1.2.10"; - + /** @desc * Port number of the system under test */ modulepar integer PX_NGAP_SUT_PORT := 3868; - + } // End of group NGAP_SUT_Port_and_addresses{ - + } // End of group NGAP_Port_and_addresses - + group NGAP_CommonData { - + /** - * @desc integer for variant selection, - * @see ETSI - */ + * @desc integer for variant selection, + * @see ETSI + */ modulepar integer PX_VA := 1; - + /** * @desc Variant for Criticality values */ modulepar Criticality PX_VA_CRITICALITY := reject; - - /** + + /** * @desc integer for timer TS1RELOCOverall, * @see ETSI TS 136 413, chapter 9.5 */ modulepar float PX_TS1RELOCOverall := 10.0; - + } // End of group NGAP_CommonData - + } // End of module NGAP_Pixits diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 2725a5b..c9828c1 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -14,147 +14,147 @@ module NGAP_Steps { // LibNGAP import from LibNGAP_Steps all; import from LibNGAP_Interface all; - + // NGAP_Ats import from NGAP_Pixits all; - + group GlobalSteps { - + /** * @desc This is a test step that init global variables * This procedure will be use when the Test System acts as AMF (SUT is gNB) */ function f_NGAP_amf_init() runs on NGAPComponent { - + // Defaults vc_default_ngap := activate (a_defaultNGAP()); - + // Base LibNGAP init function if there will be any base initialisation f_NGAP_Init_Component(); - + vc_ETS_address := PX_NGAP_ETS_IPADDR; vc_ETS_port := PX_NGAP_ETS_PORT; vc_SUT_address := PX_NGAP_SUT_IPADDR; vc_SUT_port := PX_NGAP_SUT_PORT; - + } // End of function f_NGAP_amf_init - + /** * @desc This is a test step that init global variables * This procedure will be use when the Test System acts as gNB (SUT is AMF) */ function f_NGAP_gnb_init() runs on NGAPComponent { - + // Defaults vc_default_ngap := activate (a_defaultNGAP()); - + // Base LibNGAP init function if there will be any base initialisation f_NGAP_Init_Component(); - + vc_ETS_address := PX_NGAP_ETS_IPADDR; vc_ETS_port := PX_NGAP_ETS_PORT; vc_SUT_address := PX_NGAP_SUT_IPADDR; vc_SUT_port := PX_NGAP_SUT_PORT; - + } // End of function f_NGAP_gnb_init - + /** * @desc This is a test step that init global variables */ function f_NGAP_gnb_init2() runs on NGAPComponent { - + // Defaults vc_default_ngap := activate (a_defaultNGAP()); - + // Base LibNGAP init function if there will be any base initialisation f_NGAP_Init_Component(); - + vc_ETS_address := PX_NGAP_ETS_IPADDR2; vc_ETS_port := PX_NGAP_ETS_PORT2; vc_SUT_address := PX_NGAP_SUT_IPADDR; vc_SUT_port := PX_NGAP_SUT_PORT; - + } // End of function f_NGAP_gnb_init2 - + } // End of group GlobalSteps - + group Preambles{ - + /** * @desc */ function f_preamble_NGAP_AMF() runs on NGAPComponent { var default v_def_ngap_; - + f_NGAP_amf_init(); //f_preambleNGAPClient(); } // End of function f_preamble_NGAP_AMF - + /** * @desc */ function f_preamble_NGAP_gNB() runs on NGAPComponent { var default v_def_ngap_; - + f_NGAP_gnb_init(); //f_preambleNGAPServer(); } // End of function f_preamble_NGAP_gNB - + /** * @desc */ function f_preamble_NGAP_gNB2() runs on NGAPComponent { var default v_def_ngap_; - + f_NGAP_gnb_init2(); //f_preambleNGAPServer(); } // End of function f_preamble_NGAP_gNB2 - + } // End of group Preambles - + group Postambles { - + /** * @desc */ function f_postamble_NGAP_AMF() runs on NGAPComponent { f_postambleNGAP_AMF(); - + // Deactivate defaults deactivate; } // End of function f_postamble_NGAP_AMF - + /** * @desc */ function f_postamble_NGAP_gNB() runs on NGAPComponent { f_postambleNGAP_gNB(); - + //Deactivate defaults deactivate; } // End of function f_postamble_NGAP_gNB - + /** * @desc */ function f_postamble_NGAP_gNB2() runs on NGAPComponent { f_postambleNGAP_gNB(); - + // Deactivate defaults deactivate; } // End of function f_postamble_NGAP_gNB2 - + } // End of group Postambles - + group CheckFunctions { - + } // End of group CheckFunctions - + group DefaultTestStep{ - + }//end group DefaultTestStep - + } // End of module NGAP_Steps diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 91abbb7..494d82c 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -10,7 +10,7 @@ * @see ETSI TS 138 413 / 3GPP TS 38.413 version 16.12 Release 16 */ module NGAP_TCFunctions { - + // LibCommon import from LibCommon_Sync all; import from LibCommon_VerdictControl all; @@ -29,53 +29,53 @@ module NGAP_TCFunctions { import from NGAP_TestSystem all; import from NGAP_Steps all; import from NGAP_Pixits all; - + group TC_function_template{ - + /** * @desc Testcase function for TC_NGAP_gNB_or_aMF_functionName_01 */ function f_TC_NGAP_gNB_or_aMF_functionName_01() runs on NGAPComponent { // Local variables - + // Preamble f_NGAP_gnb_init(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - + // Body //f_send_NGAP_PDU(m_ngap_initMsg(/*initiating msgtemplate*/)); //f_recv_NGAP_PDU(?); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - + // Postamble f_postamble_NGAP_gNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - + } // End of function f_TC_NGAP_gNB_or_aMF_functionName_01 - - }//end of group TC_function_template - + + } // End of group TC_function_template + group gNB_Role{ //8.2 group PDU_Session_Management_Procedures{ //8.2.1 group PDU_Session_Resource_Setup{ - + /** * @desc Testcase function for TC_NGAP_gNB_or_aMF_functionName_01 */ function f_TC_NGAP_GNB_PDU_01() runs on aMFNGAPComponent { // Local variables - + // Preamble f_NGAP_amf_init(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - + // Body f_send_NGAP_PDU( m_ngap_initMsg( @@ -98,8 +98,8 @@ module NGAP_TCFunctions { ) } //) - - + + ) ) ); @@ -108,481 +108,481 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_PDUSessionResourceSetupResponse( - mw_ie_aMFUeNgapId(-), - mw_ie_aMFUeNgapId(-), - ? //TODO replace with template + -, + -, + ? //TODO replace with template ) ) ); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - + // Postamble f_postamble_NGAP_gNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - + } // End of function f_TC_NGAP_gNB_or_aMF_functionName_01 - - - - }//end of group PDU_Session_Resource_Setup + + + + } // End of group PDU_Session_Resource_Setup //8.2.2 group PDU_Session_Resource_Release{ - }//end of group PDU_Session_Resource_Release + } // End of group PDU_Session_Resource_Release //8.2.3 group PDU_Session_Resource_Modify{ - }//end of group PDU_Session_Resource_Modify + } // End of group PDU_Session_Resource_Modify //8.2.4 group PDU_Session_Resource_Notify{ - }//end of group PDU_Session_Resource_Notify + } // End of group PDU_Session_Resource_Notify //8.2.5 group PDU_Session_Resource_Modify_Indication{ - }//end of group PDU_Session_Resource_Modify_Indication - }//end of group PDU_Session_Management_Procedures + } // End of group PDU_Session_Resource_Modify_Indication + } // End of group PDU_Session_Management_Procedures //8.3 group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ - }//end of group Initial_Context_Setup + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ - }//end of group UE_Context_Release_Request_NG_RAN_node_initiated + } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ - }//end of group UE_Context_Release_AMF_initiated + } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ - }//end of group UE_Context_Modification + } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ - }//end of group RRC_Inactive_Transition_Report + } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ - }//end of group Connection_Establishment_Indication + } // End of group Connection_Establishment_Indication //8.3.7 group AMF_CP_Relocation_Indication{ - }//end of group AMF_CP_Relocation_Indication + } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ - }//end of group RAN_CP_Relocation_Indication + } // End of group RAN_CP_Relocation_Indication //8.3.9 group Retrieve_UE_Information{ - }//end of group Retrieve_UE_Information + } // End of group Retrieve_UE_Information //8.3.10 group UE_Information_Transfer{ - }//end of group UE_Information_Transfer + } // End of group UE_Information_Transfer //8.3.11 group UE_Context_Suspend{ - }//end of group UE_Context_Suspend + } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ - }//end of group UE_Context_Resume - }//end of group UE_Context_Management_Procedures + } // End of group UE_Context_Resume + } // End of group UE_Context_Management_Procedures //8.4 group UE_Mobility_Management_Procedures{ //8.4.1 group Handover_Preparation{ - }//end of group Handover_Preparation + } // End of group Handover_Preparation //8.4.2 group Handover_Resource_Allocation{ - }//end of group Handover_Resource_Allocation + } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ - }//end of group Handover_Notification + } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ - }//end of group Path_Switch_Request + } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ - }//end of group Handover_Cancellation + } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ - }//end of group Uplink_RAN_Status_Transfer + } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ - }//end of group Downlink_RAN_Status_Transfer + } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ - }//end of group Handover_Success + } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ - }//end of group Uplink_RAN_Early_Status_Transfer + } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ - }//end of group Downlink_RAN_Early_Status_Transfer - }//end of group UE_Mobility_Management_Procedures + } // End of group Downlink_RAN_Early_Status_Transfer + } // End of group UE_Mobility_Management_Procedures //8.5 group Paging_Procedures{ //8.5.1 group Paging{ - }//end of group Paging - }//end of group Paging_Procedures + } // End of group Paging + } // End of group Paging_Procedures //8.6 group Transport_of_NAS_Messages_Procedures{ //8.6.1 group Initial_UE_Message{ - }//end of group Initial_UE_Message + } // End of group Initial_UE_Message //8.6.2 group Downlink_NAS_Transport{ - }//end of group Downlink_NAS_Transport + } // End of group Downlink_NAS_Transport //8.6.3 group Uplink_NAS_Transport{ - }//end of group Uplink_NAS_Transport + } // End of group Uplink_NAS_Transport //8.6.4 group NAS_Non_Delivery_Indication{ - }//end of group NAS_Non_Delivery_Indication + } // End of group NAS_Non_Delivery_Indication //8.6.5 group Rerout_NAS_Request{ - }//end of group Rerout_NAS_Request - }//end of group Transport_of_NAS_Messages_Procedures + } // End of group Rerout_NAS_Request + } // End of group Transport_of_NAS_Messages_Procedures //8.7 group Interface_Management_Procedures{ //8.7.1 group NG_Setup{ - }//end of group NG_Setup + } // End of group NG_Setup //8.7.2 group RAN_Configuration_Update{ - }//end of group RAN_Configuration_Update + } // End of group RAN_Configuration_Update //8.7.3 group AMF_Configuration_Update{ - }//end of group AMF_Configuration_Update + } // End of group AMF_Configuration_Update //8.7.4 group NG_Reset{ - }//end of group NG_Reset + } // End of group NG_Reset //8.7.5 group Error_Indication{ - }//end of group Error_Indication + } // End of group Error_Indication //8.7.6 group AMF_Status_Indication{ - }//end of group AMF_Status_Indication + } // End of group AMF_Status_Indication //8.7.7 group Overload_Start{ - }//end of group Overload_Start + } // End of group Overload_Start //8.7.8 group Overload_Stop{ - }//end of group Overload_Stop - }//end of group Interface_Management_Procedures + } // End of group Overload_Stop + } // End of group Interface_Management_Procedures //8.8 group Configuration_Transfer_Procedures{ //8.8.1 group Uplink_RAN_Configuration_Transfer{ - }//end of group Uplink_RAN_Configuration_Transfer + } // End of group Uplink_RAN_Configuration_Transfer //8.8.2 group Downlink_RAN_Configuration_Transfer{ - }//end of group Downlink_RAN_Configuration_Transfer + } // End of group Downlink_RAN_Configuration_Transfer //8.9 group Warning_Message_Transmission_Procedures{ - }//end of group Warning_Message_Transmission_Procedures + } // End of group Warning_Message_Transmission_Procedures //8.9.1 group Write_Replace_Warning{ - }//end of group Write_Replace_Warning + } // End of group Write_Replace_Warning //8.9.2 group PWS_Cancel{ - }//end of group PWS_Cancel + } // End of group PWS_Cancel //8.9.3 group PWS_Restart_Indication{ - }//end of group PWS_Restart_Indication + } // End of group PWS_Restart_Indication //8.9.4 group PWS_Failure_Indication{ - }//end of group PWS_Failure_Indication - }//end of group Configuration_Transfer_Procedures + } // End of group PWS_Failure_Indication + } // End of group Configuration_Transfer_Procedures //8.10 group NRPPa_Transport_Procedures{ - }//end of group NRPPa_Transport_Procedures + } // End of group NRPPa_Transport_Procedures //8.11 group Trace_Procedures{ //8.11.1 group Trace_Start{ - }//end of group Trace_Start + } // End of group Trace_Start //8.11.2 group Trace_Failure_Indication{ - }//end of group Trace_Failure_Indication + } // End of group Trace_Failure_Indication //8.11.3 group Deactivate_Trace{ - }//end of group Deactivate_Trace + } // End of group Deactivate_Trace //8.11.4 group Cell_Traffic_Trace{ - }//end of group Cell_Traffic_Trace - }//end of group Trace_Procedures + } // End of group Cell_Traffic_Trace + } // End of group Trace_Procedures //8.12 group Location_Reporting_Procedures{ //8.12.1 group Location_Reporting_Control{ - }//end of group Location_Reporting_Control + } // End of group Location_Reporting_Control //8.12.2 group Location_Reporting_Failure_Indication{ - }//end of group Location_Reporting_Failure_Indication + } // End of group Location_Reporting_Failure_Indication //8.12.3 group Location_Report{ - }//end of group Location_Report - }//end of group Location_Reporting_Procedures + } // End of group Location_Report + } // End of group Location_Reporting_Procedures //8.13 group UE_TNLA_Binding_Procedures{ //8.13.1 group UE_TNLA_Binding_Release{ - }//end of group UE_TNLA_Binding_Release - }//end of group UE_TNLA_Binding_Procedures + } // End of group UE_TNLA_Binding_Release + } // End of group UE_TNLA_Binding_Procedures //8.14 group UE_Radio_Capability_Management_Procedures{ //8.14.1 group UE_Radio_Capability_Info_Indication{ - }//end of group UE_Radio_Capability_Info_Indication + } // End of group UE_Radio_Capability_Info_Indication //8.14.2 group UE_Radio_Capability_Check{ - }//end of group UE_Radio_Capability_Check + } // End of group UE_Radio_Capability_Check //8.14.3 group UE_Radio_Capability_ID_Mapping{ - }//end of group UE_Radio_Capability_ID_Mapping - }//end of group UE_Radio_Capability_Management_Procedures + } // End of group UE_Radio_Capability_ID_Mapping + } // End of group UE_Radio_Capability_Management_Procedures //8.15 group Data_Usage_Reporting_Procedures{ //8.15.1 group Secondary_RAT_Data_Usage_Report{ - }//end of group Secondary_RAT_Data_Usage_Report - }//end of group Data_Usage_Reporting_Procedures + } // End of group Secondary_RAT_Data_Usage_Report + } // End of group Data_Usage_Reporting_Procedures //8.16 group RIM_Information_Transfer_Procedures{ //8.16.1 group Uplink_RIM_Information_Transfer{ - }//end of group Uplink_RIM_Information_Transfer + } // End of group Uplink_RIM_Information_Transfer //8.16.2 group Downlink_RIM_Information_Transfer{ - }//end of group Downlink_RIM_Information_Transfer - }//end of group RIM_Information_Transfer_Procedures - }//end of group gNB_Role - + } // End of group Downlink_RIM_Information_Transfer + } // End of group RIM_Information_Transfer_Procedures + } // End of group gNB_Role + group aMF_Role{ //8.2 group PDU_Session_Management_Procedures{ //8.2.1 group PDU_Session_Resource_Setup{ - }//end of group PDU_Session_Resource_Setup + } // End of group PDU_Session_Resource_Setup //8.2.2 group PDU_Session_Resource_Release{ - }//end of group PDU_Session_Resource_Release + } // End of group PDU_Session_Resource_Release //8.2.3 group PDU_Session_Resource_Modify{ - }//end of group PDU_Session_Resource_Modify + } // End of group PDU_Session_Resource_Modify //8.2.4 group PDU_Session_Resource_Notify{ - }//end of group PDU_Session_Resource_Notify + } // End of group PDU_Session_Resource_Notify //8.2.5 group PDU_Session_Resource_Modify_Indication{ - }//end of group PDU_Session_Resource_Modify_Indication - }//end of group PDU_Session_Management_Procedures + } // End of group PDU_Session_Resource_Modify_Indication + } // End of group PDU_Session_Management_Procedures //8.3 group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ - }//end of group Initial_Context_Setup + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ - }//end of group UE_Context_Release_Request_NG_RAN_node_initiated + } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ - }//end of group UE_Context_Release_AMF_initiated + } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ - }//end of group UE_Context_Modification + } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ - }//end of group RRC_Inactive_Transition_Report + } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ - }//end of group Connection_Establishment_Indication + } // End of group Connection_Establishment_Indication //8.3.7 group AMF_CP_Relocation_Indication{ - }//end of group AMF_CP_Relocation_Indication + } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ - }//end of group RAN_CP_Relocation_Indication + } // End of group RAN_CP_Relocation_Indication //8.3.9 group Retrieve_UE_Information{ - }//end of group Retrieve_UE_Information + } // End of group Retrieve_UE_Information //8.3.10 group UE_Information_Transfer{ - }//end of group UE_Information_Transfer + } // End of group UE_Information_Transfer //8.3.11 group UE_Context_Suspend{ - }//end of group UE_Context_Suspend + } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ - }//end of group UE_Context_Resume - }//end of group UE_Context_Management_Procedures + } // End of group UE_Context_Resume + } // End of group UE_Context_Management_Procedures //8.4 group UE_Mobility_Management_Procedures{ //8.4.1 group Handover_Preparation{ - }//end of group Handover_Preparation + } // End of group Handover_Preparation //8.4.2 group Handover_Resource_Allocation{ - }//end of group Handover_Resource_Allocation + } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ - }//end of group Handover_Notification + } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ - }//end of group Path_Switch_Request + } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ - }//end of group Handover_Cancellation + } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ - }//end of group Uplink_RAN_Status_Transfer + } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ - }//end of group Downlink_RAN_Status_Transfer + } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ - }//end of group Handover_Success + } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ - }//end of group Uplink_RAN_Early_Status_Transfer + } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ - }//end of group Downlink_RAN_Early_Status_Transfer - }//end of group UE_Mobility_Management_Procedures + } // End of group Downlink_RAN_Early_Status_Transfer + } // End of group UE_Mobility_Management_Procedures //8.5 group Paging_Procedures{ //8.5.1 group Paging{ - }//end of group Paging - }//end of group Paging_Procedures + } // End of group Paging + } // End of group Paging_Procedures //8.6 group Transport_of_NAS_Messages_Procedures{ //8.6.1 group Initial_UE_Message{ - }//end of group Initial_UE_Message + } // End of group Initial_UE_Message //8.6.2 group Downlink_NAS_Transport{ - }//end of group Downlink_NAS_Transport + } // End of group Downlink_NAS_Transport //8.6.3 group Uplink_NAS_Transport{ - }//end of group Uplink_NAS_Transport + } // End of group Uplink_NAS_Transport //8.6.4 group NAS_Non_Delivery_Indication{ - }//end of group NAS_Non_Delivery_Indication + } // End of group NAS_Non_Delivery_Indication //8.6.5 group Rerout_NAS_Request{ - }//end of group Rerout_NAS_Request - }//end of group Transport_of_NAS_Messages_Procedures + } // End of group Rerout_NAS_Request + } // End of group Transport_of_NAS_Messages_Procedures //8.7 group Interface_Management_Procedures{ //8.7.1 group NG_Setup{ - }//end of group NG_Setup + } // End of group NG_Setup //8.7.2 group RAN_Configuration_Update{ - }//end of group RAN_Configuration_Update + } // End of group RAN_Configuration_Update //8.7.3 group AMF_Configuration_Update{ - }//end of group AMF_Configuration_Update + } // End of group AMF_Configuration_Update //8.7.4 group NG_Reset{ - }//end of group NG_Reset + } // End of group NG_Reset //8.7.5 group Error_Indication{ - }//end of group Error_Indication + } // End of group Error_Indication //8.7.6 group AMF_Status_Indication{ - }//end of group AMF_Status_Indication + } // End of group AMF_Status_Indication //8.7.7 group Overload_Start{ - }//end of group Overload_Start + } // End of group Overload_Start //8.7.8 group Overload_Stop{ - }//end of group Overload_Stop - }//end of group Interface_Management_Procedures + } // End of group Overload_Stop + } // End of group Interface_Management_Procedures //8.8 group Configuration_Transfer_Procedures{ //8.8.1 group Uplink_RAN_Configuration_Transfer{ - }//end of group Uplink_RAN_Configuration_Transfer + } // End of group Uplink_RAN_Configuration_Transfer //8.8.2 group Downlink_RAN_Configuration_Transfer{ - }//end of group Downlink_RAN_Configuration_Transfer + } // End of group Downlink_RAN_Configuration_Transfer //8.9 group Warning_Message_Transmission_Procedures{ - }//end of group Warning_Message_Transmission_Procedures + } // End of group Warning_Message_Transmission_Procedures //8.9.1 group Write_Replace_Warning{ - }//end of group Write_Replace_Warning + } // End of group Write_Replace_Warning //8.9.2 group PWS_Cancel{ - }//end of group PWS_Cancel + } // End of group PWS_Cancel //8.9.3 group PWS_Restart_Indication{ - }//end of group PWS_Restart_Indication + } // End of group PWS_Restart_Indication //8.9.4 group PWS_Failure_Indication{ - }//end of group PWS_Failure_Indication - }//end of group Configuration_Transfer_Procedures + } // End of group PWS_Failure_Indication + } // End of group Configuration_Transfer_Procedures //8.10 group NRPPa_Transport_Procedures{ - }//end of group NRPPa_Transport_Procedures + } // End of group NRPPa_Transport_Procedures //8.11 group Trace_Procedures{ //8.11.1 group Trace_Start{ - }//end of group Trace_Start + } // End of group Trace_Start //8.11.2 group Trace_Failure_Indication{ - }//end of group Trace_Failure_Indication + } // End of group Trace_Failure_Indication //8.11.3 group Deactivate_Trace{ - }//end of group Deactivate_Trace + } // End of group Deactivate_Trace //8.11.4 group Cell_Traffic_Trace{ - }//end of group Cell_Traffic_Trace - }//end of group Trace_Procedures + } // End of group Cell_Traffic_Trace + } // End of group Trace_Procedures //8.12 group Location_Reporting_Procedures{ //8.12.1 group Location_Reporting_Control{ - }//end of group Location_Reporting_Control + } // End of group Location_Reporting_Control //8.12.2 group Location_Reporting_Failure_Indication{ - }//end of group Location_Reporting_Failure_Indication + } // End of group Location_Reporting_Failure_Indication //8.12.3 group Location_Report{ - }//end of group Location_Report - }//end of group Location_Reporting_Procedures + } // End of group Location_Report + } // End of group Location_Reporting_Procedures //8.13 group UE_TNLA_Binding_Procedures{ //8.13.1 group UE_TNLA_Binding_Release{ - }//end of group UE_TNLA_Binding_Release - }//end of group UE_TNLA_Binding_Procedures + } // End of group UE_TNLA_Binding_Release + } // End of group UE_TNLA_Binding_Procedures //8.14 group UE_Radio_Capability_Management_Procedures{ //8.14.1 group UE_Radio_Capability_Info_Indication{ - }//end of group UE_Radio_Capability_Info_Indication + } // End of group UE_Radio_Capability_Info_Indication //8.14.2 group UE_Radio_Capability_Check{ - }//end of group UE_Radio_Capability_Check + } // End of group UE_Radio_Capability_Check //8.14.3 group UE_Radio_Capability_ID_Mapping{ - }//end of group UE_Radio_Capability_ID_Mapping - }//end of group UE_Radio_Capability_Management_Procedures + } // End of group UE_Radio_Capability_ID_Mapping + } // End of group UE_Radio_Capability_Management_Procedures //8.15 group Data_Usage_Reporting_Procedures{ //8.15.1 group Secondary_RAT_Data_Usage_Report{ - }//end of group Secondary_RAT_Data_Usage_Report - }//end of group Data_Usage_Reporting_Procedures + } // End of group Secondary_RAT_Data_Usage_Report + } // End of group Data_Usage_Reporting_Procedures //8.16 group RIM_Information_Transfer_Procedures{ //8.16.1 group Uplink_RIM_Information_Transfer{ - }//end of group Uplink_RIM_Information_Transfer + } // End of group Uplink_RIM_Information_Transfer //8.16.2 group Downlink_RIM_Information_Transfer{ - }//end of group Downlink_RIM_Information_Transfer - }//end of group RIM_Information_Transfer_Procedures - }//end of group aMF_Role - + } // End of group Downlink_RIM_Information_Transfer + } // End of group RIM_Information_Transfer_Procedures + } // End of group aMF_Role + } // End of module NGAP_TCFunctions diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index d833735..8dff436 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -13,7 +13,7 @@ module NGAP_TestCases { // LibCommon import from LibCommon_Sync all ; - + // LibNGAP import from NGAP_Constants language "ASN.1:2002" all; import from NGAP_CommonDataTypes language "ASN.1:2002" all; @@ -32,10 +32,10 @@ module NGAP_TestCases { import from NGAP_TestSystem all; import from NGAP_TCFunctions all; import from NGAP_Pics all; - - + + group TC_testcase_template{ - + /** * @desc Verify ... *
@@ -53,26 +53,25 @@ module NGAP_TestCases {
             var gNBNGAPComponent v_ngap_gnb_or_amf; //or v_ngap_amf
 
             var AdditionalDLUPTNLInformationForHOItem v_test, v_test1;
-                
+
             // Test control
             if (not PICS_NGAP_AMF_IUT) {
                 log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT' shall be set to true for executing the TC. ***");
                 stop;
             }
-                
+
             // Test component configuration
             f_cf_NGAP_gNB_Up/*aMF_Up*/(v_ngap_gnb_or_amf);
-                
+
             // Start
             v_test := valueof(
                               m_additionalDLUPTNLInformationForHOItem(
                                                                       m_uPTransportLayerInformation_gTPTunnel(
-                                                                                   m_gTPTunnel(
-                                                                                                  '0'B, 
-                                                                                                  '00000000'O
-                                                                                   )),
-                                                                      { m_qosFlowItemWithDataForwarding(
-                                                                                                        0,
+                                                                                                              m_gTPTunnel
+                                                                                                              ),
+                                                                      { 
+                                                                        m_qosFlowItemWithDataForwarding(
+                                                                                                        -,
                                                                                                         m_dataForwardingAccepted
                                                                                                         )
                                                                       }
@@ -80,12 +79,11 @@ module NGAP_TestCases {
             v_test1 := valueof(
                                m_additionalDLUPTNLInformationForHOItem(
                                                                        m_uPTransportLayerInformation_gTPTunnel(
-                                                                                    m_gTPTunnel(
-                                                                                                    '0'B, 
-                                                                                                    '00000000'O
-                                                                                    )),
-                                                                       { m_qosFlowItemWithDataForwarding(
-                                                                                                         0,
+                                                                                                               m_gTPTunnel
+                                                                                                               ),
+                                                                       { 
+                                                                        m_qosFlowItemWithDataForwarding(
+                                                                                                         -,
                                                                                                          m_dataForwardingAccepted,
                                                                                                          m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex(
                                                                                                                                                                    m_alternativeQoSParaSetIndex
@@ -94,28 +92,26 @@ module NGAP_TestCases {
                                                                        -,
                                                                        m_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation(
                                                                                                                                            m_uPTransportLayerInformation_gTPTunnel(
-                                                                                                                                                        m_gTPTunnel(
-                                                                                                                                                                       '0'B, 
-                                                                                                                                                                       '00000000'O
-                                                                                                                                                        
-                               )))));
+                                                                                                                                                                                   m_gTPTunnel
+
+                               ))));
             v_ngap_gnb_or_amf.start(f_TC_NGAP_gNB_or_aMF_functionName_01());
-                
+
             // synchronize PTC on 1 sychronization points
             f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone});
-                
+
             f_cf_Down/*gNBoraMF*/();
 
         } // End of testcase TC_NGAP_gNB_or_aMF_testcaseName_01
-        
-    }//end of group TC_testcase_template
-    
+
+    } // End of group TC_testcase_template
+
     group gNB_Role{
         //8.2
         group PDU_Session_Management_Procedures{
             //8.2.1
             group PDU_Session_Resource_Setup{
-                
+
                 /**
                  * @desc Verify ...
                  * 
@@ -131,482 +127,482 @@ module NGAP_TestCases {
 
                     // Local variables
                     var aMFNGAPComponent v_ngap_amf;
-                
+
                     // Test control
                     if (not PICS_NGAP_GNB_IUT) {
                         log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT' shall be set to true for executing the TC. ***");
                         stop;
                     }
-                
+
                     // Test component configuration
                     f_cf_NGAP_aMF_Up(v_ngap_amf);
-                
+
                     // Start
                     v_ngap_amf.start(f_TC_NGAP_GNB_PDU_01());
-                
+
                     // synchronize PTC on 1 sychronization points
                     f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone});
-                
+
                     f_cf_Down/*gNBoraMF*/();
 
                 } // End of testcase TP_NGAP_GNB_PDU_01
-                
-            }//end of group PDU_Session_Resource_Setup
-            
+
+            } // End of group PDU_Session_Resource_Setup
+
             //8.2.2
             group PDU_Session_Resource_Release{
-            }//end of group PDU_Session_Resource_Release
+            } // End of group PDU_Session_Resource_Release
             //8.2.3
             group PDU_Session_Resource_Modify{
-            }//end of group PDU_Session_Resource_Modify
+            } // End of group PDU_Session_Resource_Modify
             //8.2.4
             group PDU_Session_Resource_Notify{
-            }//end of group PDU_Session_Resource_Notify
+            } // End of group PDU_Session_Resource_Notify
             //8.2.5
             group PDU_Session_Resource_Modify_Indication{
-            }//end of group PDU_Session_Resource_Modify_Indication
-        }//end of group PDU_Session_Management_Procedures
+            } // End of group PDU_Session_Resource_Modify_Indication
+        } // End of group PDU_Session_Management_Procedures
         //8.3
         group UE_Context_Management_Procedures{
             //8.3.1
             group Initial_Context_Setup{
-            }//end of group Initial_Context_Setup
+            } // End of group Initial_Context_Setup
             //8.3.2
             group UE_Context_Release_Request_NG_RAN_node_initiated{
-            }//end of group UE_Context_Release_Request_NG_RAN_node_initiated
+            } // End of group UE_Context_Release_Request_NG_RAN_node_initiated
             //8.3.3
             group UE_Context_Release_AMF_initiated{
-            }//end of group UE_Context_Release_AMF_initiated
+            } // End of group UE_Context_Release_AMF_initiated
             //8.3.4
             group UE_Context_Modification{
-            }//end of group UE_Context_Modification
+            } // End of group UE_Context_Modification
             //8.3.5
             group RRC_Inactive_Transition_Report{
-            }//end of group RRC_Inactive_Transition_Report
+            } // End of group RRC_Inactive_Transition_Report
             //8.3.6
             group Connection_Establishment_Indication{
-            }//end of group Connection_Establishment_Indication
+            } // End of group Connection_Establishment_Indication
             //8.3.7
             group AMF_CP_Relocation_Indication{
-            }//end of group AMF_CP_Relocation_Indication
+            } // End of group AMF_CP_Relocation_Indication
             //8.3.8
             group RAN_CP_Relocation_Indication{
-            }//end of group RAN_CP_Relocation_Indication
+            } // End of group RAN_CP_Relocation_Indication
             //8.3.9
             group Retrieve_UE_Information{
-            }//end of group Retrieve_UE_Information
+            } // End of group Retrieve_UE_Information
             //8.3.10
             group UE_Information_Transfer{
-            }//end of group UE_Information_Transfer
+            } // End of group UE_Information_Transfer
             //8.3.11
             group UE_Context_Suspend{
-            }//end of group UE_Context_Suspend
+            } // End of group UE_Context_Suspend
             //8.3.12
             group UE_Context_Resume{
-            }//end of group UE_Context_Resume
-        }//end of group UE_Context_Management_Procedures
+            } // End of group UE_Context_Resume
+        } // End of group UE_Context_Management_Procedures
         //8.4
         group UE_Mobility_Management_Procedures{
             //8.4.1
             group Handover_Preparation{
-            }//end of group Handover_Preparation
+            } // End of group Handover_Preparation
             //8.4.2
             group Handover_Resource_Allocation{
-            }//end of group Handover_Resource_Allocation
+            } // End of group Handover_Resource_Allocation
             //8.4.3
             group Handover_Notification{
-            }//end of group Handover_Notification
+            } // End of group Handover_Notification
             //8.4.4
             group Path_Switch_Request{
-            }//end of group Path_Switch_Request
+            } // End of group Path_Switch_Request
             //8.4.5
             group Handover_Cancellation{
-            }//end of group Handover_Cancellation
+            } // End of group Handover_Cancellation
             //8.4.6
             group Uplink_RAN_Status_Transfer{
-            }//end of group Uplink_RAN_Status_Transfer
+            } // End of group Uplink_RAN_Status_Transfer
             //8.4.7
             group Downlink_RAN_Status_Transfer{
-            }//end of group Downlink_RAN_Status_Transfer
+            } // End of group Downlink_RAN_Status_Transfer
             //8.4.8
             group Handover_Success{
-            }//end of group Handover_Success
+            } // End of group Handover_Success
             //8.4.9
             group Uplink_RAN_Early_Status_Transfer{
-            }//end of group Uplink_RAN_Early_Status_Transfer
+            } // End of group Uplink_RAN_Early_Status_Transfer
             //8.4.10
             group Downlink_RAN_Early_Status_Transfer{
-            }//end of group Downlink_RAN_Early_Status_Transfer
-        }//end of group UE_Mobility_Management_Procedures
+            } // End of group Downlink_RAN_Early_Status_Transfer
+        } // End of group UE_Mobility_Management_Procedures
         //8.5
         group Paging_Procedures{
             //8.5.1
             group Paging{
-            }//end of group Paging
-        }//end of group Paging_Procedures
+            } // End of group Paging
+        } // End of group Paging_Procedures
         //8.6
         group Transport_of_NAS_Messages_Procedures{
             //8.6.1
             group Initial_UE_Message{
-            }//end of group Initial_UE_Message
+            } // End of group Initial_UE_Message
             //8.6.2
             group Downlink_NAS_Transport{
-            }//end of group Downlink_NAS_Transport
+            } // End of group Downlink_NAS_Transport
             //8.6.3
             group Uplink_NAS_Transport{
-            }//end of group Uplink_NAS_Transport
+            } // End of group Uplink_NAS_Transport
             //8.6.4
             group NAS_Non_Delivery_Indication{
-            }//end of group NAS_Non_Delivery_Indication
+            } // End of group NAS_Non_Delivery_Indication
             //8.6.5
             group Rerout_NAS_Request{
-            }//end of group Rerout_NAS_Request
-        }//end of group Transport_of_NAS_Messages_Procedures
+            } // End of group Rerout_NAS_Request
+        } // End of group Transport_of_NAS_Messages_Procedures
         //8.7
         group Interface_Management_Procedures{
             //8.7.1
             group NG_Setup{
-            }//end of group NG_Setup
+            } // End of group NG_Setup
             //8.7.2
             group RAN_Configuration_Update{
-            }//end of group RAN_Configuration_Update
+            } // End of group RAN_Configuration_Update
             //8.7.3
             group AMF_Configuration_Update{
-            }//end of group AMF_Configuration_Update
+            } // End of group AMF_Configuration_Update
             //8.7.4
             group NG_Reset{
-            }//end of group NG_Reset
+            } // End of group NG_Reset
             //8.7.5
             group Error_Indication{
-            }//end of group Error_Indication
+            } // End of group Error_Indication
             //8.7.6
             group AMF_Status_Indication{
-            }//end of group AMF_Status_Indication
+            } // End of group AMF_Status_Indication
             //8.7.7
             group Overload_Start{
-            }//end of group Overload_Start
+            } // End of group Overload_Start
             //8.7.8
             group Overload_Stop{
-            }//end of group Overload_Stop
-        }//end of group Interface_Management_Procedures
+            } // End of group Overload_Stop
+        } // End of group Interface_Management_Procedures
         //8.8
         group Configuration_Transfer_Procedures{
             //8.8.1
             group Uplink_RAN_Configuration_Transfer{
-            }//end of group Uplink_RAN_Configuration_Transfer
+            } // End of group Uplink_RAN_Configuration_Transfer
             //8.8.2
             group Downlink_RAN_Configuration_Transfer{
-            }//end of group Downlink_RAN_Configuration_Transfer
+            } // End of group Downlink_RAN_Configuration_Transfer
             //8.9
             group Warning_Message_Transmission_Procedures{
-            }//end of group Warning_Message_Transmission_Procedures
+            } // End of group Warning_Message_Transmission_Procedures
             //8.9.1
             group Write_Replace_Warning{
-            }//end of group Write_Replace_Warning
+            } // End of group Write_Replace_Warning
             //8.9.2
             group PWS_Cancel{
-            }//end of group PWS_Cancel
+            } // End of group PWS_Cancel
             //8.9.3
             group PWS_Restart_Indication{
-            }//end of group PWS_Restart_Indication
+            } // End of group PWS_Restart_Indication
             //8.9.4
             group PWS_Failure_Indication{
-            }//end of group PWS_Failure_Indication
-        }//end of group Configuration_Transfer_Procedures
+            } // End of group PWS_Failure_Indication
+        } // End of group Configuration_Transfer_Procedures
         //8.10
         group NRPPa_Transport_Procedures{
-        }//end of group NRPPa_Transport_Procedures
+        } // End of group NRPPa_Transport_Procedures
         //8.11
         group Trace_Procedures{
             //8.11.1
             group Trace_Start{
-            }//end of group Trace_Start
+            } // End of group Trace_Start
             //8.11.2
             group Trace_Failure_Indication{
-            }//end of group Trace_Failure_Indication
+            } // End of group Trace_Failure_Indication
             //8.11.3
             group Deactivate_Trace{
-            }//end of group Deactivate_Trace
+            } // End of group Deactivate_Trace
             //8.11.4
             group Cell_Traffic_Trace{
-            }//end of group Cell_Traffic_Trace
-        }//end of group Trace_Procedures
+            } // End of group Cell_Traffic_Trace
+        } // End of group Trace_Procedures
         //8.12
         group Location_Reporting_Procedures{
             //8.12.1
             group Location_Reporting_Control{
-            }//end of group Location_Reporting_Control
+            } // End of group Location_Reporting_Control
             //8.12.2
             group Location_Reporting_Failure_Indication{
-            }//end of group Location_Reporting_Failure_Indication
+            } // End of group Location_Reporting_Failure_Indication
             //8.12.3
             group Location_Report{
-            }//end of group Location_Report
-        }//end of group Location_Reporting_Procedures
+            } // End of group Location_Report
+        } // End of group Location_Reporting_Procedures
         //8.13
         group UE_TNLA_Binding_Procedures{
             //8.13.1
             group UE_TNLA_Binding_Release{
-            }//end of group UE_TNLA_Binding_Release
-        }//end of group UE_TNLA_Binding_Procedures
+            } // End of group UE_TNLA_Binding_Release
+        } // End of group UE_TNLA_Binding_Procedures
         //8.14
         group UE_Radio_Capability_Management_Procedures{
             //8.14.1
             group UE_Radio_Capability_Info_Indication{
-            }//end of group UE_Radio_Capability_Info_Indication
+            } // End of group UE_Radio_Capability_Info_Indication
             //8.14.2
             group UE_Radio_Capability_Check{
-            }//end of group UE_Radio_Capability_Check
+            } // End of group UE_Radio_Capability_Check
             //8.14.3
             group UE_Radio_Capability_ID_Mapping{
-            }//end of group UE_Radio_Capability_ID_Mapping
-        }//end of group UE_Radio_Capability_Management_Procedures
+            } // End of group UE_Radio_Capability_ID_Mapping
+        } // End of group UE_Radio_Capability_Management_Procedures
         //8.15
         group Data_Usage_Reporting_Procedures{
             //8.15.1
             group Secondary_RAT_Data_Usage_Report{
-            }//end of group Secondary_RAT_Data_Usage_Report
-        }//end of group Data_Usage_Reporting_Procedures
+            } // End of group Secondary_RAT_Data_Usage_Report
+        } // End of group Data_Usage_Reporting_Procedures
         //8.16
         group RIM_Information_Transfer_Procedures{
             //8.16.1
             group Uplink_RIM_Information_Transfer{
-            }//end of group Uplink_RIM_Information_Transfer
+            } // End of group Uplink_RIM_Information_Transfer
             //8.16.2
             group Downlink_RIM_Information_Transfer{
-            }//end of group Downlink_RIM_Information_Transfer
-        }//end of group RIM_Information_Transfer_Procedures
-    }//end of group gNB_Role 
-    
+            } // End of group Downlink_RIM_Information_Transfer
+        } // End of group RIM_Information_Transfer_Procedures
+    } // End of group gNB_Role 
+
     group aMF_Role{
         //8.2
         group PDU_Session_Management_Procedures{
             //8.2.1
             group PDU_Session_Resource_Setup{
-            }//end of group PDU_Session_Resource_Setup
+            } // End of group PDU_Session_Resource_Setup
             //8.2.2
             group PDU_Session_Resource_Release{
-            }//end of group PDU_Session_Resource_Release
+            } // End of group PDU_Session_Resource_Release
             //8.2.3
             group PDU_Session_Resource_Modify{
-            }//end of group PDU_Session_Resource_Modify
+            } // End of group PDU_Session_Resource_Modify
             //8.2.4
             group PDU_Session_Resource_Notify{
-            }//end of group PDU_Session_Resource_Notify
+            } // End of group PDU_Session_Resource_Notify
             //8.2.5
             group PDU_Session_Resource_Modify_Indication{
-            }//end of group PDU_Session_Resource_Modify_Indication
-        }//end of group PDU_Session_Management_Procedures
+            } // End of group PDU_Session_Resource_Modify_Indication
+        } // End of group PDU_Session_Management_Procedures
         //8.3
         group UE_Context_Management_Procedures{
             //8.3.1
             group Initial_Context_Setup{
-            }//end of group Initial_Context_Setup
+            } // End of group Initial_Context_Setup
             //8.3.2
             group UE_Context_Release_Request_NG_RAN_node_initiated{
-            }//end of group UE_Context_Release_Request_NG_RAN_node_initiated
+            } // End of group UE_Context_Release_Request_NG_RAN_node_initiated
             //8.3.3
             group UE_Context_Release_AMF_initiated{
-            }//end of group UE_Context_Release_AMF_initiated
+            } // End of group UE_Context_Release_AMF_initiated
             //8.3.4
             group UE_Context_Modification{
-            }//end of group UE_Context_Modification
+            } // End of group UE_Context_Modification
             //8.3.5
             group RRC_Inactive_Transition_Report{
-            }//end of group RRC_Inactive_Transition_Report
+            } // End of group RRC_Inactive_Transition_Report
             //8.3.6
             group Connection_Establishment_Indication{
-            }//end of group Connection_Establishment_Indication
+            } // End of group Connection_Establishment_Indication
             //8.3.7
             group AMF_CP_Relocation_Indication{
-            }//end of group AMF_CP_Relocation_Indication
+            } // End of group AMF_CP_Relocation_Indication
             //8.3.8
             group RAN_CP_Relocation_Indication{
-            }//end of group RAN_CP_Relocation_Indication
+            } // End of group RAN_CP_Relocation_Indication
             //8.3.9
             group Retrieve_UE_Information{
-            }//end of group Retrieve_UE_Information
+            } // End of group Retrieve_UE_Information
             //8.3.10
             group UE_Information_Transfer{
-            }//end of group UE_Information_Transfer
+            } // End of group UE_Information_Transfer
             //8.3.11
             group UE_Context_Suspend{
-            }//end of group UE_Context_Suspend
+            } // End of group UE_Context_Suspend
             //8.3.12
             group UE_Context_Resume{
-            }//end of group UE_Context_Resume
-        }//end of group UE_Context_Management_Procedures
+            } // End of group UE_Context_Resume
+        } // End of group UE_Context_Management_Procedures
         //8.4
         group UE_Mobility_Management_Procedures{
             //8.4.1
             group Handover_Preparation{
-            }//end of group Handover_Preparation
+            } // End of group Handover_Preparation
             //8.4.2
             group Handover_Resource_Allocation{
-            }//end of group Handover_Resource_Allocation
+            } // End of group Handover_Resource_Allocation
             //8.4.3
             group Handover_Notification{
-            }//end of group Handover_Notification
+            } // End of group Handover_Notification
             //8.4.4
             group Path_Switch_Request{
-            }//end of group Path_Switch_Request
+            } // End of group Path_Switch_Request
             //8.4.5
             group Handover_Cancellation{
-            }//end of group Handover_Cancellation
+            } // End of group Handover_Cancellation
             //8.4.6
             group Uplink_RAN_Status_Transfer{
-            }//end of group Uplink_RAN_Status_Transfer
+            } // End of group Uplink_RAN_Status_Transfer
             //8.4.7
             group Downlink_RAN_Status_Transfer{
-            }//end of group Downlink_RAN_Status_Transfer
+            } // End of group Downlink_RAN_Status_Transfer
             //8.4.8
             group Handover_Success{
-            }//end of group Handover_Success
+            } // End of group Handover_Success
             //8.4.9
             group Uplink_RAN_Early_Status_Transfer{
-            }//end of group Uplink_RAN_Early_Status_Transfer
+            } // End of group Uplink_RAN_Early_Status_Transfer
             //8.4.10
             group Downlink_RAN_Early_Status_Transfer{
-            }//end of group Downlink_RAN_Early_Status_Transfer
-        }//end of group UE_Mobility_Management_Procedures
+            } // End of group Downlink_RAN_Early_Status_Transfer
+        } // End of group UE_Mobility_Management_Procedures
         //8.5
         group Paging_Procedures{
             //8.5.1
             group Paging{
-            }//end of group Paging
-        }//end of group Paging_Procedures
+            } // End of group Paging
+        } // End of group Paging_Procedures
         //8.6
         group Transport_of_NAS_Messages_Procedures{
             //8.6.1
             group Initial_UE_Message{
-            }//end of group Initial_UE_Message
+            } // End of group Initial_UE_Message
             //8.6.2
             group Downlink_NAS_Transport{
-            }//end of group Downlink_NAS_Transport
+            } // End of group Downlink_NAS_Transport
             //8.6.3
             group Uplink_NAS_Transport{
-            }//end of group Uplink_NAS_Transport
+            } // End of group Uplink_NAS_Transport
             //8.6.4
             group NAS_Non_Delivery_Indication{
-            }//end of group NAS_Non_Delivery_Indication
+            } // End of group NAS_Non_Delivery_Indication
             //8.6.5
             group Rerout_NAS_Request{
-            }//end of group Rerout_NAS_Request
-        }//end of group Transport_of_NAS_Messages_Procedures
+            } // End of group Rerout_NAS_Request
+        } // End of group Transport_of_NAS_Messages_Procedures
         //8.7
         group Interface_Management_Procedures{
             //8.7.1
             group NG_Setup{
-            }//end of group NG_Setup
+            } // End of group NG_Setup
             //8.7.2
             group RAN_Configuration_Update{
-            }//end of group RAN_Configuration_Update
+            } // End of group RAN_Configuration_Update
             //8.7.3
             group AMF_Configuration_Update{
-            }//end of group AMF_Configuration_Update
+            } // End of group AMF_Configuration_Update
             //8.7.4
             group NG_Reset{
-            }//end of group NG_Reset
+            } // End of group NG_Reset
             //8.7.5
             group Error_Indication{
-            }//end of group Error_Indication
+            } // End of group Error_Indication
             //8.7.6
             group AMF_Status_Indication{
-            }//end of group AMF_Status_Indication
+            } // End of group AMF_Status_Indication
             //8.7.7
             group Overload_Start{
-            }//end of group Overload_Start
+            } // End of group Overload_Start
             //8.7.8
             group Overload_Stop{
-            }//end of group Overload_Stop
-        }//end of group Interface_Management_Procedures
+            } // End of group Overload_Stop
+        } // End of group Interface_Management_Procedures
         //8.8
         group Configuration_Transfer_Procedures{
             //8.8.1
             group Uplink_RAN_Configuration_Transfer{
-            }//end of group Uplink_RAN_Configuration_Transfer
+            } // End of group Uplink_RAN_Configuration_Transfer
             //8.8.2
             group Downlink_RAN_Configuration_Transfer{
-            }//end of group Downlink_RAN_Configuration_Transfer
+            } // End of group Downlink_RAN_Configuration_Transfer
             //8.9
             group Warning_Message_Transmission_Procedures{
-            }//end of group Warning_Message_Transmission_Procedures
+            } // End of group Warning_Message_Transmission_Procedures
             //8.9.1
             group Write_Replace_Warning{
-            }//end of group Write_Replace_Warning
+            } // End of group Write_Replace_Warning
             //8.9.2
             group PWS_Cancel{
-            }//end of group PWS_Cancel
+            } // End of group PWS_Cancel
             //8.9.3
             group PWS_Restart_Indication{
-            }//end of group PWS_Restart_Indication
+            } // End of group PWS_Restart_Indication
             //8.9.4
             group PWS_Failure_Indication{
-            }//end of group PWS_Failure_Indication
-        }//end of group Configuration_Transfer_Procedures
+            } // End of group PWS_Failure_Indication
+        } // End of group Configuration_Transfer_Procedures
         //8.10
         group NRPPa_Transport_Procedures{
-        }//end of group NRPPa_Transport_Procedures
+        } // End of group NRPPa_Transport_Procedures
         //8.11
         group Trace_Procedures{
             //8.11.1
             group Trace_Start{
-            }//end of group Trace_Start
+            } // End of group Trace_Start
             //8.11.2
             group Trace_Failure_Indication{
-            }//end of group Trace_Failure_Indication
+            } // End of group Trace_Failure_Indication
             //8.11.3
             group Deactivate_Trace{
-            }//end of group Deactivate_Trace
+            } // End of group Deactivate_Trace
             //8.11.4
             group Cell_Traffic_Trace{
-            }//end of group Cell_Traffic_Trace
-        }//end of group Trace_Procedures
+            } // End of group Cell_Traffic_Trace
+        } // End of group Trace_Procedures
         //8.12
         group Location_Reporting_Procedures{
             //8.12.1
             group Location_Reporting_Control{
-            }//end of group Location_Reporting_Control
+            } // End of group Location_Reporting_Control
             //8.12.2
             group Location_Reporting_Failure_Indication{
-            }//end of group Location_Reporting_Failure_Indication
+            } // End of group Location_Reporting_Failure_Indication
             //8.12.3
             group Location_Report{
-            }//end of group Location_Report
-        }//end of group Location_Reporting_Procedures
+            } // End of group Location_Report
+        } // End of group Location_Reporting_Procedures
         //8.13
         group UE_TNLA_Binding_Procedures{
             //8.13.1
             group UE_TNLA_Binding_Release{
-            }//end of group UE_TNLA_Binding_Release
-        }//end of group UE_TNLA_Binding_Procedures
+            } // End of group UE_TNLA_Binding_Release
+        } // End of group UE_TNLA_Binding_Procedures
         //8.14
         group UE_Radio_Capability_Management_Procedures{
             //8.14.1
             group UE_Radio_Capability_Info_Indication{
-            }//end of group UE_Radio_Capability_Info_Indication
+            } // End of group UE_Radio_Capability_Info_Indication
             //8.14.2
             group UE_Radio_Capability_Check{
-            }//end of group UE_Radio_Capability_Check
+            } // End of group UE_Radio_Capability_Check
             //8.14.3
             group UE_Radio_Capability_ID_Mapping{
-            }//end of group UE_Radio_Capability_ID_Mapping
-        }//end of group UE_Radio_Capability_Management_Procedures
+            } // End of group UE_Radio_Capability_ID_Mapping
+        } // End of group UE_Radio_Capability_Management_Procedures
         //8.15
         group Data_Usage_Reporting_Procedures{
             //8.15.1
             group Secondary_RAT_Data_Usage_Report{
-            }//end of group Secondary_RAT_Data_Usage_Report
-        }//end of group Data_Usage_Reporting_Procedures
+            } // End of group Secondary_RAT_Data_Usage_Report
+        } // End of group Data_Usage_Reporting_Procedures
         //8.16
         group RIM_Information_Transfer_Procedures{
             //8.16.1
             group Uplink_RIM_Information_Transfer{
-            }//end of group Uplink_RIM_Information_Transfer
+            } // End of group Uplink_RIM_Information_Transfer
             //8.16.2
             group Downlink_RIM_Information_Transfer{
-            }//end of group Downlink_RIM_Information_Transfer
-        }//end of group RIM_Information_Transfer_Procedures
-    }//end of group aMF_Role
+            } // End of group Downlink_RIM_Information_Transfer
+        } // End of group RIM_Information_Transfer_Procedures
+    } // End of group aMF_Role
 
-}//end of module NGAP_TestCases
+} // End of module NGAP_TestCases
diff --git a/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn
index 637ba7b..d30f0d5 100644
--- a/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn
+++ b/ttcn/AtsNGAP/NGAP_TestConfiguration.ttcn
@@ -10,18 +10,18 @@
 *    @see      ETSI TS 
 */
 module NGAP_TestConfiguration {
-    
+
     // LibCommon
     import from LibCommon_Sync all;
     import from LibCommon_VerdictControl all;
-    
+
     // NGAP_Ats
     import from NGAP_TestSystem all;
     //  LibNGAP
     import from LibNGAP_Interface all;
-    
+
     group cfUp {
-        
+
         /**
          * @desc Creates test configuration of cf_NGAP_AMF - gNB is SUT
          * @param p_NGAPComponent_mme
@@ -31,22 +31,22 @@ module NGAP_TestConfiguration {
         ) runs on aMFNGAPComponent system TestAdapter {
             //Variables
             var FncRetCode v_ret := e_success;
-            
+
             //Create
             p_NGAPComponent_amf := aMFNGAPComponent.create ;
-            
+
             // Connect mtc sync port
             connect(self:syncPort, self:syncPort);
             // Connect client sync port
             connect(p_NGAPComponent_amf:syncPort, self:syncPort) ;
             //Map
             map(p_NGAPComponent_amf:N2_gNBaMF_P, system:NGAP_AMF);
-            
+
             activate(a_mtc_shutdown());
-            
+
             f_setVerdict(v_ret);
         } // End of function f_cf_NGAP_AMF_Up
-        
+
         /**
          * @desc Creates test configuration of cf_NGAP_gNB - AMF is SUT
          * @param p_NGAPComponent_gnb
@@ -56,22 +56,22 @@ module NGAP_TestConfiguration {
         ) runs on gNBNGAPComponent system TestAdapter {
             //Variables
             var FncRetCode v_ret := e_success;
-            
+
             //Create
             p_NGAPComponent_gnb := gNBNGAPComponent.create ;
-            
+
             // Connect mtc sync port
             connect(self:syncPort, self:syncPort);
             // Connect client sync port
             connect(p_NGAPComponent_gnb:syncPort, self:syncPort) ;
             //Map
             map(p_NGAPComponent_gnb:N2_gNBaMF_P, system:NGAP_gNB_1);
-            
+
             activate(a_mtc_shutdown());
-            
+
             f_setVerdict(v_ret);
         } // End of function f_cf_NGAP_gNB_Up
-        
+
         /**
          * @desc Creates test configuration of cf_NGAP_2gNB - AMF is SUT
          * @param p_NGAPComponent_enb1, p_NGAPComponent_gnb2
@@ -82,30 +82,30 @@ module NGAP_TestConfiguration {
         ) runs on gNBNGAPComponent system TestAdapter {
             //Variables
             var FncRetCode v_ret := e_success;
-            
+
             //Create
             p_NGAPComponent_gnb1 := gNBNGAPComponent.create;
             p_NGAPComponent_gnb2 := gNBNGAPComponent.create;
-            
+
             // Connect mtc sync port
             connect(self:syncPort, self:syncPort);
             // Connect client sync port
             connect(p_NGAPComponent_gnb1:syncPort, self:syncPort);
             connect(p_NGAPComponent_gnb2:syncPort, self:syncPort) ;
-            
+
             //Map
             map(p_NGAPComponent_gnb1:N2_gNBaMF_P, system:NGAP_gNB_1);
             map(p_NGAPComponent_gnb2:N2_gNBaMF_P, system:NGAP_gNB_2);
-            
+
             activate(a_mtc_shutdown());
-            
+
             f_setVerdict(v_ret);
         } // End of function f_cf_NGAP_2gNB_Up
-        
+
     } // End of group cfUp
-    
+
     group cfDown {
-        
+
         /**
          * @desc Deletes configuration
          * @param 
@@ -117,13 +117,13 @@ module NGAP_TestConfiguration {
             //unmap;
             // Disconnect all
             //disconnect;
-            
+
         } // End of function f_cf_Down
 
     } // End of group cfDown
 
     group shutDownAltsteps {
-        
+
         altstep a_mtc_shutdown() 
         runs on SelfSyncComp {
             [] syncSendPort.receive(m_syncServerStop) {
@@ -131,7 +131,7 @@ module NGAP_TestConfiguration {
                 log("**** a_mtc_shutdown: MTC component received STOP signal **** ");
             }
         } // End of altstep a_mtc_shutdown
-        
+
     } // End of group shutDownAltsteps
-    
+
 } // End of module NGAP_TestConfiguration
diff --git a/ttcn/AtsNGAP/NGAP_TestControl.ttcn b/ttcn/AtsNGAP/NGAP_TestControl.ttcn
index ad98684..2a225f4 100644
--- a/ttcn/AtsNGAP/NGAP_TestControl.ttcn
+++ b/ttcn/AtsNGAP/NGAP_TestControl.ttcn
@@ -10,18 +10,18 @@
 *    @see      ETSI TS 
 */
 module NGAP_TestControl {
-    
+
     // NGAP
     import from NGAP_Pics all;
     import from NGAP_TestCases all;
-    
+
     control {
-        
+
         if (PICS_NGAP_GNB_IUT) {
         }
         if (PICS_NGAP_AMF_IUT) {
         }
-        
+
     } // End of 'Control' statement
 
 } // End of module NGAP_TestControl 
diff --git a/ttcn/AtsNGAP/NGAP_TestSystem.ttcn b/ttcn/AtsNGAP/NGAP_TestSystem.ttcn
index 634cc2a..b435c17 100644
--- a/ttcn/AtsNGAP/NGAP_TestSystem.ttcn
+++ b/ttcn/AtsNGAP/NGAP_TestSystem.ttcn
@@ -10,46 +10,46 @@
 *    @see      ETSI TS 
 */
 module NGAP_TestSystem {
-    
+
     // LibCommon
     import from LibCommon_Sync all;
-    
+
     // LibNGAP
     import from LibNGAP_Interface all;
 
     group SystemConfiguration {
-        
+
         group TestComponents {
-            
+
             group TestSystemInterfaces {
-                
+
                 /**
                  * @desc  The test system interface
                  */
                 type component TestAdapter {
-                    
+
                    port 
                        NGAPPort NGAP_AMF,
                        NGAP_gNB_1, 
                        NGAP_gNB_2
                 } // End of type TestAdapter
-                
+
         } // End of group TestSystemInterfaces
-        
+
         type component gNBNGAPComponent extends ServerSyncComp, NGAPComponent {
             //component variables
         } // End of type component gNBNGAPComponent
-        
+
         type component aMFNGAPComponent extends ServerSyncComp, NGAPComponent {
             //component variables
         } // End of type component aMFNGAPComponent
-        
+
         //type component NGAP extends ServerSyncComp, NGAPComponent { 
         //    //component variables  
         //} // End of component NGAP
-        
+
       } // End of group TestComponents
-      
+
     } // End of group SystemConfiguration
-    
+
 } // End of module NGAP_TestSystem
diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn
index 17cc3eb..a1f0731 100644
--- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn
+++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn
@@ -10,7 +10,7 @@
 *    @see      ETSI TS 
 */
 module LibNGAP_EncdecDeclarations {
-    
+
     import from LibNGAP_TypesAndValues all;
 
 //TODO: if no additional type in TypesAndvalues remove
diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn
index 3e7ef84..eba6d2f 100644
--- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn
+++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn
@@ -10,14 +10,14 @@
 *    @see      ETSI TS 
 */
 module LibNGAP_Pixits {
-    
+
     // LibCommon
     import from LibCommon_DataStrings all;
-    
+
     // LibNGAP
     import from NGAP_IEs language "ASN.1:1997" all;
     import from NGAP_CommonDataTypes language "ASN.1:1997" all;
-    
+
     /**
      * @desc Define the network transportation layer
      */
@@ -26,47 +26,144 @@ module LibNGAP_Pixits {
         TCP_E,
         SCTP_E
     }
-    
+
     /**
      * @desc Network transportation layer setting
      */
     group LibNGAP_Pixit_Parameters {
-        
+
         /** 
          * @desc    boolean (This is an operator option, not a protocol option), True, if IPv6 addresses are used
          */
         modulepar boolean PX_IPv6     := false;
-        
+
         /** 
          * @desc enumerated (This is an operator option, not a protocol option)
          */
         modulepar TransportProtocol PX_NGAP_TRANSPORT_PROTOCOL := SCTP_E;
-        
+
     } // End of group LibNGAP_Pixit_Parameters
-    
+
     /**
      * @desc Network transportation layer timers
      */
     group LibNGAP_Timers {
-        
-        /** @desc float for TWait default value for waiting an operator action
+
+        /** 
+         * @desc float for TWait default value for waiting an operator action
          */
         modulepar float    PX_NGAP_TWAIT:= 30.0;
-        
+
     }  // End of group NGAP_Timers
-    
+
     /** 
-     * @desc The PLMNidentity indicates the PLMN Identity (Public land mobile network).
-     * @see ETSI TS 136 413 Clause 9.2.3.8 PLMN Identity
+     * @desc Unique identifier assigned by the AMF to the UE for NGAP signaling purposes
+     * @see EETSI TS 138 413 V16.12.0 (2023-05)TSI 
+     */
+    modulepar AMF_UE_NGAP_ID PX_AMF_UE_NGAP_ID := 102;
+
+    /** 
+     * @desc This IE carries an identifier assigned by the RAN to the UE for the purposes of NGAP signaling
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar RAN_UE_NGAP_ID PX_RAN_UE_NGAP_ID := 1;
+
+    /** 
+     * @desc The identifier for the PDU session
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar PDUSessionID PX_PDU_SESSION_ID := 0;
+
+    /** 
+     * @desc Single Network Slice Selection Assistance Information
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar SST PX_SST := '01'O;
+
+    /** 
+     * @desc Single Network Slice Selection Assistance Information
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar Oct3 PX_SD := '000000'O;
+
+      /** 
+     * @desc 
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar TransportLayerAddress PX_TRANSPORT_LAYER_ADDRESS := oct2bit('0a0000a2'O); // 10.0.0.162
+
+   /** 
+     * @desc 
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar TransportLayerAddress PX_SOURCE_TRANSPORT_LAYER_ADDRESS := oct2bit('0a0000a2'O); // 10.0.0.162
+
+    /** 
+     * @desc 
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar TransportLayerAddress PX_MC_TRANSPORT_LAYER_ADDRESS := oct2bit('0a0000a2'O); // 10.0.0.162
+
+    /** 
+     * @desc GPRS Tunneling Protocol - Tunnel Endpoint Identifier
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar GTP_TEID PX_GTP_TEID := '4f485cc3'O;
+
+    /** 
+     * @desc To identify QoS flow
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar QosFlowIdentifier PX_QOS_FLOW_IDENTIFIER := 1;
+
+    /** 
+     * @desc To Indicate alternative sets of QoS parameters for the QoS flow
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.10 GBR QoS Flow Information
+     */
+    modulepar AlternativeQoSParaSetIndex PX_ALTERNATIVE_QOS_PARA_SET_INDEX := 1;
+
+    /** 
+     * @desc To indicate the QoS parameters set which can currently be fulfilled
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.153 Alternative QoS Parameters Set Notify Index
+     */
+    modulepar AlternativeQoSParaSetNotifyIndex PX_ALTERNATIVE_QOS_PARA_SET_NOTIFY_INDEX := 0;
+
+   /** 
+    * @desc The Mobile Country Code (MCC) and Mobile Network Code (MNC)
+    * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.3.5 PLMN Identity
+    */
+    modulepar PLMNIdentity PX_PLMN_IDENTITY := '00f110'O; // MCC: 1, MNC: 01
+
+   /** 
+    * @desc The leftmost bits of the E-UTRA Cell Identity IE correspond to the ng-eNB ID
+    * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.9 E-UTRA CGI
+    */
+    modulepar EUTRACellIdentity PX_EUTRA_CELL_IDENTITY := hex2bit('1234501'H);
+
+    /** 
+     * @desc
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) 
+     */
+    modulepar octetstring PX_PDU_SESSION_RESOURCE_RELEASE_COMMAND_TRANSFER := '1000'O;
+
+    /** 
+     * @desc The expected activity time in seconds
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.94 Expected UE Activity Behaviour
+     */
+	modulepar ExpectedActivityPeriod PX_EXPECTED_ACTIVITY_PERIOD := 10;
+
+    /** 
+     * @desc The expected idle time in seconds
+     * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.94 Expected UE Activity Behaviour
      */
-    //modulepar PLMNidentity PX_PLMN_IDENTITY := '000000'O;
-    
+	modulepar ExpectedIdlePeriod PX_EXPECTED_IDLE_PERIOD := 10;
+
     /** 
      * @desc An unknown PLMNidentity indicates the PLMN Identity (Public land mobile network).
      * @see ETSI TS 136 413 Clause 9.2.3.8 PLMN Identity
      */
     //modulepar PLMNidentity PX_PLMN_IDENTITY_UNKNOWN := 'f00000'O;
-    
+
     /** 
      * @desc eNB Identity.
      * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID
@@ -74,7 +171,7 @@ module LibNGAP_Pixits {
     //modulepar ENB_ID PX_eNB_ID := {
     //    homeENB_ID := '0000000000000000000000000000'B
     //};
-    
+
     /** 
      * @desc eNB Identity.
      * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID
@@ -82,192 +179,192 @@ module LibNGAP_Pixits {
    // modulepar ENB_ID PX_eNB_ID_UNKNOWN := {
    //     homeENB_ID := '1100000000000000000000000000'B
    // };
-    
+
     /** 
      * @desc Cell Identity.
      */
     //modulepar CellIdentity PX_CELL_ID := '0000000000000000000000000000'B;
-    
+
     /** 
      * @desc The TAC is used to uniquely identify a Tracking Area Code.
      * @see ETSI TS 136 413 Clause 9.2.3.7 TAC
      */
     //modulepar TAC PX_TACode := '0000'O;
-    
+
     /** 
      * @desc The MME Group ID.
      */
     //modulepar MME_Group_ID PX_MME_GROUP_ID := '0000'O;
-    
+
     /** 
      * @desc The MME Code to uniquely identify an MME within an MME pool area.
      * @see ETSI TS 136 413 Clause 9.2.3.12 MMEC
      */
     //modulepar MME_Code PX_MME_CODE := '01'O;
-    
+
     /** 
      * @desc The relative processing capacity of an MME with respect to the other MMEs in the pool in order to load-balance MMEs within a pool defined in TS 23.401.
      * @see ETSI TS 136 413 Clause 9.2.3.17 Relative MME Capacity
      */
     //modulepar RelativeMMECapacity PX_RELATIVE_MME_CAPACITY := 128;
-    
+
     /** 
      * @desc The Message Identifier IE identifies a warning message.
      * @see ETSI TS 136 413 Clause 9.2.1.44 Message Identifier
      */
     //modulepar MessageIdentifier PX_MESSAGE_IDENTIFIER := oct2bit('0000'O);
-    
+
     /** 
      * @desc The Serial Number IE identifies a particular message from the source and type indicated by the Message Identifie.
      * @see ETSI TS 136 413 Clause 9.2.1.45 Serial Number
      */
     //modulepar SerialNumber PX_SERIAL_NUMBER := oct2bit('0000'O);
-    
+
     /** 
      * @desc The Repetition Period IE indicates the periodicity of the warning message to be broadcast.
      * @see ETSI TS 136 413 Clause 9.2.1.48 Repetition Period
      */
     //modulepar RepetitionPeriod PX_REPETITION_PERIOD := 1;
-    
+
     /** 
      * @desc The Number of Broadcast Requested IE indicates the number of times a message is to be broadcast.
      * @see ETSI TS 136 413 Clause 9.2.1.49 Number of Broadcasts Requested
      */
     //modulepar NumberOfBroadcasts PX_NUMBER_OF_BROADCASTS_REQUESTED := 1;
-    
+
     /** 
      * @desc The Emergency Area ID IE is used to indicate the area which has the emergency impact.
      * @see ETSI TS 136 413 Clause 9.2.1.47 Emergency Area ID
      */
     //modulepar EmergencyAreaID PX_EMERGENCY_AREA_ID := '000000'O;
-    
+
     /** 
      * @desc Event Type.
      * @see ETSI TS 136 413 Clause 9.2.1.34 Request Type
      */
     //modulepar EventType PX_EVENT_TYPE := direct;
-    
+
     /** 
      * @desc Report Area.
      * @see ETSI TS 136 413 Clause 9.2.1.34 Request Type
      */
     //modulepar ReportArea PX_REPORT_AREA := ecgi;
-    
+
     /** 
      * @desc The E-UTRAN Trace ID.
      * @see ETSI TS 136 413 Clause 9.2.1.4 Trace Activation
      */
     //modulepar E_UTRAN_Trace_ID PX_EUTRAN_TRACE_ID := '0000000000000000'O;
-    
+
     /** 
      * @desc The interfaces to trace.
      * @see ETSI TS 136 413 Clause 9.2.1.4 Trace Activation
      */
     //modulepar InterfacesToTrace PX_INTERFACES_TO_TRACE := '00000000'B;
-    
+
     /** 
      * @desc The trace depth.
      * @see ETSI TS 136 413 Clause 9.2.1.4 Trace Activation
      */
     //modulepar TraceDepth PX_TRACE_DEPTH := medium;
-    
+
     /** 
      * @desc Transport Layer Address.
      * @see ETSI TS 136 413 Clause 9.2.2.1 Transport Layer Address
      */
     //modulepar TransportLayerAddress PX_TRANSPORT_LAYER_ADDRESS := oct2bit('0a00000a'O);
-    
+
     /** @desc CDMA2000 message
      * @see ETSI TS 136 413 Clause 9.2.1.23 CDMA2000-PDU
      */
     //modulepar octetstring PX_CDMA200_PDU := ''O;
-    
+
     /** @desc CDMA2000 RAT type
      * @see ETSI TS 136 413 Clause 9.2.1.24 CDMA2000 RAT Type
      */
     //modulepar Cdma2000RATType PX_CDMA200_RAT_TYPE := hRPD;
-    
+
     /** @desc CDMA2000 Reference Cell ID
      * @see ETSI TS 136 413 Clause 9.2.1.25 CDMA2000 Sector ID
      */
     //modulepar octetstring PX_CDMA200_SECTOR_ID := ''O;
-    
+
     /** @desc The Paging DRX as defined in TS 36.304.
      * @see ETSI TS 136 413 Clause 9.2.1.16 Paging DRX
      */
     //modulepar PagingDRX PX_PAGING_DRX := v256;
-    
+
     /** @desc The identifier of the Closed Subscriber Group, as defined in TS 23.003.
      * @see ETSI TS 136 413 Clause 9.2.1.62 CSG Id
      */
     //modulepar Bit27 PX_CSG_ID := '000000000000000000000000000'B;
-    
+
     /** @desc The UE Identity Index value IE is used by the eNB to calculate the Paging Frame TS 36.304.
      * @see ETSI TS 136 413 Clause 9.2.3.10 UE Identity Index value
      */
     //modulepar UEIdentityIndexValue PX_UE_IDENTITY_INDEX_VALUE := '0000000000'B;
-    
+
     /** @desc The International Mobile Subscriber Identity, which is commonly used to identify the UE in the CN.
      * @see ETSI TS 136 413 Clause 9.2.3.11 IMSI
      */
     //modulepar IMSI PX_IMSI := '000000'O;
-    
+
     /** @desc Indicates whether Paging is originated from the CS or PS domain.
      * @see ETSI TS 136 413 Clause 9.2.3.22 CN Domain
      */
     //modulepar CNDomain PX_CNDOMAIN := ps;
-    
+
     /** @desc Indicates a not supported algorithm.
      * @see ETSI TS 136 413 Clause 9.2.1.40 UE Security Capabilities
      */
     //modulepar EncryptionAlgorithms PX_UNSUPPORTED_ENCRYPTION_ALGORITHM := '1111111111111111'B;
-    
+
     /** @desc Indicates a supported encription algorithm.
      * @see ETSI TS 136 413 Clause 9.2.1.40 UE Security Capabilities
      */
     ///modulepar EncryptionAlgorithms PX_ENCRYPTION_ALGORITHM := '0101010101010101'B;
-    
+
     /** @desc Indicates a supported integrity protection algorithm.
      * @see ETSI TS 136 413 Clause 9.2.1.40 UE Security Capabilities
      */
     //modulepar IntegrityProtectionAlgorithms PX_INTEGRITY_PROTECTION_ALGORITHM := '0101010101010101'B;
-    
+
     /** @desc Indicates the procedure value.
      * @see ETSI TS 136 413 Clause 9.2.1.21 Criticality Diagnostics
      */
     //modulepar ProcedureCode PX_PROCEURE_CODE := 0;
-    
+
     /** @desc Indicates triggering message value
      * @see ETSI TS 136 413 Clause 9.2.1.21 Criticality Diagnostics
      */
     //modulepar TriggeringMessage PX_TRIGGERING_CODE := initiating_message;
-    
+
     /** @desc Indicates a the criticality
      * @see ETSI TS 136 413 Clause 9.2.1.21 Criticality Diagnostics
      */
     //modulepar Criticality PX_CRITICALITY := ignore;
-    
+
     /** @desc Indicates the transport layer address.
      */
     //modulepar TransportLayerAddress PX_TPORT_LAYER_ADDR := '1'B;
-    
+
     /** @desc Indicates an unacceptable transport layer address.
      */
     //modulepar TransportLayerAddress PX_INVALID_TPORT_LAYER_ADDR := '0'B;
-    
+
     /** @desc Indicates the Downlink GTP TEID.
      */
     //modulepar GTP_TEID PX_DL_GTP_TEID := '00000000'O;
-    
+
     /** @desc Indicates the source_ToTarget_TransparentContainer value.
      *  @see ETSI TS 136 413 Clause 9.2.1.56 Source to Target Transparent Container
      */
     //modulepar Source_ToTarget_TransparentContainer PX_SOURCE_TO_TARGET_TANSPARENT_CONTAINER := '12121212'O;
-    
+
     /** @desc Indicates the target_ToSource_TransparentContainer value.
      *  @see ETSI TS 136 413 Clause 9.2.1.57 Target to Source Transparent Container
      */
     //modulepar Target_ToSource_TransparentContainer PX_TARGET_TO_SOURCE_TANSPARENT_CONTAINER := '12121212'O;
-    
+
 } // End of module LibNGAP_Pixits
 
diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn
index fd784c0..8864045 100644
--- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn
+++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn
@@ -12,474 +12,757 @@
 module LibNGAP_Templates {
 
     //  LibCommon
-    import  from  LibCommon_BasicTypesAndValues  all;
-    import  from  LibCommon_DataStrings  all;
+    import from LibCommon_BasicTypesAndValues all;
+    import from LibCommon_DataStrings all;
 
     //  LibNGAP
-    import  from  NGAP_Constants  language  "ASN.1:2002"  all;
-    import  from  NGAP_CommonDataTypes  language  "ASN.1:2002"  all;
-    import  from  NGAP_IEs  language  "ASN.1:2002"  all;
-    import  from  NGAP_PDU_Contents  language  "ASN.1:2002"  all;
-    import  from  NGAP_PDU_Descriptions  language  "ASN.1:2002"  all;
-    import  from  NGAP_Containers  language  "ASN.1:2002"  all;
-
-    import  from  LibNGAP_TypesAndValues  all;
-    import  from  LibNGAP_Pixits  all;
-
-    group g_NGAP  {
-
-        group g_NGAP_PDU  {
-
-//            /**
-//             *  @desc  Send  template  for  NGAP  PDU  with  InitiatingMessage  payload
-//             *  @param  p_procedureCode      Procedure  code
-//             *  @param  p_value                      Message  value  according  to  the  Procedure  code
-//             *  @see  ETSI  TS
-//             */
-//            template  (value) NGAP_PDU m_initiatingMessage(
-//                in  ProcedureCode  p_procedureCode,
-//                in  NGAP_CommonDataTypes.Criticality  p_criticality:=reject
-//                //in  anytype  p_value
-//            ) := {
-//            ) := {
-//                initiatingMessage  :=  {
-//                    procedureCode  :=  p_procedureCode,
-//                    criticality  :=  p_criticality,
-//                    value_  :=  omit//p_value
-//                }
-//            } // End of template m_initiatingMessage
-//            } // End of template m_initiatingMessage
-//            
-//
-//TODO: check value_ not allowed anytype                        
-//            /**
-//             *  @desc  Send  template  for  NGAP  PDU  with  SuccessfulOutcome  payload
-//             *  @param  p_procedureCode      Procedure  code
-//             *  @param  p_value                      Message  value  according  to  the  Procedure  code
-//             *  @see  ETSI  TS
-//             */
-//            template  (value)  NGAP_PDU  m_successfulOutcome(
-//                in  ProcedureCode  p_procedureCode,
-//                in  NGAP_CommonDataTypes.Criticality  p_criticality:=reject
-//                //in  anytype  p_value
-//            ) := {
-//            ) := {
-//                successfulOutcome  :=  {
-//                    procedureCode  :=  p_procedureCode,
-//                    criticality  :=  p_criticality,
-//                    value_  :=  ?//omit//p_value
-//                }
-//            } // End of template m_successfulOutcome
-//            } // End of template m_successfulOutcome
-//              
-//            /**
-//             *  @desc  Send  template  for  NGAP  PDU  with  unsuccessfulOutcome  payload
-//             *  @param  p_procedureCode      Procedure  code
-//             *  @param  p_value                      Message  value  according  to  the  Procedure  code
-//             *  @see  ETSI  TS
-//             */
-//            template  (value)  NGAP_PDU  m_unsuccessfulOutcome(
-//                in  ProcedureCode  p_procedureCode,
-//                in  NGAP_CommonDataTypes.Criticality  p_criticality:=reject
-//                //in  anytype  p_value
-//            ) := {
-//            ) := {
-//                unsuccessfulOutcome  :=  {
-//                    procedureCode  :=  p_procedureCode,
-//                    criticality  :=  p_criticality,
-//                    value_  :=  ?//omit//p_value
-//                }
-//            } // End of template m_unsuccessfulOutcome
-//            } // End of template m_unsuccessfulOutcome
+    import from NGAP_Constants language "ASN.1:2002" all;
+    import from NGAP_CommonDataTypes language "ASN.1:2002" all;
+    import from NGAP_IEs language "ASN.1:2002" all;
+    import from NGAP_PDU_Contents language "ASN.1:2002" all;
+    import from NGAP_PDU_Descriptions language "ASN.1:2002" all;
+    import from NGAP_Containers language "ASN.1:2002" all;
+
+    import from LibNGAP_TypesAndValues all;
+    import from LibNGAP_Pixits all;
+
+    group g_NGAP {
+
+        group g_NGAP_PDU {
 
             group Send {
 
+                /**
+                 * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1.1 PDU SESSION RESOURCE SETUP REQUEST
+                 */
                 template (value) NGAP_PDU m_ngap_initMsg(
                                                          in template (value) InitiatingMessage p_msg
                                                          ) := {
                     initiatingMessage := p_msg
                 } // End of template m_ngap_initMsg
 
+                /**
+                 * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 8.1 List of NGAP Elementary Procedures
+                 */
                 template (value) NGAP_PDU m_ngap_succMsg(
-                                                         in template (value) SuccessfulOutcome  p_msg
+                                                         in template (value) SuccessfulOutcome p_msg
                                                          ) := {
                     successfulOutcome := p_msg
                 } // End of template m_ngap_succMsg
 
+                /**
+                 * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 8.1 List of NGAP Elementary Procedures
+                 */
                 template (value) NGAP_PDU m_ngap_unsuccMsg(
-                                                           in template (value) UnsuccessfulOutcome  p_msg
+                                                           in template (value) UnsuccessfulOutcome p_msg
                                                            ) := {
                     unsuccessfulOutcome := p_msg
                 } // End of template m_ngap_unsuccMsg
+
             } // End of group Send
 
             group Receive {
 
+                /**
+                 * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1.1 PDU SESSION RESOURCE SETUP REQUEST
+                 */
                 template (present) NGAP_PDU mw_ngap_initMsg(
                                                             template (present) InitiatingMessage p_msg := ?
                                                             ) := {
                     initiatingMessage := p_msg
-                } // End of template m_ngap_initMsg
+                } // End of template mw_ngap_initMsg
 
+                /**
+                 * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 8.1 List of NGAP Elementary Procedures
+                 */
                 template (present) NGAP_PDU mw_ngap_succMsg(
                                                             template (present) SuccessfulOutcome p_msg := ?
                                                             ) := {
                     successfulOutcome := p_msg
-                } // End of template m_ngap_succMsg
+                } // End of template mw_ngap_succMsg
 
+                /**
+                 * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 8.1 List of NGAP Elementary Procedures
+                 */
                 template (present) NGAP_PDU mw_ngap_unsuccMsg(
                                                               template (present) UnsuccessfulOutcome p_msg := ?
                 ) := {
                     unsuccessfulOutcome := p_msg
-                } // End of template m_ngap_unsuccMsg
+                } // End of template mw_ngap_unsuccMsg
+
             } // End of group Receive
 
         } // End of group  g_NGAP_PDU
 
-        //9.2
-        group Message_Functional_Definition_and_Content{
-            //9.2.1
-            group PDU_Session_Management_Messages{
-                //9.2.1.1
-                group PDU_SESSION_RESOURCE_SETUP_REQUEST{
+        group Message_Functional_Definition_and_Content {
+
+            group PDU_Session_Management_Messages {
+
+                group PDU_SESSION_RESOURCE_SETUP_REQUEST {
+
                     group Send {
 
+                        /**
+                        * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1.1 PDU SESSION RESOURCE SETUP REQUEST
+                        */
                         template (value) InitiatingMessage m_n2_PDUSessionResourceSetupRequest(
-                                                                                               in template (value) AMF_UE_NGAP_ID p_amfUeNgapID,
-                                                                                               in template (value) RAN_UE_NGAP_ID p_ranUeNgapID,
+                                                                                               in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID,
+                                                                                               in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
                                                                                                in template (value) PDUSessionResourceSetupListSUReq p_pduSessResSetL
                                                                                                ) := {
                             procedureCode := id_PDUSessionResourceSetup,
                             criticality   := reject,
                             value_        := {
-                                    PDUSessionResourceSetupRequest := {
-                                            protocolIEs := {
-                                                    {
-                                                        id := id_AMF_UE_NGAP_ID,
-                                                        criticality := reject,
-                                                        value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
-                                                    },
-                                                    {
-                                                        id := id_RAN_UE_NGAP_ID,
-                                                        criticality := reject,
-                                                        value_ := {  RAN_UE_NGAP_ID := p_ranUeNgapID }
-                                                    },
-                                                    {
-                                                        id := id_PDUSessionResourceSetupListSUReq,
-                                                        criticality := ignore,
-                                                        value_ := {  PDUSessionResourceSetupListSUReq := p_pduSessResSetL}
-                                                    }
-                                            }
-                                    }
+                                              PDUSessionResourceSetupRequest := {
+                                                                                 protocolIEs := {
+                                                                                         {
+                                                                                             id := id_AMF_UE_NGAP_ID,
+                                                                                             criticality := reject,
+                                                                                             value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                         },
+                                                                                         {
+                                                                                             id := id_RAN_UE_NGAP_ID,
+                                                                                             criticality := reject,
+                                                                                             value_ := {  RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                         },
+                                                                                         {
+                                                                                             id := id_PDUSessionResourceSetupListSUReq,
+                                                                                             criticality := ignore,
+                                                                                             value_ := {  PDUSessionResourceSetupListSUReq := p_pduSessResSetL}
+                                                                                         }
+                                                                                 }
+                                                                              }
                             }
-                         } // End of template mw_n2_PDUSessionResourceSetupRequest
+                         } // End of template m_n2_PDUSessionResourceSetupRequest
 
                     } // End of group Send
 
                     group Receive {
 
+                        /**
+                        * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1.1 PDU SESSION RESOURCE SETUP REQUEST
+                        */
                         template (present) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest(
                                                                                                   template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?,
                                                                                                   template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?,
-                                                                                                  template (present) PDUSessionResourceSetupListSUReq p_pduSessResSetL
+                                                                                                  template (present) PDUSessionResourceSetupListSUReq p_pduSessResSetL := ?
                                                                                                   ) := {
                             procedureCode := id_PDUSessionResourceSetup,
                             criticality   := reject,
                             value_        := {
-                                    PDUSessionResourceSetupRequest := {
-                                            protocolIEs := {
-                                                    {
-                                                        id := id_AMF_UE_NGAP_ID,
-                                                        criticality := reject,
-                                                        value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
-                                                    },
-                                                    {
-                                                        id := id_RAN_UE_NGAP_ID,
-                                                        criticality := reject,
-                                                        value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
-                                                    },
-                                                    {
-                                                        id := id_PDUSessionResourceSetupListSUReq,
-                                                        criticality := ignore,
-                                                        value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL}
-                                                    }
+                                              PDUSessionResourceSetupRequest := {
+                                                    protocolIEs := {
+                                                                    {
+                                                                        id := id_AMF_UE_NGAP_ID,
+                                                                        criticality := reject,
+                                                                        value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                    },
+                                                                    {
+                                                                        id := id_RAN_UE_NGAP_ID,
+                                                                        criticality := reject,
+                                                                        value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                    },
+                                                                    {
+                                                                        id := id_PDUSessionResourceSetupListSUReq,
+                                                                        criticality := ignore,
+                                                                        value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL}
+                                                                    }
+                                                                    }
+                                              }
                                             }
-                                    }
-                            }
                          } // End of template mw_n2_PDUSessionResourceSetupRequest
 
                     } // End of group Receive
-                }
-                //9.2.1.2
-                group PDU_SESSION_RESOURCE_SETUP_RESPONSE{
+
+                } // End of group PDU_SESSION_RESOURCE_SETUP_REQUEST
+
+                group PDU_SESSION_RESOURCE_SETUP_RESPONSE {
 
                     group Send {
 
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1.2 PDU SESSION RESOURCE SETUP RESPONSE
+                         */
                         template (value) SuccessfulOutcome m_n2_PDUSessionResourceSetupResponse(
-                                                                                                in template (value) AMF_UE_NGAP_ID p_amfUeNgapID,
-                                                                                                in template (value) RAN_UE_NGAP_ID p_ranUeNgapID,
-                                                                                                in template (value) PDUSessionResourceSetupListSURes p_pduSessResSetL
+                                                                                                in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                                in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                                in template (value) PDUSessionResourceSetupListSURes p_pDUSessionResourceSetupListSURes
                                                                                                 ) := {
                             procedureCode := id_PDUSessionResourceSetup,
                             criticality   := reject,
                             value_        := {
-                                    PDUSessionResourceSetupResponse := {
-                                            protocolIEs := {
-                                                    {
-                                                        id := id_AMF_UE_NGAP_ID,
-                                                        criticality := reject,
-                                                        value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
-                                                    },
-                                                    {
-                                                        id := id_RAN_UE_NGAP_ID,
-                                                        criticality := reject,
-                                                        value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
-                                                    },
-                                                    {
-                                                        id := id_PDUSessionResourceSetupListSURes,
-                                                        criticality := ignore,
-                                                        value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL}
-                                                    }
+                                              PDUSessionResourceSetupResponse := {
+                                                                                  protocolIEs := {
+                                                                                                  {
+                                                                                                      id := id_AMF_UE_NGAP_ID,
+                                                                                                      criticality := reject,
+                                                                                                      value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                  },
+                                                                                                  {
+                                                                                                      id := id_RAN_UE_NGAP_ID,
+                                                                                                      criticality := reject,
+                                                                                                      value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                  },
+                                                                                                  {
+                                                                                                      id := id_PDUSessionResourceSetupListSURes,
+                                                                                                      criticality := ignore,
+                                                                                                      value_ := { PDUSessionResourceSetupListSURes := p_pDUSessionResourceSetupListSURes }
+                                                                                                  }
+                                                                                                 }
                                             }
-                                    }
                             }
+
                          } // End of template mw_n2_PDUSessionResourceSetupResponse
+
                     } // End of group Send
 
                     group Receive {
 
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1.2 PDU SESSION RESOURCE SETUP RESPONSE
+                         */
                         template (present) SuccessfulOutcome mw_n2_PDUSessionResourceSetupResponse(
                                                                                                    template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?,
                                                                                                    template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?,
                                                                                                    template (present) PDUSessionResourceSetupListSURes p_pduSessResSetL := ?
-                             ) := {
+                                                                                                   ) := {
                                 procedureCode := id_PDUSessionResourceSetup,
                                 criticality   := reject,
                                 value_        := {
-                                        PDUSessionResourceSetupResponse := {
-                                                protocolIEs := {
-                                                        {
-                                                        id := id_AMF_UE_NGAP_ID,
-                                                        criticality := reject,
-                                                        value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
-                                                        },
-                                                        {
-                                                        id := id_RAN_UE_NGAP_ID,
-                                                        criticality := reject,
-                                                        value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
-
-                                                        },
-                                                        {
-                                                        id := id_PDUSessionResourceSetupListSURes,
-                                                        criticality := ignore,
-                                                        value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL}
-                                                        }
-
+                                                  PDUSessionResourceSetupResponse := {
+                                                                                      protocolIEs := {
+                                                                                                      {
+                                                                                                        id := id_AMF_UE_NGAP_ID,
+                                                                                                        criticality := reject,
+                                                                                                        value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                      },
+                                                                                                      {
+                                                                                                        id := id_RAN_UE_NGAP_ID,
+                                                                                                        criticality := reject,
+                                                                                                        value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                      },
+                                                                                                      {
+                                                                                                        id := id_PDUSessionResourceSetupListSURes,
+                                                                                                        criticality := ignore,
+                                                                                                        value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL}
+                                                                                                      }
+                                                                                      }
+                                                  }
                                                 }
-                                        }
-                                }
                          } // End of template mw_n2_PDUSessionResourceSetupResponse
 
                     } // End of group Receive
                 }
-                //9.2.1.3
-                group PDU_SESSION_RESOURCE_RELEASE_COMMAND{
-                    group Send{
-                    }
-                    group Receive{
-                    }
-                }
-                //9.2.1.4
-                group PDU_SESSION_RESOURCE_RELEASE_RESPONSE{
-                    group Send{
-                    }
-                    group Receive{
-                    }
-                }
-                //9.2.1.5
-                group PDU_SESSION_RESOURCE_MODIFY_REQUEST{
-                    group Send{
-                    }
-                    group Receive{
-                    }
-                }
-                //9.2.1.6
-                group PDU_SESSION_RESOURCE_MODIFY_RESPONSE{
-                    group Send{
-                    }
-                    group Receive{
-                    }
-                }
+
+                group PDU_SESSION_RESOURCE_RELEASE_COMMAND {
+
+                    group Send {
+
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.3 PDU SESSION RESOURCE RELEASE COMMAND
+                         */
+                        template (value) InitiatingMessage m_n2_PDUSessionResourceReleaseCommand(
+                                                                                                 in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                                 in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                                 in template (value) PDUSessionResourceToReleaseListRelCmd p_pDUSessionResourceToReleaseListRelCmd
+                                                                                                 ) := {
+
+                            procedureCode := id_PDUSessionResourceToReleaseListRelCmd,
+                            criticality   := reject,
+                            value_        := {
+                                              PDUSessionResourceReleaseCommand := {
+                                                                                   protocolIEs := {
+                                                                                                   {
+                                                                                                       id := id_AMF_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_RAN_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_PDUSessionResourceToReleaseListRelCmd,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { PDUSessionResourceToReleaseListRelCmd := p_pDUSessionResourceToReleaseListRelCmd }
+                                                                                                   }
+                                                                                                  }
+                                                                                    }
+                                            }
+                        } // End of template m_n2_PDUSessionResourceReleaseCommand
+
+                    } // End of group Send
+
+                    group Receive {
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.3 PDU SESSION RESOURCE RELEASE COMMAND
+                         */
+                        template (present) InitiatingMessage mw_n2_PDUSessionResourceReleaseCommand(
+                                                                                                    template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?,
+                                                                                                    template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?,
+                                                                                                    template (present) PDUSessionResourceToReleaseListRelCmd p_pDUSessionResourceToReleaseListRelCmd := ?
+                                                                                                    ) := {
+
+                            procedureCode := id_PDUSessionResourceToReleaseListRelCmd,
+                            criticality   := reject,
+                            value_        := {
+                                              PDUSessionResourceReleaseCommand := {
+                                                                                   protocolIEs := {
+                                                                                                   {
+                                                                                                       id := id_AMF_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_RAN_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_PDUSessionResourceToReleaseListRelCmd,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { PDUSessionResourceToReleaseListRelCmd := p_pDUSessionResourceToReleaseListRelCmd }
+                                                                                                   }
+                                                                                                  }
+                                                                                    }
+                                            }
+                        } // End of template mw_n2_PDUSessionResourceReleaseCommand
+
+                    } // End of group Receive
+
+                } // End of group PDU_SESSION_RESOURCE_RELEASE_COMMAND
+
+                group PDU_SESSION_RESOURCE_RELEASE_RESPONSE {
+
+                    group Send {
+
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.4 PDU SESSION RESOURCE RELEASE RESPONSE
+                         */
+                        template (value) SuccessfulOutcome m_n2_PDUSessionResourceReleaseResponse(
+                                                                                                  in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                                  in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                                  in template (value) PDUSessionResourceReleasedListRelRes p_pDUSessionResourceReleasedListRelRes
+                                                                                                  ) := {
+
+                            procedureCode := id_PDUSessionResourceRelease,
+                            criticality   := reject,
+                            value_        := {
+                                              PDUSessionResourceReleaseResponse := {
+                                                                                   protocolIEs := {
+                                                                                                   {
+                                                                                                       id := id_AMF_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_RAN_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_PDUSessionResourceReleasedListRelRes,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { PDUSessionResourceReleasedListRelRes := p_pDUSessionResourceReleasedListRelRes
+                                                                                                   }
+                                                                                                  }
+                                                                                    }
+                                                                                   }
+                                            }
+                        } // End of template m_n2_PDUSessionResourceReleaseResponse
+
+                    } // End of group Send
+
+                    group Receive {
+
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.4 PDU SESSION RESOURCE RELEASE RESPONSE
+                         */
+                        template (present) SuccessfulOutcome mw_n2_PDUSessionResourceReleaseResponse(
+                                                                                                     template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?,
+                                                                                                     template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?,
+                                                                                                     template (present) PDUSessionResourceReleasedListRelRes p_pDUSessionResourceReleasedListRelRes := ?
+                                                                                                     ) := {
+
+                            procedureCode := id_PDUSessionResourceRelease,
+                            criticality   := reject,
+                            value_        := {
+                                              PDUSessionResourceReleaseResponse := {
+                                                                                   protocolIEs := {
+                                                                                                   {
+                                                                                                       id := id_AMF_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_RAN_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_PDUSessionResourceReleasedListRelRes,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { PDUSessionResourceReleasedListRelRes := p_pDUSessionResourceReleasedListRelRes
+                                                                                                   }
+                                                                                                  }
+                                                                                    }
+                                                                                   }
+                                            }
+                        } // End of template mw_n2_PDUSessionResourceReleaseResponse
+
+                    } // End of group Receive
+
+                } // End of group PDU_SESSION_RESOURCE_RELEASE_RESPONSE
+
+                group PDU_SESSION_RESOURCE_MODIFY_REQUEST {
+
+                    group Send {
+
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.5 PDU SESSION RESOURCE MODIFY REQUEST
+                         */
+                        template (value) InitiatingMessage m_n2_PDUSessionResourceModify(
+                                                                                         in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                         in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                         in template (value) PDUSessionResourceModifyListModReq p_pDUSessionResourceModifyListModReq
+                                                                                         ) := {
+                            procedureCode := id_PDUSessionResourceModify,
+                            criticality   := reject,
+                            value_        := {
+                                              PDUSessionResourceModifyRequest := {
+                                                                                   protocolIEs := {
+                                                                                                   {
+                                                                                                       id := id_AMF_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_RAN_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_PDUSessionResourceModifyListModReq,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { PDUSessionResourceModifyListModReq := p_pDUSessionResourceModifyListModReq }
+                                                                                                   }
+                                                                                                  }
+                                                                                    }
+                                            }
+                        } // End of template m_n2_PDUSessionResourceModify
+
+                    } // End of group Send
+
+                    group Receive {
+
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.5 PDU SESSION RESOURCE MODIFY REQUEST
+                         */
+                        template (present) InitiatingMessage mw_n2_PDUSessionResourceModify(
+                                                                                            template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?,
+                                                                                            template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?,
+                                                                                            template (present) PDUSessionResourceModifyListModReq p_pDUSessionResourceModifyListModReq := ?
+                                                                                            ) := {
+                            procedureCode := id_PDUSessionResourceModify,
+                            criticality   := reject,
+                            value_        := {
+                                              PDUSessionResourceModifyRequest := {
+                                                                                   protocolIEs := {
+                                                                                                   {
+                                                                                                       id := id_AMF_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_RAN_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_PDUSessionResourceModifyListModReq,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { PDUSessionResourceModifyListModReq := p_pDUSessionResourceModifyListModReq }
+                                                                                                   }
+                                                                                                  }
+                                                                                    }
+                                            }
+                        } // End of template mw_n2_PDUSessionResourceModify
+
+                    } // End of group Receive
+
+                } // End of group PDU_SESSION_RESOURCE_MODIFY_REQUEST
+
+                group PDU_SESSION_RESOURCE_MODIFY_RESPONSE {
+
+                    group Send {
+
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.6 PDU SESSION RESOURCE MODIFY RESPONSE
+                         */
+                        template (value) SuccessfulOutcome m_n2_PDUSessionResourceModifyResponse(
+                                                                                                  in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                                  in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                                                  in template (value) PDUSessionResourceModifyListModRes p_pDUSessionResourceModifyListModRes
+                                                                                                  ) := {
+
+                            procedureCode := id_PDUSessionResourceModify,
+                            criticality   := reject,
+                            value_        := {
+                                              PDUSessionResourceModifyResponse := {
+                                                                                   protocolIEs := {
+                                                                                                   {
+                                                                                                       id := id_AMF_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_RAN_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_PDUSessionResourceModifyListModReq,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { PDUSessionResourceModifyListModRes := p_pDUSessionResourceModifyListModRes
+                                                                                                   }
+                                                                                                  }
+                                                                                    }
+                                                                                   }
+                                            }
+                        } // End of template m_n2_PDUSessionResourceModifyResponse
+
+                    } // End of group Send
+
+                    group Receive {
+
+                        /**
+                         * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.6 PDU SESSION RESOURCE MODIFY RESPONSE
+                         */
+                        template (present) SuccessfulOutcome mw_n2_PDUSessionResourceModifyResponse(
+                                                                                                    template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?,
+                                                                                                    template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?,
+                                                                                                    template (present) PDUSessionResourceModifyListModRes p_pDUSessionResourceModifyListModRes := ?
+                                                                                                    ) := {
+
+                            procedureCode := id_PDUSessionResourceModify,
+                            criticality   := reject,
+                            value_        := {
+                                              PDUSessionResourceModifyResponse := {
+                                                                                   protocolIEs := {
+                                                                                                   {
+                                                                                                       id := id_AMF_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_RAN_UE_NGAP_ID,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
+                                                                                                   },
+                                                                                                   {
+                                                                                                       id := id_PDUSessionResourceModifyListModReq,
+                                                                                                       criticality := reject,
+                                                                                                       value_ := { PDUSessionResourceModifyListModRes := p_pDUSessionResourceModifyListModRes
+                                                                                                   }
+                                                                                                  }
+                                                                                    }
+                                                                                   }
+                                            }
+                        } // End of template mw_n2_PDUSessionResourceModifyResponse
+
+                    } // End of group Receive
+
+                } // End of group PDU_SESSION_RESOURCE_MODIFY_RESPONSE
+
                 //9.2.1.7
-                group PDU_SESSION_RESOURCE_NOTIFY{
-                    group Send{
-                    }
-                    group Receive{
-                    }
-                }
+                group PDU_SESSION_RESOURCE_NOTIFY {
+
+                    group Send {
+
+                    } // End of group Send
+
+                    group Receive {
+
+                    } // End of group Receive
+
+                } // End of group PDU_SESSION_RESOURCE_NOTIFY
+
                 //9.2.1.8
-                group PDU_SESSION_RESOURCE_MODIFY_INDICATION{
-                    group Send{
-                    }
-                    group Receive{
-                    }
-                }
+                group PDU_SESSION_RESOURCE_MODIFY_INDICATION {
+
+                    group Send {
+
+                    } // End of group Send
+
+                    group Receive {
+
+                    } // End of group Receive
+
+                } // End of group PDU_SESSION_RESOURCE_MODIFY_INDICATION
+
                 //9.2.1.9
-                group PDU_SESSION_RESOURCE_MODIFY_CONFIRM{
-                    group Send{
-                    }
-                    group Receive{
-                    }
-                }
+                group PDU_SESSION_RESOURCE_MODIFY_CONFIRM {
+
+                    group Send {
+
+                    } // End of group Send
+
+                    group Receive {
+
+                    } // End of group Receive
+
+                } // End of group PDU_SESSION_RESOURCE_MODIFY_CONFIRM
+
             } // End of group PDU_Session_Management_Messages
 
             //9.2.2
             group UE_Context_Management_Messages{
                 //9.2.2.1
                 group INITIAL_CONTEXT_SETUP_REQUEST{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.2
                 group INITIAL_CONTEXT_SETUP_RESPONSE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.3
                 group INITIAL_CONTEXT_SETUP_FAILURE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.4
                 group UE_CONTEXT_RELEASE_REQUEST{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.5
                 group UE_CONTEXT_RELEASE_COMMAND{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.6
                 group UE_CONTEXT_RELEASE_COMPLETE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.7
                 group UE_CONTEXT_MODIFICATION_REQUEST{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.8
                 group UE_CONTEXT_MODIFICATION_RESPONSE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.9
                 group UE_CONTEXT_MODIFICATION_FAILURE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.10
                 group RRC_INACTIVE_TRANSITION_REPORT{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.11
                 group CONNECTION_ESTABLISHMENT_INDICATION{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.12
                 group AMF_CP_RELOCATION_INDICATION{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.13
                 group RAN_CP_RELOCATION_INDICATION{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.14
                 group RETRIEVE_UE_INFORMATION{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.15
                 group UE_INFORMATION_TRANSFER{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.16
                 group UE_CONTEXT_SUSPEND_REQUEST{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.17
                 group UE_CONTEXT_SUSPEND_RESPONSE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.18
                 group UE_CONTEXT_SUSPEND_FAILURE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.19
                 group UE_CONTEXT_RESUME_REQUEST{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.20
                 group UE_CONTEXT_RESUME_RESPONSE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.2.21
                 group UE_CONTEXT_RESUME_FAILURE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
             } // End of group UE_Context_Management_Messages_
@@ -488,121 +771,121 @@ module LibNGAP_Templates {
             group UE_Mobility_Management_Messages{
                 //9.2.3.1
                 group HANDOVER_REQUIRED{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.3.2
                 group HANDOVER_COMMAND{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.3.3
                 group HANDOVER_PREPARATION_FAILURE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.3.4
                 group HANDOVER_REQUEST{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.3.5
                 group HANDOVER_REQUEST_ACKNOWLEDGE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.3.6
                 group HANDOVER_FAILURE{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
                 //9.2.3.7
                 group HANDOVER_NOTIFY{
-                    group Send{
+                    group Send {
                     }
-                    group Receive{
+                    group Receive {
                     }
                 }
             //9.2.3.8
             group PATH_SWITCH_REQUEST{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.3.9
             group PATH_SWITCH_REQUEST_ACKNOWLEDGE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.3.10
             group PATH_SWITCH_REQUEST_FAILURE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.3.11
             group HANDOVER_CANCEL{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.3.12
             group HANDOVER_CANCEL_ACKNOWLEDGE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.3.13
             group UPLINK_RAN_STATUS_TRANSFER{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.3.14
             group DOWNLINK_RAN_STATUS_TRANSFER{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.3.15
             group HANDOVER_SUCCESS{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.3.16
             group UPLINK_RAN_EARLY_STATUS_TRANSFER{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.3.17
             group DOWNLINK_RAN_EARLY_STATUS_TRANSFER{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group UE_Mobility_Management_Messages
@@ -611,26 +894,25 @@ module LibNGAP_Templates {
         group Paging_Messages{
             //9.2.4.1
             group PAGING{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group Paging_Messages
 
-        //9.2.5
         group NAS_Transport_Messages{
-            //9.2.5.1
+
             group INITIAL_UE_MESSAGE{
 
                 group Send {
 
                     template (value) InitiatingMessage m_n2_initialUeMessage(
-                                                                            in template (value) RAN_UE_NGAP_ID p_RANUeNgapID,
-                                                                            in template (value) NAS_PDU p_nasPdu,
-                                                                            in template (value) UserLocationInformation p_UeLocInf,
-                                                                            in template (value) RRCEstablishmentCause p_rrcEstCause
-                                                                            ) := {
+                                                                             in template (value) RAN_UE_NGAP_ID p_RANUeNgapID := PX_RAN_UE_NGAP_ID,
+                                                                             in template (value) NAS_PDU p_nasPdu,
+                                                                             in template (value) UserLocationInformation p_UeLocInf,
+                                                                             in template (value) RRCEstablishmentCause p_rrcEstCause
+                                                                             ) := {
                         procedureCode := id_InitialUEMessage,
                         criticality   := reject,
                         value_        := {
@@ -744,36 +1026,36 @@ module LibNGAP_Templates {
                     } // End of template  m_n2_initialUeMessage
                 } // End of group Send
 
-                group Receive{
+                group Receive {
                 }
 
             }
             //9.2.5.2
             group DOWNLINK_NAS_TRANSPORT{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.5.3
             group UPLINK_NAS_TRANSPORT{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.5.4
             group NAS_NON_DELIVERY_INDICATION{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.5.5
             group REROUTE_NAS_REQUEST{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group NAS_Transport_Messages
@@ -782,7 +1064,7 @@ module LibNGAP_Templates {
         group Interface_Management_Messages{
             //9.2.6.1
             group NG_SETUP_REQUEST{
-                group Send{
+                group Send {
 
                     template (value) InitiatingMessage m_n2_NGSetupRequest(
                                                                            in template (value) GlobalRANNodeID p_globalRANNodeID,
@@ -817,15 +1099,15 @@ module LibNGAP_Templates {
                 }
 
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.2
             group NG_SETUP_RESPONSE{
-                group Send{
+                group Send {
                 }
-                group Receive{
-                    
+                group Receive {
+
                     template (present) SuccessfulOutcome mw_n2_NGSetupResponse(
                                                     in template (present) AMFName p_amfName := ?,
                                                     in template (present) ServedGUAMIList p_servedGUAMIList := ?,
@@ -846,7 +1128,7 @@ module LibNGAP_Templates {
                                                   id := id_ServedGUAMIList,
                                                   criticality := reject,
                                                   value_ := { ServedGUAMIList := p_servedGUAMIList }
-                    
+
                                                 },
                                                 {
                                                   id := id_RelativeAMFCapacity,
@@ -862,15 +1144,15 @@ module LibNGAP_Templates {
                                   }
                            }
                     }//end of template mw_n2_NGSetupResponse
-                    
+
                 }
             }
             //9.2.6.3
             group NG_SETUP_FAILURE{
-                group Send{
+                group Send {
                 }
-                group Receive{
-                    
+                group Receive {
+
                     template (present) UnsuccessfulOutcome mw_n2_NGSetupFailure(
                                                     in template (present) Cause p_cause := ?
                     ) := {
@@ -892,86 +1174,86 @@ module LibNGAP_Templates {
             }
             //9.2.6.4
             group RAN_CONFIGURATION_UPDATE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.5
             group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.6
             group RAN_CONFIGURATION_UPDATE_FAILURE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.7
             group AMF_CONFIGURATION_UPDATE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.8
             group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.9
             group AMF_CONFIGURATION_UPDATE_FAILURE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.10
             group AMF_STATUS_INDICATION{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.11
             group NG_RESET{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.12
             group NG_RESET_ACKNOWLEDGE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.13
             group ERROR_INDICATION{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.14
             group OVERLOAD_START{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.6.15
             group OVERLOAD_STOP{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group Interface_Management_Messages
@@ -980,16 +1262,16 @@ module LibNGAP_Templates {
         group Configuration_Transfer_Messages{
             //9.2.7.1
             group UPLINK_RAN_CONFIGURATION_TRANSFER{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.7.2
             group DOWNLINK_RAN_CONFIGURATION_TRANSFER{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group Configuration_Transfer_Messages
@@ -998,44 +1280,44 @@ module LibNGAP_Templates {
         group Warning_Message_Transmission_Messages{
             //9.2.8.1
             group WRITE_REPLACE_WARNING_REQUEST{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.8.2
             group WRITE_REPLACE_WARNING_RESPONSE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.8.3
             group PWS_CANCEL_REQUEST{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.8.4
             group PWS_CANCEL_RESPONSE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.8.5
             group PWS_RESTART_INDICATION{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.8.6
             group PWS_FAILURE_INDICATION{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group Warning_Message_Transmission_Messages
@@ -1044,30 +1326,30 @@ module LibNGAP_Templates {
         group NRPPa_Transport_Messages{
             //9.2.9.1
             group DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.9.2
             group UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.9.3
             group DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.9.4
             group UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group NRPPa_Transport_Messages
@@ -1076,30 +1358,30 @@ module LibNGAP_Templates {
         group Trace_Messages{
             //9.2.10.1
             group TRACE_START{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.10.2
             group TRACE_FAILURE_INDICATION{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.10.3
             group DEACTIVATE_TRACE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.10.4
             group CELL_TRAFFIC_TRACE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group Trace_Messages
@@ -1108,23 +1390,23 @@ module LibNGAP_Templates {
         group Location_Reporting_Messages{
             //9.2.11.1
             group LOCATION_REPORTING_CONTROL{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.11.2
             group LOCATION_REPORTING_FAILURE_INDICATION{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.11.3
             group LOCATION_REPORT{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group Location_Reporting_Messages
@@ -1133,9 +1415,9 @@ module LibNGAP_Templates {
         group UE_TNLA_Binding_Messages{
             //9.2.12.1
             group UE_TNLA_BINDING_RELEASE_REQUEST{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group UE_TNLA_Binding_Messages
@@ -1144,37 +1426,37 @@ module LibNGAP_Templates {
         group UE_Radio_Capability_Management_Messages{
             //9.2.13.1
             group UE_RADIO_CAPABILITY_INFO_INDICATION{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.13.2
             group UE_RADIO_CAPABILITY_CHECK_REQUEST{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.13.3
             group UE_RADIO_CAPABILITY_CHECK_RESPONSE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.13.4
             group UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.13.5
             group UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group UE_Radio_Capability_Management_Messages
@@ -1183,9 +1465,9 @@ module LibNGAP_Templates {
         group Data_Usage_Reporting_Messages{
             //9.2.14.1
             group SECONDARY_RAT_DATA_USAGE_REPORT{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group Data_Usage_Reporting_Messages
@@ -1194,16 +1476,16 @@ module LibNGAP_Templates {
         group RIM_Information_Transfer_Messages{
             //9.2.15.1
             group UPLINK_RIM_INFORMATION_TRANSFER{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
             //9.2.15.2
             group DOWNLINK_RIM_INFORMATION_TRANSFER{
-                group Send{
+                group Send {
                 }
-                group Receive{
+                group Receive {
                 }
             }
         } // End of group RIM_Information_Transfer_Messages
@@ -1250,9 +1532,9 @@ module LibNGAP_Templates {
                 iE_Extensions            := p_iE_Extensions
             } // End of template m_allocationAndRetentionPriority
 
-            template (value) AlternativeQoSParaSetIndex m_alternativeQoSParaSetIndex(in template (value) integer p_value := 0) := p_value;
+            template (value) AlternativeQoSParaSetIndex m_alternativeQoSParaSetIndex(in template (value) integer p_value := PX_ALTERNATIVE_QOS_PARA_SET_INDEX) := p_value;
 
-            template (value) AlternativeQoSParaSetNotifyIndex m_alternativeQoSParaSetNotifyIndex(in template (value) integer p_value := 0) := p_value;
+            template (value) AlternativeQoSParaSetNotifyIndex m_alternativeQoSParaSetNotifyIndex(in template (value) integer p_value := PX_ALTERNATIVE_QOS_PARA_SET_NOTIFY_INDEX) := p_value;
 
             template (omit) AlternativeQoSParaSetItem m_alternativeQoSParaSetItem(
                                                                                   in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex,
@@ -1437,7 +1719,7 @@ module LibNGAP_Templates {
             } // End of template m_associatedMBSQosFlowSetuporModifyRequestItem
 
             template (omit) AssociatedQosFlowItem m_associatedQosFlowItem(
-                                                                          in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                          in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                           in template (omit) AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := omit,
                                                                           in template (omit) AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := omit
                                                                           ) := {
@@ -1678,7 +1960,7 @@ module LibNGAP_Templates {
                                                                       ) := p_list;
 
             template (omit) BroadcastPLMNItem m_ie_broadcastPLMNItem(
-                                                                     in template (value) PLMNIdentity p_plmnId,
+                                                                     in template (value) PLMNIdentity p_plmnId := PX_PLMN_IDENTITY,
                                                                      in template (value) SliceSupportList p_ssl,
                                                                      in template (omit) BroadcastPLMNItem.iE_Extensions p_iE_Extensions := omit
                                                                      ) := {
@@ -2039,7 +2321,7 @@ module LibNGAP_Templates {
             } // End of template m_cOUNTValueForPDCP_SN18
 
             template (value) CPTransportLayerInformation m_cPTransportLayerInformation_endpointIPAddress(
-                                                                                                         in template (value) TransportLayerAddress p_endpointIPAddress
+                                                                                                         in template (value) TransportLayerAddress p_endpointIPAddress := PX_TRANSPORT_LAYER_ADDRESS
                                                                                                          ) := {
                 endpointIPAddress := p_endpointIPAddress
             } // End of template m_cPTransportLayerInformation_endpointIPAddress
@@ -2471,7 +2753,7 @@ module LibNGAP_Templates {
             template (value) Enhanced_CoverageRestriction m_enhanced_CoverageRestriction(in Enhanced_CoverageRestriction p_value := restricted) := p_value;
 
             template (omit) EndpointIPAddressAndPort m_endpointIPAddressAndPort(
-                                                                                in template (value) TransportLayerAddress p_endpointIPAddress,
+                                                                                in template (value) TransportLayerAddress p_endpointIPAddress := PX_TRANSPORT_LAYER_ADDRESS,
                                                                                 in template (value) PortNumber p_portNumber,
                                                                                 in template (omit) EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := omit
                                                                                 ) := {
@@ -2483,7 +2765,7 @@ module LibNGAP_Templates {
             template (value) EndIndication m_endIndication(in EndIndication p_value := no_further_data) := p_value;
 
             template (omit) EPS_TAI m_ePS_TAI(
-                                              in template (value) PLMNIdentity p_pLMNIdentity,
+                                              in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                               in template (value) EPS_TAC p_ePS_TAC,
                                               in template (omit) EPS_TAI.iE_Extensions p_iE_Extensions := omit
                                               ) := {
@@ -2503,7 +2785,7 @@ module LibNGAP_Templates {
             } // End of template m_e_RABInformationItem
 
             template (omit) E_RABInformationItem.iE_Extensions m_e_RABInformationItem_id_SourceTNLAddrInfo(
-                                                                                                           in template (value) TransportLayerAddress p_transportLayerAddress
+                                                                                                           in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS
                                                                                                            ) := {
                 {
                     id             := id_SourceTNLAddrInfo,
@@ -2513,7 +2795,7 @@ module LibNGAP_Templates {
             } // End of template m_e_RABInformationItem_id_SourceTNLAddrInfo
 
             template (omit) E_RABInformationItem.iE_Extensions m_e_RABInformationItem_id_SourceNodeTNLAddrInfo(
-                                                                                                               in template (value) TransportLayerAddress p_transportLayerAddress
+                                                                                                               in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS
                                                                                                                ) := {
                 {
                     id             := id_SourceNodeTNLAddrInfo,
@@ -2523,8 +2805,8 @@ module LibNGAP_Templates {
             } // End of template m_e_RABInformationItem_id_SourceNodeTNLAddrInfo
 
             template (omit) EUTRA_CGI m_uUTRA_CGI(
-                                                  in template (value) PLMNIdentity p_pLMNIdentity,
-                                                  in template (value) EUTRACellIdentity p_eUTRACellIdentity,
+                                                  in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
+                                                  in template (value) EUTRACellIdentity p_eUTRACellIdentity := PX_EUTRA_CELL_IDENTITY,
                                                   in template (omit) EUTRA_CGI.iE_Extensions p_iE_Extensions := omit
                                                   ) := {
                 pLMNIdentity      := p_pLMNIdentity,
@@ -2757,7 +3039,7 @@ module LibNGAP_Templates {
             } // End of template m_fiveG_S_TMSI
 
             template (omit) ForbiddenAreaInformation_Item m_forbiddenAreaInformation_Item(
-                                                                                          in template (value) PLMNIdentity p_pLMNIdentity,
+                                                                                          in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                                                                           in template (value) ForbiddenTACs p_forbiddenTACs,
                                                                                           in template (omit) ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := omit
                                                                                           ) := {
@@ -2827,7 +3109,7 @@ module LibNGAP_Templates {
             } // End of template m_globalCable_ID_new
 
             template (omit) GlobalGNB_ID m_ie_globalGnbId(
-                                                          in template (value) PLMNIdentity p_plmnId,
+                                                          in template (value) PLMNIdentity p_plmnId := PX_PLMN_IDENTITY,
                                                           in template (value) bitstring p_gnbId,
                                                           in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit
                                                           ) := {
@@ -2837,7 +3119,7 @@ module LibNGAP_Templates {
             } // End of template m_ie_globalGnbId
 
             template (omit) GlobalN3IWF_ID m_globalN3IWF_ID(
-                                                            in template (value) PLMNIdentity p_pLMNIdentity,
+                                                            in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                                             in template (value) N3IWF_ID p_n3IWF_ID,
                                                             in template (omit) GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := omit
                                                             ) := {
@@ -2865,7 +3147,7 @@ module LibNGAP_Templates {
             } // End of template m_globalLine_ID_id_TAI
 
             template (omit) GlobalNgENB_ID m_globalNgENB_ID(
-                                                            in template (value) PLMNIdentity p_pLMNIdentity,
+                                                            in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                                             in template (value) NgENB_ID p_ngENB_ID,
                                                             in template (omit) GlobalNgENB_ID.iE_Extensions p_iE_Extensions := omit
                                                             ) := {
@@ -2945,7 +3227,7 @@ module LibNGAP_Templates {
             // } // End of template m_globalRANNodeID_all
 
             template (omit) GlobalTNGF_ID m_globalTNGF_ID(
-                                                          in template (value) PLMNIdentity p_pLMNIdentity,
+                                                          in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                                           in template (value) TNGF_ID p_tNGF_ID,
                                                           in template (omit) GlobalTNGF_ID.iE_Extensions p_iE_Extensions := omit
                                                           ) := {
@@ -2955,7 +3237,7 @@ module LibNGAP_Templates {
             } // End of template m_globalTNGF_ID
 
             template (omit) GlobalTWIF_ID m_globalTWIF_ID(
-                                                          in template (value) PLMNIdentity p_pLMNIdentity,
+                                                          in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                                           in template (value) TWIF_ID p_tWIF_ID,
                                                           in template (omit) GlobalTWIF_ID.iE_Extensions p_iE_Extensions := omit
                                                           ) := {
@@ -2965,7 +3247,7 @@ module LibNGAP_Templates {
             } // End of template m_globalTWIF_ID
 
             template (omit) GlobalW_AGF_ID m_GlobalW_AGF_ID(
-                                                            in template (value) PLMNIdentity p_pLMNIdentity,
+                                                            in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                                             in template (value) W_AGF_ID p_w_AGF_ID,
                                                             in template (omit) GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := omit
                                                             ) := {
@@ -2987,8 +3269,8 @@ module LibNGAP_Templates {
             } // End of template m_gNB_ID_choice_Extensions
 
             template (omit) GTPTunnel m_gTPTunnel(
-                                                  in template (value) TransportLayerAddress p_tla,
-                                                  in template (value) GTP_TEID p_gtp_teid,
+                                                  in template (value) TransportLayerAddress p_tla := PX_TRANSPORT_LAYER_ADDRESS,
+                                                  in template (value) GTP_TEID p_gtp_teid := PX_GTP_TEID,
                                                   in template (omit) GTPTunnel.iE_Extensions p_iE_Extensions := omit
                                                   ):= {
                 transportLayerAddress := p_tla,
@@ -2997,7 +3279,7 @@ module LibNGAP_Templates {
             } // End of template m_gTPTunnel
 
             template (omit) GUAMI m_gUAMI(
-                                          in template (value) PLMNIdentity p_pLMNIdentity,
+                                          in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                           in template (value) AMFRegionID p_aMFRegionID,
                                           in template (value) AMFSetID p_aMFSetID,
                                           in template (value) AMFPointer p_aMFPointer,
@@ -4931,7 +5213,7 @@ module LibNGAP_Templates {
             } // End of template m_nPN_Support_choice_Extensions
 
             template (omit) NR_CGI m_nR_CGI(
-                                            in template (value) PLMNIdentity p_pLMNIdentity,
+                                            in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                             in template (value) NRCellIdentity p_nRCellIdentity,
                                             in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit
                                             ) := {
@@ -4988,7 +5270,7 @@ module LibNGAP_Templates {
                                                                               in template (omit) VehicleUE p_vehicleUE := omit,
                                                                               in template (omit) PedestrianUE p_pedestrianUE := omit,
                                                                               in template (omit) NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit
-                
+
             ) := {
                 vehicleUE     := p_vehicleUE,
                 pedestrianUE  := p_pedestrianUE,
@@ -5274,7 +5556,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionAggregateMaximumBitRate
 
             template (omit) PDUSessionResourceAdmittedItem m_pDUSessionResourceAdmittedItem(
-                                                                                            in template (value) PDUSessionID p_pDUSessionID,
+                                                                                            in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                             in template (value) PDUSessionResourceAdmittedItem.handoverRequestAcknowledgeTransfer p_handoverRequestAcknowledgeTransfer,
                                                                                             in template (omit) PDUSessionResourceAdmittedItem.iE_Extensions p_iE_Extensions := omit
                                                                                             ) := {
@@ -5284,7 +5566,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceAdmittedItem
 
             template (omit) PDUSessionResourceFailedToModifyItemModCfm m_pDUSessionResourceFailedToModifyItemModCfm(
-                                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                     in template (value) PDUSessionResourceFailedToModifyItemModCfm.pDUSessionResourceModifyIndicationUnsuccessfulTransfer p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer,
                                                                                                                     in template (omit) PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := omit
                                                                                                                     ) := {
@@ -5294,7 +5576,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceFailedToModifyItemModCfm
 
             template (omit) PDUSessionResourceFailedToModifyItemModRes m_pDUSessionResourceFailedToModifyItemModRes(
-                                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                     in template (value) PDUSessionResourceFailedToModifyItemModRes.pDUSessionResourceModifyUnsuccessfulTransfer p_pDUSessionResourceModifyUnsuccessfulTransfer,
                                                                                                                     in template (omit) PDUSessionResourceFailedToModifyItemModRes.iE_Extensions p_iE_Extensions := omit
                                                                                                                     ) := {
@@ -5304,7 +5586,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceFailedToModifyItemModRes
 
             template (omit) PDUSessionResourceFailedToResumeItemRESReq m_pDUSessionResourceFailedToResumeItemRESReq(
-                                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                     in template (value) Cause p_cause,
                                                                                                                     in template (omit) PDUSessionResourceFailedToResumeItemRESReq.iE_Extensions p_iE_Extensions := omit
                                                                                                                     ) := {
@@ -5314,7 +5596,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceFailedToResumeItemRESReq
 
             template (omit) PDUSessionResourceFailedToResumeItemRESRes m_pDUSessionResourceFailedToResumeItemRESRes(
-                                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                     in template (value) Cause p_cause,
                                                                                                                     in template (omit) PDUSessionResourceFailedToResumeItemRESRes.iE_Extensions p_iE_Extensions := omit
                                                                                                                     ) := {
@@ -5324,7 +5606,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceFailedToResumeItemRESRes
 
             template (omit) PDUSessionResourceFailedToSetupItemCxtFail m_pDUSessionResourceFailedToSetupItemCxtFail(
-                                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                     in template (value) PDUSessionResourceFailedToSetupItemCxtFail.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer,
                                                                                                                     in template (omit) PDUSessionResourceFailedToSetupItemCxtFail.iE_Extensions p_iE_Extensions := omit
                                                                                                                     ) := {
@@ -5334,7 +5616,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceFailedToSetupItemCxtFail
 
             template (omit) PDUSessionResourceFailedToSetupItemCxtRes m_pDUSessionResourceFailedToSetupItemCxtRes(
-                                                                                                                  in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                                  in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                   in template (value) PDUSessionResourceFailedToSetupItemCxtRes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer,
                                                                                                                   in template (omit) PDUSessionResourceFailedToSetupItemCxtRes.iE_Extensions p_iE_Extensions := omit
                                                                                                                   ) := {
@@ -5344,7 +5626,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceFailedToSetupItemCxtRes
 
             template (omit) PDUSessionResourceFailedToSetupItemHOAck m_pDUSessionResourceFailedToSetupItemHOAck(
-                                                                                                                in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                                in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                 in template (value) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer,  
                                                                                                                 in template (omit) PDUSessionResourceFailedToSetupItemHOAck.iE_Extensions p_iE_Extensions := omit
                                                                                                                 ) := {
@@ -5354,7 +5636,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceFailedToSetupItemHOAck
 
             template (omit) PDUSessionResourceFailedToSetupItemPSReq m_pDUSessionResourceFailedToSetupItemPSReq(
-                                                                                                                in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                                in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                 in template (value) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer,  
                                                                                                                 in template (omit) PDUSessionResourceFailedToSetupItemPSReq.iE_Extensions p_iE_Extensions := omit
                                                                                                                 ) := {
@@ -5364,7 +5646,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceFailedToSetupItemPSReq
 
             template (omit) PDUSessionResourceFailedToSetupItemSURes m_pDUSessionResourceFailedToSetupItemSURes(
-                                                                                                                in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                                in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                 in template (value) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer,
                                                                                                                 in template (omit) PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := omit
                                                                                                                 ) := {
@@ -5374,7 +5656,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceFailedToSetupItemSURes
 
             template (omit) PDUSessionResourceHandoverItem m_pDUSessionResourceHandoverItem(
-                                                                                            in template (value) PDUSessionID p_pDUSessionID,
+                                                                                            in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                             in template (value) PDUSessionResourceHandoverItem.handoverCommandTransfer p_handoverCommandTransfer,
                                                                                             in template (omit) PDUSessionResourceHandoverItem.iE_Extensions p_iE_Extensions := omit
                                                                                             ) := {
@@ -5384,7 +5666,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceHandoverItem
 
             template (omit) PDUSessionResourceInformationItem m_pDUSessionResourceInformationItem(
-                                                                                                  in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                  in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                   in template (value) QosFlowInformationList p_qosFlowInformationList,
                                                                                                   in template (omit) DRBsToQosFlowsMappingList p_dRBsToQosFlowsMappingList := omit,
                                                                                                   in template (omit) PDUSessionResourceInformationItem.iE_Extensions p_iE_Extensions := omit
@@ -5396,7 +5678,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceInformationItem
 
             template (omit) PDUSessionResourceItemCxtRelCpl m_pDUSessionResourceItemCxtRelCpl(
-                                                                                              in template (value) PDUSessionID p_pDUSessionID,
+                                                                                              in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                               in template (omit) PDUSessionResourceItemCxtRelCpl.iE_Extensions p_iE_Extensions := omit
                                                                                               ) := {
                 pDUSessionID  := p_pDUSessionID,
@@ -5414,7 +5696,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer
 
             template (omit) PDUSessionResourceItemCxtRelReq m_pDUSessionResourceItemCxtRelReq(
-                                                                                              in template (value) PDUSessionID p_pDUSessionID,
+                                                                                              in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                               in template (omit) PDUSessionResourceItemCxtRelReq.iE_Extensions p_iE_Extensions := omit
                                                                                               ) := {
                 pDUSessionID  := p_pDUSessionID,
@@ -5422,7 +5704,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceItemCxtRelReq
 
             template (omit) PDUSessionResourceItemHORqd m_pDUSessionResourceItemHORqd(
-                                                                                      in template (value) PDUSessionID p_pDUSessionID,
+                                                                                      in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                       in template (value) PDUSessionResourceItemHORqd.handoverRequiredTransfer p_handoverRequiredTransfer,
                                                                                       in template (omit) PDUSessionResourceItemHORqd.iE_Extensions p_iE_Extensions := omit
                                                                                       ) := {
@@ -5776,7 +6058,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID
 
             template (omit) PDUSessionResourceModifyItemModCfm m_pDUSessionResourceModifyItemModCfm(
-                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                     in template (value) PDUSessionResourceModifyItemModCfm.pDUSessionResourceModifyConfirmTransfer p_pDUSessionResourceModifyConfirmTransfer,
                                                                                                     in template (omit) PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := omit
                                                                                                     ) := {
@@ -5786,7 +6068,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceModifyItemModCfm
 
             template (omit) PDUSessionResourceModifyItemModInd m_pDUSessionResourceModifyItemModInd(
-                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                     in template (value) PDUSessionResourceModifyItemModInd.pDUSessionResourceModifyIndicationTransfer p_pDUSessionResourceModifyIndicationTransfer,
                                                                                                     in template (omit) PDUSessionResourceModifyItemModInd.iE_Extensions p_iE_Extensions := omit
                                                                                                     ) := {
@@ -5796,7 +6078,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceModifyItemModInd
 
             template (omit) PDUSessionResourceModifyItemModReq m_pDUSessionResourceModifyItemModReq(
-                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                     in template (value) PDUSessionResourceModifyItemModReq.pDUSessionResourceModifyRequestTransfer p_pDUSessionResourceModifyRequestTransfer,
                                                                                                     in template (omit) NAS_PDU p_nAS_PDU := omit,
                                                                                                     in template (omit) PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := omit
@@ -5828,7 +6110,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour
 
             template (omit) PDUSessionResourceModifyItemModRes m_pDUSessionResourceModifyItemModRes(
-                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                     in template (value) PDUSessionResourceModifyItemModRes.pDUSessionResourceModifyResponseTransfer p_pDUSessionResourceModifyResponseTransfer,
                                                                                                     in template (omit) PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := omit
                                                                                                     ) := {
@@ -5849,7 +6131,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceModifyUnsuccessfulTransfer
 
             template (omit) PDUSessionResourceNotifyItem m_pDUSessionResourceNotifyItem(
-                                                                                        in template (value) PDUSessionID p_pDUSessionID,
+                                                                                        in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                         in template (value) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer,
                                                                                         in template (omit) PDUSessionResourceNotifyItem.iE_Extensions p_iE_Extensions := omit
                                                                                         ) := {
@@ -5915,7 +6197,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceReleaseCommandTransfer
 
             template (omit) PDUSessionResourceReleasedItemNot m_pDUSessionResourceReleasedItemNot(
-                                                                                                  in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                  in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                   in template (value) PDUSessionResourceReleasedItemNot.pDUSessionResourceNotifyReleasedTransfer p_pDUSessionResourceNotifyReleasedTransfer,
                                                                                                   in template (omit) PDUSessionResourceReleasedItemNot.iE_Extensions p_iE_Extensions := omit
                                                                                                   ) := {
@@ -5925,7 +6207,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceReleasedItemNot
 
             template (omit) PDUSessionResourceReleasedItemPSAck m_pDUSessionResourceReleasedItemPSAck(
-                                                                                                      in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                      in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                       in template (value) PDUSessionResourceReleasedItemPSAck.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer,
                                                                                                       in template (omit) PDUSessionResourceReleasedItemPSAck.iE_Extensions p_iE_Extensions := omit
                                                                                                       ) := {
@@ -5935,7 +6217,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceReleasedItemPSAck
 
             template (omit) PDUSessionResourceReleasedItemPSFail m_pDUSessionResourceReleasedItemPSFail(
-                                                                                                        in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                        in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                         in template (value) PDUSessionResourceReleasedItemPSFail.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer,
                                                                                                         in template (omit) PDUSessionResourceReleasedItemPSFail.iE_Extensions p_iE_Extensions := omit
                                                                                                         ) := {
@@ -5945,7 +6227,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceReleasedItemPSFail
 
             template (omit) PDUSessionResourceReleasedItemRelRes m_pDUSessionResourceReleasedItemRelRes(
-                                                                                                        in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                        in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                         in template (value) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer,
                                                                                                         in template (omit) PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := omit
                                                                                                         ) := {
@@ -5971,7 +6253,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation
 
             template (omit) PDUSessionResourceResumeItemRESReq m_pDUSessionResourceResumeItemRESReq(
-                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                     in template (value) PDUSessionResourceResumeItemRESReq.uEContextResumeRequestTransfer p_uEContextResumeRequestTransfer,
                                                                                                     in template (omit) PDUSessionResourceResumeItemRESReq.iE_Extensions p_iE_Extensions := omit
                                                                                                     ) := {
@@ -5981,7 +6263,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceResumeItemRESReq
 
             template (omit) PDUSessionResourceResumeItemRESRes m_pDUSessionResourceResumeItemRESRes(
-                                                                                                    in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                    in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                     in template (value) PDUSessionResourceResumeItemRESRes.uEContextResumeResponseTransfer p_uEContextResumeResponseTransfer,
                                                                                                     in template (omit) PDUSessionResourceResumeItemRESRes.iE_Extensions p_iE_Extensions := omit
                                                                                                     ) := {
@@ -5991,7 +6273,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceResumeItemRESRes
 
             template (omit) PDUSessionResourceSecondaryRATUsageItem m_pPDUSessionResourceSecondaryRATUsageItem(
-                                                                                                               in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                               in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                                in template (value) PDUSessionResourceSecondaryRATUsageItem.secondaryRATDataUsageReportTransfer p_secondaryRATDataUsageReportTransfer,
                                                                                                                in template (omit) PDUSessionResourceSecondaryRATUsageItem.iE_Extensions p_iE_Extensions := omit
                                                                                                                ) := {
@@ -6001,7 +6283,7 @@ module LibNGAP_Templates {
             } // End of template m_pPDUSessionResourceSecondaryRATUsageItem
 
             template (omit) PDUSessionResourceSetupItemCxtReq m_pDUSessionResourceSetupItemCxtReq(
-                                                                                                  in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                  in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                   in template (value) S_NSSAI p_s_NSSAI,
                                                                                                   in template (value) PDUSessionResourceSetupItemCxtReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer,
                                                                                                   in template (omit) NAS_PDU p_nAS_PDU := omit,
@@ -6025,7 +6307,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour
 
             template (omit) PDUSessionResourceSetupItemCxtRes m_pDUSessionResourceSetupItemCxtRes(
-                                                                                                  in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                  in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                   in template (value) PDUSessionResourceSetupItemCxtRes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer,
                                                                                                   in template (omit) PDUSessionResourceSetupItemCxtRes.iE_Extensions p_iE_Extensions := omit
                                                                                                   ) := {
@@ -6035,7 +6317,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceSetupItemCxtRes
 
             template (omit) PDUSessionResourceSetupItemHOReq m_pDUSessionResourceSetupItemHOReq(
-                                                                                                in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                 in template (value) S_NSSAI p_s_NSSAI,
                                                                                                 in template (value) PDUSessionResourceSetupItemHOReq.handoverRequestTransfer p_handoverRequestTransfer,
                                                                                                 in template (omit) PDUSessionResourceSetupItemHOReq.iE_Extensions p_iE_Extensions := omit
@@ -6057,7 +6339,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour
 
             template (omit) PDUSessionResourceSetupItemSUReq m_pDUSessionResourceSetupItemSUReq(
-                                                                                                in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                 in template (value) S_NSSAI p_s_NSSAI,
                                                                                                 in template (value) PDUSessionResourceSetupItemSUReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer,
                                                                                                 in template (omit) NAS_PDU p_pDUSessionNAS_PDU := omit,
@@ -6081,7 +6363,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour
 
             template (omit) PDUSessionResourceSetupItemSURes m_pDUSessionResourceSetupItemSURes(
-                                                                                                in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                 in template (value) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer,
                                                                                                 in template (omit) PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := omit
                                                                                                 ) := {
@@ -6331,7 +6613,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceSetupUnsuccessfulTransfer
 
             template (omit) PDUSessionResourceSuspendItemSUSReq m_pDUSessionResourceSuspendItemSUSReq(
-                                                                                                      in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                      in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                       in template (value) PDUSessionResourceSuspendItemSUSReq.uEContextSuspendRequestTransfer p_uEContextSuspendRequestTransfer,
                                                                                                       in template (omit) PDUSessionResourceSuspendItemSUSReq.iE_Extensions p_iE_Extensions := omit
                                                                                                       ) := {
@@ -6341,7 +6623,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceSuspendItemSUSReq
 
             template (omit) PDUSessionResourceSwitchedItem m_pDUSessionResourceSwitchedItem(
-                                                                                            in template (value) PDUSessionID p_pDUSessionID,
+                                                                                            in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                             in template (value) PDUSessionResourceSwitchedItem.pathSwitchRequestAcknowledgeTransfer p_pathSwitchRequestAcknowledgeTransfer,
                                                                                             in template (omit) PDUSessionResourceSwitchedItem.iE_Extensions p_iE_Extensions := omit
                                                                                             ) := {
@@ -6361,7 +6643,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceSwitchedItem_id_PduSessionExpectedUEActivityBehaviour
 
             template (omit) PDUSessionResourceToBeSwitchedDLItem m_pDUSessionResourceToBeSwitchedDLItem(
-                                                                                                        in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                        in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                         in template (value) PDUSessionResourceToBeSwitchedDLItem.pathSwitchRequestTransfer p_pathSwitchRequestTransfer,
                                                                                                         in template (omit) PDUSessionResourceToBeSwitchedDLItem.iE_Extensions p_iE_Extensions := omit
                                                                                                         ) := {
@@ -6371,7 +6653,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceToBeSwitchedDLItem
 
             template (omit) PDUSessionResourceToReleaseItemHOCmd m_pDUSessionResourceToReleaseItemHOCmd(
-                                                                                                        in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                        in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                         in template (value) PDUSessionResourceToReleaseItemHOCmd.handoverPreparationUnsuccessfulTransfer p_handoverPreparationUnsuccessfulTransfer,
                                                                                                         in template (omit) PDUSessionResourceToReleaseItemHOCmd.iE_Extensions p_iE_Extensions := omit
                                                                                                         ) := {
@@ -6381,7 +6663,7 @@ module LibNGAP_Templates {
             } // End of template m_pDUSessionResourceToReleaseItemHOCmd
 
             template (omit) PDUSessionResourceToReleaseItemRelCmd m_pDUSessionResourceToReleaseItemRelCmd(
-                                                                                                          in template (value) PDUSessionID p_pDUSessionID,
+                                                                                                          in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID,
                                                                                                           in template (value) PDUSessionResourceToReleaseItemRelCmd.pDUSessionResourceReleaseCommandTransfer p_pDUSessionResourceReleaseCommandTransfer,
                                                                                                           in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit
                                                                                                           ) := {
@@ -6419,7 +6701,7 @@ module LibNGAP_Templates {
             } // End of template m_pLMNAreaBasedQMC
 
             template (omit) PLMNSupportItem m_pLMNSupportItem(
-                                                              in template (value) PLMNIdentity p_pLMNIdentity,
+                                                              in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                                               in template (value) SliceSupportList p_sliceSupportList,
                                                               in template (omit) PLMNSupportItem.iE_Extensions p_iE_Extensions := omit
                                                               ) := {
@@ -6523,7 +6805,7 @@ module LibNGAP_Templates {
             } // End of template m_qosCharacteristics_choice_Extensions
 
             template (omit) QosFlowAcceptedItem  m_qosFlowAcceptedItem(
-                                                                       in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                       in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                        in template (omit) QosFlowAcceptedItem.iE_Extensions p_iE_Extensions := omit
                                                                        ) := {
                 qosFlowIdentifier := p_qosFlowIdentifier,
@@ -6541,7 +6823,7 @@ module LibNGAP_Templates {
             } // End of template m_pLMNSupportItem_id_ExtendedSliceSupportList
 
             template (omit) QosFlowAddOrModifyRequestItem m_qosFlowAddOrModifyRequestItem(
-                                                                                          in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                                          in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                                           in template (omit) QosFlowLevelQosParameters p_qosFlowLevelQosParameters := omit,
                                                                                           in template (omit) E_RAB_ID p_e_RAB_ID := omit,
                                                                                           in template (omit) QosFlowAddOrModifyRequestItem.iE_Extensions p_iE_Extensions := omit
@@ -6573,7 +6855,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator
 
             template (omit) QosFlowAddOrModifyResponseItem m_qosFlowAddOrModifyResponseItem(
-                                                                                            in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                                            in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                                             in template (omit) QosFlowAddOrModifyResponseItem.iE_Extensions p_iE_Extensions := omit
                                                                                             ) := {
                 qosFlowIdentifier := p_qosFlowIdentifier,
@@ -6591,7 +6873,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowAddOrModifyResponseItem_id_CurrentQoSParaSetIndex
 
             template (omit) QosFlowFeedbackItem m_qosFlowFeedbackItem(
-                                                                      in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                      in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                       in template (omit) UpdateFeedback p_updateFeedback := omit,
                                                                       in template (omit) ExtendedPacketDelayBudget p_cNpacketDelayBudgetDL := omit,
                                                                       in template (omit) ExtendedPacketDelayBudget p_cNpacketDelayBudgetUL := omit,
@@ -6605,7 +6887,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowFeedbackItem
 
             template (omit) QosFlowInformationItem m_qosFlowInformationItem(
-                                                                            in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                            in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                             in template (omit) DLForwarding p_dLForwarding := omit,
                                                                             in template (omit) QosFlowInformationItem.iE_Extensions p_iE_Extensions := omit
                                                                             ) := {
@@ -6625,7 +6907,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowInformationItem_id_ULForwarding
 
             template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceTNLAddrInfo(
-                                                                                                                in template (value) TransportLayerAddress p_transportLayerAddress
+                                                                                                                in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS
                                                                                                                 ) := {
                 { 
                     id             := id_SourceTNLAddrInfo,
@@ -6635,7 +6917,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowInformationItem_id_SourceTNLAddrInfo
 
             template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceNodeTNLAddrInfo(
-                                                                                                                    in template (value) TransportLayerAddress p_transportLayerAddress
+                                                                                                                    in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS
                                                                                                                     ) := {
                 { 
                     id             := id_SourceNodeTNLAddrInfo,
@@ -6683,7 +6965,7 @@ module LibNGAP_Templates {
             template (value) QosMonitoringRequest m_qosMonitoringRequest(in QosMonitoringRequest p_value := ul) := p_value;
 
             template (omit) QosFlowWithCauseItem m_qosFlowWithCauseItem(
-                                                                        in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                        in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                         in template (value) Cause p_cause,
                                                                         in template (omit) QosFlowWithCauseItem.iE_Extensions p_iE_Extensions := omit
                                                                         ) := {
@@ -6693,7 +6975,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowWithCauseItem
 
             template (omit) QosFlowModifyConfirmItem m_qosFlowModifyConfirmItem(
-                                                                                in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                                in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                                 in template (omit) QosFlowModifyConfirmItem.iE_Extensions p_iE_Extensions := omit
                                                                                 ) := {
                 qosFlowIdentifier := p_qosFlowIdentifier,
@@ -6701,7 +6983,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowModifyConfirmItem
 
             template (omit) QosFlowNotifyItem m_qosFlowNotifyItem(
-                                                                  in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                  in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                   in template (value) NotificationCause p_notificationCause,
                                                                   in template (omit) QosFlowNotifyItem.iE_Extensions p_iE_Extensions := omit
                                                                   ) := {
@@ -6721,7 +7003,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowNotifyItem_id_CurrentQoSParaSetIndex
 
             template (omit) QosFlowParametersItem m_qosFlowParametersItem(
-                                                                          in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                          in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                           in template (omit) AlternativeQoSParaSetList p_alternativeQoSParaSetList := omit,
                                                                           in template (omit) QosFlowParametersItem.iE_Extensions p_iE_Extensions := omit
                                                                           ) := {
@@ -6779,7 +7061,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowPerTNLInformationItem
 
             template (omit) QosFlowSetupRequestItem m_qosFlowSetupRequestItem(
-                                                                              in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                              in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                               in template (value) QosFlowLevelQosParameters p_qosFlowLevelQosParameters,
                                                                               in template (omit) E_RAB_ID p_e_RAB_ID := omit,
                                                                               in template (omit) QosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := omit
@@ -6811,7 +7093,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator
 
             template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding(
-                                                                                          in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                                          in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                                           in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit,
                                                                                           in template (omit) QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := omit
                                                                                           ) := {
@@ -6831,7 +7113,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex
 
             template (omit) QosFlowToBeForwardedItem m_qosFlowToBeForwardedItem(
-                                                                                in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                                in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                                 in template (omit) QosFlowToBeForwardedItem.iE_Extensions p_iE_Extensions := omit
                                                                                 ) := {
                 qosFlowIdentifier := p_qosFlowIdentifier,
@@ -6839,7 +7121,7 @@ module LibNGAP_Templates {
             } // End of template m_qosFlowToBeForwardedItem
 
             template (omit) QoSFlowsUsageReport_Item m_qoSFlowsUsageReport_Item(
-                                                                                in template (value) QosFlowIdentifier p_qosFlowIdentifier,
+                                                                                in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER,
                                                                                 in template (value) QoSFlowsUsageReport_Item.rATType p_rATType := nr,
                                                                                 in template (value) VolumeTimedReportList p_qoSFlowsTimedReportList,
                                                                                 in template (omit) QoSFlowsUsageReport_Item.iE_Extensions p_iE_Extensions := omit
@@ -6863,7 +7145,7 @@ module LibNGAP_Templates {
             template (value) RAT_Information m_rAT_Information(in RAT_Information p_value := unlicensed) := p_value;
 
             template (omit) RATRestrictions_Item m_rATRestrictions_Item(
-                                                                        in template (value) PLMNIdentity p_pLMNIdentity,
+                                                                        in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                                                         in template (value) RATRestrictionInformation p_rATRestrictionInformation,
                                                                         in template (omit) RATRestrictions_Item.iE_Extensions p_iE_Extensions := omit
                                                                         ) := {
@@ -7138,7 +7420,7 @@ module LibNGAP_Templates {
             } // End of template m_servedGUAMIItem_id_GUAMIType
 
             template (omit) ServiceAreaInformation_Item m_serviceAreaInformation_Item(
-                                                                                      in template (value) PLMNIdentity p_pLMNIdentity,
+                                                                                      in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                                                                       in template (omit) AllowedTACs p_allowedTACs := omit,
                                                                                       in template (omit) NotAllowedTACs p_notAllowedTACs := omit,
                                                                                       in template (omit) ServiceAreaInformation_Item.iE_Extensions p_iE_Extensions := omit
@@ -7152,9 +7434,9 @@ module LibNGAP_Templates {
             template (value) ServiceType m_serviceType(in ServiceType p_value := streaming) := p_value;
 
             template (omit) SharedNGU_MulticastTNLInformation m_sharedNGU_MulticastTNLInformation(
-                                                                                                  in template (value) TransportLayerAddress p_iP_MulticastAddress,
-                                                                                                  in template (value) TransportLayerAddress p_iP_SourceAddress,
-                                                                                                  in template (value) GTP_TEID p_gTP_TEID,
+                                                                                                  in template (value) TransportLayerAddress p_iP_MulticastAddress := PX_MC_TRANSPORT_LAYER_ADDRESS,
+                                                                                                  in template (value) TransportLayerAddress p_iP_SourceAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS,
+                                                                                                  in template (value) GTP_TEID p_gTP_TEID := PX_GTP_TEID,
                                                                                                   in template (omit) SharedNGU_MulticastTNLInformation.iE_Extensions p_iE_Extensions := omit
                                                                                                   ) := {
                 iP_MulticastAddress := p_iP_MulticastAddress,
@@ -7196,7 +7478,7 @@ module LibNGAP_Templates {
             } // End of template m_sNPN_MobilityInformation
 
             template (omit) S_NSSAI m_s_NSSAI(
-                                              in template (value) SST p_sST,
+                                              in template (value) SST p_sST := PX_SST,
                                               in template (omit) SD p_sD := omit,
                                               in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit
                                               ) := {
@@ -7459,7 +7741,7 @@ module LibNGAP_Templates {
             template (value) Suspend_Response_Indication m_suspend_Response_Indication(in Suspend_Response_Indication p_value := suspend_indicated) := p_value;
 
             template (omit) TAI m_tAI(
-                                      in template (value) PLMNIdentity p_pLMNIdentity,
+                                      in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY,
                                       in template (value) TAC p_tAC,
                                       in template (omit) TAI.iE_Extensions p_iE_Extensions := omit 
                                       ) := {
@@ -7781,7 +8063,7 @@ module LibNGAP_Templates {
                                                               in template (value) NGRANTraceID p_nGRANTraceID,
                                                               in template (value) InterfacesToTrace p_interfacesToTrace,
                                                               in template (value) TraceDepth p_traceDepth,
-                                                              in template (value) TransportLayerAddress p_traceCollectionEntityIPAddress,
+                                                              in template (value) TransportLayerAddress p_traceCollectionEntityIPAddress := PX_TRANSPORT_LAYER_ADDRESS,
                                                               in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit
                                                               ) := {
                 nGRANTraceID                   := p_nGRANTraceID,
@@ -7890,7 +8172,7 @@ module LibNGAP_Templates {
                 tSCAssistanceInformationUL := p_tSCAssistanceInformationUL,
                 iE_Extensions              := p_iE_Extensions
             } // End of template m_tSCTrafficCharacteristics
-            
+
             template (omit) UEAggregateMaximumBitRate m_uEAggregateMaximumBitRate(
                                                                                   in template (value) BitRate p_uEAggregateMaximumBitRateDL,
                                                                                   in template (value) BitRate p_uEAggregateMaximumBitRateUL,
@@ -8300,7 +8582,7 @@ module LibNGAP_Templates {
             } // End of template m_userLocationInformationEUTRA_id_PSCellInformation
 
             template (omit) UserLocationInformationN3IWF m_userLocationInformationN3IWF(
-                                                                                        in template (value) TransportLayerAddress p_iPAddress,
+                                                                                        in template (value) TransportLayerAddress p_iPAddress := PX_TRANSPORT_LAYER_ADDRESS,
                                                                                         in template (value) PortNumber p_portNumber,
                                                                                         in template (omit) UserLocationInformationN3IWF.iE_Extensions p_iE_Extensions := omit
                                                                                         ) := {
@@ -8321,7 +8603,7 @@ module LibNGAP_Templates {
 
             template (omit) UserLocationInformationTNGF m_userLocationInformationTNGF(
                                                                                         in template (value) TNAP_ID p_tNAP_ID,
-                                                                                        in template (value) TransportLayerAddress p_iPAddress,
+                                                                                        in template (value) TransportLayerAddress p_iPAddress := PX_TRANSPORT_LAYER_ADDRESS,
                                                                                         in template (value) PortNumber p_portNumber,
                                                                                         in template (omit) UserLocationInformationTNGF.iE_Extensions p_iE_Extensions := omit
                                                                                         ) := {
@@ -8343,7 +8625,7 @@ module LibNGAP_Templates {
 
             template (omit) UserLocationInformationTWIF m_userLocationInformationTWIF(
                                                                                       in template (value) TWAP_ID p_tWAP_ID,
-                                                                                      in template (value) TransportLayerAddress p_iPAddress,
+                                                                                      in template (value) TransportLayerAddress p_iPAddress := PX_TRANSPORT_LAYER_ADDRESS,
                                                                                       in template (value) PortNumber p_portNumber,
                                                                                       in template (omit) UserLocationInformationTWIF.iE_Extensions p_iE_Extensions := omit
                                                                                       ) := {
@@ -8579,7 +8861,7 @@ module LibNGAP_Templates {
 
         } // End of group send
 
-        group Receive{
+        group Receive {
 
             template (present) AdditionalDLUPTNLInformationForHOItem mw_additionalDLUPTNLInformationForHOItem(
                                                                                                               template (present) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation := ?,
@@ -8701,8 +8983,6 @@ module LibNGAP_Templates {
                 iE_Extensions             := p_iE_Extensions
             } // End of template mw_aMF_TNLAssociationToUpdateItem
 
-            template (present) AMF_UE_NGAP_ID mw_ie_aMFUeNgapId(template (present) integer p_val := ?) := p_val;
-
             template AreaOfInterest mw_areaOfInterest(
                                                       template AreaOfInterestTAIList p_areaOfInterestTAIList := *,
                                                       template AreaOfInterestCellList p_areaOfInterestCellList := *,
@@ -8714,7 +8994,7 @@ module LibNGAP_Templates {
                 areaOfInterestRANNodeList := p_areaOfInterestRANNodeList,
                 iE_Extensions             := p_iE_Extensions
             } // End of template mw_areaOfInterest
-            
+
             template (present) AreaOfInterestCellItem mw_areaOfInterestCellItem(
                                                                                 template (present) NGRAN_CGI p_nGRAN_CGI := ?,
                                                                                 template AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := *
@@ -10323,8 +10603,6 @@ module LibNGAP_Templates {
                 choice_Extensions := p_choice_Extensions
             } // End of template mw_gNB_ID_choice_Extensions
 
-            template (present) GTP_TEID mw_ie_gtpTeId(template (present) GTP_TEID p_val := ?) := p_val;
-
             template (present) GTPTunnel mw_gTPTunnel(
                                                       in template (present) TransportLayerAddress p_tla := ?,
                                                       in template (present) GTP_TEID p_gtp_teid := ?,
@@ -10983,7 +11261,7 @@ module LibNGAP_Templates {
                 capacityValue          := p_capacityValue,
                 iE_Extensions          := p_iE_Extensions
             } // End of template mw_compositeAvailableCapacity
-            
+
             template (present) EUTRAN_RadioResourceStatus mw_eUTRAN_RadioResourceStatus(
                                                                                         template (present) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage := ?,
                                                                                         template (present) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage := ?,
diff --git a/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn b/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn
index 52714ae..c137387 100644
--- a/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn
+++ b/ttcn/LibNGAP/lib/LibNGAP_TypesAndValues.ttcn
@@ -10,7 +10,7 @@
  *    @see      ETSI TS 138 413 / 3GPP TS 38.413 version 16.12 Release 16
  */
 module LibNGAP_TypesAndValues {
-    
+
     // LibNGAP
     import from NGAP_IEs language "ASN.1:2002" all;
     import from NGAP_PDU_Contents language "ASN.1:2002" all;
diff --git a/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn b/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn
index 4c3a4fe..1dba94c 100644
--- a/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn
+++ b/ttcn/LibNGAP/lib_system/LibNGAP_Interface.ttcn
@@ -10,31 +10,31 @@
  *    @see      ETSI TS  / 3GPP TS 
  */
 module LibNGAP_Interface {
-    
+
     // LibCommon
     import from LibCommon_Sync all;
-    
+
     // LibNGAP
     import from NGAP_IEs language "ASN.1:1997" all;
     import from NGAP_PDU_Descriptions language "ASN.1:1997" all;
     import from LibNGAP_Pixits all;
-    
+
     group portDefinitions {
-        
+
         /**
          * @desc NGAP protocol port
          */
         type port NGAPPort message {
             inout NGAP_PDU
         } // End of type NGAPPort
-        
+
     } // End of group portDefinitions 
-    
+
     group interfacePorts {
          type component NGAPComponent extends SelfSyncComp {
             // Port
             port NGAPPort N2_gNBaMF_P;
-            
+
             // Global variables
 
             var boolean vc_serverStop:=false; 
@@ -67,8 +67,8 @@ module LibNGAP_Interface {
 
         } // End of type component NGAPComponent
 
-        
+
     } // End of group interfacePorts 
-    
+
 } // End of module LibNGAP_Interface
 
diff --git a/ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn b/ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn
index 1568729..e5ffc45 100644
--- a/ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn
+++ b/ttcn/LibNGAP/lib_system/LibNGAP_Steps.ttcn
@@ -10,34 +10,34 @@
  *    @see      ETSI TS  / 3GPP TS
  */
 module LibNGAP_Steps {
-    
+
     // LibCommon
     import from LibCommon_Sync all;
     import from LibCommon_VerdictControl all;
     import from LibCommon_BasicTypesAndValues all;
-    
+
     // LibNGAP
     import from NGAP_CommonDataTypes language "ASN.1:1997" all;
     import from NGAP_PDU_Descriptions language "ASN.1:1997" all;
     import from NGAP_IEs language "ASN.1:1997" all;
-    
+
     import from LibNGAP_TypesAndValues all;
     import from LibNGAP_Interface all;
     import from LibNGAP_Pixits all;
     import from LibNGAP_Templates all;
-    
+
     /**
      * @desc Common functions description
      */
     group commonFunctions {
-    
+
     } // End of group commonFunctions
-    
+
     /**
      * @desc Receive functions description
      */
     group receivePDU {
-        
+
         /**
          *  @desc    This is a test step that assign common NGAP
          *  @param   p_PDU Extract the message payload from the NGAP PDU
@@ -45,9 +45,9 @@ module LibNGAP_Steps {
         function f_NGAPPDU_Get(
                                inout NGAP_PDU p_PDU
         ) runs on NGAPComponent {
-            
+
             vc_recvNGAP_PDU := p_PDU;
-            
+
             if (ischosen(p_PDU.initiatingMessage)) {
                 // Nothing to do
             }
@@ -58,7 +58,7 @@ module LibNGAP_Steps {
                  // Nothing to do
             }
         } // End of function f_NGAPPDU_Get
-        
+
         /**
          * @desc Receive NGAP PDU from protocol port
          * @param p_PDU template of the message to be received
@@ -67,7 +67,7 @@ module LibNGAP_Steps {
                                  in template NGAP_PDU p_PDU
         ) runs on NGAPComponent {
             var NGAP_PDU v_PDU;
-            
+
             tc_wait.start;
             alt {
                 [] N2_gNBaMF_P.receive(p_PDU) -> value v_PDU {
@@ -81,9 +81,9 @@ module LibNGAP_Steps {
                     f_componentStop();
                 }
             }
-            
+
         } // End of function f_recv_NGAP_PDU
-        
+
         /**
          * @desc Receive NGAP PDU with InitiatingMessage payload from protocol port
          * @param p_initiatingMessage Receive template for InitiatingMessage message
@@ -93,7 +93,7 @@ module LibNGAP_Steps {
         ) runs on NGAPComponent {
             f_recv_NGAP_PDU( { initiatingMessage := p_initiatingMessage })
         } // End of function f_recv_NGAP_initiatingMessage
-        
+
         /**
          * @desc Receive NGAP PDU with SuccessfulOutcome payload from protocol port
          * @param p_successfulOutcome Receive template for SuccessfulOutcome message
@@ -103,7 +103,7 @@ module LibNGAP_Steps {
         ) runs on NGAPComponent {
             f_recv_NGAP_PDU( {successfulOutcome := p_successfulOutcome})
         } // End of f_recv_NGAP_successfulOutcome
-        
+
         /**
          * @desc Receive NGAP PDU with UnsuccessfulOutcome payload from protocol port
          * @param p_unsuccessfulOutcome Receive template for UnsuccessfulOutcome message
@@ -113,15 +113,15 @@ module LibNGAP_Steps {
         ) runs on NGAPComponent {
             f_recv_NGAP_PDU( {unsuccessfulOutcome := p_unsuccessfulOutcome})
         } // End of function f_recv_NGAP_unsuccessfulOutcome
-        
-        
+
+
     } // End of group receivePDU
-    
+
     /**
      * @desc Send functions description
      */
     group sendPDU {
-        
+
         /**
          *  @desc    This is a test step that assign common NGAP
          *  @param p_PDU The NGAP protocol message to set up
@@ -129,7 +129,7 @@ module LibNGAP_Steps {
         function f_NGAPPDU_Set(
                                inout template (value) NGAP_PDU p_PDU
         ) runs on NGAPComponent {
-            
+
             if (ischosen(p_PDU.initiatingMessage)) {
                 vc_sendNGAP_PDU:=valueof(p_PDU);
             }
@@ -139,9 +139,9 @@ module LibNGAP_Steps {
             if (ischosen(p_PDU.unsuccessfulOutcome)) {
                  vc_sendNGAP_PDU:=valueof(p_PDU);
             }
-            
+
         } // End of function f_NGAPPDU_Set
-        
+
         /**
          * @desc Send NGAP PDU to protocol port
          * @param p_PDU template value message to be send
@@ -152,7 +152,7 @@ module LibNGAP_Steps {
             f_NGAPPDU_Set(p_PDU);
             N2_gNBaMF_P.send(p_PDU);
         } // End of function f_send_NGAPPDU
-        
+
         /**
          * @desc Send NGAP PDU with InitiatingMessage payload from protocol port
          * @param p_initiatingMessage Send value template for InitiatingMessage message
@@ -163,7 +163,7 @@ module LibNGAP_Steps {
         ) runs on NGAPComponent {
             f_send_NGAP_PDU( {initiatingMessage := p_initiatingMessage})
         } // End of function f_send_NGAP_initiatingMessage
-        
+
         /**
          * @desc Send NGAP PDU with SuccessfulOutcome payload from protocol port
          * @param p_successfulOutcome Send value template for SuccessfulOutcome message
@@ -173,7 +173,7 @@ module LibNGAP_Steps {
         ) runs on NGAPComponent {
             f_send_NGAP_PDU( {successfulOutcome := p_successfulOutcome})
         } // End of function f_send_NGAP_successfulOutcome
-        
+
         /**
          * @desc Send NGAP PDU with UnsuccessfulOutcome payload from protocol port
          * @param p_unsuccessfulOutcome Send value template for UnsuccessfulOutcome message
@@ -183,23 +183,23 @@ module LibNGAP_Steps {
         ) runs on NGAPComponent {
             f_send_NGAP_PDU( {unsuccessfulOutcome := p_unsuccessfulOutcome})
         } // End of function f_send_NGAP_unsuccessfulOutcome 
-        
+
     } // End of group sendPDU
-    
+
     /**
      * @desc Setup full procedure functions
      * @see ETSI TS 
      */
     group fullProcedures {
     } // End of group fullProcedures
-    
+
     group externalFunctions {
     } // End of group externalFunctions
-    
+
     group preambles {
-        
+
         group preamble_NGAP{
-            
+
             /**
              * @desc 
              * @verdict 
@@ -208,7 +208,7 @@ module LibNGAP_Steps {
             runs on NGAPComponent {
                 // Nothing to do
             } // End of function f_preambleNGAP_MME
-            
+
             /**
              * @desc 
              * @verdict 
@@ -217,15 +217,15 @@ module LibNGAP_Steps {
             runs on NGAPComponent {
                 // Nothing to do
             } // End of function f_preambleNGAP_eNB
-            
+
         } // End of group preamble_NGAP
-        
+
     } // End of group preambles
-    
+
     group postambles {
-        
+
         group postamble_NGAP{
-            
+
             /**
              * @desc 
              * @verdict 
@@ -234,7 +234,7 @@ module LibNGAP_Steps {
             runs on NGAPComponent {
                 // Nothing to do
             } // End of function f_postambleNGAP_gNB
-            
+
             /**
              * @desc 
              * @verdict 
@@ -243,16 +243,16 @@ module LibNGAP_Steps {
             runs on NGAPComponent {
                 // Nothing to do
             } // End of function f_postambleNGAP_AMF
-            
+
         } // End of group postamble_NGAP
-        
+
     } // End of group postambles
-    
+
     /**
      * @desc Global 'altstep' statements description
      */
     group globalSteps {
-        
+
         /**
          *  @desc    This is a test step that init NGAP component
          */
@@ -260,49 +260,49 @@ module LibNGAP_Steps {
         runs on NGAPComponent {
             // Nothing to do
         } // End of function  f_NGAP_Init_Component
-        
+
         /**
          * @desc Component termination
          */
         function f_NGAP_terminate_component()
         runs on NGAPComponent {
-            
+
             log("component terminated - forced!");
             deactivate;
             stop;
         } // End of function f_NGAP_terminate_component
-        
+
         /**
          * @desc Component termination
          */
         function f_componentStop()
         runs on NGAPComponent {
-            
+
             syncPort.send(m_syncClientStop);
             N2_gNBaMF_P.clear;
             stop;
         } // End of function f_componentStop
-        
+
         /**
          * @desc Original copied from older LibCommon_VerdictControl
          */
         function f_getVerdict() // FIXME Are you sure we really need it???
         return FncRetCode {
-            
+
             var FncRetCode v_ret := e_error;
             if (getverdict == pass or getverdict == none) {
                 v_ret := e_success;
             }
             return v_ret;
         } // End of function 
-        
+
     } // End of group globalSteps
-    
+
     /**
      * @desc Default 'altstep' statements description
      */
     group defaultsTestStep {
-        
+
         /**
          * @desc 
          * @verdict 
@@ -350,7 +350,7 @@ module LibNGAP_Steps {
                 stop;
             }
         } // End of altstep a_defaultNGAP
-        
+
         altstep a_defaultNGAP_MME()
         runs on NGAPComponent {
             [] any timer.timeout {
@@ -364,7 +364,7 @@ module LibNGAP_Steps {
             }
             // Note: possible unscollicited messages should be filtered
         } // End of altstep a_defaultNGAP_MME
-        
+
         altstep a_defaultNGAP_eNB()
         runs on NGAPComponent {
             [] any timer.timeout {
@@ -378,7 +378,7 @@ module LibNGAP_Steps {
             }
             // Note: possible unscollicited messages should be filtered
         } // End of altstep a_defaultNGAP_eNB
-        
+
     } // End of group defaultsTestStep
-    
+
 } // End of module LibNGAP_Steps
diff --git a/ttcn/patch_lib_common_titan/ttcn/LibCommon_BasicTypesAndValues.ttcn b/ttcn/patch_lib_common_titan/ttcn/LibCommon_BasicTypesAndValues.ttcn
index 9b5477d..1077c60 100644
--- a/ttcn/patch_lib_common_titan/ttcn/LibCommon_BasicTypesAndValues.ttcn
+++ b/ttcn/patch_lib_common_titan/ttcn/LibCommon_BasicTypesAndValues.ttcn
@@ -16,7 +16,7 @@
  *
  */
  module LibCommon_BasicTypesAndValues {
-  
+
   /** 
    *  @remark Number in subtype name always indicates encoding length 
    *          in _bits_
@@ -97,9 +97,9 @@
     type integer  UInt48 (0 .. c_uInt48Max) with {variant "unsigned 48 bit"};
     type integer  UInt52 (0 .. c_uInt52Max) with {variant "unsigned 52 bit"};
     type integer  UInt64 (0 .. c_uInt64Max) with {variant "unsigned 64 bit"};
-    
+
   } // end group unsignedIntegerDefintions
-    
+
   /** 
    * @remark Number in subtype name always indicates encoding length 
    *         in _bits_
@@ -224,7 +224,7 @@
     const UInt24  c_uInt24Zero := 0;
     const UInt32  c_uInt32Zero := 0;
     const UInt48  c_uInt48Zero := 0;
-    
+
   }//end group zeroedInt
 
   /** 
@@ -241,7 +241,7 @@
     type boolean  Bool6 with { variant "6 bit" };
     type boolean  Bool7 with { variant "7 bit" };
     type boolean  Bool8 with { variant "8 bit" };
-  
+
   } // end group booleanDefintions
 
 } // end module LibCommon_BasicTypesAndValues
diff --git a/ttcn/patch_lib_common_titan/ttcn/LibCommon_DataStrings.ttcn b/ttcn/patch_lib_common_titan/ttcn/LibCommon_DataStrings.ttcn
index 9bfbe61..0ee60f2 100644
--- a/ttcn/patch_lib_common_titan/ttcn/LibCommon_DataStrings.ttcn
+++ b/ttcn/patch_lib_common_titan/ttcn/LibCommon_DataStrings.ttcn
@@ -104,7 +104,7 @@
     type octetstring  Oct14   length(14) with {encode "length(14)"};
     type octetstring  Oct15   length(15) with {encode "length(15)"};
     type octetstring  Oct16   length(16) with {encode "length(16)"};
-    
+
     type octetstring  Oct20   length(20) with {encode "length(20)"};
     type octetstring  Oct32   length(32) with {encode "length(32)"};
     type octetstring  Oct48   length(48) with {encode "length(48)"};
diff --git a/ttcn/patch_lib_common_titan/ttcn/LibCommon_Sync.ttcn b/ttcn/patch_lib_common_titan/ttcn/LibCommon_Sync.ttcn
index 39d9659..6f39f56 100644
--- a/ttcn/patch_lib_common_titan/ttcn/LibCommon_Sync.ttcn
+++ b/ttcn/patch_lib_common_titan/ttcn/LibCommon_Sync.ttcn
@@ -163,7 +163,7 @@ module LibCommon_Sync {
             e_testBody,
             e_postamble
         }
-        
+
       } // end compTypeRelated
 
       group standardSyncPointNames {
@@ -421,7 +421,7 @@ module LibCommon_Sync {
           f_clientSyncAndVerdictPreamble(p_syncPoint, p_ret);
         }
       }
-      
+
       /**
        * @desc   Calls either self synchronization function if
        *         invoking component is the MTC, otherwise
@@ -450,7 +450,7 @@ module LibCommon_Sync {
           f_clientSyncAndVerdictTestBody(p_syncPoint, p_ret);
         }
       }
-      
+
       /**
        * @desc   Function kept for backward compatibility
        * @see    f_selfOrClientSyncAndVerdictPreamble
@@ -618,7 +618,7 @@ module LibCommon_Sync {
             stop ;
           }
       } // end altstep a_dummyShutDown
-      
+
       /**
        * @desc Shutdown alstep in case the sync server is requesting shutdown. 
        * 
@@ -682,7 +682,7 @@ module LibCommon_Sync {
       runs on ServerSyncComp {
           f_serverSyncClientsTimedIntermediateSync(p_noOfClients,p_syncId, p_NoOfClientIntermediate, p_syncIdIntermediate, PX_TSYNC_TIME_LIMIT);
       }
-  
+
       /**
        * @desc   Handles synchronization of clients from server side.
        *         If problem occurs, then server sends STOP to all clients.
@@ -1139,7 +1139,7 @@ module LibCommon_Sync {
         f_selfSync(p_syncId,p_ret);
         vc_testcaseStep := e_testBody;
       }
-      
+
       /**
        * @desc  This function combines MTC verdict setting with self
        *        synchronization for use after the test body.
-- 
GitLab


From 3d3b0bd8667b37086e5251e76e813490e9d475d2 Mon Sep 17 00:00:00 2001
From: Sascha Hackel 
Date: Tue, 19 Mar 2024 15:03:50 +0100
Subject: [PATCH 156/365] update initial condition for the LRP group

---
 test_purposes/Ngap_Common.tplan2       |  1 +
 test_purposes/ngap/TP_AMF_NGAP2.tplan2 |  6 +++++-
 test_purposes/ngap/TP_GNB_NGAP.tplan2  | 12 ++++++++++--
 3 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2
index 593054e..d7e263c 100644
--- a/test_purposes/Ngap_Common.tplan2
+++ b/test_purposes/Ngap_Common.tplan2
@@ -66,6 +66,7 @@ Package Ngap_Common {
             - PICS_A3/10_2	//gNB - Trace procedure - TRACE FAILURE INDICATION messages
             - PICS_A3/10_3	//gNB - Trace procedure - DEACTIVATE TRACE messages
             - PICS_A3/10_4	//gNB - Trace procedure - CELL TRAFFIC TRACE messages
+            - PICS_A3/11_1	//gNB - Location Reporting Procedures - LOCATION REPORTING CONTROL
             - PICS_A3/11_2	//gNB - Location Reporting Procedures - LOCATION REPORTING FAILURE INDICATION
             - PICS_A3/11_3	//gNB - Location Reporting Procedures - LOCATION REPORT
             - PICS_A3/12_1	//gNB - TNLA procedure - UE TNLA BINDING RELEASE REQUEST messages
diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2
index e76a685..d3af45f 100644
--- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2
+++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2
@@ -2108,7 +2108,11 @@ Package TP_AMF {
 	        
 	        Config Id CFG_AMF_01
 	        
-	        PICS Selection PICS_A3/5_1
+	        PICS Selection PICS_A2/2 and PICS_A3/11_1
+	        
+	        Initial conditions with {
+            	the UE entity isRegisteredTo the AMF
+        	}
     		
 	        Expected behaviour
 	            ensure that {
diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2
index a6ea9ee..502dae5 100644
--- a/test_purposes/ngap/TP_GNB_NGAP.tplan2
+++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2
@@ -2219,7 +2219,11 @@ Package TP_GNB {
 	        
 	        Config Id CFG_GNB_01
 	        
-	        PICS Selection PICS_A3/11_2
+	        PICS Selection PICS_A2/1 and PICS_A3/11_2
+	        
+	        Initial conditions with {
+            	the UE entity isRegisteredTo the AMF
+        	}
     		
 	        Expected behaviour
 	            ensure that {
@@ -2277,7 +2281,11 @@ Package TP_GNB {
 	        
 	        Config Id CFG_GNB_01
 	        
-	        PICS Selection PICS_A3/5_1
+	        PICS Selection PICS_A2/1 and PICS_A3/11_3
+	        
+	        Initial conditions with {
+            	the UE entity isRegisteredTo the AMF
+        	}
     		
 	        Expected behaviour
 	            ensure that {
-- 
GitLab


From 4d5b469d4fd9b5df4401a91d1d42c3398bf3812b Mon Sep 17 00:00:00 2001
From: Sascha Hackel 
Date: Tue, 19 Mar 2024 16:00:05 +0100
Subject: [PATCH 157/365] resolve TODOs

---
 test_purposes/Ngap_Common.tplan2       |  1 +
 test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 11 +++++++----
 test_purposes/ngap/TP_GNB_NGAP.tplan2  | 10 ++++++----
 3 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2
index d7e263c..9494583 100644
--- a/test_purposes/Ngap_Common.tplan2
+++ b/test_purposes/Ngap_Common.tplan2
@@ -162,6 +162,7 @@ Package Ngap_Common {
             - hasEstablishedPS2CSDialog
             - hasEstablishedInitialContext
             - hasEstablishedRRCConnection
+            - hasEstablishedContextInproperly
             - isConfiguredWithENUMentryForTelURI_E164NumberOf
             - hasReceivedInitialRequestForDialog
             - hasReceived200OkOnInitialRequestForDialogWith
diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2
index d3af45f..77fe136 100644
--- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2
+++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2
@@ -541,8 +541,9 @@ Package TP_AMF {
         	import all from Ngap_Common;
     		
     		Test Purpose {
-		
-		        TP Id TP_NGAP_GNB_CMP_12
+				
+				// This TP applies only if the NG-RAN node is an ng-eNB
+		        TP Id TP_NGAP_AMF_CMP_12
 		        
 		        Test objective "Verify that the IUT can successfully request UE information from the AMF."
 		        
@@ -593,7 +594,8 @@ Package TP_AMF {
             	import all from Ngap_Common;
             	
             	Test Purpose {
-		
+				
+				// This TP applies only if the NG-RAN node is an ng-eNB
 		        TP Id TP_NGAP_AMF_CMP_05
 		        
 		        Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context."
@@ -638,6 +640,7 @@ Package TP_AMF {
             	
             	Test Purpose {
 		
+				// This TP applies only if the NG-RAN node is an ng-eNB
 		        TP Id TP_NGAP_AMF_CMP_06
 		        
 		        Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension."
@@ -689,7 +692,7 @@ Package TP_AMF {
         	import all from Ngap_Common;
         	
         	Test Purpose {
-	
+			// This TP applies only if the NG-RAN node is an ng-eNB
 	        TP Id TP_NGAP_AMF_CMP_07
 	        
 	        Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context."
diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2
index 502dae5..3c80839 100644
--- a/test_purposes/ngap/TP_GNB_NGAP.tplan2
+++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2
@@ -601,8 +601,8 @@ Package TP_GNB {
 	        PICS Selection PICS_A2/1 and PICS_A3/2_1
 	        
 			Initial conditions with {
-            	the UE entity isRegisteredTo the AMF
-            	// TODO: and the UE entity notEstablishedContextProperly
+            	the UE entity isRegisteredTo the AMF and
+            	the UE entity hasEstablishedContextInproperly
         	}
 	        
 	        Expected behaviour
@@ -963,7 +963,8 @@ Package TP_GNB {
             	import all from Ngap_Common;
             	
             	Test Purpose {
-		
+            		
+				// This TP applies only if the NG-RAN node is an ng-eNB
 		        TP Id TP_NGAP_GNB_CMP_05
 		        
 		        Test objective "Verify that the IUT can send a UE CONTEXT SUSPEND REQUEST contains mandatory IEs"
@@ -1009,7 +1010,8 @@ Package TP_GNB {
         	import all from Ngap_Common;
         	
         	Test Purpose {
-	
+			
+			// This TP applies only if the NG-RAN node is an ng-eNB
 	        TP Id TP_NGAP_GNB_CMP_06
 	        
 	        Test objective "Verify that the IUT can send a UE CONTEXT RESUME REQUEST contains mandatory IEs"
-- 
GitLab


From e145dddecf1c6713cb0f584d15dd504201b362cc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Steffen=20L=C3=BCdtke?=
 
Date: Tue, 19 Mar 2024 16:26:53 +0100
Subject: [PATCH 158/365] new TP in section Interface Management Procedures

---
 test_purposes/ngap/TP_GNB_NGAP.tplan2 | 57 +++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2
index 3c80839..0a10c6b 100644
--- a/test_purposes/ngap/TP_GNB_NGAP.tplan2
+++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2
@@ -1688,6 +1688,63 @@ Package TP_GNB {
             	
             	} // end TP TP_NGAP_GNB_IMP_03
             	
+            	Test Purpose {
+            		
+            	TP Id TP_NGAP_GNB_IMP_06
+		        
+		        Test objective "Verify that the GNB node can send a AMF CONFIGURATION UPDATE FAILURE."
+		        
+		        Reference 
+		            "ETSI TS 138 413 [1], Clauses 8.7.3.2"
+		        
+		        Config Id CFG_GNB_01
+		        
+		        PICS Selection PICS_A2/1 and PICS_A3/6_3
+		        
+		        Initial conditions with {
+	        		the UE entity isRegisteredTo the AMF and
+	        		the UE entity isCMIDLE and
+	        		the UE entity hasReceivedPAGINGMessage 
+	    		}
+		        
+		        Expected behaviour
+		            ensure that {
+		                when {
+		                    the IUT entity receives a AMF_CONFIGURATION_UPDATE containing  	
+		                        Served_GUAMI_List containing
+		                        	Served_GUAMI_Item containing
+		                        		GUAMI
+		                        	;
+		                        ;,
+		                        PLMN_Support_List containing
+		                        	PLMN_Support_Item containing
+		                        		PLMN_Identity, // Implementation Note: Incorrect PLMN ID: The PLMN ID in the message does not match the PLMN ID of the GNB.
+		                        		Slice_Support_List
+		                        	;
+		                        ;,
+		                        AMF_TNL_Association_to_Add_List containing
+		                        	AMF_TNL_Association_to_Add_item containing
+		                        		AMF_TNL_Association_Address,
+		                        		TNL_Address_Weight_Factor
+		                        	;
+		                        ;,
+		                        AMF_TNL_Association_to_Update_List containing 
+		                        	AMF_TNL_Association_to_Update_Item containing
+		                        		AMF_TNL_Association_Address
+		                        	;
+		                        ;
+		                    ;            
+		                    from the AMF entity
+		                }
+		                then {
+		                    the IUT entity sends a AMF_CONFIGURATION_UPDATE_FAILURE containing
+		                    	Cause;
+		                    to the AMF entity
+		                	}
+		            	}
+            	
+            	} // end TP TP_NGAP_GNB_IMP_06
+            	
     	} //End Group AMF Configuration Update
     	
     	Group "NG Reset"
-- 
GitLab


From 9b525fb0c69a315ffb0d7c8236a346c0c56b6d9a Mon Sep 17 00:00:00 2001
From: Sascha Hackel 
Date: Tue, 19 Mar 2024 16:29:22 +0100
Subject: [PATCH 159/365] add TP for UE CONTEXT RESUME FAILURE message

---
 test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 47 +++++++++++++++++++++++++-
 1 file changed, 46 insertions(+), 1 deletion(-)

diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2
index 77fe136..f0b566d 100644
--- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2
+++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2
@@ -742,7 +742,52 @@ Package TP_AMF {
         	
         	} // end TP TP_NGAP_AMF_CMP_07
         	
-        	//TODO: error case 8.3.12.3
+        	Test Purpose {
+        		
+			// This TP applies only if the NG-RAN node is an ng-eNB
+	        TP Id TP_NGAP_AMF_CMP_13
+	        
+	        Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME FAILURE with failing to resume UE context."
+	        
+	        Reference 
+	            "ETSI TS 138 413 [1], Clauses 8.3.12.3" 
+	        
+	        Config Id CFG_AMF_01
+	        
+	        PICS Selection PICS_A2/2 and PICS_A4/2_12
+	        
+			Initial conditions with {
+        		the UE entity isRegisteredTo the AMF and
+				the UE entity hasSuspendedContext
+    		}
+	        
+	        Expected behaviour
+	            ensure that {
+	                when {
+	                    the IUT entity receives a UE_CONTEXT_RESUME_REQUEST containing  	
+	                        AMF_UE_NGAP_ID,
+	                        RAN_UE_NGAP_ID,
+	                        RRC_Resume_Cause,
+	                        PDU_Session_Resource_Resume_List containing
+	                        	PDU_Session_Resource_Resume_Item containing
+	                        		PDU_SessionId indicating value PX_PDU_ID,
+	                        		UE_Context_Resume_Request_Transfer
+	                        	;
+	                        ;
+	                    ;
+	                    from the GNB entity
+	                }
+	                then {
+	                    the IUT entity sends a UE_CONTEXT_RESUME_FAILURE containing
+	                        AMF_UE_NGAP_ID,
+	                        RAN_UE_NGAP_ID,
+	                        Cause
+	                     ;
+	                     to the GNB entity
+	                	}
+	            	}
+        	
+        	} // end TP TP_NGAP_AMF_CMP_13
         	
         } // end Group "UE Context Resume"
             
-- 
GitLab


From 65a513664f90b935b781cff0a9166502b00f156a Mon Sep 17 00:00:00 2001
From: garciay 
Date: Tue, 19 Mar 2024 16:32:31 +0100
Subject: [PATCH 160/365] Finalyse group PDU_Session_Management_Messages

---
 NGAP_ETSI.code-workspace                |   6 +-
 ttcn/AtsNGAP/NGAP_TestCases.ttcn        |  24 ++-
 ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 220 +++++++++++++++++++++++-
 3 files changed, 232 insertions(+), 18 deletions(-)

diff --git a/NGAP_ETSI.code-workspace b/NGAP_ETSI.code-workspace
index 405a098..4d05c85 100644
--- a/NGAP_ETSI.code-workspace
+++ b/NGAP_ETSI.code-workspace
@@ -7,5 +7,9 @@
 			"path": "../../../tmp/osmo-ttcn3-hacks"
 		}
 	],
-	"settings": {}
+	"settings": {
+		"files.associations": {
+			"pdusessionresourcemodifyindication.h": "c"
+		}
+	}
 }
\ No newline at end of file
diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn
index 8dff436..49b723c 100644
--- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn
+++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn
@@ -107,23 +107,21 @@ module NGAP_TestCases {
     } // End of group TC_testcase_template
 
     group gNB_Role{
-        //8.2
+
+        /**
+         * @see ETSI TS 138 413 V16.12.0 (2023-05) 8.1 List of NGAP Elementary Procedures
+         */
         group PDU_Session_Management_Procedures{
-            //8.2.1
+
+            /**
+             * @see ETSI TS 138 413 V16.12.0 (2023-05) 8.2.1 PDU Session Resource Setup
+             */
             group PDU_Session_Resource_Setup{
 
                 /**
-                 * @desc Verify ...
-                 * 
-                 * Pics Selection: 
-                 * Configuration: 
-                 *     
-                 * 
- * - * @see ETSI TS - * @reference ETSI TS + * @desc Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE for successfully established PDU session */ - testcase TP_NGAP_GNB_PDU_01() runs on aMFNGAPComponent system TestAdapter { + testcase TC_NGAP_GNB_PDU_01() runs on aMFNGAPComponent system TestAdapter { // Local variables var aMFNGAPComponent v_ngap_amf; @@ -145,7 +143,7 @@ module NGAP_TestCases { f_cf_Down/*gNBoraMF*/(); - } // End of testcase TP_NGAP_GNB_PDU_01 + } // End of testcase TC_NGAP_GNB_PDU_01 } // End of group PDU_Session_Resource_Setup diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 8864045..5eaf152 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -96,15 +96,21 @@ module LibNGAP_Templates { group Message_Functional_Definition_and_Content { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1 PDU Session Management Messages + */ group PDU_Session_Management_Messages { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1 PDU Session Management Messages + */ group PDU_SESSION_RESOURCE_SETUP_REQUEST { group Send { /** - * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1.1 PDU SESSION RESOURCE SETUP REQUEST - */ + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1.1 PDU SESSION RESOURCE SETUP REQUEST + */ template (value) InitiatingMessage m_n2_PDUSessionResourceSetupRequest( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, @@ -575,28 +581,164 @@ module LibNGAP_Templates { } // End of group PDU_SESSION_RESOURCE_MODIFY_RESPONSE - //9.2.1.7 group PDU_SESSION_RESOURCE_NOTIFY { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.7 PDU SESSION RESOURCE NOTIFY + */ + template (value) InitiatingMessage m_n2_PDUSessionResourceNotify( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceNotifyList p_pDUSessionResourceNotifyList + ) := { + + procedureCode := id_PDUSessionResourceNotify, + criticality := reject, + value_ := { + PDUSessionResourceNotify := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceNotifyList, + criticality := reject, + value_ := { PDUSessionResourceNotifyList := p_pDUSessionResourceNotifyList } + } + } + } + } + } // End of template m_n2_PDUSessionResourceNotify + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.7 PDU SESSION RESOURCE NOTIFY + */ + template (present) InitiatingMessage mw_n2_PDUSessionResourceNotify( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceNotifyList p_pDUSessionResourceNotifyList := ? + ) := { + + procedureCode := id_PDUSessionResourceNotify, + criticality := reject, + value_ := { + PDUSessionResourceNotify := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceNotifyList, + criticality := reject, + value_ := { PDUSessionResourceNotifyList := p_pDUSessionResourceNotifyList } + } + } + } + } + } // End of template mw_n2_PDUSessionResourceNotify + } // End of group Receive } // End of group PDU_SESSION_RESOURCE_NOTIFY - //9.2.1.8 group PDU_SESSION_RESOURCE_MODIFY_INDICATION { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.6 PDU SESSION RESOURCE MODIFY RESPONSE + */ + template (value) InitiatingMessage m_n2_PDUSessionResourceModifyIndication( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceModifyListModInd p_pDUSessionResourceModifyListModInd + ) := { + + procedureCode := id_PDUSessionResourceModify, + criticality := reject, + value_ := { + PDUSessionResourceModifyIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceModifyListModReq, + criticality := reject, + value_ := { PDUSessionResourceModifyListModInd := p_pDUSessionResourceModifyListModInd + } + } + } + } + } + } // End of template m_n2_PDUSessionResourceModifyIndication + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.6 PDU SESSION RESOURCE MODIFY RESPONSE + */ + template (present) InitiatingMessage mw_n2_PDUSessionResourceModifyIndication( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceModifyListModInd p_pDUSessionResourceModifyListModInd := ? + ) := { + + procedureCode := id_PDUSessionResourceModify, + criticality := reject, + value_ := { + PDUSessionResourceModifyIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceModifyListModReq, + criticality := reject, + value_ := { PDUSessionResourceModifyListModInd := p_pDUSessionResourceModifyListModInd + } + } + } + } + } + } // End of template mw_n2_PDUSessionResourceModifyIndication + } // End of group Receive } // End of group PDU_SESSION_RESOURCE_MODIFY_INDICATION @@ -606,10 +748,80 @@ module LibNGAP_Templates { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.9 PDU SESSION RESOURCE MODIFY CONFIRM + */ + template (value) SuccessfulOutcome m_n2_PDUSessionResourceModifyConfirm( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceModifyListModCfm p_pDUSessionResourceModifyListModCfm + ) := { + + procedureCode := id_PDUSessionResourceModify, + criticality := reject, + value_ := { + PDUSessionResourceModifyConfirm := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceModifyListModReq, + criticality := reject, + value_ := { PDUSessionResourceModifyListModCfm := p_pDUSessionResourceModifyListModCfm + } + } + } + } + } + } // End of template m_n2_PDUSessionResourceModifyConfirm + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.9 PDU SESSION RESOURCE MODIFY CONFIRM + */ + template (present) SuccessfulOutcome mw_n2_PDUSessionResourceModifyConfirm( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceModifyListModCfm p_pDUSessionResourceModifyListModCfm := ? + ) := { + + procedureCode := id_PDUSessionResourceModify, + criticality := reject, + value_ := { + PDUSessionResourceModifyConfirm := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceModifyListModReq, + criticality := reject, + value_ := { PDUSessionResourceModifyListModCfm := p_pDUSessionResourceModifyListModCfm + } + } + } + } + } + } // End of template mw_n2_PDUSessionResourceModifyConfirm + } // End of group Receive } // End of group PDU_SESSION_RESOURCE_MODIFY_CONFIRM -- GitLab From 2218095c15b1d135b354027c3ded19b8bb820019 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Tue, 19 Mar 2024 16:54:04 +0100 Subject: [PATCH 161/365] resolve TODOs --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 4 ++-- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index f0b566d..176911e 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -858,7 +858,7 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_02 - Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with IHANDOVER PREPARATION FAILURE with failed handover." + Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER PREPARATION FAILURE because the UE is not longer available." Reference "ETSI TS 138 413 [1], Clauses 8.4.1.3" @@ -868,7 +868,7 @@ Package TP_AMF { PICS Selection PICS_A2/2 and PICS_A4/3_1 Initial conditions with { - the UE entity isRegisteredTo the AMF + the UE entity isNoLongerAvailable } Expected behaviour diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 0a10c6b..06b21b3 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -797,7 +797,7 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_03 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE with failed PDU session." + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE because the UE is no longer available." Reference "ETSI TS 138 413 [1], Clauses 8.3.4.3" @@ -807,7 +807,7 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/2_4 Initial conditions with { - the UE entity isRegisteredTo the AMF // TODO; check initial conditions + the UE entity isNoLongerAvailable } Expected behaviour -- GitLab From 6caba8726331e2c79f265892e06aa4d7a2798551 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Tue, 19 Mar 2024 16:59:32 +0100 Subject: [PATCH 162/365] new TP TP_NGAP_GNB_MMP_09 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 51 +++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 06b21b3..1094a3a 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1170,6 +1170,57 @@ Package TP_GNB { } // end TP TP_NGAP_GNB_MMP_08 + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_09 + + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST FAILURE because the UE is not longer available." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.3, 9.2.3.4 and 9.2.3.6" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/3_2 + + Initial conditions with { + the UE entity isNoLongerAvailable + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a HANDOVER_REQUEST containing + AMF_UE_NGAP_ID, + Handover_Typ, + Cause, + UE_Aggregate_Maximum_Bit_Rate, + UE_Security_Capabilities, + Security_Context, + PDU_Session_Resource_Setup_List containing + PDU_Session_Resource_Setup_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + Handover_Request_Transfer + ; + ;, + Allowed_NSSAI, + Source_to_Target_Transparent_Container, + GUAMI + ; + from the AMF entity + } + then { + the IUT entity sends a HANDOVER_FAILURE containing + AMF_UE_NGAP_ID, + Cause + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_MMP_09 + } // End Group "Handover Resource Allocation" Group "Handover Notification" -- GitLab From fbde46c3cc26247ef87c617fe316133026680c47 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 20 Mar 2024 14:53:28 +0100 Subject: [PATCH 163/365] extend the HANDOVER REQUEST message to more mandatory IEs --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 53 ++++++++++++++++++++++++--- 1 file changed, 48 insertions(+), 5 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 1094a3a..948500b 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1143,7 +1143,22 @@ Package TP_GNB { PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, - Handover_Request_Transfer + Handover_Request_Transfer containing + UL_NG_U_UP_TNL_Information containing + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + PDU_Session_Type, + QoS_Flow_Setup_Request_List containing + QoS_Flow_Setup_Request_Item containing + QoS_Flow_Identifier, + QoS_Flow_Level_QoS_Parameter + ; + ; + ; ; ;, Allowed_NSSAI, @@ -1159,11 +1174,24 @@ Package TP_GNB { PDU_Session_Resource_Admitted_List containing PDU_Session_Resource_Admitted_Item containing PDU_SessionId indicating value PX_PDU_ID, - Handover_Request_Acknowledge_Transfer - ; + Handover_Request_Acknowledge_Transfer containing + UL_NG_U_UP_TNL_Information containing + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + QoS_Flow_Setup_Response_List containing + QoS_Flow_Item_with_Data_Forwarding containing + QoS_Flow_Identifier + ; + ; + ; ;, Target_to_Source_Transparent_Container - ; + ; + ; to the AMF entity } } @@ -1201,7 +1229,22 @@ Package TP_GNB { PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, - Handover_Request_Transfer + Handover_Request_Transfer containing + UL_NG_U_UP_TNL_Information containing + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + PDU_Session_Type, + QoS_Flow_Setup_Request_List containing + QoS_Flow_Setup_Request_Item containing + QoS_Flow_Identifier, + QoS_Flow_Level_QoS_Parameter + ; + ; + ; ; ;, Allowed_NSSAI, -- GitLab From 92852a6e1d59ad857406fadecfddeabbd8a49232 Mon Sep 17 00:00:00 2001 From: stl Date: Wed, 20 Mar 2024 15:29:06 +0100 Subject: [PATCH 164/365] new TPs with optional fiends in section Initial Context Setup --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 186 ++++++++++++++++++++++++++ 1 file changed, 186 insertions(+) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 1094a3a..c5724ae 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -586,6 +586,192 @@ Package TP_GNB { } } // end TP_NGAP_GNB_CMP_01 + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_12 + + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Trace Activation and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/2_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI, + PDU_Session_Resource_Setup_Request_List containing + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer + ; + ;, + Allowed_NSSAI, + UE_Security_Capabilities, + Security_Key, + Trace_Activation containing + NG_RAN_Trace_ID, + Interfaces_to_Trace, + Trace_Depth, + Trace_Collection_Entity_IP_Address + ; + ; + from the AMF entity + } + then { + the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Response_List containing + PDU_SessionId, + PDU_Session_Resource_Setup_Response_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_12 + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_13 + + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Mobility Restriction List and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/2_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI, + PDU_Session_Resource_Setup_Request_List containing + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer + ; + ;, + Allowed_NSSAI, + UE_Security_Capabilities, + Security_Key, + Mobility_Restriction_List containing + Serving_PLMN + ; + ; + from the AMF entity + } + then { + the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Response_List containing + PDU_SessionId, + PDU_Session_Resource_Setup_Response_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_13 + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_14 + + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with different optional fields and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/2_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI, + PDU_Session_Resource_Setup_Request_List containing + PDU_Session_Resource_Setup_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + PDU_Session_Resource_Setup_Request_Transfer + ; + ;, + Allowed_NSSAI, + UE_Security_Capabilities, + Security_Key, + UE_Radio_Capability, + Index_to_RAT_FrequencySelection_Priority, + Masked_IMEISV, + NAS_PDU, + Emergency_Fallback_Indicator, + RRC_Inactive_Transition_Report_Request, + Redirection_for_Voice_EPS_Fallback, + Location_Reporting_Request_Type containing + Event_Type, + Report_Area + ; + , + SRVCC_Operation_Possible, + IAB_Authorized, + Enhanced_Coverage_Restriction, + Extended_Connected_Time, + UE Differentiation Information containing + Periodic_Communication_Indicator, + Periodic_Time; + , + + NR_UE_Sidelink_Aggregate_Maximum_Bit_Rate, + LTE_UE_Sidelink_Aggregate_Maximum_Bit_Rate, + UE_Radio_Capability_ID + ; + from the AMF entity + } + then { + the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Setup_Response_List containing + PDU_SessionId, + PDU_Session_Resource_Setup_Response_Transfer; + ; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_14 Test Purpose { -- GitLab From fa69f9eaf968fb95bf786e6a9fe2ae58f135bb2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Wed, 20 Mar 2024 17:08:24 +0100 Subject: [PATCH 165/365] new TPs with optional fields in section UE Context Modification --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 114 +++++++++++++++++++++++++- 1 file changed, 113 insertions(+), 1 deletion(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 51d47c6..e6125fc 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -733,7 +733,7 @@ Package TP_GNB { UE_Security_Capabilities, Security_Key, UE_Radio_Capability, - Index_to_RAT_FrequencySelection_Priority, + Index_to_RAT_Frequency_Selection_Priority, Masked_IMEISV, NAS_PDU, Emergency_Fallback_Indicator, @@ -1054,6 +1054,118 @@ Package TP_GNB { } } // end TP TP_NGAP_GNB_CMP_04 + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_15 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains optional fields Security Key and Security Capabilities and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/2_4 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Security_Key, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ; + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_MODIFICATION_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_CMP_15 + + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_16 + + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains different optional fields and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/2_4 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + RAN_Paging_Priority, + Index_to_RAT_Frequency_Selection_Priority, + UE_Aggregate_Maximum_Bit_Rate containing + UE_Aggregate_Maximum_Bit_Rate_Downlink, + UE_Aggregate_Maximum_Bit_Rate_Uplink + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, + Emergency_Fallback_Indicator, + New_GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, + IAB_Authorized, + PC5_QoS_Parameters containing + PC5_QoS_Flow_List containing + PC5_QoS_Flow_Item containing + PQI + ; + ; + ;, + UE_Radio_Capability_ID, + RG_Level_Wireline_Access_Characteristics + ; + from the AMF entity + } + then { + the IUT entity sends a UE_CONTEXT_MODIFICATION_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_CMP_16 } // end Group UE Context Modification -- GitLab From 6f6f799f0979ee53d49242e2e8eb7f4229157342 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 20 Mar 2024 17:22:55 +0100 Subject: [PATCH 166/365] Finalyze UE_Context_Management_Messages group --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 74 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1672 +++++++++++++++++++++-- 2 files changed, 1611 insertions(+), 135 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index eba6d2f..0cb1eeb 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -159,10 +159,78 @@ module LibNGAP_Pixits { modulepar ExpectedIdlePeriod PX_EXPECTED_IDLE_PERIOD := 10; /** - * @desc An unknown PLMNidentity indicates the PLMN Identity (Public land mobile network). - * @see ETSI TS 136 413 Clause 9.2.3.8 PLMN Identity + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause */ - //modulepar PLMNidentity PX_PLMN_IDENTITY_UNKNOWN := 'f00000'O; + modulepar CauseRadioNetwork PX_UE_CONTEXT_RELEASE_COMMAND_CAUSE := unspecified; + + modulepar CauseTransport PX_xxx_1 := unspecified; + + modulepar CauseProtocol PX_xxx_2 := unspecified; + + modulepar CauseNas PX_xxx_3 := unspecified; + + modulepar CauseMisc PX_xxx_4 := unspecified; + + /** + * @desc To indicate the RRC state of the UE + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.92 RRC State + */ + modulepar RRCState PX_RRC_STATE := inactive; + + /** + * @desc To identify the AMF within the global 5G network + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause + */ + modulepar AMFPointer PX_AMF_POINTER:= '000001'B + + /** + * @desc To identify the AMF within the global 5G network + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause + */ + modulepar AMFRegionID PX_AMF_REGION_ID:= '10000000'B + + /** + * @desc To identify the AMF within the global 5G network + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause + */ + modulepar AMFSetID PX_AMF_SET_ID:= '0000000100'B + + /** + * @desc To uniquely identify a Tracking Area Code + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.3.10 TAC + */ + modulepar TAC PX_TAC := '000000'O; + + /** + * @desc + * @see ETSI TS 133 401 + */ + modulepar UL_NAS_MAC PX_UL_NAS_MAC := '0000000000000000'B; + + /** + * @desc + * @see ETSI TS 133 401 + */ + modulepar UL_NAS_Count PX_UL_NAS_COUNT := '00000'B; + + /** + * @desc + * @see ETSI TS 133 401 + */ + modulepar DL_NAS_MAC PX_DL_NAS_MAC := '0000000000000000'B; + + /** + * @desc To indicate the reason for RRC Connection Establishment/Resume + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.111 RRC Establishment Cause + */ + modulepar RRCEstablishmentCause PX_RRC_ESTABLISHMENT_CAUSE := notAvailable + + /** + * @desc To indicate the reason for RRC Connection Establishment/Resume + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.111 RRC Establishment Cause + */ + modulepar RRCEstablishmentCause PX_RRC_RESUME_CAUSE := notAvailable /** * @desc eNB Identity. diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 5eaf152..5a8c325 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -114,7 +114,7 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_PDUSessionResourceSetupRequest( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) PDUSessionResourceSetupListSUReq p_pduSessResSetL + in template (value) PDUSessionResourceSetupListSUReq p_pDUSessionResourceSetupListSUReq ) := { procedureCode := id_PDUSessionResourceSetup, criticality := reject, @@ -134,7 +134,7 @@ module LibNGAP_Templates { { id := id_PDUSessionResourceSetupListSUReq, criticality := ignore, - value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} + value_ := { PDUSessionResourceSetupListSUReq := p_pDUSessionResourceSetupListSUReq } } } } @@ -151,7 +151,7 @@ module LibNGAP_Templates { template (present) InitiatingMessage mw_n2_PDUSessionResourceSetupRequest( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - template (present) PDUSessionResourceSetupListSUReq p_pduSessResSetL := ? + template (present) PDUSessionResourceSetupListSUReq p_pDUSessionResourceSetupListSUReq := ? ) := { procedureCode := id_PDUSessionResourceSetup, criticality := reject, @@ -171,7 +171,7 @@ module LibNGAP_Templates { { id := id_PDUSessionResourceSetupListSUReq, criticality := ignore, - value_ := { PDUSessionResourceSetupListSUReq := p_pduSessResSetL} + value_ := { PDUSessionResourceSetupListSUReq := p_pDUSessionResourceSetupListSUReq } } } } @@ -215,9 +215,8 @@ module LibNGAP_Templates { value_ := { PDUSessionResourceSetupListSURes := p_pDUSessionResourceSetupListSURes } } } - } - } - + } + } } // End of template mw_n2_PDUSessionResourceSetupResponse } // End of group Send @@ -230,7 +229,7 @@ module LibNGAP_Templates { template (present) SuccessfulOutcome mw_n2_PDUSessionResourceSetupResponse( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - template (present) PDUSessionResourceSetupListSURes p_pduSessResSetL := ? + template (present) PDUSessionResourceSetupListSURes p_pDUSessionResourceSetupListSUReq := ? ) := { procedureCode := id_PDUSessionResourceSetup, criticality := reject, @@ -250,7 +249,7 @@ module LibNGAP_Templates { { id := id_PDUSessionResourceSetupListSURes, criticality := ignore, - value_ := { PDUSessionResourceSetupListSURes := p_pduSessResSetL} + value_ := { PDUSessionResourceSetupListSURes := p_pDUSessionResourceSetupListSUReq} } } } @@ -258,7 +257,7 @@ module LibNGAP_Templates { } // End of template mw_n2_PDUSessionResourceSetupResponse } // End of group Receive - } + } // End of group PDU_SESSION_RESOURCE_SETUP_RESPONSE group PDU_SESSION_RESOURCE_RELEASE_COMMAND { @@ -743,7 +742,6 @@ module LibNGAP_Templates { } // End of group PDU_SESSION_RESOURCE_MODIFY_INDICATION - //9.2.1.9 group PDU_SESSION_RESOURCE_MODIFY_CONFIRM { group Send { @@ -828,156 +826,1566 @@ module LibNGAP_Templates { } // End of group PDU_Session_Management_Messages - //9.2.2 - group UE_Context_Management_Messages{ - //9.2.2.1 - group INITIAL_CONTEXT_SETUP_REQUEST{ + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2 UE Context Management Messages + */ + group UE_Context_Management_Messages { + + group INITIAL_CONTEXT_SETUP_REQUEST { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST + */ + template (value) InitiatingMessage m_n2_InitialContextSetupRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + InitialContextSetupRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSetupListCxtReq, + criticality := reject, + value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + } + } + } + } + } // End of template m_n2_InitialContextSetupRequest + + } // End of group Send + group Receive { - } - } - //9.2.2.2 - group INITIAL_CONTEXT_SETUP_RESPONSE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST + */ + template (present) InitiatingMessage mw_n2_InitialContextSetupRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq := ? + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + InitialContextSetupRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSetupListCxtReq, + criticality := reject, + value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + } + } + } + } + } // End of template mw_n2_InitialContextSetupRequest + + } // End of group Receive + + } // End of group INITIAL_CONTEXT_SETUP_REQUEST + + group INITIAL_CONTEXT_SETUP_RESPONSE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.2 INITIAL CONTEXT SETUP RESPONSE + */ + template (value) SuccessfulOutcome m_n2_InitialContextSetupResponse( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceSetupListSURes p_pDUSessionResourceSetupListSURes + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSetupListSURes, + criticality := ignore, + value_ := { PDUSessionResourceSetupListSURes := p_pDUSessionResourceSetupListSURes } + } + } + } + } + } // End of template m_n2_InitialContextSetupResponse + + } // End of group Send + group Receive { - } - } - //9.2.2.3 - group INITIAL_CONTEXT_SETUP_FAILURE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.2 INITIAL CONTEXT SETUP RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_InitialContextSetupResponse( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceSetupListSURes p_pDUSessionResourceSetupListSURes := ? + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSetupListSURes, + criticality := ignore, + value_ := { PDUSessionResourceSetupListSURes := p_pDUSessionResourceSetupListSURes } + } + } + } + } + } // End of template mw_n2_PDUInitialContextSetupResponse + + } // End of group Receive + + } // End of group INITIAL_CONTEXT_SETUP_RESPONSE + + group INITIAL_CONTEXT_SETUP_FAILURE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.3 INITIAL CONTEXT SETUP FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_InitialContextSetupFailure( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) Cause p_cause, + in template (value) PDUSessionResourceFailedToSetupListCxtFail p_pDUSessionResourceFailedToSetupListCxtFail + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + InitialContextSetupFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_PDUSessionResourceFailedToSetupListCxtFail, + criticality := ignore, + value_ := { PDUSessionResourceFailedToSetupListCxtFail := p_pDUSessionResourceFailedToSetupListCxtFail } + } + } + } + } + } // End of template m_n2_InitialContextSetupFailure + + } // End of group Send + group Receive { - } - } - //9.2.2.4 - group UE_CONTEXT_RELEASE_REQUEST{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.3 INITIAL CONTEXT SETUP FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_InitialContextSetupFailure( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) Cause p_cause := ?, + template (present) PDUSessionResourceFailedToSetupListCxtFail p_pDUSessionResourceFailedToSetupListCxtFail := ? + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + InitialContextSetupFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_PDUSessionResourceFailedToSetupListCxtFail, + criticality := ignore, + value_ := { PDUSessionResourceFailedToSetupListCxtFail := p_pDUSessionResourceFailedToSetupListCxtFail } + } + } + } + } + } // End of template mw_n2_PDUInitialContextSetupFailure + + } // End of group Receive + + } // End of group INITIAL_CONTEXT_SETUP_FAILURE + + group UE_CONTEXT_RELEASE_REQUEST { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.4 UE CONTEXT RELEASE REQUEST + */ + template (value) InitiatingMessage m_n2_UEContextReleaseRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceListCxtRelReq p_pDUSessionResourceListCxtRelReq + ) := { + procedureCode := id_UEContextReleaseRequest, + criticality := reject, + value_ := { + UEContextReleaseRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceListCxtRelReq, + criticality := reject, + value_ := { PDUSessionResourceListCxtRelReq := p_pDUSessionResourceListCxtRelReq } + } + } + } + } + } // End of template m_n2_UEContextReleaseRequest + + } // End of group Send + group Receive { - } - } - //9.2.2.5 - group UE_CONTEXT_RELEASE_COMMAND{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.4 UE CONTEXT RELEASE REQUEST + */ + template (present) InitiatingMessage mw_n2_UEContextReleaseRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceListCxtRelReq p_pDUSessionResourceListCxtRelReq := ? + ) := { + procedureCode := id_UEContextReleaseRequest, + criticality := reject, + value_ := { + UEContextReleaseRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceListCxtRelReq, + criticality := reject, + value_ := { PDUSessionResourceListCxtRelReq := p_pDUSessionResourceListCxtRelReq } + } + } + } + } + } // End of template mw_n2_UEContextReleaseRequest + + } // End of group Receive + + } // End of group UE_CONTEXT_RELEASE_REQUEST + + group UE_CONTEXT_RELEASE_COMMAND { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.5 UE CONTEXT RELEASE COMMAND + */ + template (value) InitiatingMessage m_n2_UEContextReleaseCommand( + in template (value) UE_NGAP_IDs p_ueNgapIds, + in template (value) Cause p_cause := m_cause_radioNetwork(PX_UE_CONTEXT_RELEASE_COMMAND_CAUSE) + ) := { + procedureCode := id_UEContextRelease, + criticality := reject, + value_ := { + UEContextReleaseCommand := { + protocolIEs := { + { + id := id_UE_NGAP_IDs, + criticality := reject, + value_ := { UE_NGAP_IDs := p_ueNgapIds } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_UEContextReleaseCommand + + } // End of group Send + group Receive { - } - } - //9.2.2.6 - group UE_CONTEXT_RELEASE_COMPLETE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.5 UE CONTEXT RELEASE COMMAND + */ + template (present) InitiatingMessage mw_n2_UEContextReleaseCommand( + template (present) UE_NGAP_IDs p_ueNgapIds := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_UEContextRelease, + criticality := reject, + value_ := { + UEContextReleaseCommand := { + protocolIEs := { + { + id := id_UE_NGAP_IDs, + criticality := reject, + value_ := { UE_NGAP_IDs := p_ueNgapIds } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_UEContextReleaseCommand + + } // End of group Receive + + } // End of group UE_CONTEXT_RELEASE_COMMAND + + group UE_CONTEXT_RELEASE_COMPLETE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.6 UE CONTEXT RELEASE COMPLETE + */ + template (value) SuccessfulOutcome m_n2_UEContextReleaseComplete( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceSetupListSURes p_pDUSessionResourceSetupListSURes + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSetupListSURes, + criticality := reject, + value_ := { PDUSessionResourceSetupListSURes := p_pDUSessionResourceSetupListSURes } + } + } + } + } + } // End of template m_n2_UEContextReleaseComplete + + } // End of group Send + group Receive { - } - } - //9.2.2.7 - group UE_CONTEXT_MODIFICATION_REQUEST{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.6 UE CONTEXT RELEASE COMPLETE + */ + template (present) SuccessfulOutcome mw_n2_UEContextReleaseComplete( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceSetupListSURes p_pDUSessionResourceSetupListSURes := ? + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSetupListSURes, + criticality := reject, + value_ := { PDUSessionResourceSetupListSURes := p_pDUSessionResourceSetupListSURes } + } + } + } + } + } // End of template mw_n2_UEContextReleaseComplete + + } // End of group Receive + + } // End of group UE_CONTEXT_RELEASE_COMPLETE + + group UE_CONTEXT_MODIFICATION_REQUEST { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.7 UE CONTEXT MODIFICATION REQUEST + */ + template (value) InitiatingMessage m_n2_UEContextModificationRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_UEContextModification, + criticality := reject, + value_ := { + UEContextModificationRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_UEContextModificationRequest + + } // End of group Send + group Receive { - } - } - //9.2.2.8 - group UE_CONTEXT_MODIFICATION_RESPONSE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.7 UE CONTEXT MODIFICATION REQUEST + */ + template (present) InitiatingMessage mw_n2_UEContextModificationRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_UEContextModification, + criticality := reject, + value_ := { + UEContextModificationRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_UEContextModificationRequest + + } // End of group Receive + + } // End of group UE_CONTEXT_MODIFICATION_REQUEST + + group UE_CONTEXT_MODIFICATION_RESPONSE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.8 UE CONTEXT MODIFICATION RESPONSE + */ + template (value) SuccessfulOutcome m_n2_UEContexModificationResponse( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_UEContextModification, + criticality := reject, + value_ := { + UEContextModificationResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_UEContexModificationResponse + + } // End of group Send + group Receive { - } - } - //9.2.2.9 - group UE_CONTEXT_MODIFICATION_FAILURE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.8 UE CONTEXT MODIFICATION RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_UEContexModificationResponse( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_UEContextModification, + criticality := reject, + value_ := { + UEContextModificationResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_UEContexModificationResponse + + } // End of group Receive + + } // End of group UE_CONTEXT_MODIFICATION_RESPONSE + + group UE_CONTEXT_MODIFICATION_FAILURE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.9 UE CONTEXT MODIFICATION FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_UEContexModificationFailure( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) Cause p_cause + ) := { + procedureCode := id_UEContextModification, + criticality := reject, + value_ := { + UEContextModificationFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_UEContexModificationFailure + + } // End of group Send + group Receive { - } - } - //9.2.2.10 + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.9 UE CONTEXT MODIFICATION FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_UEContexModificationFailure( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_UEContextModification, + criticality := reject, + value_ := { + UEContextModificationFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_UEContexModificationFailure + + } // End of group Receive + + } // End of group UE_CONTEXT_MODIFICATION_FAILURE + group RRC_INACTIVE_TRANSITION_REPORT{ + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.10 RRC INACTIVE TRANSITION REPORT + */ + template (value) InitiatingMessage m_n2_RRCInactiveTransitionReport( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RRCState p_rrcState := inactive, + in template (value) UserLocationInformation p_userLocationInformation + ) := { + procedureCode := id_RRCInactiveTransitionReport, + criticality := reject, + value_ := { + RRCInactiveTransitionReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_RRCState, + criticality := ignore, + value_ := { RRCState := p_rrcState } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template m_n2_RRCInactiveTransitionReport + + } // End of group Send + group Receive { - } - } - //9.2.2.11 - group CONNECTION_ESTABLISHMENT_INDICATION{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.10 RRC INACTIVE TRANSITION REPORT + */ + template (present) InitiatingMessage mw_n2_RRCInactiveTransitionReport( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) RRCState p_rrcState := ?, + template (present) UserLocationInformation p_userLocationInformation := ? + ) := { + procedureCode := id_RRCInactiveTransitionReport, + criticality := reject, + value_ := { + RRCInactiveTransitionReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_RRCState, + criticality := ignore, + value_ := { RRCState := p_rrcState } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template mw_n2_RRCInactiveTransitionReport + + } // End of group Receive + + } // End of group RRC_INACTIVE_TRANSITION_REPORT + + group CONNECTION_ESTABLISHMENT_INDICATION { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.11 CONNECTION ESTABLISHMENT INDICATION + */ + template (value) InitiatingMessage m_n2_ConnectionEstablishmentIndication( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_ConnectionEstablishmentIndication, + criticality := reject, + value_ := { + ConnectionEstablishmentIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_ConnectionEstablishmentIndication + + } // End of group Send + group Receive { - } - } - //9.2.2.12 - group AMF_CP_RELOCATION_INDICATION{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.10 9.2.2.11 CONNECTION ESTABLISHMENT INDICATION + */ + template (present) InitiatingMessage mw_n2_ConnectionEstablishmentIndication( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_ConnectionEstablishmentIndication, + criticality := reject, + value_ := { + ConnectionEstablishmentIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_ConnectionEstablishmentIndication + + } // End of group Receive + + } // End of group CONNECTION_ESTABLISHMENT_INDICATION + + group AMF_CP_RELOCATION_INDICATION { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.12 AMF CP RELOCATION INDICATION + */ + template (value) InitiatingMessage m_n2_AMFCPRelocationIndication( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_AMFCPRelocationIndication, + criticality := reject, + value_ := { + AMFCPRelocationIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_AMFCPRelocationIndication + + } // End of group Send + group Receive { - } - } - //9.2.2.13 - group RAN_CP_RELOCATION_INDICATION{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.12 AMF CP RELOCATION INDICATION + */ + template (present) InitiatingMessage mw_n2_AMFCPRelocationIndication( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_AMFCPRelocationIndication, + criticality := reject, + value_ := { + AMFCPRelocationIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_AMFCPRelocationIndication + + } // End of group Receive + + } // End of group AMF_CP_RELOCATION_INDICATION + + group RAN_CP_RELOCATION_INDICATION { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.13 RAN CP RELOCATION INDICATION + */ + template (value) InitiatingMessage m_n2_RANCPRelocationIndication( + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) FiveG_S_TMSI p_fiveG_S_TMSI, + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) TAI p_tAI, + in template (value) UL_CP_SecurityInformation p_uL_CP_SecurityInformation + ) := { + procedureCode := id_RANCPRelocationIndication, + criticality := reject, + value_ := { + RANCPRelocationIndication := { + protocolIEs := { + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_FiveG_S_TMSI, + criticality := reject, + value_ := { FiveG_S_TMSI := p_fiveG_S_TMSI } + }, + { + id := id_EUTRA_CGI, + criticality := ignore, + value_ := { EUTRA_CGI := p_eUTRA_CGI } + }, + { + id := id_TAI, + criticality := ignore, + value_ := { TAI := p_tAI } + }, + { + id := id_UL_CP_SecurityInformation, + criticality := ignore, + value_ := { UL_CP_SecurityInformation := p_uL_CP_SecurityInformation } + } + } + } + } + } // End of template m_n2_RANCPRelocationIndication + + } // End of group Send + group Receive { - } - } - //9.2.2.14 - group RETRIEVE_UE_INFORMATION{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.13 RAN CP RELOCATION INDICATION + */ + template (present) InitiatingMessage mw_n2_RANCPRelocationIndication( + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) FiveG_S_TMSI p_fiveG_S_TMSI := ?, + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) TAI p_tAI := ?, + template (present) UL_CP_SecurityInformation p_uL_CP_SecurityInformation + ) := { + procedureCode := id_RANCPRelocationIndication, + criticality := reject, + value_ := { + RANCPRelocationIndication := { + protocolIEs := { + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_FiveG_S_TMSI, + criticality := reject, + value_ := { FiveG_S_TMSI := p_fiveG_S_TMSI } + }, + { + id := id_EUTRA_CGI, + criticality := ignore, + value_ := { EUTRA_CGI := p_eUTRA_CGI } + }, + { + id := id_TAI, + criticality := ignore, + value_ := { TAI := p_tAI } + }, + { + id := id_UL_CP_SecurityInformation, + criticality := reject, + value_ := { UL_CP_SecurityInformation := p_uL_CP_SecurityInformation } + } + } + } + } + } // End of template mw_n2_RANCPRelocationIndication + + } // End of group Receive + + } // End of group RAN_CP_RELOCATION_INDICATION + + group RETRIEVE_UE_INFORMATION { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.14 RETRIEVE UE INFORMATION + */ + template (value) InitiatingMessage m_n2_RetrieveUEInformation( + in template (value) FiveG_S_TMSI p_fiveG_S_TMSI + ) := { + procedureCode := id_RetrieveUEInformation, + criticality := reject, + value_ := { + RetrieveUEInformation := { + protocolIEs := { + { + id := id_FiveG_S_TMSI, + criticality := reject, + value_ := { FiveG_S_TMSI := p_fiveG_S_TMSI } + } + } + } + } + } // End of template m_n2_RetrieveUEInformation + + } // End of group Send + group Receive { - } - } - //9.2.2.15 - group UE_INFORMATION_TRANSFER{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.14 RETRIEVE UE INFORMATION + */ + template (present) InitiatingMessage mw_n2_RetrieveUEInformation( + template (present) FiveG_S_TMSI p_fiveG_S_TMSI := ? + ) := { + procedureCode := id_RetrieveUEInformation, + criticality := reject, + value_ := { + RetrieveUEInformation := { + protocolIEs := { + { + id := id_FiveG_S_TMSI, + criticality := reject, + value_ := { FiveG_S_TMSI := p_fiveG_S_TMSI } + } + } + } + } + } // End of template mw_n2_RetrieveUEInformation + + } // End of group Receive + + } // End of group RETRIEVE_UE_INFORMATION + + group UE_INFORMATION_TRANSFER { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.15 UE INFORMATION TRANSFER + */ + template (value) InitiatingMessage m_n2_UEInformationTransfer( + in template (value) FiveG_S_TMSI p_fiveG_S_TMSI + ) := { + procedureCode := id_UEInformationTransfer, + criticality := reject, + value_ := { + UEInformationTransfer := { + protocolIEs := { + { + id := id_FiveG_S_TMSI, + criticality := reject, + value_ := { FiveG_S_TMSI := p_fiveG_S_TMSI } + } + } + } + } + } // End of template m_n2_UEInformationTransfer + + } // End of group Send + group Receive { - } - } - //9.2.2.16 - group UE_CONTEXT_SUSPEND_REQUEST{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.15 UE INFORMATION TRANSFER + */ + template (present) InitiatingMessage mw_n2_UEInformationTransfer( + template (present) FiveG_S_TMSI p_fiveG_S_TMSI := ? + ) := { + procedureCode := id_UEInformationTransfer, + criticality := reject, + value_ := { + UEInformationTransfer := { + protocolIEs := { + { + id := id_FiveG_S_TMSI, + criticality := reject, + value_ := { FiveG_S_TMSI := p_fiveG_S_TMSI } + } + } + } + } + } // End of template mw_n2_UEInformationTransfer + + } // End of group Receive + + } // End of group UE_INFORMATION_TRANSFER + + group UE_CONTEXT_SUSPEND_REQUEST { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.16 UE CONTEXT SUSPEND REQUEST + */ + template (value) InitiatingMessage m_n2_UEContextSuspendRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceSuspendListSUSReq p_pDUSessionResourceSuspendListSUSReq + ) := { + procedureCode := id_UEContextSuspend, + criticality := reject, + value_ := { + UEContextSuspendRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSuspendListSUSReq, + criticality := reject, + value_ := { PDUSessionResourceSuspendListSUSReq := p_pDUSessionResourceSuspendListSUSReq } + } + } + } + } + } // End of template m_n2_UEContextSuspendRequest + + } // End of group Send + group Receive { - } - } - //9.2.2.17 - group UE_CONTEXT_SUSPEND_RESPONSE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.16 UE CONTEXT SUSPEND REQUEST + */ + template (present) InitiatingMessage mw_n2_UEContextSuspendRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceSuspendListSUSReq p_pDUSessionResourceSuspendListSUSReq := ? + ) := { + procedureCode := id_UEContextSuspend, + criticality := reject, + value_ := { + UEContextSuspendRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSuspendListSUSReq, + criticality := reject, + value_ := { PDUSessionResourceSuspendListSUSReq := p_pDUSessionResourceSuspendListSUSReq } + } + } + } + } + } // End of template mw_n2_UEContextSuspendRequest + + } // End of group Receive + + } // End of group UE_CONTEXT_SUSPEND_REQUEST + + group UE_CONTEXT_SUSPEND_RESPONSE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.17 UE CONTEXT SUSPEND RESPONSE + */ + template (value) SuccessfulOutcome m_n2_UEContextSuspendResponse( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_UEContextSuspend, + criticality := reject, + value_ := { + UEContextSuspendResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_UEContextSuspendResponse + + } // End of group Send + group Receive { - } - } - //9.2.2.18 - group UE_CONTEXT_SUSPEND_FAILURE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.17 UE CONTEXT SUSPEND RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_UEContextSuspendResponse( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_UEContextSuspend, + criticality := reject, + value_ := { + UEContextSuspendResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_UEContextSuspendResponse + + } // End of group Receive + + } // End of group UE_CONTEXT_SUSPEND_RESPONSE + + group UE_CONTEXT_SUSPEND_FAILURE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.18 UE CONTEXT SUSPEND FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_UEContextSuspendFailure( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) Cause p_cause + ) := { + procedureCode := id_UEContextSuspend, + criticality := reject, + value_ := { + UEContextSuspendFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_UEContextSuspendFailure + + } // End of group Send + group Receive { - } - } - //9.2.2.19 - group UE_CONTEXT_RESUME_REQUEST{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.18 UE CONTEXT SUSPEND FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_UEContextSuspendFailure( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_UEContextSuspend, + criticality := reject, + value_ := { + UEContextSuspendFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_UEContextSuspendFailure + + } // End of group Receive + + } // End of group UE_CONTEXT_SUSPEND_FAILURE + + group UE_CONTEXT_RESUME_REQUEST { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.19 UE CONTEXT RESUME REQUEST + */ + template (value) InitiatingMessage m_n2_UEContextResumeRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RRCEstablishmentCause p_rRCResumeCause := PX_RRC_RESUME_CAUSE + ) := { + procedureCode := id_UEContextResume, + criticality := reject, + value_ := { + UEContextResumeRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_RRCEstablishmentCause, + criticality := ignore, + value_ := { RRCEstablishmentCause := p_rRCResumeCause } + } + } + } + } + } // End of template m_n2_UEContextResumeRequest + + } // End of group Send + group Receive { - } - } - //9.2.2.20 - group UE_CONTEXT_RESUME_RESPONSE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.19 UE CONTEXT RESUME REQUEST + */ + template (present) InitiatingMessage mw_n2_UEContextResumeRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) RRCEstablishmentCause p_rRCResumeCause := ? + ) := { + procedureCode := id_UEContextResume, + criticality := reject, + value_ := { + UEContextResumeRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_RRCEstablishmentCause, + criticality := ignore, + value_ := { RRCEstablishmentCause := p_rRCResumeCause } + } + } + } + } + } // End of template mw_n2_UEContextResumeRequest + + } // End of group Receive + + } // End of group UE_CONTEXT_RESUME_REQUEST + + group UE_CONTEXT_RESUME_RESPONSE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.20 UE CONTEXT RESUME RESPONSE + */ + template (value) SuccessfulOutcome m_n2_UEContextResumeResponse( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_UEContextResume, + criticality := reject, + value_ := { + UEContextResumeResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_UEContextResumeResponse + + } // End of group Send + group Receive { - } - } - //9.2.2.21 - group UE_CONTEXT_RESUME_FAILURE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.20 UE CONTEXT RESUME RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_UEContextResumeResponse( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_UEContextResume, + criticality := reject, + value_ := { + UEContextResumeResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_UEContextResumeResponse + + } // End of group Receive + + } // End of group UE_CONTEXT_RESUME_RESPONSE + + group UE_CONTEXT_RESUME_FAILURE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.21 UE CONTEXT RESUME FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_UEContextResumeFailure( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) Cause p_cause + ) := { + procedureCode := id_UEContextResume, + criticality := reject, + value_ := { + UEContextResumeFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_UEContextResumeFailure + + } // End of group Send + group Receive { - } - } - } // End of group UE_Context_Management_Messages_ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.21 UE CONTEXT RESUME FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_UEContextResumeFailure( + in template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + in template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + in template (present) Cause p_cause := ? + ) := { + procedureCode := id_UEContextResume, + criticality := reject, + value_ := { + UEContextResumeFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_UEContextResumeFailure + + } // End of group Receive + + } // End of group UE_CONTEXT_RESUME_FAILURE + + } // End of group UE_Context_Management_Messages //9.2.3 group UE_Mobility_Management_Messages{ @@ -2657,7 +4065,7 @@ module LibNGAP_Templates { template (value) DelayCritical m_delayCritical(in DelayCritical p_value) := p_value; template (omit) DL_CP_SecurityInformation m_dL_CP_SecurityInformation( - in template (value) DL_NAS_MAC p_dl_NAS_MAC, + in template (value) DL_NAS_MAC p_dl_NAS_MAC := PX_DL_NAS_MAC, in template (omit) DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := omit ) := { dl_NAS_MAC := p_dl_NAS_MAC, @@ -3239,8 +4647,8 @@ module LibNGAP_Templates { } // End of template m_fiveGProSePC5FlowBitRates template (omit) FiveG_S_TMSI m_fiveG_S_TMSI( - in template (value) AMFSetID p_aMFSetID, - in template (value) AMFPointer p_aMFPointer, + in template (value) AMFSetID p_aMFSetID := PX_AMF_SET_ID, + in template (value) AMFPointer p_aMFPointer := PX_AMF_POINTER, in template (value) FiveG_TMSI p_fiveG_TMSI, in template (omit) FiveG_S_TMSI.iE_Extensions p_iE_Extensions := omit ) := { @@ -3492,9 +4900,9 @@ module LibNGAP_Templates { template (omit) GUAMI m_gUAMI( in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) AMFRegionID p_aMFRegionID, - in template (value) AMFSetID p_aMFSetID, - in template (value) AMFPointer p_aMFPointer, + in template (value) AMFRegionID p_aMFRegionID := PX_AMF_REGION_ID, + in template (value) AMFSetID p_aMFSetID := PX_AMF_SET_ID, + in template (value) AMFPointer p_aMFPointer := PX_AMF_POINTER, in template (omit) GUAMI.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, @@ -7833,7 +9241,7 @@ module LibNGAP_Templates { } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource( - in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID + in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := PX_RAN_UE_NGAP_ID ) := { { id := id_UEContextReferenceAtSource, @@ -7917,7 +9325,7 @@ module LibNGAP_Templates { template (value) SRVCCOperationPossible m_sRVCCOperationPossible(in SRVCCOperationPossible p_value := possible) := p_value; template (omit) SupportedTAItem m_supportedTAItem( - in template (value) TAC p_tAC, + in template (value) TAC p_tAC := PX_TAC, in template (value) BroadcastPLMNList p_broadcastPLMNList, in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit ) := { @@ -7954,7 +9362,7 @@ module LibNGAP_Templates { template (omit) TAI m_tAI( in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) TAC p_tAC, + in template (value) TAC p_tAC := PX_TAC, in template (omit) TAI.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, @@ -8516,7 +9924,7 @@ module LibNGAP_Templates { } // End of template m_uE_NGAP_IDs_uE_NGAP_ID_pair template (value) UE_NGAP_IDs m_uE_NGAP_IDs_aMF_UE_NGAP_ID( - in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID + in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := PX_AMF_UE_NGAP_ID ) := { aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID } // End of template m_uE_NGAP_IDs_aMF_UE_NGAP_ID @@ -8528,8 +9936,8 @@ module LibNGAP_Templates { } // End of template m_uE_NGAP_IDs_choice_Extensions template (omit) UE_NGAP_ID_pair m_uE_NGAP_ID_pair( - in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID, - in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := PX_RAN_UE_NGAP_ID, in template (omit) UE_NGAP_ID_pair.iE_Extensions p_iE_Extensions := omit ) := { aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, @@ -8630,8 +10038,8 @@ module LibNGAP_Templates { template (value) UE_UP_CIoT_Support m_uE_UP_CIoT_Support(in UE_UP_CIoT_Support p_value := supported) := p_value; template (omit) UL_CP_SecurityInformation m_UL_CP_SecurityInformation( - in template (value) UL_NAS_MAC p_ul_NAS_MAC, - in template (value) UL_NAS_Count p_ul_NAS_Count, + in template (value) UL_NAS_MAC p_ul_NAS_MAC := PX_UL_NAS_MAC, + in template (value) UL_NAS_Count p_ul_NAS_Count := PX_UL_NAS_COUNT, in template (omit) UL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := omit ) := { ul_NAS_MAC := p_ul_NAS_MAC, -- GitLab From c28b251cc0d67d9a7084849882346c68e46172a0 Mon Sep 17 00:00:00 2001 From: stl Date: Wed, 20 Mar 2024 17:42:09 +0100 Subject: [PATCH 167/365] add new sub-fields for fields --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 46 ++++++++++++++++---- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 59 +++++++++++++++++++++----- 2 files changed, 87 insertions(+), 18 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 176911e..af7283e 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -306,7 +306,12 @@ Package TP_AMF { the IUT entity sends a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - GUAMI, + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -949,7 +954,12 @@ Package TP_AMF { ;, Allowed_NSSAI, Source_to_Target_Transparent_Container, - GUAMI + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; ; to the GNB entity } @@ -1433,8 +1443,13 @@ Package TP_AMF { AMF_Name, Served_GUAMI_List containing Served_GUAMI_Item containing - GUAMI - ; + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; + ; ;, Relative_AMF_Capacity, PLMN_Support_List containing @@ -1626,7 +1641,12 @@ Package TP_AMF { the IUT entity sends a AMF_CONFIGURATION_UPDATE containing Served_GUAMI_List containing Served_GUAMI_Item containing - GUAMI + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; ; ;, PLMN_Support_List containing @@ -1730,7 +1750,12 @@ Package TP_AMF { the IUT entity sends a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - GUAMI, + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -1783,8 +1808,13 @@ Package TP_AMF { the IUT entity sends a AMF_STATUS_INDICATION containing Unavailable_GUAMI_List containing Unavailable_GUAMI_Item containing - GUAMI - ; + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; + ; ; ; to the GNB entity diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index e6125fc..903f4ba 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -557,18 +557,37 @@ Package TP_GNB { ensure that { when { the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - GUAMI, + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST;, PDU_Session_Resource_Setup_Request_Transfer ; ;, - Allowed_NSSAI, - UE_Security_Capabilities, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, Security_Key ; from the AMF entity @@ -610,7 +629,12 @@ Package TP_GNB { the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - GUAMI, + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -667,7 +691,12 @@ Package TP_GNB { the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - GUAMI, + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -721,7 +750,12 @@ Package TP_GNB { the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - GUAMI, + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -797,7 +831,12 @@ Package TP_GNB { the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - GUAMI, + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, -- GitLab From c64fa4934f190db6d0991a343bc62a21a8ac2b7a Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 21 Mar 2024 11:13:07 +0100 Subject: [PATCH 168/365] add TP for HANDOVER REQUEST with optional fields covered --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 288 +++++++++++++++++++++++++- 1 file changed, 282 insertions(+), 6 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 948500b..72941b9 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1119,7 +1119,7 @@ Package TP_GNB { Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." Reference - "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4 and 9.2.3.5" + "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" Config Id CFG_GNB_01 @@ -1144,7 +1144,7 @@ Package TP_GNB { PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, Handover_Request_Transfer containing - UL_NG_U_UP_TNL_Information containing + DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing Endpoint_IP_Address @@ -1175,7 +1175,7 @@ Package TP_GNB { PDU_Session_Resource_Admitted_Item containing PDU_SessionId indicating value PX_PDU_ID, Handover_Request_Acknowledge_Transfer containing - UL_NG_U_UP_TNL_Information containing + DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing Endpoint_IP_Address @@ -1198,14 +1198,14 @@ Package TP_GNB { } // end TP TP_NGAP_GNB_MMP_08 - Test Purpose { + Test Purpose { TP Id TP_NGAP_GNB_MMP_09 Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST FAILURE because the UE is not longer available." Reference - "ETSI TS 138 413 [1], Clauses 8.4.2.3, 9.2.3.4 and 9.2.3.6" + "ETSI TS 138 413 [1], Clauses 8.4.2.3, 9.2.3.4, 9.2.3.6 and 9.3.4.1" Config Id CFG_GNB_01 @@ -1230,7 +1230,7 @@ Package TP_GNB { PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, Handover_Request_Transfer containing - UL_NG_U_UP_TNL_Information containing + DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing Endpoint_IP_Address @@ -1263,6 +1263,282 @@ Package TP_GNB { } } // end TP TP_NGAP_GNB_MMP_09 + + // TP covers important optional IE. Can be used as blueprint to create further TPs or reduce the optional IEs within this TP. + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_10 + + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/3_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a HANDOVER_REQUEST containing + AMF_UE_NGAP_ID, + Handover_Typ, + Cause, + UE_Aggregate_Maximum_Bit_Rate containing + UE_Aggregate_Maximum_Bit_Rate_Downlink, + UE_Aggregate_Maximum_Bit_Rate_Uplink + ;, + Core_Network_Assistance_Information_for_RRC_INACTIVE containing + UE_Identity_Index_Value containing + CHOICE_UE_Identity_Index_Value containing + Index_Length_10 containing + Index_Length_10 + ; + ; + ;, + Periodic_Registration_Update_Timer, + TAI_List_for_RRC_Inactive containing + TAI_List_for_RRC_Inactive_Item containing + TAI containing + PLMN_Identity, + TAC + ; + ; + ; + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, + Security_Context containing + Next_Hop_Chaining_Count, + Next_Hop_NH + ;, + New_Security_Context_Indicator, + NASC containing + NAS_PDU + ;, + PDU_Session_Resource_Setup_List containing + PDU_Session_Resource_Setup_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + Handover_Request_Transfer containing + DL_NG_U_UP_TNL_Information containing + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + PDU_Session_Type, + QoS_Flow_Setup_Request_List containing + QoS_Flow_Setup_Request_Item containing + QoS_Flow_Identifier, + QoS_Flow_Level_QoS_Parameter + ; + ; + ; + ; + ;, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, + Trace_Activiation containing + NG_RAN_TRACE_ID, + Interfaces_to_Trace, + Trace_Depth, + Trace_Collection_Entity_IP_Address containing + Transport_Layer_Address + ; + ;, + Source_to_Target_Transparent_Container, + RRC_Inactive_Transition_Report_Request, + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, + Redirection_for_Voice_EPS_Fallback, + CN_Assisted_RAN_Parameters_Tuning, + SRVCC_Operation_Possible, + Enhanced_Coverage_Restriction, + UE_Differentiation_Information, + NR_V2X_Services_Authorized, + LTE_V2X_Services_Authorized, + NR_UE_Sidelink_Aggregate_Maximum_Bit_Rate, + LTE_UE_Sidelink_Aggregate_Maximum_Bit_Rate, + PC5_QoS_Parameters containing + PC5_QoS_Flow_List containing + PC5_QoS_Flow_Item containing + PQI, + PC5_Flow_Bit_Rates containing + Guaranteed_Flow_Bit_Rate, + Maximum_Flow_Bit_Rate + ; + ; + ; + ;, + CE_mode_B_Restricted, + UE_User_Plane_CIoT_Support_Indicator, + Management_Based_MDT_PLMN_List containing + PLMN_Identity + ;, + UE_Radio_Capability_ID, + Extended_Connected_Time + + + + + ; + from the AMF entity + } + then { + the IUT entity sends a HANDOVER_REQUEST_ACKNOWLEDGE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Admitted_List containing + PDU_Session_Resource_Admitted_Item containing + PDU_SessionId indicating value PX_PDU_ID, + Handover_Request_Acknowledge_Transfer containing + DL_NG_U_UP_TNL_Information containing + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + QoS_Flow_Setup_Response_List containing + QoS_Flow_Item_with_Data_Forwarding containing + QoS_Flow_Identifier + ; + ; + ; + ;, + Target_to_Source_Transparent_Container + ; + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_MMP_10 + + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_11 + + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs within the Handover Request Transfer IEs and answers with correct HANDOVER REQUEST ACKNOWLEDGE." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/3_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a HANDOVER_REQUEST containing + AMF_UE_NGAP_ID, + Handover_Typ, + Cause, + UE_Aggregate_Maximum_Bit_Rate, + UE_Security_Capabilities, + Security_Context, + PDU_Session_Resource_Setup_List containing + PDU_Session_Resource_Setup_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + Handover_Request_Transfer containing + DL_NG_U_UP_TNL_Information containing + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + Data_Forwarding_Not_Possible indicating value "data forwarding not possible", + Security_Indication containing + Integrity_Protection_Indication indicating value preferred, + Confidentiality_Protection_Indication indicating value preferred, + Maximum_Integrity_Protected_Data_Rate_Uplink indicating value max_UE_rate + ;, + PDU_Session_Type, + QoS_Flow_Setup_Request_List containing + QoS_Flow_Setup_Request_Item containing + QoS_Flow_Identifier, + QoS_Flow_Level_QoS_Parameter + ; + ; + ; + ; + ;, + Allowed_NSSAI, + Source_to_Target_Transparent_Container, + GUAMI + ; + from the AMF entity + } + then { + the IUT entity sends a HANDOVER_REQUEST_ACKNOWLEDGE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Admitted_List containing + PDU_Session_Resource_Admitted_Item containing + PDU_SessionId indicating value PX_PDU_ID, + Handover_Request_Acknowledge_Transfer containing + DL_NG_U_UP_TNL_Information containing + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + DL Forwarding UP TNL Information containing //may not be present because Data_Forwarding_Not_Possible is set to "data forwarding not possible" + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + Security_Result containing + Integrity_Protection_Result indicating value performed, // "not performed" might be fine as well, because indication is set to "preferred" + Confidentiality_Protection_Result indicating value performed // "not performed" might be fine as well, because indication is set to "preferred" + ;, + QoS_Flow_Setup_Response_List containing + QoS_Flow_Item_with_Data_Forwarding containing + QoS_Flow_Identifier + ; + ; + ; + ;, + Target_to_Source_Transparent_Container + ; + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_MMP_11 } // End Group "Handover Resource Allocation" -- GitLab From 90179adad524a8115a0027ee1abca39a6a9b0d6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Thu, 21 Mar 2024 11:15:46 +0100 Subject: [PATCH 169/365] new TPs in section NG Setup --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 217 +++++++++++++++++++++++-- 1 file changed, 204 insertions(+), 13 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index af7283e..a212a41 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1408,7 +1408,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a NG SETUP REQEST message that contains mandatory IEs and answers with NG SETUP RESPONSE to acknowledge the setup." Reference - "ETSI TS 138 413 [1], Clauses 8.7.1.2" + "ETSI TS 138 413 [1], Clauses 8.7.1.2, 9.2.6.1 and 9.2.6.2" Config Id CFG_AMF_01 @@ -1422,25 +1422,29 @@ Package TP_AMF { ensure that { when { the IUT entity receives a NG_SETUP_REQUEST containing - Global_RAN_Node_ID, + Global_RAN_Node_ID, Supported_TA_List containing Supported_TA_Item containing - TAC, + TAC, Broadcast_PLMN_List containing Broadcast_PLMN_Item containing PLMN_Identity, - TAI_Slice_Support_List + TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; ; ; ; ;, Default_Paging_DRX - ; + ; + ; from the GNB entity } then { the IUT entity sends a NG_SETUP_RESPONSE containing - AMF_Name, + AMF_Name, Served_GUAMI_List containing Served_GUAMI_Item containing GUAMI containing @@ -1451,12 +1455,20 @@ Package TP_AMF { ; ; ;, - Relative_AMF_Capacity, + Relative_AMF_Capacity, PLMN_Support_List containing PLMN_Support_Item containing - PLMN_Identity, - Slice_Support_List, - Extended_Slice_Support_List + PLMN_Identity, + Slice_Support_List containing + S_NSSAI containing + SST + ; + ;, + Extended_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; ; ; ; @@ -1473,7 +1485,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully decline a NG RESET REQEST message and answers with NG SETUP FAILURE when the AMF is not able to handle the request." Reference - "ETSI TS 138 413 [1], Clauses 8.7.1.3" + "ETSI TS 138 413 [1], Clauses 8.7.1.3, 9.2.6.1 and 9.2.6.3" Config Id CFG_AMF_01 @@ -1494,13 +1506,17 @@ Package TP_AMF { Broadcast_PLMN_List containing Broadcast_PLMN_Item containing PLMN_Identity, - TAI_Slice_Support_List + TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; ; ; ; ;, Default_Paging_DRX - ; + ; + ; from the GNB entity } then { @@ -1512,6 +1528,181 @@ Package TP_AMF { } } // end TP TP_NGAP_AMF_IMP_02 + + + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_11 + + Test objective "Verify that the AMF node successfully processes a NG SETUP REQEST message with optional field UE Retention Information and answers with NG SETUP RESPONSE to acknowledge the setup." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.1.2, 9.2.6.1 and 9.2.6.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/6_1 + + Initial conditions with { + the UE entity hasEstablishedRRCConnection + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a NG_SETUP_REQUEST containing + Global_RAN_Node_ID, + Supported_TA_List containing + Supported_TA_Item containing + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; + ; + ;, + Default_Paging_DRX, + UE_Retention_Information // Implementation Node: use ues-retained + ; + ; + from the GNB entity + } + then { + the IUT entity sends a NG_SETUP_RESPONSE containing + AMF_Name, + Served_GUAMI_List containing + Served_GUAMI_Item containing + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; + ; + ;, + Relative_AMF_Capacity, + PLMN_Support_List containing + PLMN_Support_Item containing + PLMN_Identity, + Slice_Support_List containing + S_NSSAI containing + SST + ; + ;, + Extended_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; + ;, + UE_Retention_Information + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_IMP_11 + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_12 + + Test objective "Verify that the AMF node successfully processes a NG SETUP REQEST message with different optional fields and answers with NG SETUP RESPONSE to acknowledge the setup." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.1.2, 9.2.6.1 and 9.2.6.2" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/6_1 + + Initial conditions with { + the UE entity hasEstablishedRRCConnection + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a NG_SETUP_REQUEST containing + Global_RAN_Node_ID, + Supported_TA_List containing + Supported_TA_Item containing + TAC + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; + ;, + NPN_Support, + Extended_TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; + ;, + Configured_TAC_Indication, + RAT_Information + ; + , + Default_Paging_DRX, + NB_IoT_Default_Paging_DRX, + Extended_RAN_Node_Name containing + RAN_Node_Name_Visible + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a NG_SETUP_RESPONSE containing + AMF_Name, + Served_GUAMI_List containing + Served_GUAMI_Item containing + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; + ; + ;, + Relative_AMF_Capacity, + PLMN_Support_List containing + PLMN_Support_Item containing + PLMN_Identity, + Slice_Support_List containing + S_NSSAI containing + SST + ; + ;, + NPN_Support, + Extended_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; + ;, + Extended_RAN_Node_Name containing + RAN_Node_Name_Visible + ; + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_IMP_12 } // End Group "NG Setup" -- GitLab From af0eebd574bd75fb57f23ec99eb48cb7087a70b4 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 21 Mar 2024 12:09:53 +0100 Subject: [PATCH 170/365] Terminate group UE_Mobility_Management_Messages --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 118 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 30505 +++++++++++----------- 2 files changed, 16004 insertions(+), 14619 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 0cb1eeb..8cccb7e 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -150,27 +150,85 @@ module LibNGAP_Pixits { * @desc The expected activity time in seconds * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.94 Expected UE Activity Behaviour */ - modulepar ExpectedActivityPeriod PX_EXPECTED_ACTIVITY_PERIOD := 10; + modulepar ExpectedActivityPeriod PX_EXPECTED_ACTIVITY_PERIOD := 10; /** * @desc The expected idle time in seconds * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.94 Expected UE Activity Behaviour */ - modulepar ExpectedIdlePeriod PX_EXPECTED_IDLE_PERIOD := 10; + modulepar ExpectedIdlePeriod PX_EXPECTED_IDLE_PERIOD := 10; /** * @desc To indicate the reason for a particular event for the NGAP protocol * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause */ - modulepar CauseRadioNetwork PX_UE_CONTEXT_RELEASE_COMMAND_CAUSE := unspecified; + modulepar CauseRadioNetwork PX_CAUSE_INITIAL_SETUP_FAILURE := unspecified; - modulepar CauseTransport PX_xxx_1 := unspecified; + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_UE_CONTEXT_RELEASE_COMMAND_CAUSE := unspecified; - modulepar CauseProtocol PX_xxx_2 := unspecified; + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_CAUSE_UE_CONTEXT_MODIFICATION_FAILURE := unspecified; - modulepar CauseNas PX_xxx_3 := unspecified; + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_CAUSE_UE_CONTEXT_SUSPEND_FAILURE := unspecified; - modulepar CauseMisc PX_xxx_4 := unspecified; + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_CAUSE_UE_CONTEXT_RESUME_FAILURE := unspecified; + + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_CAUSE_HANDOVER_REQUIRED := resource_optimisation_handover; + + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_CAUSE_HANDOVER_PREPARATION_FAILURE := unspecified; + + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_CAUSE_HANDOVER_REQUEST := unspecified; + + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_CAUSE_HANDOVER_FAILURE := unspecified; + + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_CAUSE_HANDOVER_CANCEL := unspecified; + + + + + + modulepar CauseTransport PX_xxx_1 := unspecified; + + modulepar CauseProtocol PX_xxx_2 := unspecified; + + modulepar CauseNas PX_xxx_3 := unspecified; + + modulepar CauseMisc PX_xxx_4 := unspecified; /** * @desc To indicate the RRC state of the UE @@ -232,6 +290,52 @@ module LibNGAP_Pixits { */ modulepar RRCEstablishmentCause PX_RRC_RESUME_CAUSE := notAvailable + /** + * @desc To indicate which kind of handover was triggered in the source side + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.22 Handover Type + */ + modulepar HandoverType PX_HANDOVER_TYPE := intra5gs + + /** + * @desc To indicates the UE Aggregate Maximum Bit Rate as specified in TS 23.501 in the downlink direction (bit/s) + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.58 UE Aggregate Maximum Bit Rate + */ + modulepar BitRate PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_DL := 100000000; + + /** + * @desc To indicates the UE Aggregate Maximum Bit Rate as specified in TS 23.501 in the uplink direction (bit/s) + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.58 UE Aggregate Maximum Bit Rate + */ + modulepar BitRate PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_UL := 1000000; + + /** + * @desc Each position in the bitmap represents an encryption algorithm + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.86 UE Security Capabilities + */ + modulepar NRencryptionAlgorithms PX_NR_ENCRYPTION_ALGORITHMS; + + /** + * @desc Each position in the bitmap represents an encryption algorithm + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.86 UE Security Capabilities + */ + modulepar NRintegrityProtectionAlgorithms PX_NR_INTEGRITY_PROTECTION_ALGORITHMS; + + /** + * @desc Contains the DRB ID. + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.53 DRB ID + */ + modulepar DRB_ID PX_DRB_ID := 1; + + + + + + + + + + + /** * @desc eNB Identity. * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 5a8c325..f9c7c5f 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -190,7 +190,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.1.2 PDU SESSION RESOURCE SETUP RESPONSE */ template (value) SuccessfulOutcome m_n2_PDUSessionResourceSetupResponse( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceSetupListSURes p_pDUSessionResourceSetupListSURes ) := { @@ -267,7 +267,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.3 PDU SESSION RESOURCE RELEASE COMMAND */ template (value) InitiatingMessage m_n2_PDUSessionResourceReleaseCommand( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceToReleaseListRelCmd p_pDUSessionResourceToReleaseListRelCmd ) := { @@ -346,7 +346,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.4 PDU SESSION RESOURCE RELEASE RESPONSE */ template (value) SuccessfulOutcome m_n2_PDUSessionResourceReleaseResponse( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceReleasedListRelRes p_pDUSessionResourceReleasedListRelRes ) := { @@ -428,7 +428,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.5 PDU SESSION RESOURCE MODIFY REQUEST */ template (value) InitiatingMessage m_n2_PDUSessionResourceModify( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceModifyListModReq p_pDUSessionResourceModifyListModReq ) := { @@ -506,7 +506,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.6 PDU SESSION RESOURCE MODIFY RESPONSE */ template (value) SuccessfulOutcome m_n2_PDUSessionResourceModifyResponse( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceModifyListModRes p_pDUSessionResourceModifyListModRes ) := { @@ -588,7 +588,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.7 PDU SESSION RESOURCE NOTIFY */ template (value) InitiatingMessage m_n2_PDUSessionResourceNotify( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceNotifyList p_pDUSessionResourceNotifyList ) := { @@ -668,7 +668,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.6 PDU SESSION RESOURCE MODIFY RESPONSE */ template (value) InitiatingMessage m_n2_PDUSessionResourceModifyIndication( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceModifyListModInd p_pDUSessionResourceModifyListModInd ) := { @@ -750,7 +750,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.9 PDU SESSION RESOURCE MODIFY CONFIRM */ template (value) SuccessfulOutcome m_n2_PDUSessionResourceModifyConfirm( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceModifyListModCfm p_pDUSessionResourceModifyListModCfm ) := { @@ -839,7 +839,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST */ template (value) InitiatingMessage m_n2_InitialContextSetupRequest( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq ) := { @@ -917,7 +917,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.2 INITIAL CONTEXT SETUP RESPONSE */ template (value) SuccessfulOutcome m_n2_InitialContextSetupResponse( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceSetupListSURes p_pDUSessionResourceSetupListSURes ) := { @@ -995,9 +995,9 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.3 INITIAL CONTEXT SETUP FAILURE */ template (value) UnsuccessfulOutcome m_n2_InitialContextSetupFailure( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) Cause p_cause, + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_INITIAL_SETUP_FAILURE), in template (value) PDUSessionResourceFailedToSetupListCxtFail p_pDUSessionResourceFailedToSetupListCxtFail ) := { procedureCode := id_InitialContextSetup, @@ -1085,7 +1085,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.4 UE CONTEXT RELEASE REQUEST */ template (value) InitiatingMessage m_n2_UEContextReleaseRequest( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceListCxtRelReq p_pDUSessionResourceListCxtRelReq ) := { @@ -1229,7 +1229,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.6 UE CONTEXT RELEASE COMPLETE */ template (value) SuccessfulOutcome m_n2_UEContextReleaseComplete( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceSetupListSURes p_pDUSessionResourceSetupListSURes ) := { @@ -1307,7 +1307,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.7 UE CONTEXT MODIFICATION REQUEST */ template (value) InitiatingMessage m_n2_UEContextModificationRequest( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID ) := { procedureCode := id_UEContextModification, @@ -1373,7 +1373,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.8 UE CONTEXT MODIFICATION RESPONSE */ template (value) SuccessfulOutcome m_n2_UEContexModificationResponse( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID ) := { procedureCode := id_UEContextModification, @@ -1438,11 +1438,11 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.9 UE CONTEXT MODIFICATION FAILURE */ - template (value) UnsuccessfulOutcome m_n2_UEContexModificationFailure( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) Cause p_cause - ) := { + template (value) UnsuccessfulOutcome m_n2_UEContextModificationFailure( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_UE_CONTEXT_MODIFICATION_FAILURE) + ) := { procedureCode := id_UEContextModification, criticality := reject, value_ := { @@ -1466,7 +1466,7 @@ module LibNGAP_Templates { } } } - } // End of template m_n2_UEContexModificationFailure + } // End of template m_n2_UEContextModificationFailure } // End of group Send @@ -1475,11 +1475,11 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.9 UE CONTEXT MODIFICATION FAILURE */ - template (present) UnsuccessfulOutcome mw_n2_UEContexModificationFailure( - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - template (present) Cause p_cause := ? - ) := { + template (present) UnsuccessfulOutcome mw_n2_UEContextModificationFailure( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) Cause p_cause := ? + ) := { procedureCode := id_UEContextModification, criticality := reject, value_ := { @@ -1503,7 +1503,7 @@ module LibNGAP_Templates { } } } - } // End of template mw_n2_UEContexModificationFailure + } // End of template mw_n2_UEContextModificationFailure } // End of group Receive @@ -1517,7 +1517,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.10 RRC INACTIVE TRANSITION REPORT */ template (value) InitiatingMessage m_n2_RRCInactiveTransitionReport( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) RRCState p_rrcState := inactive, in template (value) UserLocationInformation p_userLocationInformation @@ -1607,7 +1607,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.11 CONNECTION ESTABLISHMENT INDICATION */ template (value) InitiatingMessage m_n2_ConnectionEstablishmentIndication( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID ) := { procedureCode := id_ConnectionEstablishmentIndication, @@ -1673,7 +1673,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.12 AMF CP RELOCATION INDICATION */ template (value) InitiatingMessage m_n2_AMFCPRelocationIndication( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID ) := { procedureCode := id_AMFCPRelocationIndication, @@ -1949,7 +1949,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.16 UE CONTEXT SUSPEND REQUEST */ template (value) InitiatingMessage m_n2_UEContextSuspendRequest( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) PDUSessionResourceSuspendListSUSReq p_pDUSessionResourceSuspendListSUSReq ) := { @@ -2027,7 +2027,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.17 UE CONTEXT SUSPEND RESPONSE */ template (value) SuccessfulOutcome m_n2_UEContextSuspendResponse( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID ) := { procedureCode := id_UEContextSuspend, @@ -2093,9 +2093,9 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.18 UE CONTEXT SUSPEND FAILURE */ template (value) UnsuccessfulOutcome m_n2_UEContextSuspendFailure( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) Cause p_cause + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_UE_CONTEXT_SUSPEND_FAILURE) ) := { procedureCode := id_UEContextSuspend, criticality := reject, @@ -2171,7 +2171,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.19 UE CONTEXT RESUME REQUEST */ template (value) InitiatingMessage m_n2_UEContextResumeRequest( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) RRCEstablishmentCause p_rRCResumeCause := PX_RRC_RESUME_CAUSE ) := { @@ -2249,7 +2249,7 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.20 UE CONTEXT RESUME RESPONSE */ template (value) SuccessfulOutcome m_n2_UEContextResumeResponse( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID ) := { procedureCode := id_UEContextResume, @@ -2315,9 +2315,9 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.21 UE CONTEXT RESUME FAILURE */ template (value) UnsuccessfulOutcome m_n2_UEContextResumeFailure( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) Cause p_cause + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_UE_CONTEXT_RESUME_FAILURE) ) := { procedureCode := id_UEContextResume, criticality := reject, @@ -2387,15426 +2387,16707 @@ module LibNGAP_Templates { } // End of group UE_Context_Management_Messages - //9.2.3 + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3 UE Mobility Management Messages + */ group UE_Mobility_Management_Messages{ - //9.2.3.1 - group HANDOVER_REQUIRED{ - group Send { - } - group Receive { - } - } - //9.2.3.2 - group HANDOVER_COMMAND{ - group Send { - } - group Receive { - } - } - //9.2.3.3 - group HANDOVER_PREPARATION_FAILURE{ - group Send { - } - group Receive { - } - } - //9.2.3.4 - group HANDOVER_REQUEST{ - group Send { - } - group Receive { - } - } - //9.2.3.5 - group HANDOVER_REQUEST_ACKNOWLEDGE{ - group Send { - } - group Receive { - } - } - //9.2.3.6 - group HANDOVER_FAILURE{ - group Send { - } - group Receive { - } - } - //9.2.3.7 - group HANDOVER_NOTIFY{ - group Send { - } - group Receive { - } - } - //9.2.3.8 - group PATH_SWITCH_REQUEST{ - group Send { - } - group Receive { - } - } - //9.2.3.9 - group PATH_SWITCH_REQUEST_ACKNOWLEDGE{ - group Send { - } - group Receive { - } - } - //9.2.3.10 - group PATH_SWITCH_REQUEST_FAILURE{ - group Send { - } - group Receive { - } - } - //9.2.3.11 - group HANDOVER_CANCEL{ - group Send { - } - group Receive { - } - } - //9.2.3.12 - group HANDOVER_CANCEL_ACKNOWLEDGE{ - group Send { - } - group Receive { - } - } - //9.2.3.13 - group UPLINK_RAN_STATUS_TRANSFER{ - group Send { - } - group Receive { - } - } - //9.2.3.14 - group DOWNLINK_RAN_STATUS_TRANSFER{ - group Send { - } - group Receive { - } - } - //9.2.3.15 - group HANDOVER_SUCCESS{ - group Send { - } - group Receive { - } - } - //9.2.3.16 - group UPLINK_RAN_EARLY_STATUS_TRANSFER{ - group Send { - } - group Receive { - } - } - //9.2.3.17 - group DOWNLINK_RAN_EARLY_STATUS_TRANSFER{ - group Send { - } - group Receive { - } - } - } // End of group UE_Mobility_Management_Messages - - //9.2.4 - group Paging_Messages{ - //9.2.4.1 - group PAGING{ - group Send { - } - group Receive { - } - } - } // End of group Paging_Messages - - group NAS_Transport_Messages{ - - group INITIAL_UE_MESSAGE{ - - group Send { - - template (value) InitiatingMessage m_n2_initialUeMessage( - in template (value) RAN_UE_NGAP_ID p_RANUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) NAS_PDU p_nasPdu, - in template (value) UserLocationInformation p_UeLocInf, - in template (value) RRCEstablishmentCause p_rrcEstCause - ) := { - procedureCode := id_InitialUEMessage, - criticality := reject, - value_ := { - InitialUEMessage := { - protocolIEs := { - { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := {RAN_UE_NGAP_ID:=p_RANUeNgapID} - //presence := NGAP_CommonDataTypes.mandatory - }, - { - id := id_NAS_PDU, - criticality := reject, - value_ := {NAS_PDU:=p_nasPdu} - //presence := NGAP_CommonDataTypes.mandatory - }, - { - id := id_UserLocationInformation, - criticality := reject, - value_ := {UserLocationInformation:=p_UeLocInf} - //presence := NGAP_CommonDataTypes.mandatory - }, - { - id := id_RRCEstablishmentCause, - criticality := ignore, - value_ := {RRCEstablishmentCause:=p_rrcEstCause} - //presence := NGAP_CommonDataTypes.mandatory - }//, - /*{ - id := NGAP_Constants.id_FiveG_S_TMSI, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.FiveG_S_TMSI", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_AMFSetID, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.AMFSetID", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_UEContextRequest, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.UEContextRequest", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_AllowedNSSAI, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.AllowedNSSAI", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_SourceToTarget_AMFInformationReroute, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.SourceToTarget_AMFInformationReroute", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_SelectedPLMNIdentity, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.PLMNIdentity", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_IABNodeIndication, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.IABNodeIndication", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_CEmodeBSupport_Indicator, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.CEmodeBSupport_Indicator", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_LTEM_Indication, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.LTEM_Indication", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_EDT_Session, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.EDT_Session", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_AuthenticatedIndication, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.AuthenticatedIndication", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_NPN_AccessInformation, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.NPN_AccessInformation", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_RedCapIndication, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.RedCapIndication", - presence := NGAP_CommonDataTypes.optional_ - }*/ - } - } - } - } // End of template m_n2_initialUeMessage - } // End of group Send - - group Receive { - } - - } - //9.2.5.2 - group DOWNLINK_NAS_TRANSPORT{ - group Send { - } - group Receive { - } - } - //9.2.5.3 - group UPLINK_NAS_TRANSPORT{ - group Send { - } - group Receive { - } - } - //9.2.5.4 - group NAS_NON_DELIVERY_INDICATION{ - group Send { - } - group Receive { - } - } - //9.2.5.5 - group REROUTE_NAS_REQUEST{ - group Send { - } - group Receive { - } - } - } // End of group NAS_Transport_Messages - - //9.2.6 - group Interface_Management_Messages{ - //9.2.6.1 - group NG_SETUP_REQUEST{ - group Send { - - template (value) InitiatingMessage m_n2_NGSetupRequest( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) SupportedTAList p_supportedTAs, - in template (value) PagingDRX p_pagingDRX - ) := { - procedureCode := id_NGSetup, - criticality := reject, - value_ := { - NGSetupRequest := { - protocolIEs := { - { - id := id_GlobalRANNodeID, - criticality := reject, - value_ := { GlobalRANNodeID := p_globalRANNodeID } - }, - { - id := id_SupportedTAList, - criticality := reject, - value_ := { SupportedTAList := p_supportedTAs } - - }, - { - id := id_DefaultPagingDRX, - criticality := ignore, - value_ := { PagingDRX := p_pagingDRX - } - } - } - } - } // End of template m_n2_NGSetupRequest - } - - } - group Receive { - } - } - //9.2.6.2 - group NG_SETUP_RESPONSE{ - group Send { - } - group Receive { - - template (present) SuccessfulOutcome mw_n2_NGSetupResponse( - in template (present) AMFName p_amfName := ?, - in template (present) ServedGUAMIList p_servedGUAMIList := ?, - in template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, - in template (present) PLMNSupportList p_plmnSuppList := ? - ) := { - procedureCode := id_NGSetup, - criticality := ?, - value_ := { - NGSetupResponse := { - protocolIEs := { - { - id := id_AMFName, - criticality := reject, - value_ := { AMFName := p_amfName } - }, - { - id := id_ServedGUAMIList, - criticality := reject, - value_ := { ServedGUAMIList := p_servedGUAMIList } - - }, - { - id := id_RelativeAMFCapacity, - criticality := ignore, - value_ := { RelativeAMFCapacity := p_relativeAmfCap } - }, - { - id := id_PLMNSupportList, - criticality := ignore, - value_ := { PLMNSupportList := p_plmnSuppList } - } - } - } - } - }//end of template mw_n2_NGSetupResponse - - } - } - //9.2.6.3 - group NG_SETUP_FAILURE{ - group Send { - } - group Receive { - - template (present) UnsuccessfulOutcome mw_n2_NGSetupFailure( - in template (present) Cause p_cause := ? - ) := { - procedureCode := id_NGSetup, - criticality := ?, - value_ := { - NGSetupFailure := { - protocolIEs := { - { - id := id_Cause, - criticality := ?, - value_ := { Cause := p_cause } - } - } - } - } - }//end of template mw_n2_NGSetupFailure - } - } - //9.2.6.4 - group RAN_CONFIGURATION_UPDATE{ - group Send { - } - group Receive { - } - } - //9.2.6.5 - group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE{ - group Send { - } - group Receive { - } - } - //9.2.6.6 - group RAN_CONFIGURATION_UPDATE_FAILURE{ - group Send { - } - group Receive { - } - } - //9.2.6.7 - group AMF_CONFIGURATION_UPDATE{ - group Send { - } - group Receive { - } - } - //9.2.6.8 - group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE{ - group Send { - } - group Receive { - } - } - //9.2.6.9 - group AMF_CONFIGURATION_UPDATE_FAILURE{ - group Send { - } - group Receive { - } - } - //9.2.6.10 - group AMF_STATUS_INDICATION{ - group Send { - } - group Receive { - } - } - //9.2.6.11 - group NG_RESET{ - group Send { - } - group Receive { - } - } - //9.2.6.12 - group NG_RESET_ACKNOWLEDGE{ - group Send { - } - group Receive { - } - } - //9.2.6.13 - group ERROR_INDICATION{ - group Send { - } - group Receive { - } - } - //9.2.6.14 - group OVERLOAD_START{ - group Send { - } - group Receive { - } - } - //9.2.6.15 - group OVERLOAD_STOP{ - group Send { - } - group Receive { - } - } - } // End of group Interface_Management_Messages - - //9.2.7 - group Configuration_Transfer_Messages{ - //9.2.7.1 - group UPLINK_RAN_CONFIGURATION_TRANSFER{ - group Send { - } - group Receive { - } - } - //9.2.7.2 - group DOWNLINK_RAN_CONFIGURATION_TRANSFER{ - group Send { - } - group Receive { - } - } - } // End of group Configuration_Transfer_Messages - - //9.2.8 - group Warning_Message_Transmission_Messages{ - //9.2.8.1 - group WRITE_REPLACE_WARNING_REQUEST{ - group Send { - } - group Receive { - } - } - //9.2.8.2 - group WRITE_REPLACE_WARNING_RESPONSE{ - group Send { - } - group Receive { - } - } - //9.2.8.3 - group PWS_CANCEL_REQUEST{ - group Send { - } - group Receive { - } - } - //9.2.8.4 - group PWS_CANCEL_RESPONSE{ - group Send { - } - group Receive { - } - } - //9.2.8.5 - group PWS_RESTART_INDICATION{ - group Send { - } - group Receive { - } - } - //9.2.8.6 - group PWS_FAILURE_INDICATION{ - group Send { - } - group Receive { - } - } - } // End of group Warning_Message_Transmission_Messages - - //9.2.9 - group NRPPa_Transport_Messages{ - //9.2.9.1 - group DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send { - } - group Receive { - } - } - //9.2.9.2 - group UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send { - } - group Receive { - } - } - //9.2.9.3 - group DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send { - } - group Receive { - } - } - //9.2.9.4 - group UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ - group Send { - } - group Receive { - } - } - } // End of group NRPPa_Transport_Messages - - //9.2.10 - group Trace_Messages{ - //9.2.10.1 - group TRACE_START{ - group Send { - } - group Receive { - } - } - //9.2.10.2 - group TRACE_FAILURE_INDICATION{ - group Send { - } - group Receive { - } - } - //9.2.10.3 - group DEACTIVATE_TRACE{ - group Send { - } - group Receive { - } - } - //9.2.10.4 - group CELL_TRAFFIC_TRACE{ - group Send { - } - group Receive { - } - } - } // End of group Trace_Messages - - //9.2.11 - group Location_Reporting_Messages{ - //9.2.11.1 - group LOCATION_REPORTING_CONTROL{ - group Send { - } - group Receive { - } - } - //9.2.11.2 - group LOCATION_REPORTING_FAILURE_INDICATION{ - group Send { - } - group Receive { - } - } - //9.2.11.3 - group LOCATION_REPORT{ - group Send { - } - group Receive { - } - } - } // End of group Location_Reporting_Messages - - //9.2.12 - group UE_TNLA_Binding_Messages{ - //9.2.12.1 - group UE_TNLA_BINDING_RELEASE_REQUEST{ - group Send { - } - group Receive { - } - } - } // End of group UE_TNLA_Binding_Messages - - //9.2.13 - group UE_Radio_Capability_Management_Messages{ - //9.2.13.1 - group UE_RADIO_CAPABILITY_INFO_INDICATION{ - group Send { - } - group Receive { - } - } - //9.2.13.2 - group UE_RADIO_CAPABILITY_CHECK_REQUEST{ - group Send { - } - group Receive { - } - } - //9.2.13.3 - group UE_RADIO_CAPABILITY_CHECK_RESPONSE{ - group Send { - } - group Receive { - } - } - //9.2.13.4 - group UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST{ - group Send { - } - group Receive { - } - } - //9.2.13.5 - group UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE{ - group Send { - } - group Receive { - } - } - } // End of group UE_Radio_Capability_Management_Messages - - //9.2.14 - group Data_Usage_Reporting_Messages{ - //9.2.14.1 - group SECONDARY_RAT_DATA_USAGE_REPORT{ - group Send { - } - group Receive { - } - } - } // End of group Data_Usage_Reporting_Messages - - //9.2.15 - group RIM_Information_Transfer_Messages{ - //9.2.15.1 - group UPLINK_RIM_INFORMATION_TRANSFER{ - group Send { - } - group Receive { - } - } - //9.2.15.2 - group DOWNLINK_RIM_INFORMATION_TRANSFER{ - group Send { - } - group Receive { - } - } - } // End of group RIM_Information_Transfer_Messages - - } // End of group Message_Functional_Definition_and_Content - - group Information_elements{ - - group Send { - - template (omit) AdditionalDLUPTNLInformationForHOItem m_additionalDLUPTNLInformationForHOItem( - in template (value) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation, - in template (value) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList, - in template (omit) UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := omit, - in template (omit) AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := omit - ) := { - additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, - additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, - additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_additionalDLUPTNLInformationForHOItem - - template (value) AdditionalDLUPTNLInformationForHOItem.iE_Extensions m_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_additionalDLUPTNLInformationForHOItem_iE_Extensions - - template (value) AdditionalQosFlowInformation m_additionalQosFlowInformation(in AdditionalQosFlowInformation p_value := more_likely) := p_value; - template (omit) AllocationAndRetentionPriority m_allocationAndRetentionPriority( - in template (value) PriorityLevelARP p_priorityLevelARP, - in template (value) Pre_emptionCapability p_pre_emptionCapability, - in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, - in template (omit) AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := omit - ) := { - priorityLevelARP := p_priorityLevelARP, - pre_emptionCapability := p_pre_emptionCapability, - pre_emptionVulnerability := p_pre_emptionVulnerability, - iE_Extensions := p_iE_Extensions - } // End of template m_allocationAndRetentionPriority - - template (value) AlternativeQoSParaSetIndex m_alternativeQoSParaSetIndex(in template (value) integer p_value := PX_ALTERNATIVE_QOS_PARA_SET_INDEX) := p_value; - - template (value) AlternativeQoSParaSetNotifyIndex m_alternativeQoSParaSetNotifyIndex(in template (value) integer p_value := PX_ALTERNATIVE_QOS_PARA_SET_NOTIFY_INDEX) := p_value; - - template (omit) AlternativeQoSParaSetItem m_alternativeQoSParaSetItem( - in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex, - in template (omit) BitRate p_guaranteedFlowBitRateDL := omit, - in template (omit) BitRate p_guaranteedFlowBitRateUL := omit, - in template (omit) PacketDelayBudget p_packetDelayBudget := omit, - in template (omit) PacketErrorRate p_packetErrorRate := omit, - in template (omit) AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := omit - ) := { - alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, - guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, - guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, - packetDelayBudget := p_packetDelayBudget, - packetErrorRate := p_packetErrorRate, - iE_Extensions := p_iE_Extensions - } // End of template m_alternativeQoSParaSetItem + group HANDOVER_REQUIRED { - template (value) AMFName m_aMFName(in AMFName p_value) := p_value; + group Send { - template (value) AMFNameVisibleString m_aMFNameVisibleString(in AMFNameVisibleString p_value) := p_value; + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.1 HANDOVER REQUIRED + */ + template (value) InitiatingMessage m_n2_HandoverRequired( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) HandoverType p_handoverType := PX_HANDOVER_TYPE, + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), + in template (value) TargetID p_targetID, + in template (value) PDUSessionResourceListHORqd p_pDUSessionResourceListHORqd + ) := { + procedureCode := id_HandoverPreparation, + criticality := reject, + value_ := { + HandoverRequired := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_TargetID, + criticality := reject, + value_ := { TargetID := p_targetID } + }, + { + id := id_PDUSessionResourceListHORqd, + criticality := reject, + value_ := { PDUSessionResourceListHORqd := p_pDUSessionResourceListHORqd } + } + } + } + } + } // End of template m_n2_HandoverRequired - template (value) AMFNameUTF8String m_aMFNameUTF8String(in AMFNameUTF8String p_value) := p_value; + } // End of group Send - template (value) AMFPagingTarget m_aMFPagingTarget_globalRANNodeID( - in template (value) GlobalRANNodeID p_globalRANNodeID - ) := { - globalRANNodeID := p_globalRANNodeID - } // End of template m_aMFPagingTarget_globalRANNodeID - template (value) AMFPagingTarget m_aMFPagingTarget_tAI( - in template (value) TAI p_tAI - ) := { - tAI := p_tAI - } // End of template m_aMFPagingTarget_tAI - template (value) AMFPagingTarget m_aMFPagingTarget_ext( - in template (value) AMFPagingTarget.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_aMFPagingTarget_ext - - template (omit) AMF_TNLAssociationSetupItem m_aMF_TNLAssociationSetupItem( - in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, - in template (omit) AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := omit - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - iE_Extensions := p_iE_Extensions - } // End of template m_aMF_TNLAssociationSetupItem - - template (omit) AMF_TNLAssociationToAddItem m_aMF_TNLAssociationToAddItem( - in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, - in template (value) TNLAddressWeightFactor p_tNLAddressWeightFactor, - in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, - in template (omit) AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := omit - ):= { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - tNLAssociationUsage := p_tNLAssociationUsage, - tNLAddressWeightFactor := p_tNLAddressWeightFactor, - iE_Extensions := p_iE_Extensions - } // End of template m_aMF_TNLAssociationToAddItem - - template (omit) AMF_TNLAssociationToRemoveItem m_aMF_TNLAssociationToRemoveItem( - in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, - in template (omit) AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := omit - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - iE_Extensions := p_iE_Extensions - } // End of template m_aMF_TNLAssociationToRemoveItem - - template (omit) AMF_TNLAssociationToUpdateItem m_aMF_TNLAssociationToUpdateItem( - in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, - in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, - in template (omit) TNLAddressWeightFactor p_tNLAddressWeightFactor := omit, - in template (omit) AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := omit - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - tNLAssociationUsage := p_tNLAssociationUsage, - tNLAddressWeightFactor := p_tNLAddressWeightFactor, - iE_Extensions := p_iE_Extensions - } // End of template m_aMF_TNLAssociationToUpdateItem - - template (omit) AreaOfInterest m_areaOfInterest( - in template (omit) AreaOfInterestTAIList p_areaOfInterestTAIList := omit, - in template (omit) AreaOfInterestCellList p_areaOfInterestCellList := omit, - in template (omit) AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := omit, - in template (omit) AreaOfInterest.iE_Extensions p_iE_Extensions := omit - ) := { - areaOfInterestTAIList := p_areaOfInterestTAIList, - areaOfInterestCellList := p_areaOfInterestCellList, - areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, - iE_Extensions := p_iE_Extensions - } // End of template m_areaOfInterest + group Receive { - template (omit) AreaOfInterestCellItem m_areaOfInterestCellItem( - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (omit) AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := omit - ) := { - nGRAN_CGI := p_nGRAN_CGI, - iE_Extensions := p_iE_Extensions - } // End of template m_areaOfInterestCellItem - - template (omit) AreaOfInterestItem m_reaOfInterestItem( - in template (value) AreaOfInterest p_areaOfInterest, - in template (value) LocationReportingReferenceID p_locationReportingReferenceID, - in template (omit) AreaOfInterestItem.iE_Extensions p_iE_Extensions := omit - ) := { - areaOfInterest := p_areaOfInterest, - locationReportingReferenceID := p_locationReportingReferenceID, - iE_Extensions := p_iE_Extensions - } // End of template m_reaOfInterestItem - - template (omit) AreaOfInterestRANNodeItem m_areaOfInterestRANNodeItem( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (omit) AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := omit - ):= { - globalRANNodeID := p_globalRANNodeID, - iE_Extensions := p_iE_Extensions - } // End of template m_areaOfInterestRANNodeItem - - template (omit) AreaOfInterestTAIItem m_areaOfInterestTAIItem( - in template (value) TAI p_tAI, - in template (omit) AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := omit - ) := { - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template m_areaOfInterestTAIItem - - template (omit) AssistanceDataForPaging m_assistanceDataForPaging( - in template (omit) AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := omit, - in template (omit) PagingAttemptInformation p_pagingAttemptInformation := omit, - in template (omit) AssistanceDataForPaging.iE_Extensions p_iE_Extensions := omit - ) := { - assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, - pagingAttemptInformation := p_pagingAttemptInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_assistanceDataForPaging - - template (value) AssistanceDataForPaging.iE_Extensions m_assistanceDataForPaging_NPN_PagingAssistanceInformation( - in template (value) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation - ) := { - { - id := id_NPN_PagingAssistanceInformation, - criticality := ignore, - extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } - } - } // End of template m_assistanceDataForPaging_NPN_PagingAssistanceInformation - - template (value) AssistanceDataForPaging.iE_Extensions m_assistanceDataForPaging_pagingAssisDataforCEcapabUE( - in template (value) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE - ) := { - { - id := id_PagingAssisDataforCEcapabUE, - criticality := ignore, - extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } - } - } // End of template m_assistanceDataForPaging_pagingAssisDataforCEcapabUE + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.1 HANDOVER REQUIRED + */ + template (present) InitiatingMessage mw_n2_HandoverRequired( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) HandoverType p_handoverType := ?, + template (present) Cause p_cause := ?, + template (present) TargetID p_targetID := ?, + template (present) PDUSessionResourceListHORqd p_pDUSessionResourceListHORqd := ? + ) := { + procedureCode := id_HandoverPreparation, + criticality := reject, + value_ := { + HandoverRequired := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_TargetID, + criticality := reject, + value_ := { TargetID := p_targetID } + }, + { + id := id_PDUSessionResourceListHORqd, + criticality := reject, + value_ := { PDUSessionResourceListHORqd := p_pDUSessionResourceListHORqd } + } + } + } + } + } // End of template mw_n2_HandoverRequired - template (omit) AssistanceDataForRecommendedCells m_assistanceDataForRecommendedCells( - in template (value) RecommendedCellsForPaging p_recommendedCellsForPaging, - in template (omit) AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := omit - ) := { - recommendedCellsForPaging := p_recommendedCellsForPaging, - iE_Extensions := p_iE_Extensions - } // End of template m_assistanceDataForRecommendedCells - - template (omit) AssociatedMBSQosFlowSetupRequestItem m_associatedMBSQosFlowSetupRequestItem( - in template (value) QosFlowIdentifier p_mBS_QosFlowIdentifier, - in template (value) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier, - in template (omit) AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, - associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template m_associatedMBSQosFlowSetupRequestItem - - template (omit) AssociatedMBSQosFlowSetuporModifyRequestItem m_associatedMBSQosFlowSetuporModifyRequestItem( - in template (value) QosFlowIdentifier p_mBS_QosFlowIdentifier, - in template (value) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier, - in template (omit) AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, - associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template m_associatedMBSQosFlowSetuporModifyRequestItem - - template (omit) AssociatedQosFlowItem m_associatedQosFlowItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := omit, - in template (omit) AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - qosFlowMappingIndication := p_qosFlowMappingIndication, - iE_Extensions := p_iE_Extensions - } // End of template m_associatedQosFlowItem - - template (value) AssociatedQosFlowItem.iE_Extensions m_associatedQosFlowItem_alternativeQoSParaSetIndex( - in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template m_associatedQosFlowItem_alternativeQoSParaSetIndex + } // End of group Receive - template (value) AuthenticatedIndication m_authenticatedIndication(in AuthenticatedIndication p_value := true_) := p_value; + } // End of group HANDOVER_REQUIRED - template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_NR_cellBased( - in template (value) CellBasedMDT_NR p_cellBased - ) := { - cellBased := p_cellBased - } // End of template m_areaScopeOfMDT_cellBased + group HANDOVER_COMMAND { - template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_tABased( - in template (value) TABasedMDT p_tABased - ) := { - tABased := p_tABased - } // End of template m_areaScopeOfMDT_tABased + group Send { - template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_pLMNWide := { - pLMNWide := NULL - } // End of template m_areaScopeOfMDT_pLMNWide + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.2 HANDOVER COMMAND + */ + template (value) SuccessfulOutcome m_n2_HandoverCommand( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) HandoverType p_handoverType := PX_HANDOVER_TYPE, + in template (value) PDUSessionResourceHandoverList p_pDUSessionResourceHandoverList + ) := { + procedureCode := id_HandoverPreparation, + criticality := reject, + value_ := { + HandoverCommand := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_PDUSessionResourceHandoverList, + criticality := ignore, + value_ := { PDUSessionResourceHandoverList := p_pDUSessionResourceHandoverList } + } + } + } + } + } // End of template m_n2_HandoverCommand - template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_tAIBased( - in template (value) TAIBasedMDT p_tAIBased - ) := { - tAIBased := p_tAIBased - } // End of template m_areaScopeOfMDT_tAIBased + } // End of group Send - template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_ext( - in template (value) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_areaScopeOfMDT_ext + group Receive { - template (omit) AreaScopeOfNeighCellsItem m_areaScopeOfNeighCellsItem( - in template (value) NRFrequencyInfo p_nrFrequencyInfo, - in template (omit) PCIListForMDT p_pciListForMDT := omit, - in template (omit) AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := omit - ) := { - nrFrequencyInfo := p_nrFrequencyInfo, - pciListForMDT := p_pciListForMDT, - iE_Extensions := p_iE_Extensions - } // End of template m_areaScopeOfNeighCellsItem - - template (value) AreaScopeOfQMC m_areaScopeOfQMC_cellBased( - in template (value) CellBasedQMC p_cellBased - ) := { - cellBased := p_cellBased - } // End of template m_areaScopeOfQMC_cellBased - - template (value) AreaScopeOfQMC m_areaScopeOfQMC_tABased( - in template (value) TABasedQMC p_tABased - ) := { - tABased := p_tABased - } // End of template m_areaScopeOfQMC_tABased - - template (value) AreaScopeOfQMC m_areaScopeOfQMC_tAIBased( - in template (value) TAIBasedQMC p_tAIBased - ) := { - tAIBased := p_tAIBased - } // End of template m_areaScopeOfQMC_tAIBased - - template (value) AreaScopeOfQMC m_areaScopeOfQMC_pLMNAreaBased( - in template (value) PLMNAreaBasedQMC p_pLMNAreaBased - ) := { - pLMNAreaBased := p_pLMNAreaBased - } // End of template m_areaScopeOfQMC_pLMNAreaBased - - template (value) AreaScopeOfQMC m_areaScopeOfQMC_ext( - in template (value) AreaScopeOfQMC.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_areaScopeOfQMC_ext - - template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_cellBased( - in template (value) CellBasedMDT_EUTRA p_cellBased + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.2 HANDOVER COMMAND + */ + template (present) SuccessfulOutcome mw_n2_HandoverCommand( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) HandoverType p_handoverType := ?, + template (present) PDUSessionResourceHandoverList p_pDUSessionResourceHandoverList := ? ) := { - cellBased := p_cellBased - } // End of template m_areaScopeOfMDT_EUTRA_cellBased + procedureCode := id_HandoverPreparation, + criticality := reject, + value_ := { + HandoverCommand := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_PDUSessionResourceHandoverList, + criticality := ignore, + value_ := { PDUSessionResourceHandoverList := p_pDUSessionResourceHandoverList } + } + } + } + } + } // End of template mw_n2_HandoverCommand - template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_tABased( - in template (value) TABasedMDT p_tABased - ) := { - tABased := p_tABased - } // End of template m_areaScopeOfMDT_EUTRA_tABased + } // End of group Receive - template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_pLMNWide := { - pLMNWide := NULL - } // End of template m_areaScopeOfMDT_EUTRA_pLMNWide + } // End of group HANDOVER_COMMAND - template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_tAIBased( - in template (value) TAIBasedMDT p_tAIBased - ) := { - tAIBased := p_tAIBased - } // End of template m_areaScopeOfMDT_EUTRA_tAIBased - - template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_ext( - in template (value) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_areaScopeOfMDT_EUTRA_ext - } // End of template m_areaScopeOfQMC_ext - - template (omit) AvailableRANVisibleQoEMetrics m_availableRANVisibleQoEMetrics( - in template (omit) AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := omit, - in template (omit) AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := omit, - in template (omit) AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := omit - ) := { - applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, - playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, - iE_Extensions := p_iE_Extensions - } // End of template m_availableRANVisibleQoEMetrics - - template (omit) BeamMeasurementsReportConfiguration m_beamMeasurementsReportConfiguration( - in template (omit) BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := omit, - in template (omit) MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := omit, - in template (omit) BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := omit - ) := { - beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, - maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, - iE_Extensions := p_iE_Extensions - } // End of template m_beamMeasurementsReportConfiguration - - template (omit) BeamMeasurementsReportQuantity m_beamMeasurementsReportQuantity( - in template (omit) BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, - in template (omit) BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, - in template (omit) BeamMeasurementsReportQuantity.sINR p_sINR := true_, - in template (omit) BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := omit - ) := { - rSRP := p_rSRP, - rSRQ := p_rSRQ, - sINR := p_sINR, - iE_Extensions := p_iE_Extensions - } // End of template m_beamMeasurementsReportQuantity - - template (value) BitRate m_bitRate(in template (value) BitRate p_value) := p_value; - - template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_cellIDCancelledEUTRA( - in template (value) CellIDCancelledEUTRA p_cellIDCancelledEUTRA - ) := { - cellIDCancelledEUTRA := p_cellIDCancelledEUTRA - } // End of template m_broadcastCancelledAreaList_cellIDCancelledEUTRA - - template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_tAICancelledEUTRA( - in template (value) TAICancelledEUTRA p_tAICancelledEUTRA - ) := { - tAICancelledEUTRA := p_tAICancelledEUTRA - } // End of template m_broadcastCancelledAreaList_tAICancelledEUTRA - - template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( - in template (value) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA - ) := { - emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA - } // End of template m_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA - - template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_cellIDCancelledNR( - in template (value) CellIDCancelledNR p_cellIDCancelledNR - ) := { - cellIDCancelledNR := p_cellIDCancelledNR - } // End of template m_broadcastCancelledAreaList_cellIDCancelledNR - - template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_tAICancelledNR( - in template (value) TAICancelledNR p_tAICancelledNR - ) := { - tAICancelledNR := p_tAICancelledNR - } // End of template m_broadcastCancelledAreaList_tAICancelledNR + group HANDOVER_PREPARATION_FAILURE { - template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( - in template (value) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR - ) := { - emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR - } // End of template m_broadcastCancelledAreaList_ext + group Send { - template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_ext( - in template (value) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_broadcastCancelledAreaList_ext - - template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_cellIDBroadcastEUTRA( - in template (value) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA - ) := { - cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA - } // End of template m_broadcastCompletedAreaList_cellIDCancelledEUTRA - - template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_tAIBroadcastEUTRA( - in template (value) TAIBroadcastEUTRA p_tAIBroadcastEUTRA - ) := { - tAIBroadcastEUTRA := p_tAIBroadcastEUTRA - } // End of template m_broadcastCompletedAreaList_tAIBroadcastEUTRA - - template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( - in template (value) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA - ) := { - emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA - } // End of template m_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA - - template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_cellIDBroadcastNR( - in template (value) CellIDBroadcastNR p_cellIDBroadcastNR - ) := { - cellIDBroadcastNR := p_cellIDBroadcastNR - } // End of template m_broadcastCompletedAreaList_cellIDBroadcastNR - - template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_tAIBroadcastNR( - in template (value) TAIBroadcastNR p_tAIBroadcastNR + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.3 HANDOVER PREPARATION FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_HandoverPreparationFailure( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_PREPARATION_FAILURE) + ) := { + procedureCode := id_HandoverPreparation, + criticality := reject, + value_ := { + HandoverPreparationFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_HandoverPreparationFailure + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.3 HANDOVER PREPARATION FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_HandoverPreparationFailure( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_HandoverPreparation, + criticality := reject, + value_ := { + HandoverPreparationFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_HandoverPreparationFailure + + } // End of group Receive + + } // End of group HANDOVER_PREPARATION_FAILURE + + group HANDOVER_REQUEST { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST + */ + template (value) InitiatingMessage m_n2_HandoverRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) HandoverType p_handoverType := PX_HANDOVER_TYPE, + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), + in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityContext p_securityContext, + in template (value) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq + ) := { + procedureCode := id_HandoverResourceAllocation, + criticality := reject, + value_ := { + HandoverRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityContext, + criticality := reject, + value_ := { SecurityContext := p_securityContext } + }, + { + id := id_PDUSessionResourceListHORqd, + criticality := reject, + value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } + } + } + } + } + } // End of template m_n2_HandoverRequest + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST + */ + template (present) InitiatingMessage mw_n2_HandoverRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) HandoverType p_handoverType := ?, + template (present) Cause p_cause := ?, + template (present) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := ?, + template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, + template (present) SecurityContext p_securityContext := ?, + template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ? + ) := { + procedureCode := id_HandoverResourceAllocation, + criticality := reject, + value_ := { + HandoverRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityContext, + criticality := reject, + value_ := { SecurityContext := p_securityContext } + }, + { + id := id_PDUSessionResourceListHORqd, + criticality := reject, + value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } + } + } + } + } + } // End of template mw_n2_HandoverRequest + + } // End of group Receive + + } // End of group HANDOVER_REQUEST + + group HANDOVER_REQUEST_ACKNOWLEDGE { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.5 HANDOVER REQUEST ACKNOWLEDGE + */ + template (value) SuccessfulOutcome m_n2_HandoverRequestAcknowledge( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceAdmittedList p_pDUSessionResourceAdmittedList + ) := { + procedureCode := id_HandoverResourceAllocation, + criticality := reject, + value_ := { + HandoverRequestAcknowledge := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceAdmittedList, + criticality := ignore, + value_ := { PDUSessionResourceAdmittedList := p_pDUSessionResourceAdmittedList } + } + } + } + } + } // End of template m_n2_HandoverRequestAcknowledge + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.5 HANDOVER REQUEST ACKNOWLEDGE + */ + template (present) SuccessfulOutcome mw_n2_HandoverRequestAcknowledge( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceAdmittedList p_pDUSessionResourceAdmittedList := ? + ) := { + procedureCode := id_HandoverResourceAllocation, + criticality := reject, + value_ := { + HandoverRequestAcknowledge := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceAdmittedList, + criticality := ignore, + value_ := { PDUSessionResourceAdmittedList := p_pDUSessionResourceAdmittedList } + } + } + } + } + } // End of template mw_n2_HandoverRequestAcknowledge + + } // End of group Receive + + } // End of group HANDOVER_REQUEST_ACKNOWLEDGE + + group HANDOVER_FAILURE { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.6 HANDOVER FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_HandoverFailure( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_FAILURE) + ) := { + procedureCode := id_HandoverPreparation, + criticality := reject, + value_ := { + HandoverFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_HandoverFailure + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.6 HANDOVER FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_HandoverFailure( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_HandoverPreparation, + criticality := reject, + value_ := { + HandoverFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_HandoverFailure + + } // End of group Receive + + } // End of group HANDOVER_FAILURE + + group HANDOVER_NOTIFY { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.7 HANDOVER NOTIFY + */ + template (value) InitiatingMessage m_n2_HandoverNotify( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) UserLocationInformation p_userLocationInformation + ) := { + procedureCode := id_HandoverNotification, + criticality := reject, + value_ := { + HandoverNotify := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template m_n2_HandoverNotify + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.7 HANDOVER NOTIFY + */ + template (present) InitiatingMessage mw_n2_HandoverNotify( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) UserLocationInformation p_userLocationInformation := ? + ) := { + procedureCode := id_HandoverNotification, + criticality := reject, + value_ := { + HandoverNotify := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template mw_n2_HandoverNotify + + } // End of group Receive + + } // End of group HANDOVER_NOTIFY + + group PATH_SWITCH_REQUEST { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.8 PATH SWITCH REQUEST + */ + template (value) InitiatingMessage m_n2_PathSwitchRequest( + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) UserLocationInformation p_userLocationInformation + ) := { + procedureCode := id_PathSwitchRequest, + criticality := reject, + value_ := { + PathSwitchRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template m_n2_PathSwitchRequest + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.8 PATH SWITCH REQUEST + */ + template (present) InitiatingMessage mw_n2_PathSwitchRequest( + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) UserLocationInformation p_userLocationInformation := ? + ) := { + procedureCode := id_PathSwitchRequest, + criticality := reject, + value_ := { + PathSwitchRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template mw_n2_PathSwitchRequest + + } // End of group Receive + + } // End of group PATH_SWITCH_REQUEST + + group PATH_SWITCH_REQUEST_ACKNOWLEDGE { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.9 PATH SWITCH REQUEST ACKNOWLEDGE + */ + template (value) SuccessfulOutcome m_n2_PathSwitchRequestAcknowledge( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) SecurityContext p_securityContext, + in template (value) PDUSessionResourceSwitchedList p_pDUSessionResourceSwitchedList + ) := { + procedureCode := id_PathSwitchRequest, + criticality := reject, + value_ := { + PathSwitchRequestAcknowledge := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_SecurityContext, + criticality := reject, + value_ := { SecurityContext := p_securityContext } + }, + { + id := id_PDUSessionResourceSwitchedList, + criticality := ignore, + value_ := { PDUSessionResourceSwitchedList := p_pDUSessionResourceSwitchedList } + } + } + } + } + } // End of template m_n2_PathSwitchRequestAcknowledge + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.9 PATH SWITCH REQUEST ACKNOWLEDGE + */ + template (present) SuccessfulOutcome mw_n2_PathSwitchRequestAcknowledge( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) SecurityContext p_securityContext := ?, + template (present) PDUSessionResourceSwitchedList p_pDUSessionResourceSwitchedList := ? + ) := { + procedureCode := id_PathSwitchRequest, + criticality := reject, + value_ := { + PathSwitchRequestAcknowledge := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_SecurityContext, + criticality := reject, + value_ := { SecurityContext := p_securityContext } + }, + { + id := id_PDUSessionResourceSwitchedList, + criticality := ignore, + value_ := { PDUSessionResourceSwitchedList := p_pDUSessionResourceSwitchedList } + } + } + } + } + } // End of template mw_n2_PathSwitchRequestAcknowledge + + } // End of group Receive + + } // End of group PATH_SWITCH_REQUEST_ACKNOWLEDGE + + group PATH_SWITCH_REQUEST_FAILURE { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.10 PATH SWITCH REQUEST FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_PathSwitchRequestFailure( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceReleasedListPSFail p_pDUSessionResourceReleasedListPSFail + ) := { + procedureCode := id_PathSwitchRequest, + criticality := reject, + value_ := { + PathSwitchRequestFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSwitchedList, + criticality := ignore, + value_ := { PDUSessionResourceReleasedListPSFail := p_pDUSessionResourceReleasedListPSFail } + } + } + } + } + } // End of template m_n2_PathSwitchRequestFailure + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.10 PATH SWITCH REQUEST FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_PathSwitchRequestFailure( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceReleasedListPSFail p_pDUSessionResourceReleasedListPSFail := ? + ) := { + procedureCode := id_PathSwitchRequest, + criticality := reject, + value_ := { + PathSwitchRequestFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSwitchedList, + criticality := ignore, + value_ := { PDUSessionResourceReleasedListPSFail := p_pDUSessionResourceReleasedListPSFail } + } + } + } + } + } // End of template mw_n2_PathSwitchRequestFailure + + } // End of group Receive + + } // End of group PATH_SWITCH_REQUEST_FAILURE + + group HANDOVER_CANCEL { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.11 HANDOVER CANCEL + */ + template (value) InitiatingMessage m_n2_HandoverCancel( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_CANCEL) + ) := { + procedureCode := id_HandoverCancel, + criticality := reject, + value_ := { + HandoverCancel := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_HandoverCancel + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.11 HANDOVER CANCEL + */ + template (present) InitiatingMessage mw_n2_HandoverCancel( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_HandoverCancel, + criticality := reject, + value_ := { + HandoverCancel := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_HandoverCancel + + } // End of group Receive + + } // End of group HANDOVER_CANCEL + + group HANDOVER_CANCEL_ACKNOWLEDGE { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.12 HANDOVER CANCEL ACKNOWLEDGE + */ + template (value) SuccessfulOutcome m_n2_HandoverCancelAcknowledge( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_HandoverCancel, + criticality := reject, + value_ := { + HandoverCancelAcknowledge := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_HandoverCancelAcknowledge + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.12 HANDOVER CANCEL ACKNOWLEDGE + */ + template (present) SuccessfulOutcome mw_n2_HandoverCancelAcknowledge( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_HandoverCancel, + criticality := reject, + value_ := { + HandoverCancelAcknowledge := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_HandoverCancelAcknowledge + + } // End of group Receive + + } // End of group HANDOVER_CANCEL_ACKNOWLEDGE + + group UPLINK_RAN_STATUS_TRANSFER { + + group Send { + + } // End of group Send + + group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.13 UPLINK RAN STATUS TRANSFER + */ + template (value) InitiatingMessage m_n2_UplinkRANStatusTransfer( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RANStatusTransfer_TransparentContainer p_rANStatusTransfer_TransparentContainer + ) := { + procedureCode := id_UplinkRANStatusTransfer, + criticality := reject, + value_ := { + UplinkRANStatusTransfer := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_RANStatusTransfer_TransparentContainer, + criticality := reject, + value_ := { RANStatusTransfer_TransparentContainer := p_rANStatusTransfer_TransparentContainer } + } + } + } + } + } // End of template m_n2_UplinkRANStatusTransfer + + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.13 UPLINK RAN STATUS TRANSFER + */ + template (present) InitiatingMessage mw_n2_UplinkRANStatusTransfer( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) RANStatusTransfer_TransparentContainer p_rANStatusTransfer_TransparentContainer := ? + ) := { + procedureCode := id_UplinkRANStatusTransfer, + criticality := reject, + value_ := { + UplinkRANStatusTransfer := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_RANStatusTransfer_TransparentContainer, + criticality := reject, + value_ := { RANStatusTransfer_TransparentContainer := p_rANStatusTransfer_TransparentContainer } + } + } + } + } + } // End of template mw_n2_UplinkRANStatusTransfer + + } // End of group Receive + + } // End of group UPLINK_RAN_STATUS_TRANSFER + + group DOWNLINK_RAN_STATUS_TRANSFER { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.14 DOWNLINK RAN STATUS TRANSFER + */ + template (value) InitiatingMessage m_n2_DownlinkRANStatusTransfer( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RANStatusTransfer_TransparentContainer p_rANStatusTransfer_TransparentContainer + ) := { + procedureCode := id_DownlinkRANStatusTransfer, + criticality := reject, + value_ := { + DownlinkRANStatusTransfer := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_RANStatusTransfer_TransparentContainer, + criticality := reject, + value_ := { RANStatusTransfer_TransparentContainer := p_rANStatusTransfer_TransparentContainer } + } + } + } + } + } // End of template m_n2_DownlinkRANStatusTransfer + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.14 DOWNLINK RAN STATUS TRANSFER + */ + template (present) InitiatingMessage mw_n2_DownlinkRANStatusTransfer( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) RANStatusTransfer_TransparentContainer p_rANStatusTransfer_TransparentContainer := ? + ) := { + procedureCode := id_DownlinkRANStatusTransfer, + criticality := reject, + value_ := { + DownlinkRANStatusTransfer := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_RANStatusTransfer_TransparentContainer, + criticality := reject, + value_ := { RANStatusTransfer_TransparentContainer := p_rANStatusTransfer_TransparentContainer } + } + } + } + } + } // End of template mw_n2_DownlinkRANStatusTransfer + + } // End of group Receive + + } // End of group DOWNLINK_RAN_STATUS_TRANSFER + + group HANDOVER_SUCCESS { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.15 HANDOVER SUCCESS + */ + template (value) InitiatingMessage m_n2_HandoverSuccess( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_HandoverSuccess, + criticality := reject, + value_ := { + HandoverSuccess := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_HandoverSuccess + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.15 HANDOVER SUCCESS + */ + template (present) InitiatingMessage mw_n2_HandoverSuccess( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_HandoverSuccess, + criticality := reject, + value_ := { + HandoverSuccess := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_HandoverSuccess + + } // End of group Receive + + } // End of group HANDOVER_SUCCESS + + group UPLINK_RAN_EARLY_STATUS_TRANSFER { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.16 UPLINK RAN EARLY STATUS TRANSFER + */ + template (value) InitiatingMessage m_n2_UplinkRANEarlyStatusTransfer( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) EarlyStatusTransfer_TransparentContainer p_earlyStatusTransfer_TransparentContainer + ) := { + procedureCode := id_UplinkRANEarlyStatusTransfer, + criticality := reject, + value_ := { + UplinkRANEarlyStatusTransfer := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_EarlyStatusTransfer_TransparentContainer, + criticality := reject, + value_ := { EarlyStatusTransfer_TransparentContainer := p_earlyStatusTransfer_TransparentContainer } + } + } + } + } + } // End of template m_n2_UplinkRANEarlyStatusTransfer + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.16 UPLINK RAN EARLY STATUS TRANSFER + */ + template (present) InitiatingMessage mw_n2_UplinkRANEarlyStatusTransfer( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) EarlyStatusTransfer_TransparentContainer p_earlyStatusTransfer_TransparentContainer := ? + ) := { + procedureCode := id_UplinkRANEarlyStatusTransfer, + criticality := reject, + value_ := { + UplinkRANEarlyStatusTransfer := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_EarlyStatusTransfer_TransparentContainer, + criticality := reject, + value_ := { EarlyStatusTransfer_TransparentContainer := p_earlyStatusTransfer_TransparentContainer } + } + } + } + } + } // End of template mw_n2_UplinkRANEarlyStatusTransfer + + } // End of group Receive + + } // End of group UPLINK_RAN_EARLY_STATUS_TRANSFER + + group DOWNLINK_RAN_EARLY_STATUS_TRANSFER { + + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.17 DOWNLINK RAN EARLY STATUS TRANSFER + */ + template (value) InitiatingMessage m_n2_DownlinkRANEarlyStatusTransfer( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) EarlyStatusTransfer_TransparentContainer p_earlyStatusTransfer_TransparentContainer + ) := { + procedureCode := id_DownlinkRANEarlyStatusTransfer, + criticality := reject, + value_ := { + DownlinkRANEarlyStatusTransfer := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_EarlyStatusTransfer_TransparentContainer, + criticality := reject, + value_ := { EarlyStatusTransfer_TransparentContainer := p_earlyStatusTransfer_TransparentContainer } + } + } + } + } + } // End of template m_n2_DownlinkRANEarlyStatusTransfer + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.17 DOWNLINK RAN EARLY STATUS TRANSFER + */ + template (present) InitiatingMessage mw_n2_DownlinkRANEarlyStatusTransfer( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) EarlyStatusTransfer_TransparentContainer p_earlyStatusTransfer_TransparentContainer := ? + ) := { + procedureCode := id_DownlinkRANEarlyStatusTransfer, + criticality := reject, + value_ := { + DownlinkRANEarlyStatusTransfer := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_EarlyStatusTransfer_TransparentContainer, + criticality := reject, + value_ := { EarlyStatusTransfer_TransparentContainer := p_earlyStatusTransfer_TransparentContainer } + } + } + } + } + } // End of template mw_n2_DownlinkRANEarlyStatusTransfer + + } // End of group Receive + + } // End of group DOWNLINK_RAN_EARLY_STATUS_TRANSFER + + } // End of group UE_Mobility_Management_Messages + + //9.2.4 + group Paging_Messages{ + //9.2.4.1 + group PAGING{ + group Send { + } + group Receive { + } + } + } // End of group Paging_Messages + + group NAS_Transport_Messages{ + + group INITIAL_UE_MESSAGE{ + + group Send { + + template (value) InitiatingMessage m_n2_initialUeMessage( + in template (value) RAN_UE_NGAP_ID p_RANUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) NAS_PDU p_nasPdu, + in template (value) UserLocationInformation p_UeLocInf, + in template (value) RRCEstablishmentCause p_rrcEstCause + ) := { + procedureCode := id_InitialUEMessage, + criticality := reject, + value_ := { + InitialUEMessage := { + protocolIEs := { + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := {RAN_UE_NGAP_ID:=p_RANUeNgapID} + //presence := NGAP_CommonDataTypes.mandatory + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := {NAS_PDU:=p_nasPdu} + //presence := NGAP_CommonDataTypes.mandatory + }, + { + id := id_UserLocationInformation, + criticality := reject, + value_ := {UserLocationInformation:=p_UeLocInf} + //presence := NGAP_CommonDataTypes.mandatory + }, + { + id := id_RRCEstablishmentCause, + criticality := ignore, + value_ := {RRCEstablishmentCause:=p_rrcEstCause} + //presence := NGAP_CommonDataTypes.mandatory + }//, + /*{ + id := NGAP_Constants.id_FiveG_S_TMSI, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.FiveG_S_TMSI", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AMFSetID, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.AMFSetID", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_UEContextRequest, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.UEContextRequest", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AllowedNSSAI, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.AllowedNSSAI", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_SourceToTarget_AMFInformationReroute, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.SourceToTarget_AMFInformationReroute", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_SelectedPLMNIdentity, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.PLMNIdentity", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_IABNodeIndication, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.IABNodeIndication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_CEmodeBSupport_Indicator, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.CEmodeBSupport_Indicator", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_LTEM_Indication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.LTEM_Indication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_EDT_Session, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.EDT_Session", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AuthenticatedIndication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.AuthenticatedIndication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_NPN_AccessInformation, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.NPN_AccessInformation", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_RedCapIndication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.RedCapIndication", + presence := NGAP_CommonDataTypes.optional_ + }*/ + } + } + } + } // End of template m_n2_initialUeMessage + } // End of group Send + + group Receive { + } + + } + //9.2.5.2 + group DOWNLINK_NAS_TRANSPORT{ + group Send { + } + group Receive { + } + } + //9.2.5.3 + group UPLINK_NAS_TRANSPORT{ + group Send { + } + group Receive { + } + } + //9.2.5.4 + group NAS_NON_DELIVERY_INDICATION{ + group Send { + } + group Receive { + } + } + //9.2.5.5 + group REROUTE_NAS_REQUEST{ + group Send { + } + group Receive { + } + } + } // End of group NAS_Transport_Messages + + //9.2.6 + group Interface_Management_Messages{ + //9.2.6.1 + group NG_SETUP_REQUEST{ + group Send { + + template (value) InitiatingMessage m_n2_NGSetupRequest( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) SupportedTAList p_supportedTAs, + in template (value) PagingDRX p_pagingDRX + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupRequest := { + protocolIEs := { + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + }, + { + id := id_SupportedTAList, + criticality := reject, + value_ := { SupportedTAList := p_supportedTAs } + + }, + { + id := id_DefaultPagingDRX, + criticality := ignore, + value_ := { PagingDRX := p_pagingDRX + } + } + } + } + } // End of template m_n2_NGSetupRequest + } + + } + group Receive { + } + } + //9.2.6.2 + group NG_SETUP_RESPONSE{ + group Send { + } + group Receive { + + template (present) SuccessfulOutcome mw_n2_NGSetupResponse( + in template (present) AMFName p_amfName := ?, + in template (present) ServedGUAMIList p_servedGUAMIList := ?, + in template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + in template (present) PLMNSupportList p_plmnSuppList := ? + ) := { + procedureCode := id_NGSetup, + criticality := ?, + value_ := { + NGSetupResponse := { + protocolIEs := { + { + id := id_AMFName, + criticality := reject, + value_ := { AMFName := p_amfName } + }, + { + id := id_ServedGUAMIList, + criticality := reject, + value_ := { ServedGUAMIList := p_servedGUAMIList } + + }, + { + id := id_RelativeAMFCapacity, + criticality := ignore, + value_ := { RelativeAMFCapacity := p_relativeAmfCap } + }, + { + id := id_PLMNSupportList, + criticality := ignore, + value_ := { PLMNSupportList := p_plmnSuppList } + } + } + } + } + }//end of template mw_n2_NGSetupResponse + + } + } + //9.2.6.3 + group NG_SETUP_FAILURE{ + group Send { + } + group Receive { + + template (present) UnsuccessfulOutcome mw_n2_NGSetupFailure( + in template (present) Cause p_cause := ? + ) := { + procedureCode := id_NGSetup, + criticality := ?, + value_ := { + NGSetupFailure := { + protocolIEs := { + { + id := id_Cause, + criticality := ?, + value_ := { Cause := p_cause } + } + } + } + } + }//end of template mw_n2_NGSetupFailure + } + } + //9.2.6.4 + group RAN_CONFIGURATION_UPDATE{ + group Send { + } + group Receive { + } + } + //9.2.6.5 + group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE{ + group Send { + } + group Receive { + } + } + //9.2.6.6 + group RAN_CONFIGURATION_UPDATE_FAILURE{ + group Send { + } + group Receive { + } + } + //9.2.6.7 + group AMF_CONFIGURATION_UPDATE{ + group Send { + } + group Receive { + } + } + //9.2.6.8 + group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE{ + group Send { + } + group Receive { + } + } + //9.2.6.9 + group AMF_CONFIGURATION_UPDATE_FAILURE{ + group Send { + } + group Receive { + } + } + //9.2.6.10 + group AMF_STATUS_INDICATION{ + group Send { + } + group Receive { + } + } + //9.2.6.11 + group NG_RESET{ + group Send { + } + group Receive { + } + } + //9.2.6.12 + group NG_RESET_ACKNOWLEDGE{ + group Send { + } + group Receive { + } + } + //9.2.6.13 + group ERROR_INDICATION{ + group Send { + } + group Receive { + } + } + //9.2.6.14 + group OVERLOAD_START{ + group Send { + } + group Receive { + } + } + //9.2.6.15 + group OVERLOAD_STOP{ + group Send { + } + group Receive { + } + } + } // End of group Interface_Management_Messages + + //9.2.7 + group Configuration_Transfer_Messages{ + //9.2.7.1 + group UPLINK_RAN_CONFIGURATION_TRANSFER{ + group Send { + } + group Receive { + } + } + //9.2.7.2 + group DOWNLINK_RAN_CONFIGURATION_TRANSFER{ + group Send { + } + group Receive { + } + } + } // End of group Configuration_Transfer_Messages + + //9.2.8 + group Warning_Message_Transmission_Messages{ + //9.2.8.1 + group WRITE_REPLACE_WARNING_REQUEST{ + group Send { + } + group Receive { + } + } + //9.2.8.2 + group WRITE_REPLACE_WARNING_RESPONSE{ + group Send { + } + group Receive { + } + } + //9.2.8.3 + group PWS_CANCEL_REQUEST{ + group Send { + } + group Receive { + } + } + //9.2.8.4 + group PWS_CANCEL_RESPONSE{ + group Send { + } + group Receive { + } + } + //9.2.8.5 + group PWS_RESTART_INDICATION{ + group Send { + } + group Receive { + } + } + //9.2.8.6 + group PWS_FAILURE_INDICATION{ + group Send { + } + group Receive { + } + } + } // End of group Warning_Message_Transmission_Messages + + //9.2.9 + group NRPPa_Transport_Messages{ + //9.2.9.1 + group DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ + group Send { + } + group Receive { + } + } + //9.2.9.2 + group UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ + group Send { + } + group Receive { + } + } + //9.2.9.3 + group DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ + group Send { + } + group Receive { + } + } + //9.2.9.4 + group UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ + group Send { + } + group Receive { + } + } + } // End of group NRPPa_Transport_Messages + + //9.2.10 + group Trace_Messages{ + //9.2.10.1 + group TRACE_START{ + group Send { + } + group Receive { + } + } + //9.2.10.2 + group TRACE_FAILURE_INDICATION{ + group Send { + } + group Receive { + } + } + //9.2.10.3 + group DEACTIVATE_TRACE{ + group Send { + } + group Receive { + } + } + //9.2.10.4 + group CELL_TRAFFIC_TRACE{ + group Send { + } + group Receive { + } + } + } // End of group Trace_Messages + + //9.2.11 + group Location_Reporting_Messages{ + //9.2.11.1 + group LOCATION_REPORTING_CONTROL{ + group Send { + } + group Receive { + } + } + //9.2.11.2 + group LOCATION_REPORTING_FAILURE_INDICATION{ + group Send { + } + group Receive { + } + } + //9.2.11.3 + group LOCATION_REPORT{ + group Send { + } + group Receive { + } + } + } // End of group Location_Reporting_Messages + + //9.2.12 + group UE_TNLA_Binding_Messages{ + //9.2.12.1 + group UE_TNLA_BINDING_RELEASE_REQUEST{ + group Send { + } + group Receive { + } + } + } // End of group UE_TNLA_Binding_Messages + + //9.2.13 + group UE_Radio_Capability_Management_Messages{ + //9.2.13.1 + group UE_RADIO_CAPABILITY_INFO_INDICATION{ + group Send { + } + group Receive { + } + } + //9.2.13.2 + group UE_RADIO_CAPABILITY_CHECK_REQUEST{ + group Send { + } + group Receive { + } + } + //9.2.13.3 + group UE_RADIO_CAPABILITY_CHECK_RESPONSE{ + group Send { + } + group Receive { + } + } + //9.2.13.4 + group UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST{ + group Send { + } + group Receive { + } + } + //9.2.13.5 + group UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE{ + group Send { + } + group Receive { + } + } + } // End of group UE_Radio_Capability_Management_Messages + + //9.2.14 + group Data_Usage_Reporting_Messages{ + //9.2.14.1 + group SECONDARY_RAT_DATA_USAGE_REPORT{ + group Send { + } + group Receive { + } + } + } // End of group Data_Usage_Reporting_Messages + + //9.2.15 + group RIM_Information_Transfer_Messages{ + //9.2.15.1 + group UPLINK_RIM_INFORMATION_TRANSFER{ + group Send { + } + group Receive { + } + } + //9.2.15.2 + group DOWNLINK_RIM_INFORMATION_TRANSFER{ + group Send { + } + group Receive { + } + } + } // End of group RIM_Information_Transfer_Messages + + } // End of group Message_Functional_Definition_and_Content + + group Information_elements { + + group Send { + + template (omit) AdditionalDLUPTNLInformationForHOItem m_additionalDLUPTNLInformationForHOItem( + in template (value) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation, + in template (value) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList, + in template (omit) UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := omit, + in template (omit) AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := omit + ) := { + additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, + additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, + additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_additionalDLUPTNLInformationForHOItem + + template (value) AdditionalDLUPTNLInformationForHOItem.iE_Extensions m_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_additionalDLUPTNLInformationForHOItem_iE_Extensions + + template (value) AdditionalQosFlowInformation m_additionalQosFlowInformation(in AdditionalQosFlowInformation p_value := more_likely) := p_value; + + template (omit) AllocationAndRetentionPriority m_allocationAndRetentionPriority( + in template (value) PriorityLevelARP p_priorityLevelARP, + in template (value) Pre_emptionCapability p_pre_emptionCapability, + in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + in template (omit) AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := omit + ) := { + priorityLevelARP := p_priorityLevelARP, + pre_emptionCapability := p_pre_emptionCapability, + pre_emptionVulnerability := p_pre_emptionVulnerability, + iE_Extensions := p_iE_Extensions + } // End of template m_allocationAndRetentionPriority + + template (value) AlternativeQoSParaSetIndex m_alternativeQoSParaSetIndex(in template (value) integer p_value := PX_ALTERNATIVE_QOS_PARA_SET_INDEX) := p_value; + + template (value) AlternativeQoSParaSetNotifyIndex m_alternativeQoSParaSetNotifyIndex(in template (value) integer p_value := PX_ALTERNATIVE_QOS_PARA_SET_NOTIFY_INDEX) := p_value; + + template (omit) AlternativeQoSParaSetItem m_alternativeQoSParaSetItem( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex, + in template (omit) BitRate p_guaranteedFlowBitRateDL := omit, + in template (omit) BitRate p_guaranteedFlowBitRateUL := omit, + in template (omit) PacketDelayBudget p_packetDelayBudget := omit, + in template (omit) PacketErrorRate p_packetErrorRate := omit, + in template (omit) AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := omit + ) := { + alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + iE_Extensions := p_iE_Extensions + } // End of template m_alternativeQoSParaSetItem + + template (value) AMFName m_aMFName(in AMFName p_value) := p_value; + + template (value) AMFNameVisibleString m_aMFNameVisibleString(in AMFNameVisibleString p_value) := p_value; + + template (value) AMFNameUTF8String m_aMFNameUTF8String(in AMFNameUTF8String p_value) := p_value; + + template (value) AMFPagingTarget m_aMFPagingTarget_globalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + globalRANNodeID := p_globalRANNodeID + } // End of template m_aMFPagingTarget_globalRANNodeID + template (value) AMFPagingTarget m_aMFPagingTarget_tAI( + in template (value) TAI p_tAI + ) := { + tAI := p_tAI + } // End of template m_aMFPagingTarget_tAI + template (value) AMFPagingTarget m_aMFPagingTarget_ext( + in template (value) AMFPagingTarget.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_aMFPagingTarget_ext + + template (omit) AMF_TNLAssociationSetupItem m_aMF_TNLAssociationSetupItem( + in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + in template (omit) AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template m_aMF_TNLAssociationSetupItem + + template (omit) AMF_TNLAssociationToAddItem m_aMF_TNLAssociationToAddItem( + in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + in template (value) TNLAddressWeightFactor p_tNLAddressWeightFactor, + in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, + in template (omit) AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := omit + ):= { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template m_aMF_TNLAssociationToAddItem + + template (omit) AMF_TNLAssociationToRemoveItem m_aMF_TNLAssociationToRemoveItem( + in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + in template (omit) AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template m_aMF_TNLAssociationToRemoveItem + + template (omit) AMF_TNLAssociationToUpdateItem m_aMF_TNLAssociationToUpdateItem( + in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, + in template (omit) TNLAddressWeightFactor p_tNLAddressWeightFactor := omit, + in template (omit) AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template m_aMF_TNLAssociationToUpdateItem + + template (omit) AreaOfInterest m_areaOfInterest( + in template (omit) AreaOfInterestTAIList p_areaOfInterestTAIList := omit, + in template (omit) AreaOfInterestCellList p_areaOfInterestCellList := omit, + in template (omit) AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := omit, + in template (omit) AreaOfInterest.iE_Extensions p_iE_Extensions := omit + ) := { + areaOfInterestTAIList := p_areaOfInterestTAIList, + areaOfInterestCellList := p_areaOfInterestCellList, + areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template m_areaOfInterest + + template (omit) AreaOfInterestCellItem m_areaOfInterestCellItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (omit) AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_areaOfInterestCellItem + + template (omit) AreaOfInterestItem m_reaOfInterestItem( + in template (value) AreaOfInterest p_areaOfInterest, + in template (value) LocationReportingReferenceID p_locationReportingReferenceID, + in template (omit) AreaOfInterestItem.iE_Extensions p_iE_Extensions := omit + ) := { + areaOfInterest := p_areaOfInterest, + locationReportingReferenceID := p_locationReportingReferenceID, + iE_Extensions := p_iE_Extensions + } // End of template m_reaOfInterestItem + + template (omit) AreaOfInterestRANNodeItem m_areaOfInterestRANNodeItem( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (omit) AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := omit + ):= { + globalRANNodeID := p_globalRANNodeID, + iE_Extensions := p_iE_Extensions + } // End of template m_areaOfInterestRANNodeItem + + template (omit) AreaOfInterestTAIItem m_areaOfInterestTAIItem( + in template (value) TAI p_tAI, + in template (omit) AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_areaOfInterestTAIItem + + template (omit) AssistanceDataForPaging m_assistanceDataForPaging( + in template (omit) AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := omit, + in template (omit) PagingAttemptInformation p_pagingAttemptInformation := omit, + in template (omit) AssistanceDataForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, + pagingAttemptInformation := p_pagingAttemptInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_assistanceDataForPaging + + template (value) AssistanceDataForPaging.iE_Extensions m_assistanceDataForPaging_NPN_PagingAssistanceInformation( + in template (value) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation + ) := { + { + id := id_NPN_PagingAssistanceInformation, + criticality := ignore, + extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } + } + } // End of template m_assistanceDataForPaging_NPN_PagingAssistanceInformation + + template (value) AssistanceDataForPaging.iE_Extensions m_assistanceDataForPaging_pagingAssisDataforCEcapabUE( + in template (value) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE + ) := { + { + id := id_PagingAssisDataforCEcapabUE, + criticality := ignore, + extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } + } + } // End of template m_assistanceDataForPaging_pagingAssisDataforCEcapabUE + + template (omit) AssistanceDataForRecommendedCells m_assistanceDataForRecommendedCells( + in template (value) RecommendedCellsForPaging p_recommendedCellsForPaging, + in template (omit) AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := omit + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + iE_Extensions := p_iE_Extensions + } // End of template m_assistanceDataForRecommendedCells + + template (omit) AssociatedMBSQosFlowSetupRequestItem m_associatedMBSQosFlowSetupRequestItem( + in template (value) QosFlowIdentifier p_mBS_QosFlowIdentifier, + in template (value) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier, + in template (omit) AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_associatedMBSQosFlowSetupRequestItem + + template (omit) AssociatedMBSQosFlowSetuporModifyRequestItem m_associatedMBSQosFlowSetuporModifyRequestItem( + in template (value) QosFlowIdentifier p_mBS_QosFlowIdentifier, + in template (value) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier, + in template (omit) AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_associatedMBSQosFlowSetuporModifyRequestItem + + template (omit) AssociatedQosFlowItem m_associatedQosFlowItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := omit, + in template (omit) AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowMappingIndication := p_qosFlowMappingIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_associatedQosFlowItem + + template (value) AssociatedQosFlowItem.iE_Extensions m_associatedQosFlowItem_alternativeQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_associatedQosFlowItem_alternativeQoSParaSetIndex + + template (value) AuthenticatedIndication m_authenticatedIndication(in AuthenticatedIndication p_value := true_) := p_value; + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_NR_cellBased( + in template (value) CellBasedMDT_NR p_cellBased + ) := { + cellBased := p_cellBased + } // End of template m_areaScopeOfMDT_cellBased + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_tABased( + in template (value) TABasedMDT p_tABased + ) := { + tABased := p_tABased + } // End of template m_areaScopeOfMDT_tABased + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_pLMNWide := { + pLMNWide := NULL + } // End of template m_areaScopeOfMDT_pLMNWide + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_tAIBased( + in template (value) TAIBasedMDT p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template m_areaScopeOfMDT_tAIBased + + template (value) AreaScopeOfMDT_NR m_areaScopeOfMDT_ext( + in template (value) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_areaScopeOfMDT_ext + + template (omit) AreaScopeOfNeighCellsItem m_areaScopeOfNeighCellsItem( + in template (value) NRFrequencyInfo p_nrFrequencyInfo, + in template (omit) PCIListForMDT p_pciListForMDT := omit, + in template (omit) AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := omit + ) := { + nrFrequencyInfo := p_nrFrequencyInfo, + pciListForMDT := p_pciListForMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_areaScopeOfNeighCellsItem + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_cellBased( + in template (value) CellBasedQMC p_cellBased + ) := { + cellBased := p_cellBased + } // End of template m_areaScopeOfQMC_cellBased + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_tABased( + in template (value) TABasedQMC p_tABased + ) := { + tABased := p_tABased + } // End of template m_areaScopeOfQMC_tABased + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_tAIBased( + in template (value) TAIBasedQMC p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template m_areaScopeOfQMC_tAIBased + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_pLMNAreaBased( + in template (value) PLMNAreaBasedQMC p_pLMNAreaBased + ) := { + pLMNAreaBased := p_pLMNAreaBased + } // End of template m_areaScopeOfQMC_pLMNAreaBased + + template (value) AreaScopeOfQMC m_areaScopeOfQMC_ext( + in template (value) AreaScopeOfQMC.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_areaScopeOfQMC_ext + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_cellBased( + in template (value) CellBasedMDT_EUTRA p_cellBased + ) := { + cellBased := p_cellBased + } // End of template m_areaScopeOfMDT_EUTRA_cellBased + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_tABased( + in template (value) TABasedMDT p_tABased + ) := { + tABased := p_tABased + } // End of template m_areaScopeOfMDT_EUTRA_tABased + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_pLMNWide := { + pLMNWide := NULL + } // End of template m_areaScopeOfMDT_EUTRA_pLMNWide + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_tAIBased( + in template (value) TAIBasedMDT p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template m_areaScopeOfMDT_EUTRA_tAIBased + + template (value) AreaScopeOfMDT_EUTRA m_areaScopeOfMDT_EUTRA_ext( + in template (value) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_areaScopeOfMDT_EUTRA_ext + } // End of template m_areaScopeOfQMC_ext + + template (omit) AvailableRANVisibleQoEMetrics m_availableRANVisibleQoEMetrics( + in template (omit) AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := omit, + in template (omit) AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := omit, + in template (omit) AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := omit + ) := { + applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, + playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, + iE_Extensions := p_iE_Extensions + } // End of template m_availableRANVisibleQoEMetrics + + template (omit) BeamMeasurementsReportConfiguration m_beamMeasurementsReportConfiguration( + in template (omit) BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := omit, + in template (omit) MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := omit, + in template (omit) BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := omit + ) := { + beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, + maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, + iE_Extensions := p_iE_Extensions + } // End of template m_beamMeasurementsReportConfiguration + + template (omit) BeamMeasurementsReportQuantity m_beamMeasurementsReportQuantity( + in template (omit) BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, + in template (omit) BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, + in template (omit) BeamMeasurementsReportQuantity.sINR p_sINR := true_, + in template (omit) BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := omit + ) := { + rSRP := p_rSRP, + rSRQ := p_rSRQ, + sINR := p_sINR, + iE_Extensions := p_iE_Extensions + } // End of template m_beamMeasurementsReportQuantity + + template (value) BitRate m_bitRate(in template (value) BitRate p_value) := p_value; + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_cellIDCancelledEUTRA( + in template (value) CellIDCancelledEUTRA p_cellIDCancelledEUTRA + ) := { + cellIDCancelledEUTRA := p_cellIDCancelledEUTRA + } // End of template m_broadcastCancelledAreaList_cellIDCancelledEUTRA + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_tAICancelledEUTRA( + in template (value) TAICancelledEUTRA p_tAICancelledEUTRA + ) := { + tAICancelledEUTRA := p_tAICancelledEUTRA + } // End of template m_broadcastCancelledAreaList_tAICancelledEUTRA + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( + in template (value) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA + ) := { + emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA + } // End of template m_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_cellIDCancelledNR( + in template (value) CellIDCancelledNR p_cellIDCancelledNR + ) := { + cellIDCancelledNR := p_cellIDCancelledNR + } // End of template m_broadcastCancelledAreaList_cellIDCancelledNR + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_tAICancelledNR( + in template (value) TAICancelledNR p_tAICancelledNR + ) := { + tAICancelledNR := p_tAICancelledNR + } // End of template m_broadcastCancelledAreaList_tAICancelledNR + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( + in template (value) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR + ) := { + emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR + } // End of template m_broadcastCancelledAreaList_ext + + template (value) BroadcastCancelledAreaList m_broadcastCancelledAreaList_ext( + in template (value) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_broadcastCancelledAreaList_ext + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_cellIDBroadcastEUTRA( + in template (value) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA + ) := { + cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA + } // End of template m_broadcastCompletedAreaList_cellIDCancelledEUTRA + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_tAIBroadcastEUTRA( + in template (value) TAIBroadcastEUTRA p_tAIBroadcastEUTRA + ) := { + tAIBroadcastEUTRA := p_tAIBroadcastEUTRA + } // End of template m_broadcastCompletedAreaList_tAIBroadcastEUTRA + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( + in template (value) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA + ) := { + emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA + } // End of template m_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_cellIDBroadcastNR( + in template (value) CellIDBroadcastNR p_cellIDBroadcastNR + ) := { + cellIDBroadcastNR := p_cellIDBroadcastNR + } // End of template m_broadcastCompletedAreaList_cellIDBroadcastNR + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_tAIBroadcastNR( + in template (value) TAIBroadcastNR p_tAIBroadcastNR + ) := { + tAIBroadcastNR := p_tAIBroadcastNR + } // End of template m_broadcastCompletedAreaList_tAIBroadcastNR + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( + in template (value) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR + ) := { + emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR + } // End of template m_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR + + template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_ext( + in template (value) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_broadcastCompletedAreaList_ext + + template (value) BroadcastPLMNList m_ie_broadcastPLMNList( + in template (value) BroadcastPLMNList p_list + ) := p_list; + + template (omit) BroadcastPLMNItem m_ie_broadcastPLMNItem( + in template (value) PLMNIdentity p_plmnId := PX_PLMN_IDENTITY, + in template (value) SliceSupportList p_ssl, + in template (omit) BroadcastPLMNItem.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_plmnId, + tAISliceSupportList := p_ssl, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_broadcastPLMNItem + + template (omit) BluetoothMeasurementConfiguration m_bluetoothMeasurementConfiguration( + in template (value) BluetoothMeasConfig p_bluetoothMeasConfig, + in template (omit) BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := omit, + in template (omit) BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := omit, + in template (omit) BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := omit + ) := { + bluetoothMeasConfig := p_bluetoothMeasConfig, + bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, + bt_rssi := p_bt_rssi, + iE_Extensions := p_iE_Extensions + } // End of template m_bluetoothMeasurementConfiguration + + template (omit) BluetoothMeasConfigNameItem m_bluetoothMeasConfigNameItem( + in template (value) BluetoothName p_bluetoothName, + in template (omit) BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := omit + ) := { + bluetoothName := p_bluetoothName, + iE_Extensions := p_iE_Extensions + } // End of template m_bluetoothMeasConfigNameItem + + template (value) BluetoothMeasConfig m_bluetoothMeasConfig(in BluetoothMeasConfig p_value := setup) := p_value; + + template (value) CancelAllWarningMessages m_cancelAllWarningMessages(in CancelAllWarningMessages p_value := true_) := p_value; + + template (omit) CancelledCellsInEAI_EUTRA_Item m_cancelledCellsInEAI_EUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cancelledCellsInEAI_EUTRA_Item + + template (omit) CancelledCellsInEAI_NR_Item m_cancelledCellsInEAI_NR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cancelledCellsInEAI_NR_Item + + template (omit) CancelledCellsInTAI_EUTRA_Item m_cancelledCellsInTAI_EUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cancelledCellsInTAI_EUTRA_Item + + template (omit) CancelledCellsInTAI_NR_Item m_CancelledCellsInTAI_NR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_CancelledCellsInTAI_NR_Item + + template (omit) CandidateCellItem m_candidateCellItem( + in template (value) CandidateCell p_candidateCell, + in template (omit) CandidateCellItem.iE_Extensions p_iE_Extensions := omit + ) := { + candidateCell := p_candidateCell, + iE_Extensions := p_iE_Extensions + } // End of template m_candidateCellItem + + template (value) CandidateCell m_candidateCell_candidateCGI( + in template (value) CandidateCellID p_candidateCGI + ) := { + candidateCGI := p_candidateCGI + } // End of template m_candidateCell_candidateCGI + + template (value) CandidateCell m_candidateCell_candidatePCI( + in template (value) CandidatePCI p_candidatePCI + ) := { + candidatePCI := p_candidatePCI + } // End of template m_candidateCell_candidatePCI + + template (value) CandidateCell m_candidateCell_ext( + in template (value) CandidateCell.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_candidateCell_ext + + template (omit) CandidateCellID m_candidateCellID( + in template (value) NR_CGI p_candidateCellID, + in template (omit) CandidateCellID.iE_Extensions p_iE_Extensions := omit + ) := { + candidateCellID := p_candidateCellID, + iE_Extensions := p_iE_Extensions + } // End of template m_candidateCellID + + template (omit) CandidatePCI m_candidatePCI( + in template (value) CandidatePCI.candidatePCI p_candidatePCI, + in template (value) CandidatePCI.candidateNRARFCN p_candidateNRARFCN, + in template (omit) CandidatePCI.iE_Extensions p_iE_Extensions := omit + ) := { + candidatePCI := p_candidatePCI, + candidateNRARFCN := p_candidateNRARFCN, + iE_Extensions := p_iE_Extensions + } // End of template m_candidatePCI + + template (value) Cause m_cause_radioNetwork( + in template (value) CauseRadioNetwork p_radioNetwork + ) := { + radioNetwork := p_radioNetwork + } // End of template m_cause_radioNetwork + + template (value) Cause m_cause_transport( + in template (value) CauseTransport p_transport + ) := { + transport := p_transport + } // End of template m_cause_transport + + template (value) Cause m_cause_nas( + in template (value) CauseNas p_nas + ) := { + nas := p_nas + } // End of template m_cause_nas + + template (value) Cause m_cause_protocol( + in template (value) CauseProtocol p_protocol + ) := { + protocol := p_protocol + } // End of template m_cause_protocol + + template (value) Cause m_cause_misc( + in template (value) CauseMisc p_misc + ) := { + misc := p_misc + } // End of template m_cause_misc + + template (value) Cause m_cause_ext( + in template (value) Cause.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_cause_ext + + template (value) CauseMisc m_causeMisc(in CauseMisc p_value := unspecified) := p_value; + template (value) CauseNas m_causeNas(in CauseNas p_value := unspecified) := p_value; + template (value) CauseProtocol m_causeProtocol(in CauseProtocol p_value := unspecified) := p_value; + template (value) CauseRadioNetwork m_causeRadioNetwork(in CauseRadioNetwork p_value := unspecified) := p_value; + template (value) CauseTransport m_causeTransport(in CauseTransport p_value := unspecified) := p_value; + + template (omit) Cell_CAGInformation m_cell_CAGInformation( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) CellCAGList p_cellCAGList, + in template (omit) Cell_CAGInformation.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + cellCAGList := p_cellCAGList, + iE_Extensions := p_iE_Extensions + } // End of template m_cell_CAGInformation + + template (omit) CellIDBroadcastEUTRA_Item m_cellIDBroadcastEUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (omit) CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_cellIDBroadcastEUTRA_Item + + template (omit) CellIDBroadcastNR_Item m_cellIDBroadcastNR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (omit) CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_cellIDBroadcastNR_Item + + template (omit) CellIDCancelledEUTRA_Item m_cellIDCancelledEUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cellIDCancelledEUTRA_Item + + template (omit) CellIDCancelledNR_Item m_cellIDCancelledNR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (value) NumberOfBroadcasts p_numberOfBroadcasts, + in template (omit) CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template m_cellIDCancelledNR_Item + + template (value) CellIDListForRestart m_cellIDListForRestart_eUTRA_CGIListforRestart( + in template (value) EUTRA_CGIList p_eUTRA_CGIListforRestart + ) := { + eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart + } // End of template m_cellIDListForRestart_misc + + template (value) CellIDListForRestart m_cellIDListForRestart_nR_CGIListforRestart( + in template (value) NR_CGIList p_nR_CGIListforRestart + ) := { + nR_CGIListforRestart := p_nR_CGIListforRestart + } // End of template m_cellIDListForRestart_nR_CGIListforRestart + + template (value) CellIDListForRestart m_cellIDListForRestart_ext( + in template (value) CellIDListForRestart.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_cellIDListForRestart_ext + + template (value) CellSize m_cellSize(in CellSize p_value := medium) := p_value; + + template (omit) CellType m_cellType( + in template (value) CellSize p_cellSize, + in template (omit) CellType.iE_Extensions p_iE_Extensions := omit + ) := { + cellSize := p_cellSize, + iE_Extensions := p_iE_Extensions + } // End of template m_cellType + + template (value) CEmodeBSupport_Indicator m_cEmodeBSupport_Indicator(in CEmodeBSupport_Indicator p_value := supported) := p_value; + template (value) CEmodeBrestricted m_cEmodeBrestricted(in CEmodeBrestricted p_value := restricted) := p_value; + + template (omit) CNAssistedRANTuning m_cNAssistedRANTuning( + in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, + in template (omit) CNAssistedRANTuning.iE_Extensions p_iE_Extensions := omit + ) := { + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template m_cNAssistedRANTuning + + template (omit) CNTypeRestrictionsForEquivalentItem m_cNTypeRestrictionsForEquivalentItem( + in template (value) PLMNIdentity p_plmnIdentity, + in template (value) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type, + in template (omit) CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := omit + ) := { + plmnIdentity := p_plmnIdentity, + cn_Type := p_cn_Type, + iE_Extensions := p_iE_Extensions + } // End of template m_cNTypeRestrictionsForEquivalentItem + + template (value) CNTypeRestrictionsForServing m_cNTypeRestrictionsForServing(in CNTypeRestrictionsForServing p_value := epc_forbidden) := p_value; + + template (omit) CompletedCellsInEAI_EUTRA_Item m_completedCellsInEAI_EUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (omit) CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_completedCellsInEAI_EUTRA_Item + + template (omit) CompletedCellsInEAI_NR_Item m_completedCellsInEAI_NR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (omit) CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_completedCellsInEAI_NR_Item + + template (omit) CompletedCellsInTAI_EUTRA_Item m_completedCellsInTAI_EUTRA_Item( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (omit) CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_completedCellsInTAI_EUTRA_Item + + template (omit) CompletedCellsInTAI_NR_Item m_completedCellsInTAI_NR_Item( + in template (value) NR_CGI p_nR_CGI, + in template (omit) CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_completedCellsInTAI_NR_Item + + template (value) ConcurrentWarningMessageInd m_concurrentWarningMessageInd(in ConcurrentWarningMessageInd p_value := true_) := p_value; + template (value) ConfidentialityProtectionIndication m_confidentialityProtectionIndication(in ConfidentialityProtectionIndication p_value := required) := p_value; + template (value) ConfidentialityProtectionResult m_confidentialityProtectionResult(in ConfidentialityProtectionResult p_value := performed) := p_value; + template (value) ConfiguredTACIndication m_configuredTACIndication(in ConfiguredTACIndication p_value := true_) := p_value; + + template (omit) CoreNetworkAssistanceInformationForInactive m_coreNetworkAssistanceInformationForInactive( + in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, + in template (value) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer, + in template (value) TAIListForInactive p_tAIListForInactive, + in template (omit) PagingDRX p_uESpecificDRX := omit, + in template (omit) MICOModeIndication p_mICOModeIndication := omit, + in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, + in template (omit) CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := omit + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + uESpecificDRX := p_uESpecificDRX, + periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, + mICOModeIndication := p_mICOModeIndication, + tAIListForInactive := p_tAIListForInactive, + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template m_coreNetworkAssistanceInformationForInactive + + template (value) CoreNetworkAssistanceInformationForInactive.iE_Extensions m_coreNetworkAssistanceInformationForInactive_paging( + in template (value) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation, + in template (value) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue, + in template (value) UERadioCapabilityForPaging p_uERadioCapabilityForPaging, + in template (value) MicoAllPLMN p_micoAllPLMN + ) := { + { + id := id_EUTRA_PagingeDRXInformation, + criticality := ignore, + extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } + }, + { + id := id_ExtendedUEIdentityIndexValue, + criticality := ignore, + extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } + }, + { + id := id_UERadioCapabilityForPaging, + criticality := ignore, + extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } + }, + { + id := id_MicoAllPLMN, + criticality := ignore, + extensionValue := { MicoAllPLMN := p_micoAllPLMN } + } + // TODO To be enhanced + } // End of template m_coreNetworkAssistanceInformationForInactive_paging + + template (omit) COUNTValueForPDCP_SN12 m_cOUNTValueForPDCP_SN12( + in template (value) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12, + in template (value) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12, + in template (omit) COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := omit + ) := { + pDCP_SN12 := p_pDCP_SN12, + hFN_PDCP_SN12 := p_hFN_PDCP_SN12, + iE_Extensions := p_iE_Extensions + } // End of template m_cOUNTValueForPDCP_SN12 + + template (omit) COUNTValueForPDCP_SN18 m_cOUNTValueForPDCP_SN18( + in template (value) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18, + in template (value) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18, + in template (omit) COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := omit + ) := { + pDCP_SN18 := p_pDCP_SN18, + hFN_PDCP_SN18 := p_hFN_PDCP_SN18, + iE_Extensions := p_iE_Extensions + } // End of template m_cOUNTValueForPDCP_SN18 + + template (value) CPTransportLayerInformation m_cPTransportLayerInformation_endpointIPAddress( + in template (value) TransportLayerAddress p_endpointIPAddress := PX_TRANSPORT_LAYER_ADDRESS + ) := { + endpointIPAddress := p_endpointIPAddress + } // End of template m_cPTransportLayerInformation_endpointIPAddress + + template (value) CPTransportLayerInformation m_cPTransportLayerInformation_choice_Extensions( + in template (value) CPTransportLayerInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_cPTransportLayerInformation_choice_Extensions + + template (value) CPTransportLayerInformation.choice_Extensions m_cPTransportLayerInformation_ext( + in template (value) EndpointIPAddressAndPort p_EndpointIPAddressAndPort + ) := { + id := id_EndpointIPAddressAndPort, + criticality := reject, + value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } + } // End of template m_cPTransportLayerInformation_ext + + template (omit) CriticalityDiagnostics m_criticalityDiagnostics( + in template (omit) ProcedureCode p_procedureCode := omit, + in template (omit) TriggeringMessage p_triggeringMessage := omit, + in template (omit) Criticality p_procedureCriticality := omit, + in template (omit) CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := omit, + in template (omit) CriticalityDiagnostics.iE_Extensions p_iE_Extensions := omit + ) := { + procedureCode := p_procedureCode, + triggeringMessage := p_triggeringMessage, + procedureCriticality := p_procedureCriticality, + iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, + iE_Extensions := p_iE_Extensions + } // End of template m_criticalityDiagnostics + + template (omit) CriticalityDiagnostics_IE_Item m_criticalityDiagnostics_IE_Item( + in template (value) Criticality p_iECriticality, + in template (value) ProtocolIE_ID p_iE_ID, + in template (value) TypeOfError p_typeOfError, + in template (omit) CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := omit + ) := { + iECriticality := p_iECriticality, + iE_ID := p_iE_ID, + typeOfError := p_typeOfError, + iE_Extensions := p_iE_Extensions + } // End of template m_criticalityDiagnostics_IE_Item + + template (omit) CellBasedMDT_NR m_cellBasedMDT_NR( + in template (value) CellIdListforMDT_NR p_cellIdListforMDT, + in template (omit) CellBasedMDT_NR.iE_Extensions p_iE_Extensions + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_cellBasedMDT_NR + + template (omit) CellBasedMDT_EUTRA m_cellBasedMDT_EUTRA( + in template (value) CellIdListforMDT_EUTRA p_cellIdListforMDT, + in template (omit) CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_cellBasedMDT_EUTRA + + template (omit) CellBasedQMC m_cellBasedQMC( + in template (value) CellIdListforQMC p_cellIdListforQMC, + in template (omit) CellBasedQMC.iE_Extensions p_iE_Extensions + ) := { + cellIdListforQMC := p_cellIdListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template m_cellBasedQMC + + template (value) DataForwardingNotPossible m_dataForwardingNotPossible(in DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; + + template (value) DataForwardingAccepted m_dataForwardingAccepted(in DataForwardingAccepted p_value := data_forwarding_accepted) := p_value; + + template (omit) DataForwardingResponseDRBItem m_dataForwardingResponseDRBItem( + in template (value) DRB_ID p_dRB_ID, + in template (omit) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := omit, + in template (omit) UPTransportLayerInformation p_uLForwardingUP_TNLInformation := omit, + in template (omit) DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := omit + ) := { + dRB_ID := p_dRB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_dataForwardingResponseDRBItem + + template (omit) DAPSRequestInfo m_dAPSRequestInfo( + in template (value) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, + in template (omit) DAPSRequestInfo.iE_Extensions p_iE_Extensions := omit + ) := { + dAPSIndicator := p_dAPSIndicator, + iE_Extensions := p_iE_Extensions + } // End of template m_dAPSRequestInfo + + template (omit) DAPSResponseInfoItem m_dAPSResponseInfoItem( + in template (value) DRB_ID p_dRB_ID, + in template (value) DAPSResponseInfo p_dAPSResponseInfo, + in template (omit) DAPSResponseInfoItem.iE_Extension p_iE_Extension := omit + ) := { + dRB_ID := p_dRB_ID, + dAPSResponseInfo := p_dAPSResponseInfo, + iE_Extension := p_iE_Extension + } // End of template m_dAPSResponseInfoItem + + template (omit) DAPSResponseInfo m_dAPSResponseInfo( + in template (value) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator, + in template (omit) DAPSResponseInfo.iE_Extensions p_iE_Extensions := omit + ) := { + dapsresponseindicator := p_dapsresponseindicator, + iE_Extensions := p_iE_Extensions + } // End of template m_dAPSResponseInfo + + template (omit) DataForwardingResponseERABListItem m_DataForwardingResponseERABListItem( + in template (value) E_RAB_ID p_e_RAB_ID, + in template (value) UPTransportLayerInformation p_dLForwardingUP_TNLInformation, + in template (omit) DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := omit + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_DataForwardingResponseERABListItem + + template (value) DelayCritical m_delayCritical(in DelayCritical p_value) := p_value; + + template (omit) DL_CP_SecurityInformation m_dL_CP_SecurityInformation( + in template (value) DL_NAS_MAC p_dl_NAS_MAC := PX_DL_NAS_MAC, + in template (omit) DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + dl_NAS_MAC := p_dl_NAS_MAC, + iE_Extensions := p_iE_Extensions + } // End of template m_dL_CP_SecurityInformation + + template (value) DLForwarding m_dLForwarding(in DLForwarding p_value := dl_forwarding_proposed) := p_value; + + template (value) DL_NGU_TNLInformationReused m_dL_NGU_TNLInformationReused(in DL_NGU_TNLInformationReused p_value := true_) := p_value; + + template (value) DirectForwardingPathAvailability m_directForwardingPathAvailability(in DirectForwardingPathAvailability p_value := direct_path_available) := p_value; + + template (omit) DRBsSubjectToStatusTransferItem m_dRBsSubjectToStatusTransferItem( + in template (value) DRB_ID p_dRB_ID, + in template (value) DRBStatusUL p_dRBStatusUL, + in template (value) DRBStatusDL p_dRBStatusDL, + in template (omit) DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := omit + ) := { + dRB_ID := p_dRB_ID, + dRBStatusUL := p_dRBStatusUL, + dRBStatusDL := p_dRBStatusDL, + iE_Extension := p_iE_Extension + } // End of template m_dRBsSubjectToStatusTransferItem + + template (value) DRBsSubjectToStatusTransferItem.iE_Extension m_dRBsSubjectToStatusTransferItem_associatedQosFlowList( + in template (value) AssociatedQosFlowList p_associatedQosFlowList + ) := { + { + id := id_OldAssociatedQosFlowList_ULendmarkerexpected, + criticality := ignore, + extensionValue := { AssociatedQosFlowList := p_associatedQosFlowList } + } + } // End of template m_dRBsSubjectToStatusTransferItem_associatedQosFlowList + + template (value) DRBStatusDL m_dRBStatusDL_dRBStatusDL12( + in template (value) DRBStatusDL12 p_dRBStatusDL12 + ) := { + dRBStatusDL12 := p_dRBStatusDL12 + } // End of template m_dRBStatusDL_dRBStatusDL12 + + template (value) DRBStatusDL m_dRBStatusDL_dRBStatusDL18( + in template (value) DRBStatusDL18 p_dRBStatusDL18 + ) := { + dRBStatusDL18 := p_dRBStatusDL18 + } // End of template m_dRBStatusDL_dRBStatusDL18 + + template (value) DRBStatusDL m_dRBStatusDL_choice_Extensions( + in template (value) DRBStatusDL.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_dRBStatusDL_choice_Extensions // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); + + template (omit) DRBStatusDL12 m_dRBStatusDL12( + in template (value) COUNTValueForPDCP_SN12 p_dL_COUNTValue, + in template (omit) DRBStatusDL12.iE_Extension p_iE_Extension := omit + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template m_dRBStatusDL12 + + template (omit) DRBStatusDL18 m_dRBStatusDL18( + in template (value) COUNTValueForPDCP_SN18 p_dL_COUNTValue, + in template (omit) DRBStatusDL18.iE_Extension p_iE_Extension := omit + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template m_dRBStatusDL18 + + template (value) DRBStatusUL m_dRBStatusUL_dRBStatusUL12( + in template (value) DRBStatusUL12 p_dRBStatusUL12 + ) := { + dRBStatusUL12 := p_dRBStatusUL12 + } // End of template m_dRBStatusUL_dRBStatusUL12 + + template (value) DRBStatusUL m_dRBStatusUL_dRBStatusUL18( + in template (value) DRBStatusUL18 p_dRBStatusUL18 + ) := { + dRBStatusUL18 := p_dRBStatusUL18 + } // End of template m_dRBStatusUL_dRBStatusUL18 + + template (value) DRBStatusUL m_dRBStatusUL_choice_Extensions( + in template (value) DRBStatusUL.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_dRBStatusUL_choice_Extensions + + template (omit) DRBStatusUL12 m_dRBStatusUL12( + in template (value) COUNTValueForPDCP_SN12 p_uL_COUNTValue, + in template (omit) DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := omit, + in template (omit) DRBStatusUL12.iE_Extension p_iE_Extension := omit + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template m_dRBStatusUL12 + + template (omit) DRBStatusUL18 m_dRBStatusUL18( + in template (value) COUNTValueForPDCP_SN18 p_uL_COUNTValue, + in template (omit) DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := omit, + in template (omit) DRBStatusUL18.iE_Extension p_iE_Extension := omit + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template m_dRBStatusUL18 + + template (omit) DRBsToQosFlowsMappingItem m_dRBsToQosFlowsMappingItem( + in template (value) DRB_ID p_dRB_ID, + in template (value) AssociatedQosFlowList p_associatedQosFlowList, + in template (omit) DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := omit + ) := { + dRB_ID := p_dRB_ID, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template m_dRBsToQosFlowsMappingItem + + template (value) DRBsToQosFlowsMappingItem.iE_Extensions m_dRBsToQosFlowsMappingItem_dAPSRequestInfo( + in template (value) DAPSRequestInfo p_dAPSRequestInfo + ) := { + { + id := id_DAPSRequestInfo, + criticality := ignore, + extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } + } + } // End of template m_dRBsToQosFlowsMappingItem_dAPSRequestInfo + + template (omit) Dynamic5QIDescriptor m_dynamic5QIDescriptor( + in template (value) PriorityLevelQos p_priorityLevelQos, + in template (value) PacketDelayBudget p_packetDelayBudget, + in template (value) PacketErrorRate p_packetErrorRate, + in template (omit) FiveQI p_fiveQI := omit, + in template (omit) DelayCritical p_delayCritical := omit, + in template (omit) AveragingWindow p_averagingWindow := omit, + in template (omit) MaximumDataBurstVolume p_maximumDataBurstVolume := omit, + in template (omit) Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := omit + ) := { + priorityLevelQos := p_priorityLevelQos, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + fiveQI := p_fiveQI, + delayCritical := p_delayCritical, + // The above IE shall be present in case of GBR QoS flow + averagingWindow := p_averagingWindow, + // The above IE shall be present in case of GBR QoS flow + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template m_dynamic5QIDescriptor + + template (value) Dynamic5QIDescriptor.iE_Extensions m_dynamic5QIDescriptor_extendedPacketDelayBudget( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_ExtendedPacketDelayBudget, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_dynamic5QIDescriptor_extendedPacketDelayBudget + + template (value) Dynamic5QIDescriptor.iE_Extensions m_dynamic5QIDescriptor_cNPacketDelayBudgetDL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_dynamic5QIDescriptor_cNPacketDelayBudgetDL + + template (value) Dynamic5QIDescriptor.iE_Extensions m_dynamic5QIDescriptor_cNPacketDelayBudgetUL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_dynamic5QIDescriptor_cNPacketDelayBudgetUL + + template (value) EarlyMeasurement m_earlyMeasurement(in EarlyMeasurement p_value := true_) := p_value; + + template (omit) EarlyStatusTransfer_TransparentContainer m_earlyStatusTransfer_TransparentContainer( + in template (value) ProcedureStageChoice p_procedureStage, + in template (omit) EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := omit + ) := { + procedureStage := p_procedureStage, + iE_Extensions := p_iE_Extensions + } // End of template m_earlyStatusTransfer_TransparentContainer + + template (value) ProcedureStageChoice m_procedureStageChoice_firstDLCount( + in template (value) FirstDLCount p_firstDLCount + ) := { + first_dl_count := p_firstDLCount + } // End of template m_procedureStageChoice_firstDLCount + + template (value) ProcedureStageChoice m_procedureStageChoice_choice_Extensions( + in template (value) ProcedureStageChoice.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_procedureStageChoice_choice_Extensions + + template (omit) FirstDLCount m_firstDLCount( + in template (value) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer, + in template (omit) FirstDLCount.iE_Extension p_iE_Extension := omit + ) := { + dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, + iE_Extension := p_iE_Extension + } // End of template m_firstDLCount + + template (omit) DRBsSubjectToEarlyStatusTransfer_Item m_dRBsSubjectToEarlyStatusTransfer_Item( + in template (value) DRB_ID p_dRB_ID, + in template (value) DRBStatusDL p_firstDLCOUNT, + in template (omit) DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := omit + ) := { + dRB_ID := p_dRB_ID, + firstDLCOUNT := p_firstDLCOUNT, + iE_Extension := p_iE_Extension + } // End of template m_dRBsSubjectToEarlyStatusTransfer_Item + + template (value) EDT_Session m_eDT_Session(in EDT_Session p_value := true_) := p_value; + + template (omit) EmergencyAreaIDBroadcastEUTRA_Item m_emergencyAreaIDBroadcastEUTRA_Item( + in template (value) EmergencyAreaID p_emergencyAreaID, + in template (value) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA, + in template (omit) EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyAreaIDBroadcastEUTRA_Item + + template (omit) EmergencyAreaIDBroadcastNR_Item m_emergencyAreaIDBroadcastNR_Item( + in template (value) EmergencyAreaID p_emergencyAreaID, + in template (value) CompletedCellsInEAI_NR p_completedCellsInEAI_NR, + in template (omit) EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_NR := p_completedCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyAreaIDBroadcastNR_Item + + template (omit) EmergencyAreaIDCancelledEUTRA_Item m_emergencyAreaIDCancelledEUTRA_Item( + in template (value) EmergencyAreaID p_emergencyAreaID, + in template (value) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA, + in template (omit) EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyAreaIDCancelledEUTRA_Item + + template (omit) EmergencyAreaIDCancelledNR_Item m_emergencyAreaIDCancelledNR_Item( + in template (value) EmergencyAreaID p_emergencyAreaID, + in template (value) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR, + in template (omit) EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyAreaIDCancelledNR_Item + + template (omit) EmergencyFallbackIndicator m_emergencyFallbackIndicator( + in template (value) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator, + in template (omit) EmergencyServiceTargetCN p_emergencyServiceTargetCN := omit, + in template (omit) EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := omit + ) := { + emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, + emergencyServiceTargetCN := p_emergencyServiceTargetCN, + iE_Extensions := p_iE_Extensions + } // End of template m_emergencyFallbackIndicator + + template (value) EmergencyFallbackRequestIndicator m_emergencyFallbackRequestIndicator(in EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; + + template (value) EmergencyServiceTargetCN m_emergencyServiceTargetCN(in EmergencyServiceTargetCN p_value := fiveGC) := p_value; + + template (value) ENB_ID m_eNB_ID_macroENB_ID( + in template (value) Bit20 p_macroENB_ID + ) := { + macroENB_ID := p_macroENB_ID + } // End of template m_eNB_ID_macroENB_ID + + template (value) ENB_ID m_eNB_ID_homeENB_ID( + in template (value) Bit28 p_homeENB_ID + ) := { + homeENB_ID := p_homeENB_ID + } // End of template m_eNB_ID_homeENB_ID + + template (value) ENB_ID m_eNB_ID_short_macroENB_ID( + in template (value) Bit18 p_short_macroENB_ID + ) := { + short_macroENB_ID := p_short_macroENB_ID + } // End of template m_eNB_ID_short_macroENB_ID + + template (value) ENB_ID m_eNB_ID_long_macroENB_ID( + in template (value) Bit21 p_long_macroENB_ID + ) := { + long_macroENB_ID := p_long_macroENB_ID + } // End of template m_eNB_ID_long_macroENB_ID + + template (value) ENB_ID m_eNB_ID_choice_Extensions( + in template (value) ENB_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_eNB_ID_choice_Extensions + + template (value) Enhanced_CoverageRestriction m_enhanced_CoverageRestriction(in Enhanced_CoverageRestriction p_value := restricted) := p_value; + + template (omit) EndpointIPAddressAndPort m_endpointIPAddressAndPort( + in template (value) TransportLayerAddress p_endpointIPAddress := PX_TRANSPORT_LAYER_ADDRESS, + in template (value) PortNumber p_portNumber, + in template (omit) EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := omit + ) := { + endpointIPAddress := p_endpointIPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template m_endpointIPAddressAndPort + + template (value) EndIndication m_endIndication(in EndIndication p_value := no_further_data) := p_value; + + template (omit) EPS_TAI m_ePS_TAI( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) EPS_TAC p_ePS_TAC, + in template (omit) EPS_TAI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + ePS_TAC := p_ePS_TAC, + iE_Extensions := p_iE_Extensions + } // End of template m_ePS_TAI + + template (omit) E_RABInformationItem m_e_RABInformationItem( + in template (value) E_RAB_ID p_e_RAB_ID, + in template (value) DLForwarding p_dLForwarding, + in template (omit) E_RABInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwarding := p_dLForwarding, + iE_Extensions := p_iE_Extensions + } // End of template m_e_RABInformationItem + + template (omit) E_RABInformationItem.iE_Extensions m_e_RABInformationItem_id_SourceTNLAddrInfo( + in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template m_e_RABInformationItem_id_SourceTNLAddrInfo + + template (omit) E_RABInformationItem.iE_Extensions m_e_RABInformationItem_id_SourceNodeTNLAddrInfo( + in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS + ) := { + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template m_e_RABInformationItem_id_SourceNodeTNLAddrInfo + + template (omit) EUTRA_CGI m_uUTRA_CGI( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) EUTRACellIdentity p_eUTRACellIdentity := PX_EUTRA_CELL_IDENTITY, + in template (omit) EUTRA_CGI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + eUTRACellIdentity := p_eUTRACellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template m_uUTRA_CGI + + template (omit) EUTRA_PagingeDRXInformation m_eUTRA_PagingeDRXInformation( + in template (value) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle, + in template (omit) EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := omit, + in template (omit) EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, + eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRA_PagingeDRXInformation + + template (value) EUTRA_Paging_eDRX_Cycle m_eUTRA_Paging_eDRX_Cycle(in EUTRA_Paging_eDRX_Cycle p_value := hfhalf) := p_value; + + template (value) EUTRA_Paging_Time_Window m_eUTRA_Paging_Time_Window(in EUTRA_Paging_Time_Window p_value := s1) := p_value; + + template (value) EventType m_eventType(in EventType p_value := direct) := p_value; + + template (omit) ExcessPacketDelayThresholdItem m_excessPacketDelayThresholdItem( + in template (value) FiveQI p_fiveQi, + in template (value) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue, + in template (omit) ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := omit + ) := { + fiveQi := p_fiveQi, + excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, + iE_Extensions := p_iE_Extensions + } // End of template m_excessPacketDelayThresholdItem + + template (value) ExcessPacketDelayThresholdValue m_excessPacketDelayThresholdValue(in ExcessPacketDelayThresholdValue p_value := ms0dot25) := p_value; + + template (value) ExpectedHOInterval m_expectedHOInterval(in ExpectedHOInterval p_value := sec15) := p_value; + + template (omit) ExpectedUEActivityBehaviour m_expectedUEActivityBehaviour( + in template (omit) ExpectedActivityPeriod p_expectedActivityPeriod := omit, + in template (omit) ExpectedIdlePeriod p_expectedIdlePeriod := omit, + in template (omit) SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := omit, + in template (omit) ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := omit + ) := { + expectedActivityPeriod := p_expectedActivityPeriod, + expectedIdlePeriod := p_expectedIdlePeriod, + sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEActivityBehaviour + + template (omit) ExpectedUEBehaviour m_expectedUEBehaviour( + in template (omit) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := omit, + in template (omit) ExpectedHOInterval p_expectedHOInterval := omit, + in template (omit) ExpectedUEMobility p_expectedUEMobility := omit, + in template (omit) ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= omit, + in template (omit) ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := omit + ) := { + expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, + expectedHOInterval := p_expectedHOInterval, + expectedUEMobility := p_expectedUEMobility, + expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEBehaviour + + template (value) ExpectedUEMobility m_expectedUEMobility(in ExpectedUEMobility p_value := mobile) := p_value; + + template (omit) ExpectedUEMovingTrajectoryItem m_expectedUEMovingTrajectoryItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (omit) ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := omit, + in template (omit) ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEMovingTrajectoryItem + + template (omit) Extended_AMFName m_extended_AMFName( + in template (omit) AMFNameVisibleString p_aMFNameVisibleString := omit, + in template (omit) AMFNameUTF8String p_aMFNameUTF8String := omit, + in template (omit) Extended_AMFName.iE_Extensions p_iE_Extensions := omit + ) := { + aMFNameVisibleString := p_aMFNameVisibleString, + aMFNameUTF8String := p_aMFNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template m_extended_AMFName + + template (omit) Extended_RANNodeName m_extended_RANNodeName( + in template (omit) RANNodeNameVisibleString p_rANNodeNameVisibleString := omit, + in template (omit) RANNodeNameUTF8String p_rANNodeNameUTF8String := omit, + in template (omit) Extended_RANNodeName.iE_Extensions p_iE_Extensions := omit + ) := { + rANNodeNameVisibleString := p_rANNodeNameVisibleString, + rANNodeNameUTF8String := p_rANNodeNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template m_extended_RANNodeName + + template (omit) ExtendedRATRestrictionInformation m_extendedRATRestrictionInformation( + in template (value) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction, + in template (value) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction, + in template (omit) ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := omit + ) := { + primaryRATRestriction := p_primaryRATRestriction, + secondaryRATRestriction := p_secondaryRATRestriction, + iE_Extensions := p_iE_Extensions + } // End of template m_extendedRATRestrictionInformation + + template (value) EventTrigger m_eventTrigger_outOfCoverage( + in template (value) EventTrigger.outOfCoverage p_outOfCoverage := true_ + ) := { + outOfCoverage := p_outOfCoverage + } // End of template m_eventTrigger_outOfCoverage + + template (value) EventTrigger m_eventTrigger_eventL1LoggedMDTConfig( + in template (value) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig + ) := { + eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig + } // End of template m_eventTrigger_eventL1LoggedMDTConfig + + template (value) EventTrigger m_eventTrigger_choice_Extensions( + in template (value) EventTrigger.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_eventTrigger_choice_Extensions + + template (omit) EventL1LoggedMDTConfig m_eventL1LoggedMDTConfig( + in template (value) MeasurementThresholdL1LoggedMDT p_l1Threshold, + in template (value) Hysteresis p_hysteresis, + in template (value) TimeToTrigger p_timeToTrigger, + in template (omit) EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := omit + ) := { + l1Threshold := p_l1Threshold, + hysteresis := p_hysteresis, + timeToTrigger := p_timeToTrigger, + iE_Extensions := p_iE_Extensions + } // End of template m_eventL1LoggedMDTConfig + + template (value) MeasurementThresholdL1LoggedMDT m_measurementThresholdL1LoggedMDT_threshold_RSRP( + in template (value) Threshold_RSRP p_threshold_RSRP + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template m_measurementThresholdL1LoggedMDT_threshold_RSRP + + template (value) MeasurementThresholdL1LoggedMDT m_measurementThresholdL1LoggedMDT_threshold_RSRQ( + in template (value) Threshold_RSRQ p_threshold_RSRQ + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template m_measurementThresholdL1LoggedMDT_threshold_RSRQ + + template (value) MeasurementThresholdL1LoggedMDT m_measurementThresholdL1LoggedMDT_choice_Extensions( + in template (value) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_measurementThresholdL1LoggedMDT_choice_Extensions + + template (omit) FailureIndication m_failureIndication( + in template (value) UERLFReportContainer p_uERLFReportContainer, + in template (omit) FailureIndication.iE_Extensions p_iE_Extensions := omit + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_failureIndication + + template (omit) FiveG_ProSeAuthorized m_FiveG_ProSeAuthorized( + in template (omit) FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := omit, + in template (omit) FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := omit, + in template (omit) FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := omit, + in template (omit) FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := omit, + in template (omit) FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := omit, + in template (omit) FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := omit + ) := { + fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, + fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, + fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, + fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, + fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, + iE_Extensions := p_iE_Extensions + } // End of template m_FiveG_ProSeAuthorized + + template (value) FiveGProSeDirectDiscovery m_fiveGProSeDirectDiscovery(in FiveGProSeDirectDiscovery p_value := authorized) := p_value; + + template (value) FiveGProSeDirectCommunication m_fiveGProSeDirectCommunication(in FiveGProSeDirectCommunication p_value := authorized) := p_value; + + template (value) FiveGProSeLayer2UEtoNetworkRelay m_fiveGProSeLayer2UEtoNetworkRelay(in FiveGProSeLayer2UEtoNetworkRelay p_value := authorized) := p_value; + + template (value) FiveGProSeLayer3UEtoNetworkRelay m_fiveGProSeLayer3UEtoNetworkRelay(in FiveGProSeLayer3UEtoNetworkRelay p_value := authorized) := p_value; + + template (value) FiveGProSeLayer2RemoteUE m_fiveGProSeLayer2RemoteUE(in FiveGProSeLayer2RemoteUE p_value := authorized) := p_value; + + template (omit) FiveG_ProSePC5QoSParameters m_fiveG_ProSePC5QoSParameters( + in template (value) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList, + in template (omit) BitRate p_fiveGProSepc5LinkAggregateBitRates := omit, + in template (omit) FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := omit + ) := { + fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, + fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template m_fiveG_ProSePC5QoSParameters + + template (omit) FiveGProSePC5QoSFlowItem m_fiveGProSePC5QoSFlowItem( + in template (value) FiveQI p_fiveGproSepQI, + in template (omit) FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := omit, + in template (omit) Range p_fiveGproSerange := omit, + in template (omit) FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := omit + ) := { + fiveGproSepQI := p_fiveGproSepQI, + fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, + fiveGproSerange := p_fiveGproSerange, + iE_Extensions := p_iE_Extensions + } // End of template m_fiveGProSePC5QoSFlowItem + + template (omit) FiveGProSePC5FlowBitRates m_fiveGProSePC5FlowBitRates( + in template (value) BitRate p_fiveGproSeguaranteedFlowBitRate, + in template (value) BitRate p_fiveGproSemaximumFlowBitRate, + in template (omit) FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := omit + ) := { + fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, + fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template m_fiveGProSePC5FlowBitRates + + template (omit) FiveG_S_TMSI m_fiveG_S_TMSI( + in template (value) AMFSetID p_aMFSetID := PX_AMF_SET_ID, + in template (value) AMFPointer p_aMFPointer := PX_AMF_POINTER, + in template (value) FiveG_TMSI p_fiveG_TMSI, + in template (omit) FiveG_S_TMSI.iE_Extensions p_iE_Extensions := omit + ) := { + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + fiveG_TMSI := p_fiveG_TMSI, + iE_Extensions := p_iE_Extensions + } // End of template m_fiveG_S_TMSI + + template (omit) ForbiddenAreaInformation_Item m_forbiddenAreaInformation_Item( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) ForbiddenTACs p_forbiddenTACs, + in template (omit) ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + forbiddenTACs := p_forbiddenTACs, + iE_Extensions := p_iE_Extensions + } // End of template m_forbiddenAreaInformation_Item + + template (omit) FromEUTRANtoNGRAN m_fromEUTRANtoNGRAN( + in template (value) IntersystemSONeNBID p_sourceeNBID, + in template (value) IntersystemSONNGRANnodeID p_targetNGRANnodeID, + in template (omit) FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := omit + ) := { + sourceeNBID := p_sourceeNBID, + targetNGRANnodeID := p_targetNGRANnodeID, + iE_Extensions := p_iE_Extensions + } // End of template m_fromEUTRANtoNGRAN + + template (omit) FromNGRANtoEUTRAN m_fromNGRANtoEUTRAN( + in template (value) IntersystemSONNGRANnodeID p_sourceNGRANnodeID, + in template (value) IntersystemSONeNBID p_targeteNBID, + in template (omit) FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := omit + ) := { + sourceNGRANnodeID := p_sourceNGRANnodeID, + targeteNBID := p_targeteNBID, + iE_Extensions := p_iE_Extensions + } // End of template m_fromNGRANtoEUTRAN + + template (omit) GBR_QosInformation m_gBR_QosInformation( + in template (value) BitRate p_maximumFlowBitRateDL, + in template (value) BitRate p_maximumFlowBitRateUL, + in template (value) BitRate p_guaranteedFlowBitRateDL, + in template (value) BitRate p_guaranteedFlowBitRateUL, + in template (omit) NotificationControl p_notificationControl := omit, + in template (omit) PacketLossRate p_maximumPacketLossRateDL := omit, + in template (omit) PacketLossRate p_maximumPacketLossRateUL := omit, + in template (omit) GBR_QosInformation.iE_Extensions p_iE_Extensions := omit + ) := { + maximumFlowBitRateDL := p_maximumFlowBitRateDL, + maximumFlowBitRateUL := p_maximumFlowBitRateUL, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + notificationControl := p_notificationControl, + maximumPacketLossRateDL := p_maximumPacketLossRateDL, + maximumPacketLossRateUL := p_maximumPacketLossRateUL, + iE_Extensions := p_iE_Extensions + } // End of template m_gBR_QosInformation + + template (value) GBR_QosInformation.iE_Extensions m_gBR_QosInformation_id_AlternativeQoSParaSetList( + in template (value) AlternativeQoSParaSetList p_alternativeQoSParaSetList + ) := { + { + id := id_AlternativeQoSParaSetList, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} + } + } // End of template m_gBR_QosInformation_id_AlternativeQoSParaSetList + + template (omit) GlobalCable_ID_new m_globalCable_ID_new( + in template (value) GlobalCable_ID p_globalCable_ID, + in template (value) TAI p_tAI, + in template (omit) GlobalCable_ID_new.iE_Extensions p_iE_Extensions := omit + ) := { + globalCable_ID := p_globalCable_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_globalCable_ID_new + + template (omit) GlobalGNB_ID m_ie_globalGnbId( + in template (value) PLMNIdentity p_plmnId := PX_PLMN_IDENTITY, + in template (value) bitstring p_gnbId, + in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_plmnId,//'010001'O, + gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_globalGnbId + + template (omit) GlobalN3IWF_ID m_globalN3IWF_ID( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) N3IWF_ID p_n3IWF_ID, + in template (omit) GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + n3IWF_ID := p_n3IWF_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_globalN3IWF_ID + + template (omit) GlobalLine_ID m_globalLine_ID( + in template (value) GlobalLineIdentity p_globalLineIdentity, + in template (omit) LineType p_lineType := omit, + in template (omit) GlobalLine_ID.iE_Extensions p_iE_Extensions := omit + ) := { + globalLineIdentity := p_globalLineIdentity, + lineType := p_lineType, + iE_Extensions := p_iE_Extensions + } // End of template m_globalLine_ID + + template (value) GlobalLine_ID.iE_Extensions m_globalLine_ID_id_TAI(in template (value) TAI p_tAI) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template m_globalLine_ID_id_TAI + + template (omit) GlobalNgENB_ID m_globalNgENB_ID( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) NgENB_ID p_ngENB_ID, + in template (omit) GlobalNgENB_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + ngENB_ID := p_ngENB_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_globalNgENB_ID + + template (value) GlobalRANNodeID m_globalRANNodeID_globalGNB_ID( + in template (value) GlobalGNB_ID p_globalGNB_ID + ) := { + globalGNB_ID := p_globalGNB_ID + } // End of template m_globalRANNodeID_globalGNB_ID + + template (value) GlobalRANNodeID m_globalRANNodeID_globalNgENB_ID( + in template (value) GlobalNgENB_ID p_globalNgENB_ID + ) := { + globalNgENB_ID := p_globalNgENB_ID + } // End of template m_globalRANNodeID_globalNgENB_ID + + template (value) GlobalRANNodeID m_globalRANNodeID_globalN3IWF_ID( + in template (value) GlobalN3IWF_ID p_globalN3IWF_ID + ) := { + globalN3IWF_ID := p_globalN3IWF_ID + } // End of template m_globalRANNodeID_globalN3IWF_ID + + template (value) GlobalRANNodeID m_globalRANNodeID_choice_Extensions( + in template (value) GlobalRANNodeID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_globalRANNodeID_choice_Extensions + + template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_id_GlobalTNGF_ID( + in template (value) GlobalTNGF_ID p_globalTNGF_ID + ) := { + id := id_GlobalTNGF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTNGF_ID } + } // End of template m_globalRANNodeID_id_GlobalTNGF_ID + + template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_id_GlobalTWIF_ID( + in template (value) GlobalTNGF_ID p_globalTWIF_ID + ) := { + id := id_GlobalTWIF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTWIF_ID } + } // End of template m_globalRANNodeID_id_GlobalTWIF_ID + + template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_id_GlobalW_AGF_ID( + in template (value) GlobalW_AGF_ID p_globalW_AGF_ID + ) := { + id := id_GlobalW_AGF_ID, + criticality := reject, + value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } + } // End of template m_globalRANNodeID_id_GlobalW_AGF_ID + + // template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_all( + // in template (value) GlobalTNGF_ID p_globalTNGF_ID, + // in template (value) GlobalTWIF_ID p_globalTWIF_ID, + // in template (value) GlobalW_AGF_ID p_globalW_AGF_ID + // ) := { + // { + // id := id_GlobalTNGF_ID, + // criticality := reject, + // value_ := { GlobalTNGF_ID := p_globalTNGF_ID } + // }, + // { + // id := id_GlobalTWIF_ID, + // criticality := reject, + // value_ := { GlobalTNGF_ID := p_globalTWIF_ID } + // }, + // { + // id := id_GlobalW_AGF_ID, + // criticality := reject, + // value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } + // } + // } // End of template m_globalRANNodeID_all + + template (omit) GlobalTNGF_ID m_globalTNGF_ID( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) TNGF_ID p_tNGF_ID, + in template (omit) GlobalTNGF_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + tNGF_ID := p_tNGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_globalTNGF_ID + + template (omit) GlobalTWIF_ID m_globalTWIF_ID( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) TWIF_ID p_tWIF_ID, + in template (omit) GlobalTWIF_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + tWIF_ID := p_tWIF_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_globalTWIF_ID + + template (omit) GlobalW_AGF_ID m_GlobalW_AGF_ID( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) W_AGF_ID p_w_AGF_ID, + in template (omit) GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + w_AGF_ID := p_w_AGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_GlobalW_AGF_ID + + template (value) GNB_ID m_gNB_ID_gNB_ID( + in template (value) GNB_ID.gNB_ID p_gNB_ID + ) := { + gNB_ID := p_gNB_ID + } // End of template m_gNB_ID_gNB_ID + + template (value) GNB_ID m_gNB_ID_choice_Extensions( + in template (value) GNB_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_gNB_ID_choice_Extensions + + template (omit) GTPTunnel m_gTPTunnel( + in template (value) TransportLayerAddress p_tla := PX_TRANSPORT_LAYER_ADDRESS, + in template (value) GTP_TEID p_gtp_teid := PX_GTP_TEID, + in template (omit) GTPTunnel.iE_Extensions p_iE_Extensions := omit + ):= { + transportLayerAddress := p_tla, + gTP_TEID := p_gtp_teid, + iE_Extensions := p_iE_Extensions + } // End of template m_gTPTunnel + + template (omit) GUAMI m_gUAMI( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) AMFRegionID p_aMFRegionID := PX_AMF_REGION_ID, + in template (value) AMFSetID p_aMFSetID := PX_AMF_SET_ID, + in template (value) AMFPointer p_aMFPointer := PX_AMF_POINTER, + in template (omit) GUAMI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + aMFRegionID := p_aMFRegionID, + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + iE_Extensions := p_iE_Extensions + } // End of template m_gUAMI + + template (value) GUAMIType m_gUAMIType(in GUAMIType p_val := native) := p_val; + + template (omit) HandoverCommandTransfer m_handoverCommandTransfer( + in template (omit) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := omit, + in template (omit) QosFlowToBeForwardedList p_qosFlowToBeForwardedList := omit, + in template (omit) DataForwardingResponseDRBList p_dataForwardingResponseDRBList := omit, + in template (omit) HandoverCommandTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template m_handoverCommandTransfer + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalDLForwardingUPTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_handoverCommandTransfer_id_ULForwardingUP_TNLInformation + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_DataForwardingResponseERABList( + in template (value) DataForwardingResponseERABList p_dataForwardingResponseERABList + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template m_handoverCommandTransfer_id_DataForwardingResponseERABList + + template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_QosFlowFailedToSetupList( + in template (value) QosFlowListWithCause p_qosFlowListWithCause + ) := { + { + id := id_QosFlowFailedToSetupList, + criticality := ignore, + extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template m_handoverCommandTransfer_id_QosFlowFailedToSetupList + + template (value) HandoverFlag m_handoverFlag(in HandoverFlag p_val := handover_preparation) := p_val; + + template (omit) HandoverPreparationUnsuccessfulTransfer m_mandoverPreparationUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_mandoverPreparationUnsuccessfulTransfer + + template (omit) HandoverRequestAcknowledgeTransfer m_handoverRequestAcknowledgeTransfer( + in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, + in template (value) QosFlowListWithDataForwarding p_qosFlowSetupResponseList, + in template (omit) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := omit, + in template (omit) SecurityResult p_securityResult := omit, + in template (omit) QosFlowListWithCause p_qosFlowFailedToSetupList := omit, + in template (omit) DataForwardingResponseDRBList p_dataForwardingResponseDRBList := omit, + in template (omit) HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + securityResult := p_securityResult, + qosFlowSetupResponseList := p_qosFlowSetupResponseList, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template m_handoverRequestAcknowledgeTransfer + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( + in template (value) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList + ) := { + { + id := id_AdditionalDLUPTNLInformationForHOList, + criticality := reject, + extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( + in template (value) DataForwardingResponseERABList p_dataForwardingResponseERABList + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( + in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID + + template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( + in template (value) MBS_SupportIndicator p_mBS_SupportIndicator + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template m_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator + + template (omit) HandoverRequiredTransfer m_handoverRequiredTransfer( + in template (omit) DirectForwardingPathAvailability p_directForwardingPathAvailability := omit, + in template (omit) HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + directForwardingPathAvailability := p_directForwardingPathAvailability, + iE_Extensions := p_iE_Extensions + } // End of template m_handoverRequiredTransfer + + template (omit) HandoverResourceAllocationUnsuccessfulTransfer m_handoverResourceAllocationUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_handoverResourceAllocationUnsuccessfulTransfer + + template (value) HandoverType m_handoverType(in HandoverType p_value := intra5gs) := p_value; + + template (omit) HFCNode_ID_new m_hFCNode_ID_new( + in template (value) HFCNode_ID p_hFCNode_ID, + in template (value) TAI p_tAI, + in template (omit) HFCNode_ID_new.iE_Extensions p_iE_Extensions := omit + ) := { + hFCNode_ID := p_hFCNode_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_hFCNode_ID_new + + template (omit) HOReport m_hOReport( + in template (value) HOReport.handoverReportType p_handoverReportType := ho_too_early, + in template (value) Cause p_handoverCause, + in template (value) NGRAN_CGI p_sourcecellCGI, + in template (value) NGRAN_CGI p_targetcellCGI, + in template (omit) NGRAN_CGI p_reestablishmentcellCGI, + in template (omit) Bit16 p_sourcecellC_RNTI := omit, + in template (omit) EUTRA_CGI p_targetcellinE_UTRAN := omit, + in template (omit) MobilityInformation p_mobilityInformation := omit, + in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, + in template (omit) HOReport.iE_Extensions p_iE_Extensions := omit + ) := { + handoverReportType := p_handoverReportType, + handoverCause := p_handoverCause, + sourcecellCGI := p_sourcecellCGI, + targetcellCGI := p_targetcellCGI, + reestablishmentcellCGI := p_reestablishmentcellCGI, + // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" + sourcecellC_RNTI := p_sourcecellC_RNTI, + targetcellinE_UTRAN := p_targetcellinE_UTRAN, + // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" + mobilityInformation := p_mobilityInformation, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_hOReport + + template (value) IAB_Authorized m_iAB_Authorized(in IAB_Authorized p_value := authorized) := p_value; + + template (value) IAB_Supported m_iAB_Supported(in IAB_Supported p_value := true_) := p_value; + + template (value) IABNodeIndication m_iABNodeIndication(in IABNodeIndication p_value := true_) := p_value; + + template (value) IMSVoiceSupportIndicator m_iMSVoiceSupportIndicator(in IMSVoiceSupportIndicator p_value := supported) := p_value; + + template (omit) InfoOnRecommendedCellsAndRANNodesForPaging m_infoOnRecommendedCellsAndRANNodesForPaging( + in template (value) RecommendedCellsForPaging p_recommendedCellsForPaging, + in template (value) RecommendedRANNodesForPaging p_recommendRANNodesForPaging, + in template (omit) InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + recommendRANNodesForPaging := p_recommendRANNodesForPaging, + iE_Extensions := p_iE_Extensions + } // End of template m_infoOnRecommendedCellsAndRANNodesForPaging + + template (value) IntegrityProtectionIndication m_integrityProtectionIndication(in IntegrityProtectionIndication p_value := required) := p_value; + + template (value) IntegrityProtectionResult m_integrityProtectionResult(in IntegrityProtectionResult p_value := performed) := p_value; + + template (omit) ImmediateMDTNr m_immediateMDTNr( + in template (value) MeasurementsToActivate p_measurementsToActivate, + in template (omit) M1Configuration p_m1Configuration := omit, + in template (omit) M4Configuration p_m4Configuration := omit, + in template (omit) M5Configuration p_m5Configuration := omit, + in template (omit) M6Configuration p_m6Configuration := omit, + in template (omit) M7Configuration p_m7Configuration := omit, + in template (omit) BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := omit, + in template (omit) WLANMeasurementConfiguration p_wLANMeasurementConfiguration := omit, + in template (omit) MDT_Location_Info p_mDT_Location_Info := omit, + in template (omit) SensorMeasurementConfiguration p_sensorMeasurementConfiguration := omit, + in template (omit) ImmediateMDTNr.iE_Extensions p_iE_Extensions := omit + ) := { + measurementsToActivate := p_measurementsToActivate, + m1Configuration := p_m1Configuration, + // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” + m4Configuration := p_m4Configuration, + // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” + m5Configuration := p_m5Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” + m6Configuration := p_m6Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” + m7Configuration := p_m7Configuration, + // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + mDT_Location_Info := p_mDT_Location_Info, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + iE_Extensions := p_iE_Extensions + } // End of template m_immediateMDTNr + + template (omit) InterSystemFailureIndication m_interSystemFailureIndication( + in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, + in template (omit) InterSystemFailureIndication.iE_Extensions p_iE_Extensions := omit + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_interSystemFailureIndication + + template (omit) IntersystemSONConfigurationTransfer m_intersystemSONConfigurationTransfer( + in template (value) IntersystemSONTransferType p_transferType, + in template (value) IntersystemSONInformation p_intersystemSONInformation, + in template (omit) IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + transferType := p_transferType, + intersystemSONInformation := p_intersystemSONInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemSONConfigurationTransfer + + template (value) IntersystemSONTransferType m_intersystemSONTransferType_fromEUTRANtoNGRAN( + in template (value) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN + ) := { + fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN + } // End of template m_intersystemSONTransferType_fromEUTRANtoNGRAN + + template (value) IntersystemSONTransferType m_intersystemSONTransferType_fromNGRANtoEUTRAN( + in template (value) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN + ) := { + fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN + } // End of template m_intersystemSONTransferType_fromNGRANtoEUTRAN + + template (value) IntersystemSONTransferType m_intersystemSONTransferType_choice_Extensions( + in template (value) IntersystemSONTransferType.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONTransferType_choice_Extensions + + template (value) IntersystemSONeNBID m_intersystemSONeNBID( + in template (value) GlobalENB_ID p_globaleNBID, + in template (value) EPS_TAI p_selectedEPSTAI, + in template (omit) IntersystemSONeNBID.iE_Extensions p_iE_Extensions := omit + ) := { + globaleNBID := p_globaleNBID, + selectedEPSTAI := p_selectedEPSTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemSONeNBID + + template (value) IntersystemSONNGRANnodeID m_intersystemSONNGRANnodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemSONNGRANnodeID + + template (value) IntersystemSONInformation m_intersystemSONInformation_intersystemSONInformationReport( + in template (value) IntersystemSONInformationReport p_intersystemSONInformationReport + ) := { + intersystemSONInformationReport := p_intersystemSONInformationReport + } // End of template m_intersystemSONInformation_intersystemSONInformationReport + + template (value) IntersystemSONInformation m_intersystemSONInformation_choice_Extensions( + in template (value) IntersystemSONInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONInformation_choice_Extensions + + template (value) IntersystemSONInformation.choice_Extensions m_intersystemSONInformation_id_IntersystemSONInformationRequest( + in template (value) IntersystemSONInformationRequest p_intersystemSONInformationRequest + ) := { + id := id_IntersystemSONInformationRequest, + criticality := ignore, + value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } + } // End of template m_intersystemSONInformation_id_IntersystemSONInformationRequest + + template (value) IntersystemSONInformation.choice_Extensions m_intersystemSONInformation_id_IntersystemSONInformationReply( + in template (value) IntersystemSONInformationReply p_intersystemSONInformationReply + ) := { + id := id_IntersystemSONInformationReply, + criticality := ignore, + value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } + } // End of template m_intersystemSONInformation_id_IntersystemSONInformationReply + + template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_nGRAN_CellActivation( + in template (value) IntersystemCellActivationRequest p_nGRAN_CellActivation + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template m_intersystemSONInformationRequest_nGRAN_CellActivation + + template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_resourceStatus( + in template (value) IntersystemResourceStatusRequest p_resourceStatus + ) := { + resourceStatus := p_resourceStatus + } // End of template m_intersystemSONInformationRequest_resourceStatus + + template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_choice_Extensions( + in template (value) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONInformationRequest_choice_Extensions + + template (omit) IntersystemCellActivationRequest m_intersystemCellActivationRequest( + in template (value) IntersystemCellActivationRequest.activationID p_activationID, + in template (value) CellsToActivateList p_cellsToActivateList, + in template (omit) IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := omit + ) := { + activationID := p_activationID, + cellsToActivateList := p_cellsToActivateList, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemCellActivationRequest + + template (omit) IntersystemResourceStatusRequest m_intersystemResourceStatusRequest( + in template (value) ReportingSystem p_reportingSystem, + in template (value) ReportCharacteristics p_reportCharacteristics, + in template (value) ReportType p_reportType, + in template (omit) IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := omit + ) := { + reportingSystem := p_reportingSystem, + reportCharacteristics := p_reportCharacteristics, + reportType := p_reportType, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemResourceStatusRequest + + template (value) ReportingSystem m_reportingSystem_eUTRAN( + in template (value) EUTRAN_ReportingSystemIEs p_eUTRAN + ) := { + eUTRAN := p_eUTRAN + } // End of template m_reportingSystem_eUTRAN + + template (value) ReportingSystem m_reportingSystem_nGRAN( + in template (value) NGRAN_ReportingSystemIEs p_nGRAN + ) := { + nGRAN := p_nGRAN + } // End of template m_reportingSystem_nGRAN + + template (value) ReportingSystem m_reportingSystem_choice_Extensions( + in template (value) ReportingSystem.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_reportingSystem_choice_Extensions + + template (omit) EUTRAN_ReportingSystemIEs m_eUTRAN_ReportingSystemIEs( + in template (value) EUTRAN_CellToReportList p_eUTRAN_CellToReportList, + in template (omit) EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_ReportingSystemIEs + + template (omit) NGRAN_ReportingSystemIEs m_nGRAN_ReportingSystemIEs( + in template (value) NGRAN_CellToReportList p_nGRAN_CellToReportList, + in template (omit) NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CellToReportList := p_nGRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_ReportingSystemIEs + + template (omit) EUTRAN_CellToReportItem m_eUTRAN_CellToReportItem( + in template (value) EUTRA_CGI p_eCGI, + in template (omit) EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := omit + ) := { + eCGI := p_eCGI, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_CellToReportItem + + template (omit) NGRAN_CellToReportItem m_nGRAN_CellToReportItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (omit) NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := omit + ):= { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_CellToReportItem + + template (value) ReportType m_reportType_eventBasedReporting( + in template (value) EventBasedReportingIEs p_eventBasedReporting + ) := { + eventBasedReporting := p_eventBasedReporting + } // End of template m_reportType_eventBasedReporting + + template (value) ReportType m_reportType_periodicReporting( + in template (value) PeriodicReportingIEs p_periodicReporting + ) := { + periodicReporting := p_periodicReporting + } // End of template m_reportType_periodicReporting + + template (value) ReportType m_reportType_choice_Extensions( + in template (value) ReportType.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_reportType_choice_Extensions + + template (value) EventBasedReportingIEs m_eventBasedReportingIEs( + in template (value) IntersystemResourceThreshold p_intersystemResourceThresholdLow, + in template (value) IntersystemResourceThreshold p_intersystemResourceThresholdHigh, + in template (value)NumberOfMeasurementReportingLevels p_numberOfMeasurementReportingLevels, + in template (omit) EventBasedReportingIEs.iE_Extensions p_iE_Extensions := omit + ) := { + intersystemResourceThresholdLow := p_intersystemResourceThresholdLow, + intersystemResourceThresholdHigh := p_intersystemResourceThresholdHigh, + numberOfMeasurementReportingLevels := p_numberOfMeasurementReportingLevels, + iE_Extensions := p_iE_Extensions + } // End of template m_eventBasedReportingIEs + + template (value) NumberOfMeasurementReportingLevels m_numberOfMeasurementReportingLevels(in NumberOfMeasurementReportingLevels p_value := n2) := p_value; + + template (omit) PeriodicReportingIEs m_PeriodicReportingIEs( + in template (value) ReportingPeriodicity p_reportingPeriodicity, + in template (omit) PeriodicReportingIEs.iE_Extensions p_iE_Extensions := omit + ) := { + reportingPeriodicity := p_reportingPeriodicity, + iE_Extensions := p_iE_Extensions + } // End of template m_PeriodicReportingIEs + + template (value) ReportingPeriodicity m_reportingPeriodicity(in ReportingPeriodicity p_value := stop_) := p_value; + + template (value) IntersystemSONInformationReply m_intersystemSONInformationReply_nGRAN_CellActivation( + in template (value) IntersystemCellActivationReply p_nGRAN_CellActivation + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template m_intersystemSONInformationReply_nGRAN_CellActivation + + template (value) IntersystemSONInformationReply m_intersystemSONInformationReply_resourceStatus( + in template (value) IntersystemResourceStatusReply p_resourceStatus + ) := { + resourceStatus := p_resourceStatus + } // End of template m_intersystemSONInformationReply_resourceStatus + + template (value) IntersystemSONInformationReply m_intersystemSONInformationReply_choice_Extensions( + in template (value) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONInformationReply_choice_Extensions + + template (omit) IntersystemCellActivationReply m_intersystemCellActivationReply( + in template (value) ActivatedCellList p_activatedCellList, + in template (value) IntersystemCellActivationReply.activation_ID p_activation_ID, + in template (omit) IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := omit + ) := { + activatedCellList := p_activatedCellList, + activation_ID := p_activation_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemCellActivationReply + + template (omit) IntersystemResourceStatusReply m_intersystemResourceStatusReply( + in template (value) ReportingSystem p_reportingsystem, + in template (omit) IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := omit + ) := { + reportingsystem := p_reportingsystem, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemResourceStatusReply + + template (value) IntersystemSONInformationReport m_intersystemSONInformationReport_hOReportInformation( + in template (value) InterSystemHOReport p_hOReportInformation + ) := { + hOReportInformation := p_hOReportInformation + } // End of template m_intersystemSONInformationReport_hOReportInformation + + template (value) IntersystemSONInformationReport m_intersystemSONInformationReport_failureIndicationInformation( + in template (value) InterSystemFailureIndication p_failureIndicationInformation + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template m_intersystemSONInformationReport_failureIndicationInformation + + template (value) IntersystemSONInformationReport m_intersystemSONInformationReport_choice_Extensions( + in template (value) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_intersystemSONInformationReport_choice_Extensions + + template (value) IntersystemSONInformationReport.choice_Extensions m_intersystemSONInformationReport_id_EnergySavingIndication( + in template (value) IntersystemCellStateIndication p_intersystemCellStateIndication + ) := { + id := id_EnergySavingIndication, + criticality := ignore, + value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } + } // End of template m_intersystemSONInformationReport_id_EnergySavingIndication + + template (value) IntersystemSONInformationReport.choice_Extensions m_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( + in template (value) IntersystemResourceStatusReport p_intersystemResourceStatusReport + ) := { + id := id_IntersystemResourceStatusUpdate, + criticality := ignore, + value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } + } // End of template m_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate + + template (omit) NotificationCell_Item m_notificationCell_Item( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) NotificationCell_Item.notifyFlag p_notifyFlag := activated, + in template (omit) NotificationCell_Item.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + notifyFlag := p_notifyFlag, + iE_Extensions := p_iE_Extensions + } // End of template m_notificationCell_Item + + template (omit) IntersystemResourceStatusReport m_intersystemResourceStatusReport( + in template (value) ResourceStatusReportingSystem p_reportingSystem, + in template (omit) IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := omit + ) := { + reportingSystem := p_reportingSystem, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemResourceStatusReport + + template (value) ResourceStatusReportingSystem m_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( + in template (value) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus + ) := { + eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus + } // End of template m_resourceStatusReportingSystem_eUTRAN_ReportingStatus + + template (value) ResourceStatusReportingSystem m_resourceStatusReportingSystemt_nGRAN_ReportingStatus( + in template (value) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus + ) := { + nGRAN_ReportingStatus := p_nGRAN_ReportingStatus + } // End of template m_resourceStatusReportingSystem_nGRAN_ReportingStatus + + template (value) ResourceStatusReportingSystem m_resourceStatusReportingSystem_choice_Extensions( + in template (value) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_resourceStatusReportingSystem_choice_Extensions + + template (omit) EUTRAN_ReportingStatusIEs m_eUTRAN_ReportingStatusIEs( + in template (value) EUTRAN_CellReportList p_eUTRAN_CellReportList, + in template (omit) EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRAN_CellReportList := p_eUTRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_ReportingStatusIEs + + template (omit) EUTRAN_CellReportItem m_eUTRAN_CellReportItem ( + in template (value) EUTRA_CGI p_eCGI, + in template (value) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup, + in template (omit) EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := omit, + in template (omit) NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := omit, + in template (omit) EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := omit, + in template (omit) EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := omit + ):= { + eCGI := p_eCGI, + eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, + eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, + eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, + eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_ReportingStatusIEs + + template (omit) EUTRAN_CompositeAvailableCapacityGroup m_EUTRAN_CompositeAvailableCapacityGroup( + in template (value) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity, + in template (value) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity, + in template (omit) EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := omit + ) := { + dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, + uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, + iE_Extensions := p_iE_Extensions + } // End of template m_EUTRAN_CompositeAvailableCapacityGroup + + template (omit) CompositeAvailableCapacity m_compositeAvailableCapacity( + in template (value) CompositeAvailableCapacity.capacityValue p_capacityValue, + in template (omit) CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := omit, + in template (omit) CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := omit + ) := { + cellCapacityClassValue := p_cellCapacityClassValue, + capacityValue := p_capacityValue, + iE_Extensions := p_iE_Extensions + } // End of template m_compositeAvailableCapacity + + template (omit) EUTRAN_RadioResourceStatus m_eUTRAN_RadioResourceStatus( + in template (value) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage, + in template (value) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage, + in template (omit) EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := omit, + in template (omit) EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := omit, + in template (omit) EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := omit + ) := { + dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, + uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, + dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, + uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, + dL_Total_PRB_usage := p_dL_Total_PRB_usage, + uL_Total_PRB_usage := p_uL_Total_PRB_usage, + dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, + uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, + iE_Extensions := p_iE_Extensions + } // End of template m_eUTRAN_RadioResourceStatus + + template (omit) NGRAN_ReportingStatusIEs m_nGRAN_ReportingStatusIEs( + in template (value) NGRAN_CellReportList p_nGRAN_CellReportList, + in template (omit) NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CellReportList := p_nGRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_ReportingStatusIEs + + template (omit) NGRAN_CellReportItem m_nGRAN_CellReportItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup, + in template (omit) NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := omit, + in template (omit) NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := omit, + in template (omit) NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := omit, + in template (omit) NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, + nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, + nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, + nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_CellReportItem + + template (omit) NGRAN_RadioResourceStatus m_nGRAN_RadioResourceStatus( + in template (value) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO, + in template (value) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO, + in template (omit) NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := omit + ) := { + dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, + uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, + dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, + uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, + dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, + uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_RadioResourceStatus + + template (omit) InterSystemHOReport m_interSystemHOReport( + in template (value) InterSystemHandoverReportType p_handoverReportType, + in template (omit) InterSystemHOReport.iE_Extensions p_iE_Extensions := omit + ) := { + handoverReportType := p_handoverReportType, + iE_Extensions := p_iE_Extensions + } // End of template m_interSystemHOReport + + template (value) InterSystemHandoverReportType m_interSystemHandoverReportType_tooearlyIntersystemHO( + in template (value) TooearlyIntersystemHO p_tooearlyIntersystemHO + ) := { + tooearlyIntersystemHO := p_tooearlyIntersystemHO + } // End of template m_interSystemHandoverReportType_tooearlyIntersystemHO + + template (value) InterSystemHandoverReportType m_interSystemHandoverReportType_intersystemUnnecessaryHO( + in template (value) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO + ) := { + intersystemUnnecessaryHO := p_intersystemUnnecessaryHO + } // End of template m_interSystemHandoverReportType_intersystemUnnecessaryHO + + template (value) InterSystemHandoverReportType m_interSystemHandoverReportType_choice_Extensions( + in template (value) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_interSystemHandoverReportType_choice_Extensions + + template (omit) IntersystemUnnecessaryHO m_intersystemUnnecessaryHO( + in template (value) NGRAN_CGI p_sourcecellID, + in template (value) EUTRA_CGI p_targetcellID, + in template (value) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := true_, + in template (value) CandidateCellList p_candidateCellList, + in template (omit) IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := omit + ) := { + sourcecellID := p_sourcecellID, + targetcellID := p_targetcellID, + earlyIRATHO := p_earlyIRATHO, + candidateCellList := p_candidateCellList, + iE_Extensions := p_iE_Extensions + } // End of template m_intersystemUnnecessaryHO + + template (omit) LAI m_lai( + in template (value) PLMNIdentity p_pLMNidentity, + in template (value) LAC p_lAC, + in template (omit) LAI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNidentity := p_pLMNidentity, + lAC := p_lAC, + iE_Extensions := p_iE_Extensions + } // End of template m_lai + + template (value) LastVisitedCellInformation m_interSystemHandoverReportType_nGRANCell( + in template (value) LastVisitedNGRANCellInformation p_nGRANCell + ) := { + nGRANCell := p_nGRANCell + } // End of template m_interSystemHandoverReportType_nGRANCell + + template (value) LastVisitedCellInformation m_interSystemHandoverReportType_eUTRANCell( + in template (value) LastVisitedEUTRANCellInformation p_eUTRANCell + ) := { + eUTRANCell := p_eUTRANCell + } // End of template m_interSystemHandoverReportType_eUTRANCell + + template (value) LastVisitedCellInformation m_interSystemHandoverReportType_uTRANCell( + in template (value) LastVisitedUTRANCellInformation p_uTRANCell + ) := { + uTRANCell := p_uTRANCell + } // End of template m_interSystemHandoverReportType_uTRANCell + + template (value) LastVisitedCellInformation m_interSystemHandoverReportType_gERANCell( + in template (value) LastVisitedGERANCellInformation p_gERANCell + ) := { + gERANCell := p_gERANCell + } // End of template m_interSystemHandoverReportType_gERANCell + + template (value) LastVisitedCellInformation m_lastVisitedCellInformation_choice_Extensions( + in template (value) LastVisitedCellInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_lastVisitedCellInformation_choice_Extensions + + template (omit) LastVisitedCellItem m_lastVisitedCellItem( + in template (value) LastVisitedCellInformation p_lastVisitedCellInformation, + in template (omit) LastVisitedCellItem.iE_Extensions p_iE_Extensions := omit + ) := { + lastVisitedCellInformation := p_lastVisitedCellInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_lastVisitedCellItem + + template (omit) LastVisitedNGRANCellInformation m_lastVisitedNGRANCellInformation( + in template (value) NGRAN_CGI p_globalCellID, + in template (value) CellType p_cellType, + in template (value) TimeUEStayedInCell p_timeUEStayedInCell, + in template (omit) TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := omit, + in template (omit) Cause p_hOCauseValue := omit, + in template (omit) LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := omit + ) := { + globalCellID := p_globalCellID, + cellType := p_cellType, + timeUEStayedInCell := p_timeUEStayedInCell, + timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, + hOCauseValue := p_hOCauseValue, + iE_Extensions := p_iE_Extensions + } // End of template m_lastVisitedNGRANCellInformation + + template (value) LastVisitedNGRANCellInformation.iE_Extensions m_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( + in template (value) LastVisitedPSCellList p_lastVisitedPSCellList + ) := { + { + id := id_LastVisitedPSCellList, + criticality := ignore, + extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } + } + } // End of template m_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList + + template (omit) LastVisitedPSCellInformation m_LastVisitedPSCellInformation( + in template (value) NGRAN_CGI p_pSCellID, + in template (value) LastVisitedPSCellInformation.timeStay p_timeStay, + in template (omit) LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := omit + ) := { + pSCellID := p_pSCellID, + timeStay := p_timeStay, + iE_Extensions := p_iE_Extensions + } // End of template m_LastVisitedPSCellInformation + + template (value) LineType m_lineType(in LineType p_value := pon) := p_value; + + template (value) LocationReportingAdditionalInfo m_locationReportingAdditionalInfo(in LocationReportingAdditionalInfo p_value := includePSCell) := p_value; + + template (omit) LocationReportingRequestType m_locationReportingRequestType( + in template (value) EventType p_eventType, + in template (value) ReportArea p_reportArea, + in template (omit) AreaOfInterestList p_areaOfInterestList := omit, + in template (omit) LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := omit, + in template (omit) LocationReportingRequestType.iE_Extensions p_iE_Extensions := omit + ) := { + eventType := p_eventType, + reportArea := p_reportArea, + areaOfInterestList := p_areaOfInterestList, + locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, + // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” + iE_Extensions := p_iE_Extensions + } // End of template m_locationReportingRequestType + + template (value) LocationReportingRequestType.iE_Extensions m_locationReportingRequestType_id_LocationReportingAdditionalInfo( + in template (value) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo + ) := { + { + id := id_LocationReportingAdditionalInfo, + criticality := ignore, + extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } + } + } // End of template m_locationReportingRequestType_id_LocationReportingAdditionalInfo + + template (omit) LoggedMDTNr m_loggedMDTNr( + in template (value) LoggingInterval p_loggingInterval, + in template (value) LoggingDuration p_loggingDuration, + in template (value) LoggedMDTTrigger p_loggedMDTTrigger, + in template (omit) BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := omit, + in template (omit) WLANMeasurementConfiguration p_wLANMeasurementConfiguration := omit, + in template (omit) SensorMeasurementConfiguration p_sensorMeasurementConfiguration := omit, + in template (omit) AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := omit, + in template (omit) LoggedMDTNr.iE_Extensions p_iE_Extensions := omit + ) := { + loggingInterval := p_loggingInterval, + loggingDuration := p_loggingDuration, + loggedMDTTrigger := p_loggedMDTTrigger, + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, + iE_Extensions := p_iE_Extensions + } // End of template m_loggedMDTNr + + template (value) LoggingInterval m_loggingInterval(in LoggingInterval p_value := ms320) := p_value; + + template (value) LoggingDuration m_loggingDuration(in LoggingDuration p_value := m10) := p_value; + + template (value) Links_to_log m_Links_to_log(in Links_to_log p_value := uplink) := p_value; + + template (value) LoggedMDTTrigger m_loggedMDTTrigger_gERANCell( + in template (value) EventTrigger p_eventTrigger + ) := { + eventTrigger := p_eventTrigger + } // End of template m_loggedMDTTrigger_gERANCell + + template (value) LoggedMDTTrigger m_loggedMDTTrigger_choice_Extensions( + in template (value) LoggedMDTTrigger.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_loggedMDTTrigger_choice_Extensions + + template (value) LTEM_Indication m_lTEM_Indication(in LTEM_Indication p_value := lte_m) := p_value; + + template (omit) LTEV2XServicesAuthorized m_lTEV2XServicesAuthorized( + in template (omit) VehicleUE p_vehicleUE := omit, + in template (omit) PedestrianUE p_pedestrianUE:= omit, + in template (omit) LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit + ) := { + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template m_lTEV2XServicesAuthorized + + template (omit) LTEUESidelinkAggregateMaximumBitrate m_lTEUESidelinkAggregateMaximumBitrate( + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, + in template (omit) LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template m_lTEUESidelinkAggregateMaximumBitrate + + template (value) MaximumIntegrityProtectedDataRate m_maximumIntegrityProtectedDataRate(in MaximumIntegrityProtectedDataRate p_value := bitrate64kbs) := p_value; + + template (omit) MBS_DataForwardingResponseMRBItem m_mBS_DataForwardingResponseMRBItem( + in template (value) MRB_ID p_mRB_ID, + in template (value) UPTransportLayerInformation p_dL_Forwarding_UPTNLInformation, + in template (omit) MRB_ProgressInformation p_mRB_ProgressInformation := omit, + in template (omit) MBS_DataForwardingResponseMRBItem.iE_Extensions p_iE_Extensions := omit + ) := { + mRB_ID := p_mRB_ID, + dL_Forwarding_UPTNLInformation := p_dL_Forwarding_UPTNLInformation, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DataForwardingResponseMRBItem + + template (omit) MBS_MappingandDataForwardingRequestItem m_mBS_MappingandDataForwardingRequestItem( + in template (value) MRB_ID p_mRB_ID, + in template (value) MBS_QoSFlowList p_mBS_QoSFlowList, + in template (omit) MRB_ProgressInformation p_mRB_ProgressInformation := omit, + in template (omit) MBS_MappingandDataForwardingRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + mRB_ID := p_mRB_ID, + mBS_QoSFlowList := p_mBS_QoSFlowList, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_MappingandDataForwardingRequestItem + + template (value) MRB_ProgressInformation m_mRB_ProgressInformation_pDCP_SN_Length12( + in template (value) MRB_ProgressInformation.pDCP_SN_Length12 p_pDCP_SN_Length12 + ) := { + pDCP_SN_Length12 := p_pDCP_SN_Length12 + } // End of template m_mRB_ProgressInformation_pDCP_SN_Length12 + + template (value) MRB_ProgressInformation m_mRB_ProgressInformation_pDCP_SN_Length18( + in template (value) MRB_ProgressInformation.pDCP_SN_Length18 p_pDCP_SN_Length18 + ) := { + pDCP_SN_Length18 := p_pDCP_SN_Length18 + } // End of template m_mRB_ProgressInformation_pDCP_SN_Length18 + + template (value) MRB_ProgressInformation m_mRB_ProgressInformation_choice_Extensions( + in template (value) MRB_ProgressInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mRB_ProgressInformation_choice_Extensions + + template (omit) MBS_QoSFlowsToBeSetupItem m_mBS_QoSFlowsToBeSetupItem( + in template (value)QosFlowIdentifier p_mBSqosFlowIdentifier, + in template (value)QosFlowLevelQosParameters p_mBSqosFlowLevelQosParameters, + in template (omit) MBS_QoSFlowsToBeSetupItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBSqosFlowIdentifier := p_mBSqosFlowIdentifier, + mBSqosFlowLevelQosParameters := p_mBSqosFlowLevelQosParameters, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_QoSFlowsToBeSetupItem + + template (value) MBS_ServiceArea m_mBS_ServiceArea_locationindependent( + in template (value) MBS_ServiceAreaInformation p_locationindependent + ) := { + locationindependent := p_locationindependent + } // End of template m_mBS_ServiceArea_locationindependent + + template (value) MBS_ServiceArea m_mBS_ServiceArea_locationdependent( + in template (value) MBS_ServiceAreaInformationList p_locationdependent + ) := { + locationdependent := p_locationdependent + } // End of template m_mBS_ServiceArea_locationdependent + + template (value) MBS_ServiceArea m_mBS_ServiceArea_choice_Extensions( + in template (value) MBS_ServiceArea.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mBS_ServiceArea_choice_Extensions + + template (omit) MBS_ServiceAreaInformationItem m_mBS_ServiceAreaInformationItem( + in template (value) MBS_AreaSessionID p_mBS_AreaSessionID, + in template (value) MBS_ServiceAreaInformation p_mBS_ServiceAreaInformation, + in template (omit) MBS_ServiceAreaInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceAreaInformation := p_mBS_ServiceAreaInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_ServiceAreaInformationItem + + template (omit) MBS_ServiceAreaInformation m_mBS_ServiceAreaInformation( + in template (omit) MBS_ServiceAreaCellList p_mBS_ServiceAreaCellList := omit, + in template (omit) MBS_ServiceAreaTAIList p_mBS_ServiceAreaTAIList := omit, + in template (omit) MBS_ServiceAreaInformation.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_ServiceAreaCellList := p_mBS_ServiceAreaCellList, + mBS_ServiceAreaTAIList := p_mBS_ServiceAreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_ServiceAreaInformation + + template (omit) MBS_SessionID m_mBS_SessionID( + in template (value) TMGI p_tMGI, + in template (omit) NID p_nID := omit, + in template (omit) MBS_SessionID.iE_Extensions p_iE_Extensions := omit + ) := { + tMGI := p_tMGI, + nID := p_nID, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_SessionID + + template (omit) MBSSessionFailedtoSetupItem m_mBSSessionFailedtoSetupItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) Cause p_cause, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) MBSSessionFailedtoSetupItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionFailedtoSetupItem + + template (omit) MBS_ActiveSessionInformation_SourcetoTargetItem m_mBS_ActiveSessionInformation_SourcetoTargetItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) MBS_ServiceArea p_mBS_ServiceArea := omit, + in template (omit) MBS_MappingandDataForwardingRequestList p_mBS_MappingandDataForwardingRequestList := omit, + in template (omit) MBS_ActiveSessionInformation_SourcetoTargetItem.iE_Extensions p_iE_Extensions := omit + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceArea := p_mBS_ServiceArea, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBS_MappingandDataForwardingRequestList := p_mBS_MappingandDataForwardingRequestList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_ActiveSessionInformation_SourcetoTargetItem + + template (omit) MBS_ActiveSessionInformation_TargettoSourceItem m_mBS_ActiveSessionInformation_TargettoSourceItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_DataForwardingResponseMRBList p_mBS_DataForwardingResponseMRBList := omit, + in template (omit) MBS_ActiveSessionInformation_TargettoSourceItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_DataForwardingResponseMRBList := p_mBS_DataForwardingResponseMRBList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_ActiveSessionInformation_TargettoSourceItem + + template (omit) MBSSessionSetupOrModFailureTransfer m_mBSSessionSetupOrModFailureTransfer( + in template (value) Cause p_cause, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) MBSSessionSetupOrModFailureTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetupOrModFailureTransfer + + template (omit) MBSSessionSetupResponseItem m_mBSSessionSetupResponseItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) MBSSessionSetupResponseItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetupResponseItem + + template (value) MBSSessionSetupOrModRequestTransfer m_mBSSessionSetupOrModRequestTransfer( + in template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs + ) := { + protocolIEs := p_protocolIEs + } // End of template m_mBSSessionSetupOrModRequestTransfer + + template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( + in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC + + template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + + template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( + in template (value) MBS_SessionFSAIDList p_mBS_SessionFSAIDList + ) := { + { + id := id_MBS_SessionFSAIDList, + criticality := ignore, + value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + } + } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList + + template (omit) MBSSessionReleaseResponseTransfer m_mBSSessionReleaseResponseTransfer( + in template (omit) MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := omit, + in template (omit) MBSSessionReleaseResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionReleaseResponseTransfer + + template (omit) MBSSessionSetupOrModResponseTransfer m_mBSSessionSetupOrModResponseTransfer( + in template (omit) MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := omit, + in template (omit) MBSSessionSetupOrModResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetupOrModResponseTransfer + + template (value) MBS_SupportIndicator m_mBS_SupportIndicator(in MBS_SupportIndicator p_value := true_) := p_value; + + template (value) MBS_SessionTNLInfo5GC m_mBS_SessionTNLInfo5GC_locationindependent( + in template (value) SharedNGU_MulticastTNLInformation p_locationindependent + ) := { + locationindependent := p_locationindependent + } // End of template m_mBS_SessionTNLInfo5GC_locationindependent + + template (value) MBS_SessionTNLInfo5GC m_mBS_SessionTNLInfo5GC_locationdependent( + in template (value) MBS_SessionTNLInfo5GCList p_locationdependent + ) := { + locationdependent := p_locationdependent + } // End of template m_mBS_SessionTNLInfo5GC_locationdependent + + template (value) MBS_SessionTNLInfo5GC m_mBS_SessionTNLInfo5GC_choice_Extensions( + in template (value) MBS_SessionTNLInfo5GC.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mBS_SessionTNLInfo5GC_choice_Extensions + + template (omit) MBS_SessionTNLInfo5GCItem m_mBS_SessionTNLInfo5GCItem( + in template (value) MBS_AreaSessionID p_mBS_AreaSessionID, + in template (value) SharedNGU_MulticastTNLInformation p_sharedNGU_MulticastTNLInformation, + in template (omit) MBS_SessionTNLInfo5GCItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_SessionTNLInfo5GCItem + + template (value) MBS_SessionTNLInfoNGRAN m_mBS_SessionTNLInfoNGRAN_locationindependent( + in template (value) UPTransportLayerInformation p_locationindependent + ) := { + locationindependent := p_locationindependent + } // End of template m_mBS_SessionTNLInfoNGRAN_locationindependent + + template (value) MBS_SessionTNLInfoNGRAN m_mBS_SessionTNLInfoNGRAN_locationdependent( + in template (value) MBS_SessionTNLInfoNGRANList p_locationdependent + ) := { + locationdependent := p_locationdependent + } // End of template m_mBS_SessionTNLInfoNGRAN_locationdependent + + template (value) MBS_SessionTNLInfoNGRAN m_mBS_SessionTNLInfoNGRAN_choice_Extensions( + in template (value) MBS_SessionTNLInfoNGRAN.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mBS_SessionTNLInfoNGRAN_choice_Extensions + + template (omit) MBS_SessionTNLInfoNGRANItem m_mBS_SessionTNLInfoNGRANItem( + in template (value) MBS_AreaSessionID p_mBS_AreaSessionID, + in template (omit) UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := omit, + in template (omit) MBS_SessionTNLInfoNGRANItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_SessionTNLInfoNGRANItem + + template (omit) MBS_DistributionReleaseRequestTransfer m_mBS_DistributionReleaseRequestTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) Cause p_cause, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := omit, + in template (omit) MBS_DistributionReleaseRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DistributionReleaseRequestTransfer + + template (omit) MBS_DistributionSetupRequestTransfer m_mBS_DistributionSetupRequestTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := omit, + in template (omit) MBS_DistributionSetupRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DistributionSetupRequestTransfer + + template (omit) MBS_DistributionSetupResponseTransfer m_mBS_DistributionSetupResponseTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList, + in template (value) MBSSessionStatus p_mBSSessionStatus, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) MBS_SessionTNLInfo5GCItem p_sharedNGU_MulticastTNLInformation := omit, + in template (omit) MBS_ServiceArea p_mBS_ServiceArea := omit, + in template (omit) MBS_DistributionSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBSSessionStatus := p_mBSSessionStatus, + mBS_ServiceArea := p_mBS_ServiceArea, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DistributionSetupResponseTransfer + + template (omit) MBS_DistributionSetupUnsuccessfulTransfer m_mBS_DistributionSetupUnsuccessfulTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) Cause p_cause, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) MBS_DistributionSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_mBS_DistributionSetupUnsuccessfulTransfer + + template (omit) MBSSessionSetupRequestItem m_mBSSessionSetupRequestItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := omit, + in template (omit) MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := omit + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetupRequestList := p_associatedMBSQosFlowSetupRequestList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetupRequestItem + + template (omit) MBSSessionSetuporModifyRequestItem m_mBSSessionSetuporModifyRequestItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, + in template (omit) AssociatedMBSQosFlowSetuporModifyRequestList p_associatedMBSQosFlowSetuporModifyRequestList := omit, + in template (omit) QosFlowListWithCause p_mBS_QosFlowToReleaseList := omit, + in template (omit) MBSSessionSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetuporModifyRequestList := p_associatedMBSQosFlowSetuporModifyRequestList, + mBS_QosFlowToReleaseList := p_mBS_QosFlowToReleaseList, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionSetuporModifyRequestItem + + template (omit) MBSSessionToReleaseItem m_mBSSessionToReleaseItem( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (value) Cause p_cause, + in template (omit) MBSSessionToReleaseItem.iE_Extensions p_iE_Extensions := omit + ):= { + mBS_SessionID := p_mBS_SessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_mBSSessionToReleaseItem + + template (value) MBSSessionStatus m_mBSSessionStatus(in MBSSessionStatus p_value := activated) := p_value; + + template (value) MicoAllPLMN m_micoAllPLMN(in MicoAllPLMN p_value := true_) := p_value; + + template (value) MICOModeIndication m_mICOModeIndication(in MICOModeIndication p_value := true_) := p_value; + + template (omit) MobilityRestrictionList m_mobilityRestrictionList( + in template (value) PLMNIdentity p_servingPLMN, + in template (omit) EquivalentPLMNs p_equivalentPLMNs := omit, + in template (omit) RATRestrictions p_rATRestrictions := omit, + in template (omit) ForbiddenAreaInformation p_forbiddenAreaInformation := omit, + in template (omit) ServiceAreaInformation p_serviceAreaInformation := omit, + in template (omit) MobilityRestrictionList.iE_Extensions p_iE_Extensions := omit + ) := { + servingPLMN := p_servingPLMN, + equivalentPLMNs := p_equivalentPLMNs, + rATRestrictions := p_rATRestrictions, + forbiddenAreaInformation := p_forbiddenAreaInformation, + serviceAreaInformation := p_serviceAreaInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_mobilityRestrictionList + + template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( + in template (value) PLMNIdentity p_pLMNIdentity + ) := { + { + id := id_LastEUTRAN_PLMNIdentity, + criticality := ignore, + extensionValue := { PLMNIdentity := p_pLMNIdentity } + } + } // End of template m_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity + + template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_CNTypeRestrictionsForServing( + in template (value) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing + ) := { + { + id := id_CNTypeRestrictionsForServing, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } + } + } // End of template m_mobilityRestrictionList_id_CNTypeRestrictionsForServing + + template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( + in template (value) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent + ) := { + { + id := id_CNTypeRestrictionsForEquivalent, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } + } + } // End of template m_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent + + template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_NPN_MobilityInformation( + in template (value) NPN_MobilityInformation p_nPN_MobilityInformation + ) := { + { + id := id_NPN_MobilityInformation, + criticality := reject, + extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } + } + } // End of template m_mobilityRestrictionList_id_NPN_MobilityInformation + + template (value) MDT_AlignmentInfo m_mDT_AlignmentInfo_s_basedMDT( + in template (value) NGRANTraceID p_s_basedMDT + ) := { + s_basedMDT := p_s_basedMDT + } // End of template m_mDT_AlignmentInfo_s_basedMDT + + template (value) MDT_AlignmentInfo m_mDT_AlignmentInfo_choice_Extensions( + in template (value) MDT_AlignmentInfo.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mDT_AlignmentInfo_choice_Extensions + + template (omit) MDT_Configuration m_mDT_Configuration( + in template (omit) MDT_Configuration_NR p_mdt_Config_NR := omit, + in template (omit) MDT_Configuration_EUTRA p_mdt_Config_EUTRA := omit, + in template (omit) MDT_Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + mdt_Config_NR := p_mdt_Config_NR, + mdt_Config_EUTRA := p_mdt_Config_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_mDT_Configuration + + template (omit) MDT_Configuration_NR m_mDT_Configuration_NR( + in template (value) MDT_Activation p_mdt_Activation, + in template (value) AreaScopeOfMDT_NR p_areaScopeOfMDT, + in template (value) MDTModeNr p_mDTModeNr, + in template (omit) MDTPLMNList p_signallingBasedMDTPLMNList := omit, + in template (omit) MDT_Configuration_NR.iE_Extensions p_iE_Extensions := omit + ) := { + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTModeNr := p_mDTModeNr, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template m_mDT_Configuration_NR + + template (omit) MDT_Configuration_EUTRA m_mDT_Configuration_EUTRA( + in template (value) MDT_Activation p_mdt_Activation, + in template (value) AreaScopeOfMDT_EUTRA p_areaScopeOfMDT, + in template (value) MDTModeEutra p_mDTMode, + in template (omit) MDTPLMNList p_signallingBasedMDTPLMNList := omit, + in template (omit) MDT_Configuration_EUTRA.iE_Extensions p_iE_Extensions := omit + ) := { + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTMode := p_mDTMode, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template m_mDT_Configuration_EUTRA + + template (value) MDT_Activation m_mDT_Activation(in MDT_Activation p_value := immediate_MDT_only) := p_value; + + template (value) MDTModeNr m_mDTModeNro_immediateMDTNr( + in template (value) ImmediateMDTNr p_immediateMDTNr + ) := { + immediateMDTNr := p_immediateMDTNr + } // End of template m_mDTModeNr_immediateMDTNr + + template (value) MDTModeNr m_mDTModeNro_loggedMDTNr( + in template (value) LoggedMDTNr p_loggedMDTNr + ) := { + loggedMDTNr := p_loggedMDTNr + } // End of template m_mDTModeNr_loggedMDTNr + + template (value) MDTModeNr m_mDTModeNr_choice_Extensions( + in template (value) MDTModeNr.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_mDTModeNr_choice_Extensions + + template (omit) MulticastSessionActivationRequestTransfer m_multicastSessionActivationRequestTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MulticastSessionActivationRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_multicastSessionActivationRequestTransfer + + template (omit) MulticastSessionDeactivationRequestTransfer m_multicastSessionDeactivationRequestTransfer( + in template (value) MBS_SessionID p_mBS_SessionID, + in template (omit) MulticastSessionDeactivationRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_SessionID := p_mBS_SessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_multicastSessionDeactivationRequestTransfer + + template (value) MulticastSessionUpdateRequestTransfer m_multicastSessionUpdateRequestTransfer( + in template (value) MulticastSessionUpdateRequestTransfer.protocolIEs p_protocolIEs + ) := { + protocolIEs := p_protocolIEs + } // End of template m_multicastSessionUpdateRequestTransfer + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( + in template (value) MBS_SessionID p_mBS_SessionID + ) := { + { + id := id_MBS_SessionID, + criticality := reject, + value_ := { MBS_SessionID := p_mBS_SessionID } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_SessionID + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( + in template (value) MBS_ServiceArea p_mBS_ServiceArea + ) := { + { + id := id_MBS_ServiceArea, + criticality := reject, + value_ := { MBS_ServiceArea := p_mBS_ServiceArea } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( + in template (value) QosFlowListWithCause p_qosFlowListWithCause + ) := { + { + id := id_MBS_QoSFlowToReleaseList, + criticality := reject, + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList + + template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( + in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC + + template (omit) MulticastGroupPagingAreaItem m_multicastGroupPagingAreaItem( + in template (value) MulticastGroupPagingArea p_multicastGroupPagingArea, + in template (omit) UE_PagingList p_uE_PagingList := omit, + in template (omit) MulticastGroupPagingAreaItem.iE_Extensions p_iE_Extensions := omit + ) := { + multicastGroupPagingArea := p_multicastGroupPagingArea, + uE_PagingList := p_uE_PagingList, + iE_Extensions := p_iE_Extensions + } // End of template m_multicastGroupPagingAreaItem + + template (omit) MulticastGroupPagingArea m_multicastGroupPagingArea( + in template (value) MBS_AreaTAIList p_mBS_AreaTAIList, + in template (omit) MulticastGroupPagingArea.iE_Extensions p_iE_Extensions := omit + ) := { + mBS_AreaTAIList := p_mBS_AreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template m_multicastGroupPagingArea + + template (omit) UE_PagingItem m_uE_PagingItem( + in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, + in template (omit) PagingDRX p_pagingDRX := omit, + in template (omit) UE_PagingItem.iE_Extensions p_iE_Extensions := omit + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + pagingDRX := p_pagingDRX, + iE_Extensions := p_iE_Extensions + } // End of template m_uE_PagingItem + + template (omit) M1Configuration m_m1Configuration( + in template (value) M1ReportingTrigger p_m1reportingTrigger, + in template (omit) M1ThresholdEventA2 p_m1thresholdEventA2 := omit, + in template (omit) M1PeriodicReporting p_m1periodicReporting := omit, + in template (omit) M1Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m1reportingTrigger := p_m1reportingTrigger, + m1thresholdEventA2 := p_m1thresholdEventA2, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” + m1periodicReporting := p_m1periodicReporting, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” + iE_Extensions := p_iE_Extensions + } // End of template m_m1Configuration + + template (value) M1Configuration.iE_Extensions m_m1Configuration_id_IncludeBeamMeasurementsIndication( + in template (value) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication + ) := { + { + id := id_IncludeBeamMeasurementsIndication, + criticality := ignore, + extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } + } + } // End of template m_m1Configuration_id_IncludeBeamMeasurementsIndication + + template (value) M1Configuration.iE_Extensions m_m1Configuration_id_BeamMeasurementsReportConfiguration( + in template (value) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration + ) := { + { + id := id_BeamMeasurementsReportConfiguration, + criticality := ignore, + extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } + } + } // End of template m_m1Configuration_id_BeamMeasurementsReportConfiguration + + template (value) IncludeBeamMeasurementsIndication m_includeBeamMeasurementsIndication(in IncludeBeamMeasurementsIndication p_value := true_) := p_value; + + template (value) M1ReportingTrigger m_m1ReportingTrigger(in M1ReportingTrigger p_value := periodic) := p_value; + + template (omit) M1ThresholdEventA2 m_m1ThresholdEventA2( + in template (value) M1ThresholdType p_m1ThresholdType, + in template (omit) M1ThresholdEventA2.iE_Extensions p_iE_Extensions := omit + ) := { + m1ThresholdType := p_m1ThresholdType, + iE_Extensions := p_iE_Extensions + } // End of template m_m1ThresholdEventA2 + + template (value) M1ThresholdType m_m1ThresholdType_threshold_RSRP( + in template (value) Threshold_RSRP p_threshold_RSRP + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template m_m1ThresholdType_threshold_RSRP + + template (value) M1ThresholdType m_m1ThresholdType_threshold_RSRQ( + in template (value) Threshold_RSRQ p_threshold_RSRQ + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template m_m1ThresholdType_threshold_RSRQ + + template (value) M1ThresholdType m_m1ThresholdType_threshold_SINR( + in template (value) Threshold_SINR p_threshold_SINR + ) := { + threshold_SINR := p_threshold_SINR + } // End of template m_m1ThresholdType_threshold_SINR + + template (value) M1ThresholdType m_m1ThresholdType_choice_Extensions( + in template (value) M1ThresholdType.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_m1ThresholdType_choice_Extensions + + template (omit) M1PeriodicReporting m_m1PeriodicReporting( + in template (value) ReportIntervalMDT p_reportInterval, + in template (value) ReportAmountMDT p_reportAmount, + in template (omit) M1PeriodicReporting.iE_Extensions p_iE_Extensions := omit + ) := { + reportInterval := p_reportInterval, + reportAmount := p_reportAmount, + iE_Extensions := p_iE_Extensions + } // End of template m_m1PeriodicReporting + + template (value) M1PeriodicReporting.iE_Extensions m_m1PeriodicReporting_id_ExtendedReportIntervalMDT( + in template (value) ExtendedReportIntervalMDT p_extendedReportIntervalMDT + ) := { + { + id := id_ExtendedReportIntervalMDT, + criticality := ignore, + extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } + } + } // End of template m_m1PeriodicReporting_id_ExtendedReportIntervalMDT + + template (omit) M4Configuration m_m4Configuration( + in template (value) M4period p_m4period, + in template (value) Links_to_log p_m4_links_to_log, + in template (omit) M4Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m4period := p_m4period, + m4_links_to_log := p_m4_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template m_m4Configuration + + template (value) M4Configuration.iE_Extensions m_m4Configuration_id_M4ReportAmount( + in template (value) M4ReportAmountMDT p_m4ReportAmountMDT + ) := { + { + id := id_ExtendedReportIntervalMDT, + criticality := ignore, + extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } + } + } // End of template m_m4Configuration_id_M4ReportAmount + + template (value) M4ReportAmountMDT m_m4ReportAmountMDT(in M4ReportAmountMDT p_value := r1) := p_value; + + template (value) M4period m_m4period(in M4period p_value := ms1024) := p_value; + + template (omit) M5Configuration m_m5Configuration( + in template (value) M5period p_m5period, + in template (value) Links_to_log p_m5_links_to_log, + in template (omit) M5Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m5period := p_m5period, + m5_links_to_log := p_m5_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template m_m5Configuration + + template (value) M5Configuration.iE_Extensions m_m5Configuration_id_M5ReportAmount( + in template (value) M5ReportAmountMDT p_m5ReportAmountMDT + ) := { + { + id := id_M5ReportAmount, + criticality := ignore, + extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } + } + } // End of template m_m5Configuration_id_M5ReportAmount + + template (value) M5ReportAmountMDT m_m5ReportAmountMDT(in M5ReportAmountMDT p_value := r1) := p_value; + + template (value) M5period m_m5period(in M5period p_value := ms1024) := p_value; + + template (omit) M6Configuration m_m6Configuration( + in template (value) M6report_Interval p_m6report_Interval, + in template (value) Links_to_log p_m6_links_to_log, + in template (omit) M6Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m6report_Interval := p_m6report_Interval, + m6_links_to_log := p_m6_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template m_m6Configuration + + template (value) M6Configuration.iE_Extensions m_m6Configuration_id_M6ReportAmount( + in template (value) M6ReportAmountMDT p_m6ReportAmountMDT + ) := { + { + id := id_M6ReportAmount, + criticality := ignore, + extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } + } + } // End of template m_m6Configuration_id_M6ReportAmount + + template (value) M6Configuration.iE_Extensions m_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( + in template (value) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration + ) := { + { + id := id_ExcessPacketDelayThresholdConfiguration, + criticality := ignore, + extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } + } + } // End of template m_m6Configuration_id_ExcessPacketDelayThresholdConfiguration + + template (value) M6ReportAmountMDT m_m6ReportAmountMDT(in M6ReportAmountMDT p_value := r1) := p_value; + + template (value) M6report_Interval m_m6report_Interval(in M6report_Interval p_value := ms120) := p_value; + + template (omit) M7Configuration m_m7Configuration( + in template (value) M7period p_m7period, + in template (value) Links_to_log p_m7_links_to_log, + in template (omit) M7Configuration.iE_Extensions p_iE_Extensions := omit + ) := { + m7period := p_m7period, + m7_links_to_log := p_m7_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template m_m7Configuration + + template (value) M7Configuration.iE_Extensions m_m7Configuration_id_M7ReportAmount( + in template (value) M7ReportAmountMDT p_m7ReportAmountMDT + ) := { + { + id := id_M7ReportAmount, + criticality := ignore, + extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } + } + } // End of template m_m7Configuration_id_M7ReportAmount + + template (value) M7ReportAmountMDT m_m7ReportAmountMDT(in M7ReportAmountMDT p_value := r1) := p_value; + + template (omit) MDT_Location_Info m_mDT_Location_Info( + in template (value) MDT_Location_Information p_mDT_Location_Information, + in template (omit) MDT_Location_Info.iE_Extensions p_iE_Extensions := omit + ) := { + mDT_Location_Information := p_mDT_Location_Information, + iE_Extensions := p_iE_Extensions + } // End of template m_mDT_Location_Info + + template (value) N3IWF_ID m_n3IWF_ID_n3IWF_ID( + in template (value) N3IWF_ID.n3IWF_ID p_n3IWF_ID + ) := { + n3IWF_ID := p_n3IWF_ID + } // End of template m_n3IWF_ID_n3IWF_ID + + template (value) N3IWF_ID m_n3IWF_ID_choice_Extensions( + in template (value) N3IWF_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_n3IWF_ID_choice_Extensions + + template (value) NB_IoT_DefaultPagingDRX m_nB_IoT_DefaultPagingDRX(in NB_IoT_DefaultPagingDRX p_value := rf128) := p_value; + + template (value) NB_IoT_PagingDRX m_nB_IoT_PagingDRX(in NB_IoT_PagingDRX p_value := rf32) := p_value; + + template (value) NB_IoT_Paging_eDRXCycle m_nB_IoT_Paging_eDRXCycle(in NB_IoT_Paging_eDRXCycle p_value := hf2) := p_value; + + template (value) NB_IoT_Paging_TimeWindow m_nB_IoT_Paging_TimeWindow(in NB_IoT_Paging_TimeWindow p_value := s1) := p_value; + + template (omit) NB_IoT_Paging_eDRXInfo m_nB_IoT_Paging_eDRXInfo( + in template (value) NB_IoT_Paging_eDRXCycle p_nB_IoT_Paging_eDRXCycle, + in template (omit) NB_IoT_Paging_TimeWindow p_nB_IoT_Paging_TimeWindow := omit, + in template (omit) NB_IoT_Paging_eDRXInfo.iE_Extensions p_iE_Extensions := omit + ) := { + nB_IoT_Paging_eDRXCycle := p_nB_IoT_Paging_eDRXCycle, + nB_IoT_Paging_TimeWindow := p_nB_IoT_Paging_TimeWindow, + iE_Extensions := p_iE_Extensions + } // End of template m_nB_IoT_Paging_eDRXInfo + + template (value) NewSecurityContextInd m_newSecurityContextInd(in NewSecurityContextInd p_value := true_) := p_value; + + template (value) NextPagingAreaScope m_nextPagingAreaScope(in NextPagingAreaScope p_value := same) := p_value; + + template (omit) NGAPIESupportInformationRequestItem m_nGAPIESupportInformationRequestItem( + in template (value) ProtocolIE_ID p_ngap_ProtocolIE_Id, + in template (omit) NGAPIESupportInformationRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + iE_Extensions := p_iE_Extensions + } // End of template m_nGAPIESupportInformationRequestItem + + template (omit) NGAPIESupportInformationResponseItem m_nGAPIESupportInformationResponseItem( + in template (value) ProtocolIE_ID p_ngap_ProtocolIE_Id, + in template (value) NGAPIESupportInformationResponseItem.ngap_ProtocolIESupportInfo p_ngap_ProtocolIESupportInfo, + in template (value) NGAPIESupportInformationResponseItem.ngap_ProtocolIEPresenceInfo p_ngap_ProtocolIEPresenceInfo, + in template (omit) NGAPIESupportInformationResponseItem.iE_Extensions p_iE_Extensions := omit + ) := { + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + ngap_ProtocolIESupportInfo := p_ngap_ProtocolIESupportInfo, + ngap_ProtocolIEPresenceInfo := p_ngap_ProtocolIEPresenceInfo, + iE_Extensions := p_iE_Extensions + } // End of template m_nGAPIESupportInformationResponseItem + + template (value) NgENB_ID m_ngENB_ID_macroNgENB_ID( + in template (value) NgENB_ID.macroNgENB_ID p_macroNgENB_ID + ) := { + macroNgENB_ID := p_macroNgENB_ID + } // End of template m_ngENB_ID_macroNgENB_ID + + template (value) NgENB_ID m_ngENB_ID_shortMacroNgENB_ID( + in template (value) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID + ) := { + shortMacroNgENB_ID := p_shortMacroNgENB_ID + } // End of template m_ngENB_ID_shortMacroNgENB_ID + + template (value) NgENB_ID m_ngENB_ID_longMacroNgENB_ID( + in template (value) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID + ) := { + longMacroNgENB_ID := p_longMacroNgENB_ID + } // End of template m_ngENB_ID_longMacroNgENB_ID + + template (value) NgENB_ID m_ngENB_ID_choice_Extensions( + in template (value) NgENB_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_ngENB_ID_choice_Extensions + + template (value) NotifySourceNGRANNode m_notifySourceNGRANNode(in NotifySourceNGRANNode p_value := notifySource) := p_value; + + template (value) NGRAN_CGI m_ngENB_ID_nR_CGI( + in template (value) NR_CGI p_nR_CGI + ) := { + nR_CGI := p_nR_CGI + } // End of template m_ngENB_ID_nR_CGI + + template (value) NGRAN_CGI m_ngENB_ID_eUTRA_CGI( + in template (value) EUTRA_CGI p_eUTRA_CGI + ) := { + eUTRA_CGI := p_eUTRA_CGI + } // End of template m_ngENB_ID_eUTRA_CGI + + template (value) NGRAN_CGI m_nGRAN_CGI_choice_Extensions( + in template (value) NGRAN_CGI.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nGRAN_CGI_choice_Extensions + + template (omit) NGRAN_TNLAssociationToRemoveItem m_nGRAN_TNLAssociationToRemoveItem( + in template (value) CPTransportLayerInformation p_tNLAssociationTransportLayerAddress, + in template (omit) CPTransportLayerInformation p_tNLAssociationTransportLayerAddressAMF := omit, + in template (omit) NGRAN_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := omit + ) := { + tNLAssociationTransportLayerAddress := p_tNLAssociationTransportLayerAddress, + tNLAssociationTransportLayerAddressAMF := p_tNLAssociationTransportLayerAddressAMF, + iE_Extensions := p_iE_Extensions + } // End of template m_nGRAN_TNLAssociationToRemoveItem + + template (omit) NonDynamic5QIDescriptor m_nonDynamic5QIDescriptor( + in template (value) FiveQI p_fiveQI, + in template (omit) PriorityLevelQos p_priorityLevelQos := omit, + in template (omit) AveragingWindow p_averagingWindow := omit, + in template (omit) MaximumDataBurstVolume p_maximumDataBurstVolume := omit, + in template (omit) NonDynamic5QIDescriptor.iE_Extensions p_iE_Extensions := omit + ) := { + fiveQI := p_fiveQI, + priorityLevelQos := p_priorityLevelQos, + averagingWindow := p_averagingWindow, + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template m_nonDynamic5QIDescriptor + + template (value) NonDynamic5QIDescriptor.iE_Extensions m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL + + template (value) NonDynamic5QIDescriptor.iE_Extensions m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL + + template (value) NotificationCause m_notificationCause(in NotificationCause p_value := fulfilled) := p_value; + + template (value) NotificationControl m_notificationControl(in NotificationControl p_value := notification_requested) := p_value; + + template (value) NPN_AccessInformation m_nPN_AccessInformation_pNI_NPN_Access_Information( + in template (value) CellCAGList p_pNI_NPN_Access_Information + ) := { + pNI_NPN_Access_Information := p_pNI_NPN_Access_Information + } // End of template m_nPN_AccessInformation_pNI_NPN_Access_Information + + template (value) NPN_AccessInformation m_nPN_AccessInformation_choice_Extensions( + in template (value) NPN_AccessInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nPN_AccessInformation_choice_Extensions + + template (value) NPN_MobilityInformation m_nPN_MobilityInformation_sNPN_MobilityInformation( + in template (value) SNPN_MobilityInformation p_sNPN_MobilityInformation + ) := { + sNPN_MobilityInformation := p_sNPN_MobilityInformation + } // End of template m_nPN_MobilityInformation_sNPN_MobilityInformation + + template (value) NPN_MobilityInformation m_nPN_MobilityInformation_pNI_NPN_MobilityInformation( + in template (value) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation + ) := { + pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation + } // End of template m_nPN_MobilityInformation_pNI_NPN_MobilityInformation + + template (value) NPN_MobilityInformation m_nPN_MobilityInformation_choice_Extensions( + in template (value) NPN_MobilityInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nPN_MobilityInformation_choice_Extensions + + template (value) NPN_PagingAssistanceInformation m_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance( + in template (value) Allowed_PNI_NPN_List p_pNI_NPN_PagingAssistance + ) := { + pNI_NPN_PagingAssistance := p_pNI_NPN_PagingAssistance + } // End of template m_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance + + template (value) NPN_PagingAssistanceInformation m_nPN_PagingAssistanceInformation_choice_Extensions( + in template (value) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nPN_PagingAssistanceInformation_choice_Extensions + + template (value) NPN_Support m_nPN_Support_sNPN( + in template (value) NID p_sNPN + ) := { + sNPN := p_sNPN + } // End of template m_nPN_Support_sNPN + + template (value) NPN_Support m_nPN_Support_choice_Extensions( + in template (value) NPN_Support.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_nPN_Support_choice_Extensions + + template (omit) NR_CGI m_nR_CGI( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) NRCellIdentity p_nRCellIdentity, + in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + nRCellIdentity := p_nRCellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template m_nR_CGI + + template (omit) NR_PagingeDRXInformation m_NR_PagingeDRXInformation( + in template (value) NR_Paging_eDRX_Cycle p_nR_paging_eDRX_Cycle, + in template (omit) NR_Paging_Time_Window p_nR_paging_Time_Window := omit, + in template (omit) NR_PagingeDRXInformation.iE_Extensions p_iE_Extensions := omit + ) := { + nR_paging_eDRX_Cycle := p_nR_paging_eDRX_Cycle, + nR_paging_Time_Window := p_nR_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template m_NR_PagingeDRXInformation + + template (value) NR_Paging_eDRX_Cycle m_nR_Paging_eDRX_Cycle(in NR_Paging_eDRX_Cycle p_value := hfquarter) := p_value; + + template (value) NR_Paging_Time_Window m_nR_Paging_Time_Window(in NR_Paging_Time_Window p_value := s1) := p_value; + + template (omit) NRNTNTAIInformation m_nRNTNTAIInformation( + in template (value) PLMNIdentity p_servingPLMN, + in template (value) TACListInNRNTN p_tACListInNRNTN, + in template (omit) TAC p_uELocationDerivedTACInNRNTN := omit, + in template (omit) NRNTNTAIInformation.iE_Extensions p_iE_Extensions := omit + ) := { + servingPLMN := p_servingPLMN, + tACListInNRNTN := p_tACListInNRNTN, + uELocationDerivedTACInNRNTN := p_uELocationDerivedTACInNRNTN, + iE_Extensions := p_iE_Extensions + } // End of template m_nRNTNTAIInformation + + template (omit) NRFrequencyBandItem m_nRFrequencyBandItem( + in template (value) NRFrequencyBand p_nr_frequency_band, + in template (omit) NRFrequencyBandItem.iE_Extension p_iE_Extension := omit + ) := { + nr_frequency_band := p_nr_frequency_band, + iE_Extension := p_iE_Extension + } // End of template m_nRFrequencyBandItem + + template (omit) NRFrequencyInfo m_nRFrequencyInfo( + in template (value) NRARFCN p_nrARFCN, + in template (value) NRFrequencyBand_List p_frequencyBand_List, + in template (omit) NRFrequencyInfo.iE_Extension p_iE_Extension := omit + ) := { + nrARFCN := p_nrARFCN, + frequencyBand_List := p_frequencyBand_List, + iE_Extension := p_iE_Extension + } // End of template m_nRFrequencyInfo + + template (omit) NRV2XServicesAuthorized m_nRV2XServicesAuthorized( + in template (omit) VehicleUE p_vehicleUE := omit, + in template (omit) PedestrianUE p_pedestrianUE := omit, + in template (omit) NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit + + ) := { + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template m_nRV2XServicesAuthorized + + template (value) VehicleUE m_vehicleUE(in VehicleUE p_value := authorized) := p_value; + + template (value) PedestrianUE m_pedestrianUE(in PedestrianUE p_value := authorized) := p_value; + + template (omit) NRUESidelinkAggregateMaximumBitrate m_nRUESidelinkAggregateMaximumBitrate( + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, + in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template m_nRUESidelinkAggregateMaximumBitrate + + template (value) OnboardingSupport m_onboardingSupport(in OnboardingSupport p_value := true_) := p_value; + + template (value) OverloadAction m_overloadAction(in OverloadAction p_value := reject_non_emergency_mo_dt) := p_value; + + template (value) OverloadResponse m_overloadResponse_overloadAction( + in template (value) OverloadAction p_overloadAction + ) := { + overloadAction := p_overloadAction + } // End of template m_overloadResponse_overloadAction + + template (value) OverloadResponse m_overloadResponse_choice_Extensions( + in template (value) OverloadResponse.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_overloadResponse_choice_Extensions + + template (omit) OverloadStartNSSAIItem m_overloadStartNSSAIItem( + in template (value) SliceOverloadList p_sliceOverloadList, + in template (omit) OverloadResponse p_sliceOverloadResponse := omit, + in template (omit) TrafficLoadReductionIndication p_sliceTrafficLoadReductionIndication := omit, + in template (omit) OverloadStartNSSAIItem.iE_Extensions p_iE_Extensions := omit + ) := { + sliceOverloadList := p_sliceOverloadList, + sliceOverloadResponse := p_sliceOverloadResponse, + sliceTrafficLoadReductionIndication := p_sliceTrafficLoadReductionIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_overloadStartNSSAIItem + + template (omit) PacketErrorRate m_PacketErrorRate( + in template (value) PacketErrorRate.pERScalar p_pERScalar, + in template (value) PacketErrorRate.pERExponent p_pERExponent, + in template (omit) PacketErrorRate.iE_Extensions p_iE_Extensions := omit + ) := { + pERScalar := p_pERScalar, + pERExponent := p_pERExponent, + iE_Extensions := p_iE_Extensions + } // End of template m_PacketErrorRate + + template (omit) PagingAssisDataforCEcapabUE m_pagingAssisDataforCEcapabUE( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) CoverageEnhancementLevel p_coverageEnhancementLevel, + in template (omit) PagingAssisDataforCEcapabUE.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + coverageEnhancementLevel := p_coverageEnhancementLevel, + iE_Extensions := p_iE_Extensions + } // End of template m_pagingAssisDataforCEcapabUE + + template (omit) PagingAttemptInformation m_pagingAttemptInformation( + in template (value) PagingAttemptCount p_pagingAttemptCount, + in template (value) IntendedNumberOfPagingAttempts p_intendedNumberOfPagingAttempts, + in template (omit) NextPagingAreaScope p_nextPagingAreaScope := omit, + in template (omit) PagingAttemptInformation.iE_Extensions p_iE_Extensions := omit + ) := { + pagingAttemptCount := p_pagingAttemptCount, + intendedNumberOfPagingAttempts := p_intendedNumberOfPagingAttempts, + nextPagingAreaScope := p_nextPagingAreaScope, + iE_Extensions := p_iE_Extensions + } // End of template m_pagingAttemptInformation + + template (value) PagingCause m_pagingCause(in PagingCause p_value := voice) := p_value; + + template (value) PagingCauseIndicationForVoiceService m_pagingCauseIndicationForVoiceService(in PagingCauseIndicationForVoiceService p_value := supported) := p_value; + + template (value) PagingDRX m_pagingDRX(in PagingDRX p_value := v256) := p_value; + + template (value) PagingOrigin m_pagingOrigin(in PagingOrigin p_value := non_3gpp) := p_value; + + template (value) PagingPriority m_pagingPriority(in PagingPriority p_value := priolevel1) := p_value; + + template (value) PagingProbabilityInformation m_pagingProbabilityInformation(in PagingProbabilityInformation p_value := p00) := p_value; + + template (omit) PathSwitchRequestAcknowledgeTransfer m_PathSwitchRequestAcknowledgeTransfer( + in template (omit) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := omit, + in template (omit) SecurityIndication p_securityIndication := omit, + in template (omit) PathSwitchRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + securityIndication := p_securityIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_PathSwitchRequestAcknowledgeTransfer + + template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation + + template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation + + template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation + + template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList( + in template (value) QosFlowParametersList p_qosFlowParametersList + ) := { + { + id := id_QosFlowParametersList, + criticality := ignore, + extensionValue := { QosFlowParametersList := p_qosFlowParametersList } + } + } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList + + template (omit) PathSwitchRequestSetupFailedTransfer m_pathSwitchRequestSetupFailedTransfer( + in template (value) Cause p_cause, + in template (omit) PathSwitchRequestSetupFailedTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pathSwitchRequestSetupFailedTransfer + + template (omit) PathSwitchRequestTransfer m_pathSwitchRequestTransfer( + in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, + in template (value) QosFlowAcceptedList p_qosFlowAcceptedList, + in template (omit) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := omit, + in template (omit) UserPlaneSecurityInformation p_userPlaneSecurityInformation := omit, + in template (omit) PathSwitchRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused, + userPlaneSecurityInformation := p_userPlaneSecurityInformation, + qosFlowAcceptedList := p_qosFlowAcceptedList, + iE_Extensions := p_iE_Extensions + } // End of template m_pathSwitchRequestTransfer + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused( + in template (value) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused + ) := { + { + id := id_RedundantDL_NGU_TNLInformationReused, + criticality := ignore, + extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } + } + } // End of template m_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_UsedRSNInformation( + in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template m_pathSwitchRequestTransferr_id_UsedRSNInformation + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_GlobalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template m_pathSwitchRequestTransferr_id_GlobalRANNodeID + + template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransfer_id_MBS_SupportIndicator( + in template (value) MBS_SupportIndicator p_mBS_SupportIndicator + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template m_pathSwitchRequestTransfer_id_MBS_SupportIndicator + + template (omit) PathSwitchRequestUnsuccessfulTransfer m_pathSwitchRequestUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) PathSwitchRequestUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pathSwitchRequestUnsuccessfulTransfer + + template (omit) PC5QoSParameters m_pC5QoSParameters( + in template (value) PC5QoSFlowList p_pc5QoSFlowList, + in template (omit) BitRate p_pc5LinkAggregateBitRates := omit, + in template (omit) PC5QoSParameters.iE_Extensions p_iE_Extensions := omit + ) := { + pc5QoSFlowList := p_pc5QoSFlowList, + pc5LinkAggregateBitRates := p_pc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template m_pC5QoSParameters + + template (omit) PC5QoSFlowItem m_pC5QoSFlowItem( + in template (value) FiveQI p_pQI, + in template (omit) PC5FlowBitRates p_pc5FlowBitRates := omit, + in template (omit) Range p_range := omit, + in template (omit) PC5QoSFlowItem.iE_Extensions p_iE_Extensions := omit + ) := { + pQI := p_pQI, + pc5FlowBitRates := p_pc5FlowBitRates, + range := p_range, + iE_Extensions := p_iE_Extensions + } // End of template m_pC5QoSFlowItem + + template (omit) PC5FlowBitRates m_pC5FlowBitRates( + in template (value) BitRate p_guaranteedFlowBitRate, + in template (value) BitRate p_maximumFlowBitRate, + in template (omit) PC5FlowBitRates.iE_Extensions p_iE_Extensions := omit + ) := { + guaranteedFlowBitRate := p_guaranteedFlowBitRate, + maximumFlowBitRate := p_maximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template m_pC5FlowBitRates + + template (value) PrivacyIndicator m_privacyIndicator(in PrivacyIndicator p_value := immediate_MDT) := p_value; + + template (omit) PDUSessionAggregateMaximumBitRate m_pDUSessionAggregateMaximumBitRate( + in template (value) BitRate p_pDUSessionAggregateMaximumBitRateDL, + in template (value) BitRate p_pDUSessionAggregateMaximumBitRateUL, + in template (omit) PDUSessionAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionAggregateMaximumBitRateDL := p_pDUSessionAggregateMaximumBitRateDL, + pDUSessionAggregateMaximumBitRateUL := p_pDUSessionAggregateMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionAggregateMaximumBitRate + + template (omit) PDUSessionResourceAdmittedItem m_pDUSessionResourceAdmittedItem( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceAdmittedItem.handoverRequestAcknowledgeTransfer p_handoverRequestAcknowledgeTransfer, + in template (omit) PDUSessionResourceAdmittedItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverRequestAcknowledgeTransfer := p_handoverRequestAcknowledgeTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceAdmittedItem + + template (omit) PDUSessionResourceFailedToModifyItemModCfm m_pDUSessionResourceFailedToModifyItemModCfm( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceFailedToModifyItemModCfm.pDUSessionResourceModifyIndicationUnsuccessfulTransfer p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyIndicationUnsuccessfulTransfer := p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToModifyItemModCfm + + template (omit) PDUSessionResourceFailedToModifyItemModRes m_pDUSessionResourceFailedToModifyItemModRes( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceFailedToModifyItemModRes.pDUSessionResourceModifyUnsuccessfulTransfer p_pDUSessionResourceModifyUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToModifyItemModRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyUnsuccessfulTransfer := p_pDUSessionResourceModifyUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToModifyItemModRes + + template (omit) PDUSessionResourceFailedToResumeItemRESReq m_pDUSessionResourceFailedToResumeItemRESReq( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceFailedToResumeItemRESReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToResumeItemRESReq + + template (omit) PDUSessionResourceFailedToResumeItemRESRes m_pDUSessionResourceFailedToResumeItemRESRes( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceFailedToResumeItemRESRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToResumeItemRESRes + + template (omit) PDUSessionResourceFailedToSetupItemCxtFail m_pDUSessionResourceFailedToSetupItemCxtFail( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceFailedToSetupItemCxtFail.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemCxtFail.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemCxtFail + + template (omit) PDUSessionResourceFailedToSetupItemCxtRes m_pDUSessionResourceFailedToSetupItemCxtRes( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceFailedToSetupItemCxtRes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemCxtRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemCxtRes + + template (omit) PDUSessionResourceFailedToSetupItemHOAck m_pDUSessionResourceFailedToSetupItemHOAck( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemHOAck.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverResourceAllocationUnsuccessfulTransfer := p_handoverResourceAllocationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemHOAck + + template (omit) PDUSessionResourceFailedToSetupItemPSReq m_pDUSessionResourceFailedToSetupItemPSReq( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemPSReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestSetupFailedTransfer := p_pathSwitchRequestSetupFailedTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemPSReq + + template (omit) PDUSessionResourceFailedToSetupItemSURes m_pDUSessionResourceFailedToSetupItemSURes( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer, + in template (omit) PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceFailedToSetupItemSURes + + template (omit) PDUSessionResourceHandoverItem m_pDUSessionResourceHandoverItem( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceHandoverItem.handoverCommandTransfer p_handoverCommandTransfer, + in template (omit) PDUSessionResourceHandoverItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverCommandTransfer := p_handoverCommandTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceHandoverItem + + template (omit) PDUSessionResourceInformationItem m_pDUSessionResourceInformationItem( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) QosFlowInformationList p_qosFlowInformationList, + in template (omit) DRBsToQosFlowsMappingList p_dRBsToQosFlowsMappingList := omit, + in template (omit) PDUSessionResourceInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + qosFlowInformationList := p_qosFlowInformationList, + dRBsToQosFlowsMappingList := p_dRBsToQosFlowsMappingList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceInformationItem + + template (omit) PDUSessionResourceItemCxtRelCpl m_pDUSessionResourceItemCxtRelCpl( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (omit) PDUSessionResourceItemCxtRelCpl.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceItemCxtRelCpl + + template (value) PDUSessionResourceItemCxtRelCpl.iE_Extensions m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer( + in template (value) PDUSessionResourceReleaseResponseTransfer_OCTET_STRING p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING + ) := { + { + id := id_PDUSessionResourceReleaseResponseTransfer, + criticality := ignore, + extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } + } + } // End of template m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer + + template (omit) PDUSessionResourceItemCxtRelReq m_pDUSessionResourceItemCxtRelReq( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (omit) PDUSessionResourceItemCxtRelReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceItemCxtRelReq + + template (omit) PDUSessionResourceItemHORqd m_pDUSessionResourceItemHORqd( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceItemHORqd.handoverRequiredTransfer p_handoverRequiredTransfer, + in template (omit) PDUSessionResourceItemHORqd.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverRequiredTransfer := p_handoverRequiredTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceItemHORqd + + template (omit) PDUSessionResourceModifyConfirmTransfer m_pDUSessionResourceModifyConfirmTransfer( + in template (value) QosFlowModifyConfirmList p_qosFlowModifyConfirmList, + in template (value) UPTransportLayerInformation p_uLNGU_UP_TNLInformation, + in template (omit) UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := omit, + in template (omit) QosFlowListWithCause p_qosFlowFailedToModifyList := omit, + in template (omit) PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowModifyConfirmList := p_qosFlowModifyConfirmList, + uLNGU_UP_TNLInformation := p_uLNGU_UP_TNLInformation, + additionalNG_UUPTNLInformation := p_additionalNG_UUPTNLInformation, + qosFlowFailedToModifyList := p_qosFlowFailedToModifyList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyConfirmTransfer + + template (value) PDUSessionResourceModifyConfirmTransfer.iE_Extensions m_pDUSessionResourceModifyConfirmTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceModifyConfirmTransferr_id_RedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyConfirmTransfer.iE_Extensions m_pDUSessionResourceModifyConfirmTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pDUSessionResourceModifyConfirmTransferr_id_AdditionalRedundantNGU_UP_TNLInformation + + template (omit) PDUSessionResourceModifyIndicationUnsuccessfulTransfer m_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceModifyIndicationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyIndicationUnsuccessfulTransfer + + template (value) PDUSessionResourceModifyRequestTransfer m_pDUSessionResourceModifyRequestTransfer( + in template (omit) PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs + ) := { + protocolIEs := p_protocolIEs + } // End of template m_pDUSessionResourceModifyRequestTransfer + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( + in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate + ) := { + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( + in template (value) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList + ) := { + { + id := id_UL_NGU_UP_TNLModifyList, + criticality := reject, + value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( + in template (value) NetworkInstance p_networkInstance + ) := { + { + id := id_NetworkInstance, + criticality := reject, + value_ := { NetworkInstance := p_networkInstance } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( + in template (value) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList + ) := { + { + id := id_QosFlowAddOrModifyRequestList, + criticality := reject, + value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( + in template (value) QosFlowListWithCause p_qosFlowListWithCause + ) := { + { + id := id_QosFlowToReleaseList, + criticality := reject, + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalUL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_CommonNetworkInstance, + criticality := reject, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_RedundantCommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( + in template (value) SecurityIndication p_securityIndication + ) := { + { + id := id_SecurityIndication, + criticality := ignore, + value_ := { SecurityIndication := p_securityIndication } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( + in template (value) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList + ) := { + { + id := id_MBSSessionSetuporModifyRequestList, + criticality := ignore, + value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList + + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( + in template (value) MBSSessionToReleaseList p_mBSSessionToReleaseList + ) := { + { + id := id_MBSSessionToReleaseList, + criticality := ignore, + value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } + } + } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList + + template (omit) PDUSessionResourceModifyResponseTransfer m_pDUSessionResourceModifyResponseTransfer( + in template (omit) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := omit, + in template (omit) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := omit, + in template (omit) QosFlowAddOrModifyResponseList p_qosFlowAddOrModifyResponseList := omit, + in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, + in template (omit) QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := omit, + in template (omit) PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + qosFlowAddOrModifyResponseList := p_qosFlowAddOrModifyResponseList, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + qosFlowFailedToAddOrModifyList := p_qosFlowFailedToAddOrModifyList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyResponseTransfer + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator( + in template (value) MBS_SupportIndicator p_mBS_SupportIndicator + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList( + in template (value) MBSSessionSetupResponseList p_mBSSessionSetupResponseList + ) := { + { + id := id_MBSSessionSetuporModifyResponseList, + criticality := ignore, + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList + + template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList( + in template (value) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList + ) := { + { + id := id_MBSSessionFailedtoSetuporModifyList, + criticality := ignore, + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + } + } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList + + template (omit) PDUSessionResourceModifyIndicationTransfer m_pDUSessionResourceModifyIndicationTransfer( + in template (value) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation, + in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, + in template (omit) PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyIndicationTransfer + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult( + in template (value) SecurityResult p_securityResult + ) := { + { + id := id_SecurityResult, + criticality := ignore, + extensionValue := { SecurityResult := p_securityResult } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation + ) := { + { + id := id_RedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID + + template (omit) PDUSessionResourceModifyItemModCfm m_pDUSessionResourceModifyItemModCfm( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceModifyItemModCfm.pDUSessionResourceModifyConfirmTransfer p_pDUSessionResourceModifyConfirmTransfer, + in template (omit) PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyConfirmTransfer := p_pDUSessionResourceModifyConfirmTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyItemModCfm + + template (omit) PDUSessionResourceModifyItemModInd m_pDUSessionResourceModifyItemModInd( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceModifyItemModInd.pDUSessionResourceModifyIndicationTransfer p_pDUSessionResourceModifyIndicationTransfer, + in template (omit) PDUSessionResourceModifyItemModInd.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyIndicationTransfer := p_pDUSessionResourceModifyIndicationTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyItemModInd + + template (omit) PDUSessionResourceModifyItemModReq m_pDUSessionResourceModifyItemModReq( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceModifyItemModReq.pDUSessionResourceModifyRequestTransfer p_pDUSessionResourceModifyRequestTransfer, + in template (omit) NAS_PDU p_nAS_PDU := omit, + in template (omit) PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + nAS_PDU := p_nAS_PDU, + pDUSessionResourceModifyRequestTransfer := p_pDUSessionResourceModifyRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyItemModReq + + template (value) PDUSessionResourceModifyItemModReq.iE_Extensions m_pDUSessionResourceModifyItemModReq_id_S_NSSAI( + in template (value) S_NSSAI p_s_nSSAI + ) := { + { + id := id_S_NSSAI, + criticality := reject, + extensionValue := { S_NSSAI := p_s_nSSAI } + } + } // End of template m_pDUSessionResourceModifyItemModReq_id_S_NSSAI + + template (value) PDUSessionResourceModifyItemModReq.iE_Extensions m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceModifyItemModRes m_pDUSessionResourceModifyItemModRes( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceModifyItemModRes.pDUSessionResourceModifyResponseTransfer p_pDUSessionResourceModifyResponseTransfer, + in template (omit) PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := omit + ) := { + + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyResponseTransfer := p_pDUSessionResourceModifyResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyItemModRes + + template (omit) PDUSessionResourceModifyUnsuccessfulTransfer m_pDUSessionResourceModifyUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceModifyUnsuccessfulTransfer + + template (omit) PDUSessionResourceNotifyItem m_pDUSessionResourceNotifyItem( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer, + in template (omit) PDUSessionResourceNotifyItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceNotifyTransfer := p_pDUSessionResourceNotifyTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceNotifyItem + + template (omit) PDUSessionResourceNotifyReleasedTransfer m_pDUSessionResourceNotifyReleasedTransfer( + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceNotifyReleasedTransfer + + template (value) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation + + template (omit) PDUSessionResourceNotifyTransfer m_pDUSessionResourceNotifyTransfer( + in template (omit) QosFlowNotifyList p_qosFlowNotifyList := omit, + in template (omit) QosFlowListWithCause p_qosFlowReleasedList := omit, + in template (omit) PDUSessionResourceNotifyTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowNotifyList := p_qosFlowNotifyList, + qosFlowReleasedList := p_qosFlowReleasedList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceNotifyTransfer + + template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceNotifyTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation + + template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceNotifyTransfer_id_QosFlowFeedbackList( + in template (value) QosFlowFeedbackList p_qosFlowFeedbackList + ) := { + { + id := id_QosFlowFeedbackList, + criticality := ignore, + extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } + } + } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_QosFlowFeedbackList + + template (omit) PDUSessionResourceReleaseCommandTransfer m_pDUSessionResourceReleaseCommandTransfer( + in template (value) Cause p_cause, + in template (omit) PDUSessionResourceReleaseCommandTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleaseCommandTransfer + + template (omit) PDUSessionResourceReleasedItemNot m_pDUSessionResourceReleasedItemNot( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceReleasedItemNot.pDUSessionResourceNotifyReleasedTransfer p_pDUSessionResourceNotifyReleasedTransfer, + in template (omit) PDUSessionResourceReleasedItemNot.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceNotifyReleasedTransfer := p_pDUSessionResourceNotifyReleasedTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleasedItemNot + + template (omit) PDUSessionResourceReleasedItemPSAck m_pDUSessionResourceReleasedItemPSAck( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceReleasedItemPSAck.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer, + in template (omit) PDUSessionResourceReleasedItemPSAck.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleasedItemPSAck + + template (omit) PDUSessionResourceReleasedItemPSFail m_pDUSessionResourceReleasedItemPSFail( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceReleasedItemPSFail.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer, + in template (omit) PDUSessionResourceReleasedItemPSFail.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleasedItemPSFail + + template (omit) PDUSessionResourceReleasedItemRelRes m_pDUSessionResourceReleasedItemRelRes( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer, + in template (omit) PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceReleaseResponseTransfer := p_pDUSessionResourceReleaseResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleasedItemRelRes + + template (omit) PDUSessionResourceReleaseResponseTransfer m_pDUSessionResourceReleaseResponseTransfer( + in template (omit) PDUSessionResourceReleaseResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceReleaseResponseTransfer + + template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation( + in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template m_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation + + template (omit) PDUSessionResourceResumeItemRESReq m_pDUSessionResourceResumeItemRESReq( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceResumeItemRESReq.uEContextResumeRequestTransfer p_uEContextResumeRequestTransfer, + in template (omit) PDUSessionResourceResumeItemRESReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + uEContextResumeRequestTransfer := p_uEContextResumeRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceResumeItemRESReq + + template (omit) PDUSessionResourceResumeItemRESRes m_pDUSessionResourceResumeItemRESRes( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceResumeItemRESRes.uEContextResumeResponseTransfer p_uEContextResumeResponseTransfer, + in template (omit) PDUSessionResourceResumeItemRESRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + uEContextResumeResponseTransfer := p_uEContextResumeResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceResumeItemRESRes + + template (omit) PDUSessionResourceSecondaryRATUsageItem m_pPDUSessionResourceSecondaryRATUsageItem( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceSecondaryRATUsageItem.secondaryRATDataUsageReportTransfer p_secondaryRATDataUsageReportTransfer, + in template (omit) PDUSessionResourceSecondaryRATUsageItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + secondaryRATDataUsageReportTransfer := p_secondaryRATDataUsageReportTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pPDUSessionResourceSecondaryRATUsageItem + + template (omit) PDUSessionResourceSetupItemCxtReq m_pDUSessionResourceSetupItemCxtReq( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) S_NSSAI p_s_NSSAI, + in template (value) PDUSessionResourceSetupItemCxtReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer, + in template (omit) NAS_PDU p_nAS_PDU := omit, + in template (omit) PDUSessionResourceSetupItemCxtReq.iE_Extensions p_iE_Extensions := omit ) := { - tAIBroadcastNR := p_tAIBroadcastNR - } // End of template m_broadcastCompletedAreaList_tAIBroadcastNR + pDUSessionID := p_pDUSessionID, + nAS_PDU := p_nAS_PDU, + s_NSSAI := p_s_NSSAI, + pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemCxtReq + + template (value) PDUSessionResourceSetupItemCxtReq.iE_Extensions m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceSetupItemCxtRes m_pDUSessionResourceSetupItemCxtRes( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceSetupItemCxtRes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer, + in template (omit) PDUSessionResourceSetupItemCxtRes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemCxtRes + + template (omit) PDUSessionResourceSetupItemHOReq m_pDUSessionResourceSetupItemHOReq( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) S_NSSAI p_s_NSSAI, + in template (value) PDUSessionResourceSetupItemHOReq.handoverRequestTransfer p_handoverRequestTransfer, + in template (omit) PDUSessionResourceSetupItemHOReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + s_NSSAI := p_s_NSSAI, + handoverRequestTransfer := p_handoverRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemHOReq + + template (value) PDUSessionResourceSetupItemHOReq.iE_Extensions m_pDUSessionResourceSetupItemHOReq_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceSetupItemSUReq m_pDUSessionResourceSetupItemSUReq( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) S_NSSAI p_s_NSSAI, + in template (value) PDUSessionResourceSetupItemSUReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer, + in template (omit) NAS_PDU p_pDUSessionNAS_PDU := omit, + in template (omit) PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionNAS_PDU := p_pDUSessionNAS_PDU, + s_NSSAI := p_s_NSSAI, + pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemSUReq + + template (value) PDUSessionResourceSetupItemSUReq.iE_Extensions m_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceSetupItemSURes m_pDUSessionResourceSetupItemSURes( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer, + in template (omit) PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupItemSURes + + template (value) PDUSessionResourceSetupRequestTransfer m_pDUSessionResourceSetupRequestTransfer( + in template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs p_protocolIEs + ) := { + protocolIEs := p_protocolIEs + } // End of template m_pDUSessionResourceSetupRequestTransfer + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( + in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate + ) := { + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_UL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible( + in template (value) DataForwardingNotPossible p_dataForwardingNotPossible + ) := { + { + id := id_DataForwardingNotPossible, + criticality := reject, + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType( + in template (value) PDUSessionType p_pDUSessionType + ) := { + { + id := id_PDUSessionType, + criticality := reject, + value_ := { PDUSessionType := p_pDUSessionType } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication( + in template (value) SecurityIndication p_securityIndication + ) := { + { + id := id_SecurityIndication, + criticality := reject, + value_ := { SecurityIndication := p_securityIndication } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance( + in template (value) NetworkInstance p_networkInstance + ) := { + { + id := id_NetworkInstance, + criticality := reject, + value_ := { NetworkInstance := p_networkInstance } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList( + in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList + ) := { + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_CommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability( + in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability + ) := { + { + id := id_DirectForwardingPathAvailability, + criticality := ignore, + value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { + { + id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstancen( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_RedundantCommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstance + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation( + in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation + ) := { + { + id := id_RedundantPDUSessionInformation, + criticality := ignore, + value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList( + in template (value) MBSSessionSetupRequestList p_mBSSessionSetupRequestList + ) := { + { + id := id_MBSSessionSetupRequestList, + criticality := ignore, + value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList + + template (omit) PDUSessionResourceSetupResponseTransfer m_pDUSessionResourceSetupResponseTransfer( + in template (value) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation, + in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, + in template (omit) SecurityResult p_securityResult := omit, + in template (omit) QosFlowListWithCause p_qosFlowFailedToSetupList := omit, + in template (omit) PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + securityResult := p_securityResult, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupResponseTransfer + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation + ) := { + { + id := id_RedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation( + in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator( + in template (value) MBS_SupportIndicator p_mBS_SupportIndicator + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList( + in template (value) MBSSessionSetupResponseList p_mBSSessionSetupResponseList + ) := { + { + id := id_MBSSessionSetupResponseList, + criticality := ignore, + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList + + template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList( + in template (value) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList + ) := { + { + id := id_MBSSessionFailedtoSetupList, + criticality := ignore, + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + } + } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList + + template (omit) PDUSessionResourceSetupUnsuccessfulTransfer m_pDUSessionResourceSetupUnsuccessfulTransfer( + in template (value) Cause p_cause, + in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, + in template (omit) PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSetupUnsuccessfulTransfer + + template (omit) PDUSessionResourceSuspendItemSUSReq m_pDUSessionResourceSuspendItemSUSReq( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceSuspendItemSUSReq.uEContextSuspendRequestTransfer p_uEContextSuspendRequestTransfer, + in template (omit) PDUSessionResourceSuspendItemSUSReq.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + uEContextSuspendRequestTransfer := p_uEContextSuspendRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSuspendItemSUSReq + + template (omit) PDUSessionResourceSwitchedItem m_pDUSessionResourceSwitchedItem( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceSwitchedItem.pathSwitchRequestAcknowledgeTransfer p_pathSwitchRequestAcknowledgeTransfer, + in template (omit) PDUSessionResourceSwitchedItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestAcknowledgeTransfer := p_pathSwitchRequestAcknowledgeTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceSwitchedItem + + template (value) PDUSessionResourceSwitchedItem.iE_Extensions m_pDUSessionResourceSwitchedItem_id_PduSessionExpectedUEActivityBehaviour( + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceSwitchedItem_id_PduSessionExpectedUEActivityBehaviour + + template (omit) PDUSessionResourceToBeSwitchedDLItem m_pDUSessionResourceToBeSwitchedDLItem( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceToBeSwitchedDLItem.pathSwitchRequestTransfer p_pathSwitchRequestTransfer, + in template (omit) PDUSessionResourceToBeSwitchedDLItem.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestTransfer := p_pathSwitchRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceToBeSwitchedDLItem + + template (omit) PDUSessionResourceToReleaseItemHOCmd m_pDUSessionResourceToReleaseItemHOCmd( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceToReleaseItemHOCmd.handoverPreparationUnsuccessfulTransfer p_handoverPreparationUnsuccessfulTransfer, + in template (omit) PDUSessionResourceToReleaseItemHOCmd.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + handoverPreparationUnsuccessfulTransfer := p_handoverPreparationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceToReleaseItemHOCmd + + template (omit) PDUSessionResourceToReleaseItemRelCmd m_pDUSessionResourceToReleaseItemRelCmd( + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (value) PDUSessionResourceToReleaseItemRelCmd.pDUSessionResourceReleaseCommandTransfer p_pDUSessionResourceReleaseCommandTransfer, + in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceReleaseCommandTransfer := p_pDUSessionResourceReleaseCommandTransfer, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionResourceToReleaseItemRelCmd + + template (value) PDUSessionType m_pDUSessionType(in PDUSessionType p_value := ipv4) := p_value; + + template (omit) PDUSessionUsageReport m_pDUSessionUsageReport( + in template (value) PDUSessionUsageReport.rATType p_rATType := nr, + in template (value) VolumeTimedReportList p_pDUSessionTimedReportList, + in template (omit) PDUSessionUsageReport.iE_Extensions p_iE_Extensions := omit + ) := { + rATType := p_rATType, + pDUSessionTimedReportList := p_pDUSessionTimedReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_pDUSessionUsageReport + + template (omit) PEIPSassistanceInformation m_pEIPSassistanceInformation( + in template (value)CNsubgroupID p_cNsubgroupID, + in template (omit) PEIPSassistanceInformation.iE_Extensions p_iE_Extensions := omit + ) := { + cNsubgroupID := p_cNsubgroupID, + iE_Extensions := p_iE_Extensions + } // End of template m_pEIPSassistanceInformation + + template (omit) PLMNAreaBasedQMC m_pLMNAreaBasedQMC( + in template (value) PLMNListforQMC p_plmnListforQMC, + in template (omit) PLMNAreaBasedQMC.iE_Extensions p_iE_Extensions := omit + ) := { + plmnListforQMC := p_plmnListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template m_pLMNAreaBasedQMC + + template (omit) PLMNSupportItem m_pLMNSupportItem( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) SliceSupportList p_sliceSupportList, + in template (omit) PLMNSupportItem.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + sliceSupportList := p_sliceSupportList, + iE_Extensions := p_iE_Extensions + } // End of template m_pLMNSupportItem + + template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_NPN_Support( + in template (value) NPN_Support p_nPN_Support + ) := { + { + id := id_NPN_Support, + criticality := reject, + extensionValue := { NPN_Support := p_nPN_Support } + } + } // End of template m_pLMNSupportItem_id_NPN_Support + + template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_ExtendedSliceSupportList( + in template (value) ExtendedSliceSupportList p_extendedSliceSupportList + ) := { + { + id := id_ExtendedSliceSupportList, + criticality := reject, + extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } + } + } // End of template m_pLMNSupportItem_id_ExtendedSliceSupportList + + template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_OnboardingSupport( + in template (value) OnboardingSupport p_onboardingSupport + ) := { + { + id := id_OnboardingSupport, + criticality := ignore, + extensionValue := { OnboardingSupport := p_onboardingSupport } + } + } // End of template m_pLMNSupportItem_id_OnboardingSupport + + template (omit) PNI_NPN_MobilityInformation m_pNI_NPN_MobilityInformation( + in template (value) Allowed_PNI_NPN_List p_allowed_PNI_NPI_List, + in template (omit) PNI_NPN_MobilityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + allowed_PNI_NPI_List := p_allowed_PNI_NPI_List, + iE_Extensions := p_iE_Extensions + } // End of template m_pNI_NPN_MobilityInformation + + template (value) Pre_emptionCapability m_pre_emptionCapability(in Pre_emptionCapability p_value := shall_not_trigger_pre_emption) := p_value; + + template (value) Pre_emptionVulnerability m_pre_emptionVulnerability(in Pre_emptionVulnerability p_value := not_pre_emptable) := p_value; + + template (value) PWSFailedCellIDList m_pWSFailedCellIDList_nR_CGI_PWSFailedList( + in template (value) NR_CGIList p_nR_CGI_PWSFailedList + ) := { + nR_CGI_PWSFailedList := p_nR_CGI_PWSFailedList + } // End of template m_pWSFailedCellIDList_nR_CGI_PWSFailedList + + template (value) PWSFailedCellIDList m_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList( + in template (value) EUTRA_CGIList p_eUTRA_CGI_PWSFailedList + ) := { + eUTRA_CGI_PWSFailedList := p_eUTRA_CGI_PWSFailedList + } // End of template m_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList + + template (value) PWSFailedCellIDList m_pWSFailedCellIDList_choice_Extensions( + in template (value) PWSFailedCellIDList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_pWSFailedCellIDList_choice_Extensions + + template (omit) QMCConfigInfo m_qMCConfigInfo( + in template (value) UEAppLayerMeasInfoList p_uEAppLayerMeasInfoList, + in template (omit) QMCConfigInfo.iE_Extensions p_iE_Extensions := omit + ) := { + uEAppLayerMeasInfoList := p_uEAppLayerMeasInfoList, + iE_Extensions := p_iE_Extensions + } // End of template m_qMCConfigInfo + + template (omit) QMCDeactivation m_qMCDeactivation( + in template (value) QoEReferenceList p_qoEReferenceList, + in template (omit) QMCDeactivation.iE_Extensions p_iE_Extensions := omit + ) := { + qoEReferenceList := p_qoEReferenceList, + iE_Extensions := p_iE_Extensions + } // End of template m_qMCDeactivation + + template (value) QosCharacteristics m_qosCharacteristics_nonDynamic5QI( + in template (value) NonDynamic5QIDescriptor p_nonDynamic5QI + ) := { + nonDynamic5QI := p_nonDynamic5QI + } // End of template m_qosCharacteristics_nonDynamic5QI + + template (value) QosCharacteristics m_qosCharacteristics_dynamic5QI( + in template (value) Dynamic5QIDescriptor p_dynamic5QI + ) := { + dynamic5QI := p_dynamic5QI + } // End of template m_qosCharacteristics_dynamic5QI + + template (value) QosCharacteristics m_qosCharacteristics_choice_Extensions( + in template (value) QosCharacteristics.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_qosCharacteristics_choice_Extensions + + template (omit) QosFlowAcceptedItem m_qosFlowAcceptedItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) QosFlowAcceptedItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template + + template (value) QosFlowAcceptedItem.iE_Extensions m_pLMNSupportItem_id_CurrentQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_pLMNSupportItem_id_ExtendedSliceSupportList + + template (omit) QosFlowAddOrModifyRequestItem m_qosFlowAddOrModifyRequestItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) QosFlowLevelQosParameters p_qosFlowLevelQosParameters := omit, + in template (omit) E_RAB_ID p_e_RAB_ID := omit, + in template (omit) QosFlowAddOrModifyRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, + e_RAB_ID := p_e_RAB_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowAddOrModifyRequestItem + + template (value) QosFlowAddOrModifyRequestItem.iE_Extensions m_qosFlowAddOrModifyRequestItem_id_TSCTrafficCharacteristics( + in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + } + } // End of template m_qosFlowAddOrModifyRequestItem_id_TSCTrafficCharacteristics + + template (value) QosFlowAddOrModifyRequestItem.iE_Extensions m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator( + in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator + ) := { + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator + + template (omit) QosFlowAddOrModifyResponseItem m_qosFlowAddOrModifyResponseItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) QosFlowAddOrModifyResponseItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowAddOrModifyResponseItem + + template (value) QosFlowAddOrModifyResponseItem.iE_Extensions m_qosFlowAddOrModifyResponseItem_id_CurrentQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_qosFlowAddOrModifyResponseItem_id_CurrentQoSParaSetIndex + + template (omit) QosFlowFeedbackItem m_qosFlowFeedbackItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) UpdateFeedback p_updateFeedback := omit, + in template (omit) ExtendedPacketDelayBudget p_cNpacketDelayBudgetDL := omit, + in template (omit) ExtendedPacketDelayBudget p_cNpacketDelayBudgetUL := omit, + in template (omit) QosFlowFeedbackItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + updateFeedback := p_updateFeedback, + cNpacketDelayBudgetDL := p_cNpacketDelayBudgetDL, + cNpacketDelayBudgetUL := p_cNpacketDelayBudgetUL, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowFeedbackItem + + template (omit) QosFlowInformationItem m_qosFlowInformationItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) DLForwarding p_dLForwarding := omit, + in template (omit) QosFlowInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dLForwarding := p_dLForwarding, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowInformationItem + + template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_ULForwarding( + in template (value) ULForwarding p_uLForwarding + ) := { + { + id := id_ULForwarding, + criticality := ignore, + extensionValue := { ULForwarding := p_uLForwarding } + } + } // End of template m_qosFlowInformationItem_id_ULForwarding + + template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceTNLAddrInfo( + in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template m_qosFlowInformationItem_id_SourceTNLAddrInfo + + template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceNodeTNLAddrInfo( + in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS + ) := { + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template m_qosFlowInformationItem_id_SourceNodeTNLAddrInfo + + template (omit) QosFlowLevelQosParameters m_qosFlowLevelQosParameters( + in template (value) QosCharacteristics p_qosCharacteristics, + in template (value) AllocationAndRetentionPriority p_allocationAndRetentionPriority, + in template (omit) GBR_QosInformation p_gBR_QosInformation := omit, + in template (omit) ReflectiveQosAttribute p_reflectiveQosAttribute := omit, + in template (omit) AdditionalQosFlowInformation p_additionalQosFlowInformation := omit, + in template (omit) QosFlowLevelQosParameters.iE_Extensions p_iE_Extensions := omit + ) := { + qosCharacteristics := p_qosCharacteristics, + allocationAndRetentionPriority := p_allocationAndRetentionPriority, + gBR_QosInformation := p_gBR_QosInformation, + reflectiveQosAttribute := p_reflectiveQosAttribute, + additionalQosFlowInformation := p_additionalQosFlowInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowLevelQosParameters + + template (value) QosFlowLevelQosParameters.iE_Extensions m_qosFlowLevelQosParameters_id_QosMonitoringRequest( + in template (value) QosMonitoringRequest p_qosMonitoringRequest + ) := { + { + id := id_QosMonitoringRequest, + criticality := ignore, + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + } + } // End of template m_qosFlowLevelQosParameters_id_QosMonitoringRequest + + template (value) QosFlowLevelQosParameters.iE_Extensions m_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency( + in template (value) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency + ) := { + { + id := id_QosMonitoringReportingFrequency, + criticality := ignore, + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + } + } // End of template m_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency + + template (value) QosMonitoringRequest m_qosMonitoringRequest(in QosMonitoringRequest p_value := ul) := p_value; + + template (omit) QosFlowWithCauseItem m_qosFlowWithCauseItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (value) Cause p_cause, + in template (omit) QosFlowWithCauseItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowWithCauseItem + + template (omit) QosFlowModifyConfirmItem m_qosFlowModifyConfirmItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) QosFlowModifyConfirmItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowModifyConfirmItem + + template (omit) QosFlowNotifyItem m_qosFlowNotifyItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (value) NotificationCause p_notificationCause, + in template (omit) QosFlowNotifyItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + notificationCause := p_notificationCause, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowNotifyItem + + template (value) QosFlowNotifyItem.iE_Extensions m_qosFlowNotifyItem_id_CurrentQoSParaSetIndex( + in template (value) AlternativeQoSParaSetNotifyIndex p_alternativeQoSParaSetNotifyIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } + } + } // End of template m_qosFlowNotifyItem_id_CurrentQoSParaSetIndex + + template (omit) QosFlowParametersItem m_qosFlowParametersItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) AlternativeQoSParaSetList p_alternativeQoSParaSetList := omit, + in template (omit) QosFlowParametersItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + alternativeQoSParaSetList := p_alternativeQoSParaSetList, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowParametersItem + + template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_CNPacketDelayBudgetDL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_qosFlowParametersItem_id_CNPacketDelayBudgetDL + + template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_CNPacketDelayBudgetUL( + in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template m_qosFlowParametersItem_id_CNPacketDelayBudgetUL + + template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_BurstArrivalTimeDownlink( + in template (value) BurstArrivalTime p_burstArrivalTime + ) := { + { + id := id_BurstArrivalTimeDownlink, + criticality := ignore, + extensionValue := { BurstArrivalTime := p_burstArrivalTime } + } + } // End of template m_qosFlowParametersItem_id_BurstArrivalTimeDownlink + + template (omit) QosFlowPerTNLInformation m_qosFlowPerTNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, + in template (value) AssociatedQosFlowList p_associatedQosFlowList, + in template (omit) QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := omit + ) := { + uPTransportLayerInformation := p_uPTransportLayerInformation, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowPerTNLInformation + + template (omit) QosFlowPerTNLInformationItem m_qosFlowPerTNLInformationItem( + in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation, + in template (omit) QosFlowPerTNLInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowPerTNLInformation := p_qosFlowPerTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowPerTNLInformationItem + + template (omit) QosFlowSetupRequestItem m_qosFlowSetupRequestItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (value) QosFlowLevelQosParameters p_qosFlowLevelQosParameters, + in template (omit) E_RAB_ID p_e_RAB_ID := omit, + in template (omit) QosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, + e_RAB_ID := p_e_RAB_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowSetupRequestItem + + template (value) QosFlowSetupRequestItem.iE_Extensions m_qosFlowSetupRequestItem_id_TSCTrafficCharacteristics( + in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + } + } // End of template m_qosFlowSetupRequestItem_id_TSCTrafficCharacteristics + + template (value) QosFlowSetupRequestItem.iE_Extensions m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator( + in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator + ) := { + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator + + template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, + in template (omit) QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dataForwardingAccepted := p_dataForwardingAccepted, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowItemWithDataForwarding + + template (value) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( + in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex + + template (omit) QosFlowToBeForwardedItem m_qosFlowToBeForwardedItem( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (omit) QosFlowToBeForwardedItem.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template m_qosFlowToBeForwardedItem + + template (omit) QoSFlowsUsageReport_Item m_qoSFlowsUsageReport_Item( + in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, + in template (value) QoSFlowsUsageReport_Item.rATType p_rATType := nr, + in template (value) VolumeTimedReportList p_qoSFlowsTimedReportList, + in template (omit) QoSFlowsUsageReport_Item.iE_Extensions p_iE_Extensions := omit + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + rATType := p_rATType, + qoSFlowsTimedReportList := p_qoSFlowsTimedReportList, + iE_Extensions := p_iE_Extensions + } // End of template m_qoSFlowsUsageReport_Item + + template (value) Range m_range(in Range p_value := m50) := p_value; + + template (omit) RANStatusTransfer_TransparentContainer m_rANStatusTransfer_TransparentContainer( + in template (value) DRBsSubjectToStatusTransferList p_dRBsSubjectToStatusTransferList, + in template (omit) RANStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := omit + ) := { + dRBsSubjectToStatusTransferList := p_dRBsSubjectToStatusTransferList, + iE_Extensions := p_iE_Extensions + } // End of template m_rANStatusTransfer_TransparentContainer + + template (value) RAT_Information m_rAT_Information(in RAT_Information p_value := unlicensed) := p_value; + + template (omit) RATRestrictions_Item m_rATRestrictions_Item( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) RATRestrictionInformation p_rATRestrictionInformation, + in template (omit) RATRestrictions_Item.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + rATRestrictionInformation := p_rATRestrictionInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_rATRestrictions_Item + + template (value) RATRestrictions_Item.iE_Extensions m_rATRestrictions_Item_id_ExtendedRATRestrictionInformation( + in template (value) ExtendedRATRestrictionInformation p_extendedRATRestrictionInformation + ) := { + { + id := id_ExtendedRATRestrictionInformation, + criticality := ignore, + extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } + } + } // End of template m_rATRestrictions_Item_id_ExtendedRATRestrictionInformation + + template (omit) RecommendedCellsForPaging m_recommendedCellsForPaging( + in template (value) RecommendedCellList p_recommendedCellList, + in template (omit) RecommendedCellsForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + recommendedCellList := p_recommendedCellList, + iE_Extensions := p_iE_Extensions + } // End of template m_recommendedCellsForPaging + + template (omit) RecommendedCellItem m_recommendedCellItem( + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (omit) RecommendedCellItem.timeStayedInCell p_timeStayedInCell := omit, + in template (omit) RecommendedCellItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template m_recommendedCellItem + + template (omit) RecommendedRANNodesForPaging m_recommendedRANNodesForPaging( + in template (value) RecommendedRANNodeList p_recommendedRANNodeList, + in template (omit) RecommendedRANNodesForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + recommendedRANNodeList := p_recommendedRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template m_recommendedRANNodesForPaging + + template (omit) RecommendedRANNodeItem m_recommendedRANNodeItem( + in template (value) AMFPagingTarget p_aMFPagingTarget, + in template (omit) RecommendedRANNodeItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMFPagingTarget := p_aMFPagingTarget, + iE_Extensions := p_iE_Extensions + } // End of template m_recommendedRANNodeItem + + template (value) RedCapIndication m_redCapIndication(in RedCapIndication p_value := redcap) := p_value; + + template (value) RedirectionVoiceFallback m_redirectionVoiceFallback(in RedirectionVoiceFallback p_value := possible) := p_value; + + template (omit) RedundantPDUSessionInformation m_redundantPDUSessionInformation( + in template (value) RSN p_rSN, + in template (omit) RedundantPDUSessionInformation.iE_Extensions p_iE_Extensions := omit + ) := { + rSN := p_rSN, + iE_Extensions := p_iE_Extensions + } // End of template m_redundantPDUSessionInformation + + template (value) RedundantPDUSessionInformation.iE_Extensions m_redundantPDUSessionInformation_id_PDUSessionPairID( + in template (value) PDUSessionPairID p_pDUSessionPairID + ) := { + { + id := id_PDUSessionPairID, + criticality := ignore, + extensionValue := { PDUSessionPairID := p_pDUSessionPairID } + } + } // End of template m_redundantPDUSessionInformation_id_PDUSessionPairID + + template (value) RedundantQosFlowIndicator m_RedundantQosFlowIndicator(in RedundantQosFlowIndicator p_value := true_) := p_value; + + template (value) ReflectiveQosAttribute m_reflectiveQosAttribute(in ReflectiveQosAttribute p_value := subject_to) := p_value; - template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( - in template (value) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR - ) := { - emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR - } // End of template m_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR + template (value) ReportArea m_reportArea(in ReportArea p_value := cell) := p_value; - template (value) BroadcastCompletedAreaList m_broadcastCompletedAreaList_ext( - in template (value) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_broadcastCompletedAreaList_ext - - template (value) BroadcastPLMNList m_ie_broadcastPLMNList( - in template (value) BroadcastPLMNList p_list - ) := p_list; - - template (omit) BroadcastPLMNItem m_ie_broadcastPLMNItem( - in template (value) PLMNIdentity p_plmnId := PX_PLMN_IDENTITY, - in template (value) SliceSupportList p_ssl, - in template (omit) BroadcastPLMNItem.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_plmnId, - tAISliceSupportList := p_ssl, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_broadcastPLMNItem - - template (omit) BluetoothMeasurementConfiguration m_bluetoothMeasurementConfiguration( - in template (value) BluetoothMeasConfig p_bluetoothMeasConfig, - in template (omit) BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := omit, - in template (omit) BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := omit, - in template (omit) BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := omit - ) := { - bluetoothMeasConfig := p_bluetoothMeasConfig, - bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, - bt_rssi := p_bt_rssi, - iE_Extensions := p_iE_Extensions - } // End of template m_bluetoothMeasurementConfiguration - - template (omit) BluetoothMeasConfigNameItem m_bluetoothMeasConfigNameItem( - in template (value) BluetoothName p_bluetoothName, - in template (omit) BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := omit - ) := { - bluetoothName := p_bluetoothName, - iE_Extensions := p_iE_Extensions - } // End of template m_bluetoothMeasConfigNameItem + template (value) ResetAll m_resetAll(in ResetAll p_value := reset_all) := p_value; - template (value) BluetoothMeasConfig m_bluetoothMeasConfig(in BluetoothMeasConfig p_value := setup) := p_value; + template (value) ReportAmountMDT m_reportAmountMDT(in ReportAmountMDT p_value := r1) := p_value; - template (value) CancelAllWarningMessages m_cancelAllWarningMessages(in CancelAllWarningMessages p_value := true_) := p_value; + template (value) ReportIntervalMDT m_reportIntervalMDT(in ReportIntervalMDT p_value := ms120) := p_value; - template (omit) CancelledCellsInEAI_EUTRA_Item m_cancelledCellsInEAI_EUTRA_Item( - in template (value) EUTRA_CGI p_eUTRA_CGI, - in template (value) NumberOfBroadcasts p_numberOfBroadcasts, - in template (omit) CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template m_cancelledCellsInEAI_EUTRA_Item - - template (omit) CancelledCellsInEAI_NR_Item m_cancelledCellsInEAI_NR_Item( - in template (value) NR_CGI p_nR_CGI, - in template (value) NumberOfBroadcasts p_numberOfBroadcasts, - in template (omit) CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template m_cancelledCellsInEAI_NR_Item + template (value) ExtendedReportIntervalMDT m_extendedReportIntervalMDT(in ExtendedReportIntervalMDT p_value := ms20480) := p_value; - template (omit) CancelledCellsInTAI_EUTRA_Item m_cancelledCellsInTAI_EUTRA_Item( - in template (value) EUTRA_CGI p_eUTRA_CGI, - in template (value) NumberOfBroadcasts p_numberOfBroadcasts, - in template (omit) CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template m_cancelledCellsInTAI_EUTRA_Item - - template (omit) CancelledCellsInTAI_NR_Item m_CancelledCellsInTAI_NR_Item( - in template (value) NR_CGI p_nR_CGI, - in template (value) NumberOfBroadcasts p_numberOfBroadcasts, - in template (omit) CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template m_CancelledCellsInTAI_NR_Item - - template (omit) CandidateCellItem m_candidateCellItem( - in template (value) CandidateCell p_candidateCell, - in template (omit) CandidateCellItem.iE_Extensions p_iE_Extensions := omit - ) := { - candidateCell := p_candidateCell, - iE_Extensions := p_iE_Extensions - } // End of template m_candidateCellItem - - template (value) CandidateCell m_candidateCell_candidateCGI( - in template (value) CandidateCellID p_candidateCGI + template (value) ResetType m_resetType_nG_Interface( + in template (value) ResetAll p_nG_Interface + ) := { + nG_Interface := p_nG_Interface + } // End of template m_resetType_nG_Interface + + template (value) ResetType m_resetType_partOfNG_Interface( + in template (value) UE_associatedLogicalNG_connectionList p_partOfNG_Interface ) := { - candidateCGI := p_candidateCGI - } // End of template m_candidateCell_candidateCGI + partOfNG_Interface := p_partOfNG_Interface + } // End of template m_resetType_partOfNG_Interface - template (value) CandidateCell m_candidateCell_candidatePCI( - in template (value) CandidatePCI p_candidatePCI + template (value) ResetType m_resetType_choice_Extensions( + in template (value) ResetType.choice_Extensions p_choice_Extensions ) := { - candidatePCI := p_candidatePCI - } // End of template m_candidateCell_candidatePCI - - template (value) CandidateCell m_candidateCell_ext( - in template (value) CandidateCell.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_candidateCell_ext - - template (omit) CandidateCellID m_candidateCellID( - in template (value) NR_CGI p_candidateCellID, - in template (omit) CandidateCellID.iE_Extensions p_iE_Extensions := omit - ) := { - candidateCellID := p_candidateCellID, - iE_Extensions := p_iE_Extensions - } // End of template m_candidateCellID - - template (omit) CandidatePCI m_candidatePCI( - in template (value) CandidatePCI.candidatePCI p_candidatePCI, - in template (value) CandidatePCI.candidateNRARFCN p_candidateNRARFCN, - in template (omit) CandidatePCI.iE_Extensions p_iE_Extensions := omit - ) := { - candidatePCI := p_candidatePCI, - candidateNRARFCN := p_candidateNRARFCN, - iE_Extensions := p_iE_Extensions - } // End of template m_candidatePCI + choice_Extensions := p_choice_Extensions + } // End of template m_resetType_choice_Extensions - template (value) Cause m_cause_radioNetwork( - in template (value) CauseRadioNetwork p_radioNetwork - ) := { - radioNetwork := p_radioNetwork - } // End of template m_cause_radioNetwork - - template (value) Cause m_cause_transport( - in template (value) CauseTransport p_transport - ) := { - transport := p_transport - } // End of template m_cause_transport - - template (value) Cause m_cause_nas( - in template (value) CauseNas p_nas - ) := { - nas := p_nas - } // End of template m_cause_nas - - template (value) Cause m_cause_protocol( - in template (value) CauseProtocol p_protocol - ) := { - protocol := p_protocol - } // End of template m_cause_protocol + template (value) RRCEstablishmentCause m_rRCEstablishmentCause(in RRCEstablishmentCause p_value := emergency) := p_value; - template (value) Cause m_cause_misc( - in template (value) CauseMisc p_misc - ) := { - misc := p_misc - } // End of template m_cause_misc - - template (value) Cause m_cause_ext( - in template (value) Cause.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_cause_ext - - template (value) CauseMisc m_causeMisc(in CauseMisc p_value := unspecified) := p_value; - template (value) CauseNas m_causeNas(in CauseNas p_value := unspecified) := p_value; - template (value) CauseProtocol m_causeProtocol(in CauseProtocol p_value := unspecified) := p_value; - template (value) CauseRadioNetwork m_causeRadioNetwork(in CauseRadioNetwork p_value := unspecified) := p_value; - template (value) CauseTransport m_causeTransport(in CauseTransport p_value := unspecified) := p_value; - - template (omit) Cell_CAGInformation m_cell_CAGInformation( - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (value) CellCAGList p_cellCAGList, - in template (omit) Cell_CAGInformation.iE_Extensions p_iE_Extensions := omit - ) := { - nGRAN_CGI := p_nGRAN_CGI, - cellCAGList := p_cellCAGList, - iE_Extensions := p_iE_Extensions - } // End of template m_cell_CAGInformation - - template (omit) CellIDBroadcastEUTRA_Item m_cellIDBroadcastEUTRA_Item( - in template (value) EUTRA_CGI p_eUTRA_CGI, - in template (omit) CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template m_cellIDBroadcastEUTRA_Item + template (value) RRCInactiveTransitionReportRequest m_rRCInactiveTransitionReportRequest(in RRCInactiveTransitionReportRequest p_value := subsequent_state_transition_report) := p_value; - template (omit) CellIDBroadcastNR_Item m_cellIDBroadcastNR_Item( - in template (value) NR_CGI p_nR_CGI, - in template (omit) CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template m_cellIDBroadcastNR_Item - - template (omit) CellIDCancelledEUTRA_Item m_cellIDCancelledEUTRA_Item( - in template (value) EUTRA_CGI p_eUTRA_CGI, - in template (value) NumberOfBroadcasts p_numberOfBroadcasts, - in template (omit) CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template m_cellIDCancelledEUTRA_Item - - template (omit) CellIDCancelledNR_Item m_cellIDCancelledNR_Item( - in template (value) NR_CGI p_nR_CGI, - in template (value) NumberOfBroadcasts p_numberOfBroadcasts, - in template (omit) CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template m_cellIDCancelledNR_Item - - template (value) CellIDListForRestart m_cellIDListForRestart_eUTRA_CGIListforRestart( - in template (value) EUTRA_CGIList p_eUTRA_CGIListforRestart - ) := { - eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart - } // End of template m_cellIDListForRestart_misc + template (value) RRCState m_rRCState(in RRCState p_value := inactive) := p_value; - template (value) CellIDListForRestart m_cellIDListForRestart_nR_CGIListforRestart( - in template (value) NR_CGIList p_nR_CGIListforRestart - ) := { - nR_CGIListforRestart := p_nR_CGIListforRestart - } // End of template m_cellIDListForRestart_nR_CGIListforRestart + template (value) RSN m_rSN(in RSN p_value := v1) := p_value; - template (value) CellIDListForRestart m_cellIDListForRestart_ext( - in template (value) CellIDListForRestart.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_cellIDListForRestart_ext + template (omit) RIMInformationTransfer m_rIMInformationTransfer( + in template (value) TargetRANNodeID_RIM p_targetRANNodeID_RIM, + in template (value) SourceRANNodeID p_sourceRANNodeID, + in template (value) RIMInformation p_rIMInformation, + in template (omit) RIMInformationTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + targetRANNodeID_RIM := p_targetRANNodeID_RIM, + sourceRANNodeID := p_sourceRANNodeID, + rIMInformation := p_rIMInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_rIMInformationTransfer + + template (omit) RIMInformation m_rIMInformation( + in template (value) GNBSetID p_targetgNBSetID, + in template (value) RIMInformation.rIM_RSDetection p_rIM_RSDetection := rs_detected, + in template (omit) RIMInformation.iE_Extensions p_iE_Extensions := omit + ) := { + targetgNBSetID := p_targetgNBSetID, + rIM_RSDetection := p_rIM_RSDetection, + iE_Extensions := p_iE_Extensions + } // End of template m_rIMInformation + + template (omit) ScheduledCommunicationTime m_scheduledCommunicationTime( + in template (omit) ScheduledCommunicationTime.dayofWeek p_dayofWeek := omit, + in template (omit) ScheduledCommunicationTime.timeofDayStart p_timeofDayStart := omit, + in template (omit) ScheduledCommunicationTime.timeofDayEnd p_timeofDayEnd := omit, + in template (omit) ScheduledCommunicationTime.iE_Extensions p_iE_Extensions := omit + ) := { + dayofWeek := p_dayofWeek, + timeofDayStart := p_timeofDayStart, + timeofDayEnd := p_timeofDayEnd, + iE_Extensions := p_iE_Extensions + } // End of template m_scheduledCommunicationTime + + template (omit) SecondaryRATUsageInformation m_secondaryRATUsageInformation( + in template (omit) PDUSessionUsageReport p_pDUSessionUsageReport := omit, + in template (omit) QoSFlowsUsageReportList p_qosFlowsUsageReportList := omit, + in template (omit) SecondaryRATUsageInformation.iE_Extension p_iE_Extensions := omit + ) := { + pDUSessionUsageReport := p_pDUSessionUsageReport, + qosFlowsUsageReportList := p_qosFlowsUsageReportList, + iE_Extension := p_iE_Extensions + } // End of template m_secondaryRATUsageInformation + + template (omit) SecondaryRATDataUsageReportTransfer m_secondaryRATDataUsageReportTransfer( + in template (omit) SecondaryRATUsageInformation p_secondaryRATUsageInformation := omit, + in template (omit) SecondaryRATDataUsageReportTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + secondaryRATUsageInformation := p_secondaryRATUsageInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_secondaryRATDataUsageReportTransfer + + template (omit) SecurityContext m_securityContext( + in template (value) NextHopChainingCount p_nextHopChainingCount, + in template (value) SecurityKey p_nextHopNH, + in template (omit) SecurityContext.iE_Extensions p_iE_Extensions := omit + ) := { + nextHopChainingCount := p_nextHopChainingCount, + nextHopNH := p_nextHopNH, + iE_Extensions := p_iE_Extensions + } // End of template m_securityContext + + template (omit) SecurityIndication m_securityIndication( + in template (value) IntegrityProtectionIndication p_integrityProtectionIndication, + in template (value) ConfidentialityProtectionIndication p_confidentialityProtectionIndication, + in template (omit) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate_UL := omit, + in template (omit) SecurityIndication.iE_Extensions p_iE_Extensions := omit + ) := { + integrityProtectionIndication := p_integrityProtectionIndication, + confidentialityProtectionIndication := p_confidentialityProtectionIndication, + maximumIntegrityProtectedDataRate_UL := p_maximumIntegrityProtectedDataRate_UL, + // The above IE shall be present if integrity protection is required or preferred + iE_Extensions := p_iE_Extensions + } // End of template m_securityIndication + + template (value) SecurityIndication.iE_Extensions m_securityIndication_id_MaximumIntegrityProtectedDataRate_DL( + in template (value) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate + ) := { + { + id := id_MaximumIntegrityProtectedDataRate_DL, + criticality := ignore, + extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } + } + } // End of template m_securityIndication_id_MaximumIntegrityProtectedDataRate_DL - template (value) CellSize m_cellSize(in CellSize p_value := medium) := p_value; + template (omit) SecurityResult m_securityResult( + in template (value) IntegrityProtectionResult p_integrityProtectionResult, + in template (value) ConfidentialityProtectionResult p_confidentialityProtectionResult, + in template (omit) SecurityResult.iE_Extensions p_iE_Extensions := omit + ) := { + integrityProtectionResult := p_integrityProtectionResult, + confidentialityProtectionResult := p_confidentialityProtectionResult, + iE_Extensions := p_iE_Extensions + } // End of template m_securityResult + + template (omit) SensorMeasurementConfiguration m_sensorMeasurementConfiguration( + in template (value) SensorMeasConfig p_sensorMeasConfig, + in template (omit) SensorMeasConfigNameList p_sensorMeasConfigNameList := omit, + in template (omit) SensorMeasurementConfiguration.iE_Extensions p_iE_Extensions := omit + ) := { + sensorMeasConfig := p_sensorMeasConfig, + sensorMeasConfigNameList := p_sensorMeasConfigNameList, + iE_Extensions := p_iE_Extensions + } // End of template m_sensorMeasurementConfiguration + + template (omit) SensorMeasConfigNameItem m_sensorMeasConfigNameItem( + in template (value) SensorNameConfig p_sensorNameConfig, + in template (omit) SensorMeasConfigNameItem.iE_Extensions p_iE_Extensions := omit + ) := { + sensorNameConfig := p_sensorNameConfig, + iE_Extensions := p_iE_Extensions + } // End of template m_sensorMeasConfigNameItem - template (omit) CellType m_cellType( - in template (value) CellSize p_cellSize, - in template (omit) CellType.iE_Extensions p_iE_Extensions := omit - ) := { - cellSize := p_cellSize, - iE_Extensions := p_iE_Extensions - } // End of template m_cellType - - template (value) CEmodeBSupport_Indicator m_cEmodeBSupport_Indicator(in CEmodeBSupport_Indicator p_value := supported) := p_value; - template (value) CEmodeBrestricted m_cEmodeBrestricted(in CEmodeBrestricted p_value := restricted) := p_value; - - template (omit) CNAssistedRANTuning m_cNAssistedRANTuning( - in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, - in template (omit) CNAssistedRANTuning.iE_Extensions p_iE_Extensions := omit - ) := { - expectedUEBehaviour := p_expectedUEBehaviour, - iE_Extensions := p_iE_Extensions - } // End of template m_cNAssistedRANTuning - - template (omit) CNTypeRestrictionsForEquivalentItem m_cNTypeRestrictionsForEquivalentItem( - in template (value) PLMNIdentity p_plmnIdentity, - in template (value) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type, - in template (omit) CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := omit - ) := { - plmnIdentity := p_plmnIdentity, - cn_Type := p_cn_Type, - iE_Extensions := p_iE_Extensions - } // End of template m_cNTypeRestrictionsForEquivalentItem + template (value) SensorMeasConfig m_sensorMeasConfig(in SensorMeasConfig p_value := setup) := p_value; - template (value) CNTypeRestrictionsForServing m_cNTypeRestrictionsForServing(in CNTypeRestrictionsForServing p_value := epc_forbidden) := p_value; + template (value) SensorNameConfig m_sensorNameConfig_uncompensatedBarometricConfig( + in template (value) SensorNameConfig.uncompensatedBarometricConfig p_uncompensatedBarometricConfig := true_ + ) := { + uncompensatedBarometricConfig := p_uncompensatedBarometricConfig + } // End of template m_sensorNameConfig_uncompensatedBarometricConfig - template (omit) CompletedCellsInEAI_EUTRA_Item m_completedCellsInEAI_EUTRA_Item( - in template (value) EUTRA_CGI p_eUTRA_CGI, - in template (omit) CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template m_completedCellsInEAI_EUTRA_Item + template (value) SensorNameConfig m_sensorNameConfig_ueSpeedConfig( + in template (value) SensorNameConfig.ueSpeedConfig p_ueSpeedConfig := true_ + ) := { + ueSpeedConfig := p_ueSpeedConfig + } // End of template m_sensorNameConfig_ueSpeedConfig - template (omit) CompletedCellsInEAI_NR_Item m_completedCellsInEAI_NR_Item( - in template (value) NR_CGI p_nR_CGI, - in template (omit) CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template m_completedCellsInEAI_NR_Item + template (value) SensorNameConfig m_sensorNameConfig_ueOrientationConfig( + in template (value) SensorNameConfig.ueOrientationConfig p_ueOrientationConfig := true_ + ) := { + ueOrientationConfig := p_ueOrientationConfig + } // End of template m_sensorNameConfig_ueOrientationConfig - template (omit) CompletedCellsInTAI_EUTRA_Item m_completedCellsInTAI_EUTRA_Item( - in template (value) EUTRA_CGI p_eUTRA_CGI, - in template (omit) CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template m_completedCellsInTAI_EUTRA_Item + template (value) SensorNameConfig m_sensorNameConfig_choice_Extensions( + in template (value) SensorNameConfig.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_sensorNameConfig_choice_Extensions - template (omit) CompletedCellsInTAI_NR_Item m_completedCellsInTAI_NR_Item( - in template (value) NR_CGI p_nR_CGI, - in template (omit) CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template m_completedCellsInTAI_NR_Item - - template (value) ConcurrentWarningMessageInd m_concurrentWarningMessageInd(in ConcurrentWarningMessageInd p_value := true_) := p_value; - template (value) ConfidentialityProtectionIndication m_confidentialityProtectionIndication(in ConfidentialityProtectionIndication p_value := required) := p_value; - template (value) ConfidentialityProtectionResult m_confidentialityProtectionResult(in ConfidentialityProtectionResult p_value := performed) := p_value; - template (value) ConfiguredTACIndication m_configuredTACIndication(in ConfiguredTACIndication p_value := true_) := p_value; - - template (omit) CoreNetworkAssistanceInformationForInactive m_coreNetworkAssistanceInformationForInactive( - in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, - in template (value) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer, - in template (value) TAIListForInactive p_tAIListForInactive, - in template (omit) PagingDRX p_uESpecificDRX := omit, - in template (omit) MICOModeIndication p_mICOModeIndication := omit, - in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, - in template (omit) CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := omit - ) := { - uEIdentityIndexValue := p_uEIdentityIndexValue, - uESpecificDRX := p_uESpecificDRX, - periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, - mICOModeIndication := p_mICOModeIndication, - tAIListForInactive := p_tAIListForInactive, - expectedUEBehaviour := p_expectedUEBehaviour, - iE_Extensions := p_iE_Extensions - } // End of template m_coreNetworkAssistanceInformationForInactive - - template (value) CoreNetworkAssistanceInformationForInactive.iE_Extensions m_coreNetworkAssistanceInformationForInactive_paging( - in template (value) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation, - in template (value) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue, - in template (value) UERadioCapabilityForPaging p_uERadioCapabilityForPaging, - in template (value) MicoAllPLMN p_micoAllPLMN - ) := { - { - id := id_EUTRA_PagingeDRXInformation, - criticality := ignore, - extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } - }, - { - id := id_ExtendedUEIdentityIndexValue, - criticality := ignore, - extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } - }, - { - id := id_UERadioCapabilityForPaging, - criticality := ignore, - extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } - }, - { - id := id_MicoAllPLMN, - criticality := ignore, - extensionValue := { MicoAllPLMN := p_micoAllPLMN } - } - // TODO To be enhanced - } // End of template m_coreNetworkAssistanceInformationForInactive_paging + template (omit) ServedGUAMIItem m_servedGUAMIItem( + in template (value) GUAMI p_gUAMI, + in template (omit) AMFName p_backupAMFName := omit, + in template (omit) ServedGUAMIItem.iE_Extensions p_iE_Extensions := omit + ) := { + gUAMI := p_gUAMI, + backupAMFName := p_backupAMFName, + iE_Extensions := p_iE_Extensions + } // End of template m_servedGUAMIItem - template (omit) COUNTValueForPDCP_SN12 m_cOUNTValueForPDCP_SN12( - in template (value) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12, - in template (value) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12, - in template (omit) COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := omit - ) := { - pDCP_SN12 := p_pDCP_SN12, - hFN_PDCP_SN12 := p_hFN_PDCP_SN12, - iE_Extensions := p_iE_Extensions - } // End of template m_cOUNTValueForPDCP_SN12 - - template (omit) COUNTValueForPDCP_SN18 m_cOUNTValueForPDCP_SN18( - in template (value) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18, - in template (value) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18, - in template (omit) COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := omit - ) := { - pDCP_SN18 := p_pDCP_SN18, - hFN_PDCP_SN18 := p_hFN_PDCP_SN18, - iE_Extensions := p_iE_Extensions - } // End of template m_cOUNTValueForPDCP_SN18 - - template (value) CPTransportLayerInformation m_cPTransportLayerInformation_endpointIPAddress( - in template (value) TransportLayerAddress p_endpointIPAddress := PX_TRANSPORT_LAYER_ADDRESS - ) := { - endpointIPAddress := p_endpointIPAddress - } // End of template m_cPTransportLayerInformation_endpointIPAddress - - template (value) CPTransportLayerInformation m_cPTransportLayerInformation_choice_Extensions( - in template (value) CPTransportLayerInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_cPTransportLayerInformation_choice_Extensions - - template (value) CPTransportLayerInformation.choice_Extensions m_cPTransportLayerInformation_ext( - in template (value) EndpointIPAddressAndPort p_EndpointIPAddressAndPort - ) := { - id := id_EndpointIPAddressAndPort, - criticality := reject, - value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } - } // End of template m_cPTransportLayerInformation_ext - - template (omit) CriticalityDiagnostics m_criticalityDiagnostics( - in template (omit) ProcedureCode p_procedureCode := omit, - in template (omit) TriggeringMessage p_triggeringMessage := omit, - in template (omit) Criticality p_procedureCriticality := omit, - in template (omit) CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := omit, - in template (omit) CriticalityDiagnostics.iE_Extensions p_iE_Extensions := omit - ) := { - procedureCode := p_procedureCode, - triggeringMessage := p_triggeringMessage, - procedureCriticality := p_procedureCriticality, - iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, - iE_Extensions := p_iE_Extensions - } // End of template m_criticalityDiagnostics - - template (omit) CriticalityDiagnostics_IE_Item m_criticalityDiagnostics_IE_Item( - in template (value) Criticality p_iECriticality, - in template (value) ProtocolIE_ID p_iE_ID, - in template (value) TypeOfError p_typeOfError, - in template (omit) CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := omit + template (value) ServedGUAMIItem.iE_Extensions m_servedGUAMIItem_id_GUAMIType( + in template (value) GUAMIType p_gUAMIType ) := { - iECriticality := p_iECriticality, - iE_ID := p_iE_ID, - typeOfError := p_typeOfError, - iE_Extensions := p_iE_Extensions - } // End of template m_criticalityDiagnostics_IE_Item - - template (omit) CellBasedMDT_NR m_cellBasedMDT_NR( - in template (value) CellIdListforMDT_NR p_cellIdListforMDT, - in template (omit) CellBasedMDT_NR.iE_Extensions p_iE_Extensions - ) := { - cellIdListforMDT := p_cellIdListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template m_cellBasedMDT_NR - - template (omit) CellBasedMDT_EUTRA m_cellBasedMDT_EUTRA( - in template (value) CellIdListforMDT_EUTRA p_cellIdListforMDT, - in template (omit) CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions + { + id := id_GUAMIType, + criticality := ignore, + extensionValue := { GUAMIType := p_gUAMIType } + } + } // End of template m_servedGUAMIItem_id_GUAMIType + + template (omit) ServiceAreaInformation_Item m_serviceAreaInformation_Item( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (omit) AllowedTACs p_allowedTACs := omit, + in template (omit) NotAllowedTACs p_notAllowedTACs := omit, + in template (omit) ServiceAreaInformation_Item.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + allowedTACs := p_allowedTACs, + notAllowedTACs := p_notAllowedTACs, + iE_Extensions := p_iE_Extensions + } // End of template m_serviceAreaInformation_Item + + template (value) ServiceType m_serviceType(in ServiceType p_value := streaming) := p_value; + + template (omit) SharedNGU_MulticastTNLInformation m_sharedNGU_MulticastTNLInformation( + in template (value) TransportLayerAddress p_iP_MulticastAddress := PX_MC_TRANSPORT_LAYER_ADDRESS, + in template (value) TransportLayerAddress p_iP_SourceAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS, + in template (value) GTP_TEID p_gTP_TEID := PX_GTP_TEID, + in template (omit) SharedNGU_MulticastTNLInformation.iE_Extensions p_iE_Extensions := omit + ) := { + iP_MulticastAddress := p_iP_MulticastAddress, + iP_SourceAddress := p_iP_SourceAddress, + gTP_TEID := p_gTP_TEID, + iE_Extensions := p_iE_Extensions + } // End of template m_sharedNGU_MulticastTNLInformation + + template (omit) SliceOverloadItem m_sliceOverloadItem( + in template (value) S_NSSAI p_s_NSSAI, + in template (omit) SliceOverloadItem.iE_Extensions p_iE_Extensions := omit ) := { - cellIdListforMDT := p_cellIdListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template m_cellBasedMDT_EUTRA + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template m_sliceOverloadItem - template (omit) CellBasedQMC m_cellBasedQMC( - in template (value) CellIdListforQMC p_cellIdListforQMC, - in template (omit) CellBasedQMC.iE_Extensions p_iE_Extensions - ) := { - cellIdListforQMC := p_cellIdListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template m_cellBasedQMC + template (omit) SliceSupportItem m_sliceSupportItem( + in template (value) S_NSSAI p_s_NSSAI, + in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template m_sliceSupportItem - template (value) DataForwardingNotPossible m_dataForwardingNotPossible(in DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; + template (omit) SliceSupportQMC_Item m_sliceSupportQMC_Item( + in template (value) S_NSSAI p_s_NSSAI, + in template (omit) SliceSupportQMC_Item.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template m_sliceSupportQMC_Item - template (value) DataForwardingAccepted m_dataForwardingAccepted(in DataForwardingAccepted p_value := data_forwarding_accepted) := p_value; + template (omit) SNPN_MobilityInformation m_sNPN_MobilityInformation( + in template (value) NID p_serving_NID, + in template (omit) SNPN_MobilityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + serving_NID := p_serving_NID, + iE_Extensions := p_iE_Extensions + } // End of template m_sNPN_MobilityInformation + + template (omit) S_NSSAI m_s_NSSAI( + in template (value) SST p_sST := PX_SST, + in template (omit) SD p_sD := omit, + in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ) := { + sST := p_sST, + sD := p_sD, + iE_Extensions := p_iE_Extensions + } // End of template m_s_NSSAI + + template (omit) SONConfigurationTransfer m_sONConfigurationTransfer( + in template (value) TargetRANNodeID_SON p_targetRANNodeID_SON, + in template (value) SourceRANNodeID p_sourceRANNodeID, + in template (value) SONInformation p_sONInformation, + in template (omit) XnTNLConfigurationInfo p_xnTNLConfigurationInfo := omit, + in template (omit) SONConfigurationTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + targetRANNodeID_SON := p_targetRANNodeID_SON, + sourceRANNodeID := p_sourceRANNodeID, + sONInformation := p_sONInformation, + xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, + // The above IE shall be present if the SON Information IE contains the SON Information Request IE set to “Xn TNL Configuration Info” + iE_Extensions := p_iE_Extensions + } // End of template m_sONConfigurationTransfer + + template (value) SONInformation m_sONInformation_sONInformationRequest( + in template (value) SONInformationRequest p_sONInformationRequest + ) := { + sONInformationRequest := p_sONInformationRequest + } // End of template m_sONInformation_sONInformationRequest - template (omit) DataForwardingResponseDRBItem m_dataForwardingResponseDRBItem( - in template (value) DRB_ID p_dRB_ID, - in template (omit) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := omit, - in template (omit) UPTransportLayerInformation p_uLForwardingUP_TNLInformation := omit, - in template (omit) DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := omit - ) := { - dRB_ID := p_dRB_ID, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_dataForwardingResponseDRBItem - - template (omit) DAPSRequestInfo m_dAPSRequestInfo( - in template (value) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, - in template (omit) DAPSRequestInfo.iE_Extensions p_iE_Extensions := omit - ) := { - dAPSIndicator := p_dAPSIndicator, - iE_Extensions := p_iE_Extensions - } // End of template m_dAPSRequestInfo - - template (omit) DAPSResponseInfoItem m_dAPSResponseInfoItem( - in template (value) DRB_ID p_dRB_ID, - in template (value) DAPSResponseInfo p_dAPSResponseInfo, - in template (omit) DAPSResponseInfoItem.iE_Extension p_iE_Extension := omit + template (value) SONInformation m_sONInformation_sONInformationReply( + in template (value) SONInformationReply p_sONInformationReply + ) := { + sONInformationReply := p_sONInformationReply + } // End of template m_sONInformation_sONInformationReply + + template (value) SONInformation m_sONInformation_choice_Extensions( + in template (value) SONInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_sONInformation_choice_Extensions + + template (value) SONInformation.choice_Extensions m_sONInformatio_id_SONInformationReport( + in template (value) SONInformationReport p_sONInformationReport + ) := { + id := id_SONInformationReport, + criticality := ignore, + value_ := { SONInformationReport := p_sONInformationReport } + } // End of template m_sONInformatio_id_SONInformationReport + + template (omit) SONInformationReply m_sONInformationReply( + in template (omit) XnTNLConfigurationInfo p_xnTNLConfigurationInfo := omit, + in template (omit) SONInformationReply.iE_Extensions p_iE_Extensions := omit ) := { - dRB_ID := p_dRB_ID, - dAPSResponseInfo := p_dAPSResponseInfo, - iE_Extension := p_iE_Extension - } // End of template m_dAPSResponseInfoItem - - template (omit) DAPSResponseInfo m_dAPSResponseInfo( - in template (value) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator, - in template (omit) DAPSResponseInfo.iE_Extensions p_iE_Extensions := omit - ) := { - dapsresponseindicator := p_dapsresponseindicator, - iE_Extensions := p_iE_Extensions - } // End of template m_dAPSResponseInfo - - template (omit) DataForwardingResponseERABListItem m_DataForwardingResponseERABListItem( - in template (value) E_RAB_ID p_e_RAB_ID, - in template (value) UPTransportLayerInformation p_dLForwardingUP_TNLInformation, - in template (omit) DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := omit - ) := { - e_RAB_ID := p_e_RAB_ID, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_DataForwardingResponseERABListItem + xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, + iE_Extensions := p_iE_Extensions + } // End of template m_sONInformationReply - template (value) DelayCritical m_delayCritical(in DelayCritical p_value) := p_value; + template (value) SONInformationReport m_sONInformationReport_failureIndicationInformation( + in template (value) FailureIndication p_failureIndicationInformation + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template m_sONInformationReport_failureIndicationInformation - template (omit) DL_CP_SecurityInformation m_dL_CP_SecurityInformation( - in template (value) DL_NAS_MAC p_dl_NAS_MAC := PX_DL_NAS_MAC, - in template (omit) DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := omit - ) := { - dl_NAS_MAC := p_dl_NAS_MAC, - iE_Extensions := p_iE_Extensions - } // End of template m_dL_CP_SecurityInformation + template (value) SONInformationReport m_sONInformationReport_hOReportInformation( + in template (value) HOReport p_hOReportInformation + ) := { + hOReportInformation := p_hOReportInformation + } // End of template m_sONInformationReport_hOReportInformation - template (value) DLForwarding m_dLForwarding(in DLForwarding p_value := dl_forwarding_proposed) := p_value; + template (value) SONInformationReport m_sONInformationReport_choice_Extensions( + in template (value) SONInformationReport.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_sONInformationReport_choice_Extensions - template (value) DL_NGU_TNLInformationReused m_dL_NGU_TNLInformationReused(in DL_NGU_TNLInformationReused p_value := true_) := p_value; + template (value) SONInformationReport.choice_Extensions m_sONInformationReport_id_SONInformationReport( + in template (value) SuccessfulHandoverReportList p_successfulHandoverReportList + ) := { + id := id_SONInformationReport, + criticality := ignore, + value_ := { SuccessfulHandoverReportList := p_successfulHandoverReportList } + } // End of template m_sONInformationReport_id_SONInformationReport - template (value) DirectForwardingPathAvailability m_directForwardingPathAvailability(in DirectForwardingPathAvailability p_value := direct_path_available) := p_value; + template (omit) SuccessfulHandoverReport_Item m_successfulHandoverReport_Item( + in template (value) octetstring p_successfulHOReportContainer, + in template (omit) SuccessfulHandoverReport_Item.iE_Extensions p_iE_Extensions := omit + ) := { + successfulHOReportContainer := p_successfulHOReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_successfulHandoverReport_Item + + template (value) SONInformationRequest m_sONInformationRequest(in SONInformationRequest p_value := xn_TNL_configuration_info) := p_value; + + template (omit) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer( + in template (value) NGRAN_CGI p_targetCell_ID, + in template (value) RRCContainer p_rRCContainer, + in template (value) UEHistoryInformation p_uEHistoryInformation, + in template (omit) PDUSessionResourceInformationList p_pDUSessionResourceInformationList := omit, + in template (omit) E_RABInformationList p_e_RABInformationList := omit, + in template (omit) IndexToRFSP p_indexToRFSP := omit, + in template (omit) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := omit + ):= { + rRCContainer := p_rRCContainer, + pDUSessionResourceInformationList := p_pDUSessionResourceInformationList, + e_RABInformationList := p_e_RABInformationList, + targetCell_ID := p_targetCell_ID, + indexToRFSP := p_indexToRFSP, + uEHistoryInformation := p_uEHistoryInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID( + in template (value) SgNB_UE_X2AP_ID p_sgNB_UE_X2AP_ID + ) := { + { + id := id_SgNB_UE_X2AP_ID, + criticality := ignore, + extensionValue := { SgNB_UE_X2AP_ID := p_sgNB_UE_X2AP_ID } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE( + in template (value) UEHistoryInformationFromTheUE p_uEHistoryInformationFromTheUE + ) := { + { + id := id_UEHistoryInformationFromTheUE, + criticality := ignore, + extensionValue := { UEHistoryInformationFromTheUE := p_uEHistoryInformationFromTheUE } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE - template (omit) DRBsSubjectToStatusTransferItem m_dRBsSubjectToStatusTransferItem( - in template (value) DRB_ID p_dRB_ID, - in template (value) DRBStatusUL p_dRBStatusUL, - in template (value) DRBStatusDL p_dRBStatusDL, - in template (omit) DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := omit - ) := { - dRB_ID := p_dRB_ID, - dRBStatusUL := p_dRBStatusUL, - dRBStatusDL := p_dRBStatusDL, - iE_Extension := p_iE_Extension - } // End of template m_dRBsSubjectToStatusTransferItem - - template (value) DRBsSubjectToStatusTransferItem.iE_Extension m_dRBsSubjectToStatusTransferItem_associatedQosFlowList( - in template (value) AssociatedQosFlowList p_associatedQosFlowList - ) := { - { - id := id_OldAssociatedQosFlowList_ULendmarkerexpected, - criticality := ignore, - extensionValue := { AssociatedQosFlowList := p_associatedQosFlowList } - } - } // End of template m_dRBsSubjectToStatusTransferItem_associatedQosFlowList - - template (value) DRBStatusDL m_dRBStatusDL_dRBStatusDL12( - in template (value) DRBStatusDL12 p_dRBStatusDL12 - ) := { - dRBStatusDL12 := p_dRBStatusDL12 - } // End of template m_dRBStatusDL_dRBStatusDL12 - - template (value) DRBStatusDL m_dRBStatusDL_dRBStatusDL18( - in template (value) DRBStatusDL18 p_dRBStatusDL18 - ) := { - dRBStatusDL18 := p_dRBStatusDL18 - } // End of template m_dRBStatusDL_dRBStatusDL18 - - template (value) DRBStatusDL m_dRBStatusDL_choice_Extensions( - in template (value) DRBStatusDL.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_dRBStatusDL_choice_Extensions // type NGAP_Containers.NGAP_PROTOCOL_IES DRBStatusDL_ExtIEs (?); - - template (omit) DRBStatusDL12 m_dRBStatusDL12( - in template (value) COUNTValueForPDCP_SN12 p_dL_COUNTValue, - in template (omit) DRBStatusDL12.iE_Extension p_iE_Extension := omit - ) := { - dL_COUNTValue := p_dL_COUNTValue, - iE_Extension := p_iE_Extension - } // End of template m_dRBStatusDL12 - - template (omit) DRBStatusDL18 m_dRBStatusDL18( - in template (value) COUNTValueForPDCP_SN18 p_dL_COUNTValue, - in template (omit) DRBStatusDL18.iE_Extension p_iE_Extension := omit - ) := { - dL_COUNTValue := p_dL_COUNTValue, - iE_Extension := p_iE_Extension - } // End of template m_dRBStatusDL18 - - template (value) DRBStatusUL m_dRBStatusUL_dRBStatusUL12( - in template (value) DRBStatusUL12 p_dRBStatusUL12 - ) := { - dRBStatusUL12 := p_dRBStatusUL12 - } // End of template m_dRBStatusUL_dRBStatusUL12 - - template (value) DRBStatusUL m_dRBStatusUL_dRBStatusUL18( - in template (value) DRBStatusUL18 p_dRBStatusUL18 - ) := { - dRBStatusUL18 := p_dRBStatusUL18 - } // End of template m_dRBStatusUL_dRBStatusUL18 - - template (value) DRBStatusUL m_dRBStatusUL_choice_Extensions( - in template (value) DRBStatusUL.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_dRBStatusUL_choice_Extensions - - template (omit) DRBStatusUL12 m_dRBStatusUL12( - in template (value) COUNTValueForPDCP_SN12 p_uL_COUNTValue, - in template (omit) DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := omit, - in template (omit) DRBStatusUL12.iE_Extension p_iE_Extension := omit - ) := { - uL_COUNTValue := p_uL_COUNTValue, - receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, - iE_Extension := p_iE_Extension - } // End of template m_dRBStatusUL12 - - template (omit) DRBStatusUL18 m_dRBStatusUL18( - in template (value) COUNTValueForPDCP_SN18 p_uL_COUNTValue, - in template (omit) DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := omit, - in template (omit) DRBStatusUL18.iE_Extension p_iE_Extension := omit - ) := { - uL_COUNTValue := p_uL_COUNTValue, - receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, - iE_Extension := p_iE_Extension - } // End of template m_dRBStatusUL18 - - template (omit) DRBsToQosFlowsMappingItem m_dRBsToQosFlowsMappingItem( - in template (value) DRB_ID p_dRB_ID, - in template (value) AssociatedQosFlowList p_associatedQosFlowList, - in template (omit) DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := omit - ) := { - dRB_ID := p_dRB_ID, - associatedQosFlowList := p_associatedQosFlowList, - iE_Extensions := p_iE_Extensions - } // End of template m_dRBsToQosFlowsMappingItem - - template (value) DRBsToQosFlowsMappingItem.iE_Extensions m_dRBsToQosFlowsMappingItem_dAPSRequestInfo( - in template (value) DAPSRequestInfo p_dAPSRequestInfo - ) := { - { - id := id_DAPSRequestInfo, - criticality := ignore, - extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } - } - } // End of template m_dRBsToQosFlowsMappingItem_dAPSRequestInfo - - template (omit) Dynamic5QIDescriptor m_dynamic5QIDescriptor( - in template (value) PriorityLevelQos p_priorityLevelQos, - in template (value) PacketDelayBudget p_packetDelayBudget, - in template (value) PacketErrorRate p_packetErrorRate, - in template (omit) FiveQI p_fiveQI := omit, - in template (omit) DelayCritical p_delayCritical := omit, - in template (omit) AveragingWindow p_averagingWindow := omit, - in template (omit) MaximumDataBurstVolume p_maximumDataBurstVolume := omit, - in template (omit) Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := omit - ) := { - priorityLevelQos := p_priorityLevelQos, - packetDelayBudget := p_packetDelayBudget, - packetErrorRate := p_packetErrorRate, - fiveQI := p_fiveQI, - delayCritical := p_delayCritical, - // The above IE shall be present in case of GBR QoS flow - averagingWindow := p_averagingWindow, - // The above IE shall be present in case of GBR QoS flow - maximumDataBurstVolume := p_maximumDataBurstVolume, - iE_Extensions := p_iE_Extensions - } // End of template m_dynamic5QIDescriptor - - template (value) Dynamic5QIDescriptor.iE_Extensions m_dynamic5QIDescriptor_extendedPacketDelayBudget( - in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget - ) := { - { - id := id_ExtendedPacketDelayBudget, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template m_dynamic5QIDescriptor_extendedPacketDelayBudget - - template (value) Dynamic5QIDescriptor.iE_Extensions m_dynamic5QIDescriptor_cNPacketDelayBudgetDL( - in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget - ) := { - { - id := id_CNPacketDelayBudgetDL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template m_dynamic5QIDescriptor_cNPacketDelayBudgetDL - - template (value) Dynamic5QIDescriptor.iE_Extensions m_dynamic5QIDescriptor_cNPacketDelayBudgetUL( - in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget - ) := { - { - id := id_CNPacketDelayBudgetUL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template m_dynamic5QIDescriptor_cNPacketDelayBudgetUL + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID( + in template (value) SourceNodeID p_sourceNodeID + ) := { + { + id := id_SourceNodeID, + criticality := ignore, + extensionValue := { SourceNodeID := p_sourceNodeID } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID - template (value) EarlyMeasurement m_earlyMeasurement(in EarlyMeasurement p_value := true_) := p_value; + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource( + in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := PX_RAN_UE_NGAP_ID + ) := { + { + id := id_UEContextReferenceAtSource, + criticality := ignore, + extensionValue := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList( + in template (value) MBS_ActiveSessionInformation_SourcetoTargetList p_mBS_ActiveSessionInformation_SourcetoTargetListD + ) := { + { + id := id_MBS_ActiveSessionInformation_SourcetoTargetList, + criticality := ignore, + extensionValue := { MBS_ActiveSessionInformation_SourcetoTargetList := p_mBS_ActiveSessionInformation_SourcetoTargetListD } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList - template (omit) EarlyStatusTransfer_TransparentContainer m_earlyStatusTransfer_TransparentContainer( - in template (value) ProcedureStageChoice p_procedureStage, - in template (omit) EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := omit - ) := { - procedureStage := p_procedureStage, - iE_Extensions := p_iE_Extensions - } // End of template m_earlyStatusTransfer_TransparentContainer + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo( + in template (value) QMCConfigInfo p_qMCConfigInfo + ) := { + { + id := id_QMCConfigInfo, + criticality := ignore, + extensionValue := { QMCConfigInfo := p_qMCConfigInfo } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo + + template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList( + in template (value) NGAPIESupportInformationRequestList p_nGAPIESupportInformationRequestList + ) := { + { + id := id_NGAPIESupportInformationRequestList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationRequestList := p_nGAPIESupportInformationRequestList } + } + } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList - template (value) ProcedureStageChoice m_procedureStageChoice_firstDLCount( - in template (value) FirstDLCount p_firstDLCount - ) := { - first_dl_count := p_firstDLCount - } // End of template m_procedureStageChoice_firstDLCount + template (value) SourceNodeID m_sourceNodeID_sourceengNB_ID( + in template (value) GlobalGNB_ID p_sourceengNB_ID + ) := { + sourceengNB_ID := p_sourceengNB_ID + } // End of template m_sourceNodeID_sourceengNB_ID - template (value) ProcedureStageChoice m_procedureStageChoice_choice_Extensions( - in template (value) ProcedureStageChoice.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_procedureStageChoice_choice_Extensions + template (value) SourceNodeID m_sourceNodeID_choice_Extensions( + in template (value) SourceNodeID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_sourceNodeID_choice_Extensions - template (omit) FirstDLCount m_firstDLCount( - in template (value) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer, - in template (omit) FirstDLCount.iE_Extension p_iE_Extension := omit - ) := { - dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, - iE_Extension := p_iE_Extension - } // End of template m_firstDLCount - - template (omit) DRBsSubjectToEarlyStatusTransfer_Item m_dRBsSubjectToEarlyStatusTransfer_Item( - in template (value) DRB_ID p_dRB_ID, - in template (value) DRBStatusDL p_firstDLCOUNT, - in template (omit) DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := omit - ) := { - dRB_ID := p_dRB_ID, - firstDLCOUNT := p_firstDLCOUNT, - iE_Extension := p_iE_Extension - } // End of template m_dRBsSubjectToEarlyStatusTransfer_Item - - template (value) EDT_Session m_eDT_Session(in EDT_Session p_value := true_) := p_value; - - template (omit) EmergencyAreaIDBroadcastEUTRA_Item m_emergencyAreaIDBroadcastEUTRA_Item( - in template (value) EmergencyAreaID p_emergencyAreaID, - in template (value) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA, - in template (omit) EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - emergencyAreaID := p_emergencyAreaID, - completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template m_emergencyAreaIDBroadcastEUTRA_Item - - template (omit) EmergencyAreaIDBroadcastNR_Item m_emergencyAreaIDBroadcastNR_Item( - in template (value) EmergencyAreaID p_emergencyAreaID, - in template (value) CompletedCellsInEAI_NR p_completedCellsInEAI_NR, - in template (omit) EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - emergencyAreaID := p_emergencyAreaID, - completedCellsInEAI_NR := p_completedCellsInEAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template m_emergencyAreaIDBroadcastNR_Item - - template (omit) EmergencyAreaIDCancelledEUTRA_Item m_emergencyAreaIDCancelledEUTRA_Item( - in template (value) EmergencyAreaID p_emergencyAreaID, - in template (value) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA, - in template (omit) EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - emergencyAreaID := p_emergencyAreaID, - cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template m_emergencyAreaIDCancelledEUTRA_Item - - template (omit) EmergencyAreaIDCancelledNR_Item m_emergencyAreaIDCancelledNR_Item( - in template (value) EmergencyAreaID p_emergencyAreaID, - in template (value) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR, - in template (omit) EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - emergencyAreaID := p_emergencyAreaID, - cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template m_emergencyAreaIDCancelledNR_Item - - template (omit) EmergencyFallbackIndicator m_emergencyFallbackIndicator( - in template (value) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator, - in template (omit) EmergencyServiceTargetCN p_emergencyServiceTargetCN := omit, - in template (omit) EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := omit - ) := { - emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, - emergencyServiceTargetCN := p_emergencyServiceTargetCN, - iE_Extensions := p_iE_Extensions - } // End of template m_emergencyFallbackIndicator + template (value) SourceOfUEActivityBehaviourInformation m_sourceOfUEActivityBehaviourInformation(in SourceOfUEActivityBehaviourInformation p_value := subscription_information) := p_value; - template (value) EmergencyFallbackRequestIndicator m_emergencyFallbackRequestIndicator(in EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; + template (omit) SourceRANNodeID m_sourceRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) SourceRANNodeID.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_sourceRANNodeID + + // This IE includes a transparent container from the source RAN node to the target RAN node. + // The octets of the OCTET STRING are encoded according to the specifications of the target system. + + template (omit) SourceToTarget_AMFInformationReroute m_sourceToTarget_AMFInformationReroute( + in template (omit) ConfiguredNSSAI p_configuredNSSAI := omit, + in template (omit) RejectedNSSAIinPLMN p_rejectedNSSAIinPLMN := omit, + in template (omit) RejectedNSSAIinTA p_rejectedNSSAIinTA := omit, + in template (omit) SourceToTarget_AMFInformationReroute.iE_Extensions p_iE_Extensions := omit + ) := { + configuredNSSAI := p_configuredNSSAI, + rejectedNSSAIinPLMN := p_rejectedNSSAIinPLMN, + rejectedNSSAIinTA := p_rejectedNSSAIinTA, + iE_Extensions := p_iE_Extensions + } // End of template m_sourceToTarget_AMFInformationReroute - template (value) EmergencyServiceTargetCN m_emergencyServiceTargetCN(in EmergencyServiceTargetCN p_value := fiveGC) := p_value; + // This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF. + // The octets of the OCTET STRING are encoded according to the specifications of the Core network. - template (value) ENB_ID m_eNB_ID_macroENB_ID( - in template (value) Bit20 p_macroENB_ID - ) := { - macroENB_ID := p_macroENB_ID - } // End of template m_eNB_ID_macroENB_ID + template (value) SRVCCOperationPossible m_sRVCCOperationPossible(in SRVCCOperationPossible p_value := possible) := p_value; - template (value) ENB_ID m_eNB_ID_homeENB_ID( - in template (value) Bit28 p_homeENB_ID - ) := { - homeENB_ID := p_homeENB_ID - } // End of template m_eNB_ID_homeENB_ID - - template (value) ENB_ID m_eNB_ID_short_macroENB_ID( - in template (value) Bit18 p_short_macroENB_ID - ) := { - short_macroENB_ID := p_short_macroENB_ID - } // End of template m_eNB_ID_short_macroENB_ID - - template (value) ENB_ID m_eNB_ID_long_macroENB_ID( - in template (value) Bit21 p_long_macroENB_ID - ) := { - long_macroENB_ID := p_long_macroENB_ID - } // End of template m_eNB_ID_long_macroENB_ID - - template (value) ENB_ID m_eNB_ID_choice_Extensions( - in template (value) ENB_ID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_eNB_ID_choice_Extensions - - template (value) Enhanced_CoverageRestriction m_enhanced_CoverageRestriction(in Enhanced_CoverageRestriction p_value := restricted) := p_value; - - template (omit) EndpointIPAddressAndPort m_endpointIPAddressAndPort( - in template (value) TransportLayerAddress p_endpointIPAddress := PX_TRANSPORT_LAYER_ADDRESS, - in template (value) PortNumber p_portNumber, - in template (omit) EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := omit - ) := { - endpointIPAddress := p_endpointIPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template m_endpointIPAddressAndPort - - template (value) EndIndication m_endIndication(in EndIndication p_value := no_further_data) := p_value; - - template (omit) EPS_TAI m_ePS_TAI( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) EPS_TAC p_ePS_TAC, - in template (omit) EPS_TAI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - ePS_TAC := p_ePS_TAC, - iE_Extensions := p_iE_Extensions - } // End of template m_ePS_TAI - - template (omit) E_RABInformationItem m_e_RABInformationItem( - in template (value) E_RAB_ID p_e_RAB_ID, - in template (value) DLForwarding p_dLForwarding, - in template (omit) E_RABInformationItem.iE_Extensions p_iE_Extensions := omit - ) := { - e_RAB_ID := p_e_RAB_ID, - dLForwarding := p_dLForwarding, - iE_Extensions := p_iE_Extensions - } // End of template m_e_RABInformationItem - - template (omit) E_RABInformationItem.iE_Extensions m_e_RABInformationItem_id_SourceTNLAddrInfo( - in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS - ) := { - { - id := id_SourceTNLAddrInfo, - criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } - } - } // End of template m_e_RABInformationItem_id_SourceTNLAddrInfo - - template (omit) E_RABInformationItem.iE_Extensions m_e_RABInformationItem_id_SourceNodeTNLAddrInfo( - in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS - ) := { - { - id := id_SourceNodeTNLAddrInfo, - criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } - } - } // End of template m_e_RABInformationItem_id_SourceNodeTNLAddrInfo - - template (omit) EUTRA_CGI m_uUTRA_CGI( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) EUTRACellIdentity p_eUTRACellIdentity := PX_EUTRA_CELL_IDENTITY, - in template (omit) EUTRA_CGI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - eUTRACellIdentity := p_eUTRACellIdentity, - iE_Extensions := p_iE_Extensions - } // End of template m_uUTRA_CGI - - template (omit) EUTRA_PagingeDRXInformation m_eUTRA_PagingeDRXInformation( - in template (value) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle, - in template (omit) EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := omit, - in template (omit) EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, - eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, - iE_Extensions := p_iE_Extensions - } // End of template m_eUTRA_PagingeDRXInformation + template (omit) SupportedTAItem m_supportedTAItem( + in template (value) TAC p_tAC := PX_TAC, + in template (value) BroadcastPLMNList p_broadcastPLMNList, + in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ) := { + tAC := p_tAC, + broadcastPLMNList := p_broadcastPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template m_supportedTAItem - template (value) EUTRA_Paging_eDRX_Cycle m_eUTRA_Paging_eDRX_Cycle(in EUTRA_Paging_eDRX_Cycle p_value := hfhalf) := p_value; + template (value) SupportedTAItem.iE_Extensions m_supportedTAItem_id_ConfiguredTACIndication( + in template (value) ConfiguredTACIndication p_configuredTACIndication + ) := { + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + } + } // End of template m_supportedTAItem_id_ConfiguredTACIndication - template (value) EUTRA_Paging_Time_Window m_eUTRA_Paging_Time_Window(in EUTRA_Paging_Time_Window p_value := s1) := p_value; + template (value) SupportedTAItem.iE_Extensions m_supportedTAItem_id_RAT_Information( + in template (value) RAT_Information p_rAT_Information + ) := { + { + id := id_RAT_Information, + criticality := reject, + extensionValue := { RAT_Information := p_rAT_Information } + } + } // End of template m_supportedTAItem_id_RAT_Information - template (value) EventType m_eventType(in EventType p_value := direct) := p_value; + template (value) SuspendIndicator m_suspendIndicator(in SuspendIndicator p_value := true_) := p_value; - template (omit) ExcessPacketDelayThresholdItem m_excessPacketDelayThresholdItem( - in template (value) FiveQI p_fiveQi, - in template (value) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue, - in template (omit) ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := omit - ) := { - fiveQi := p_fiveQi, - excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, - iE_Extensions := p_iE_Extensions - } // End of template m_excessPacketDelayThresholdItem + template (value) Suspend_Request_Indication m_suspend_Request_Indication(in Suspend_Request_Indication p_value := suspend_requested) := p_value; - template (value) ExcessPacketDelayThresholdValue m_excessPacketDelayThresholdValue(in ExcessPacketDelayThresholdValue p_value := ms0dot25) := p_value; + template (value) Suspend_Response_Indication m_suspend_Response_Indication(in Suspend_Response_Indication p_value := suspend_indicated) := p_value; - template (value) ExpectedHOInterval m_expectedHOInterval(in ExpectedHOInterval p_value := sec15) := p_value; + template (omit) TAI m_tAI( + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) TAC p_tAC := PX_TAC, + in template (omit) TAI.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + tAC := p_tAC, + iE_Extensions := p_iE_Extensions + } // End of template m_tAI - template (omit) ExpectedUEActivityBehaviour m_expectedUEActivityBehaviour( - in template (omit) ExpectedActivityPeriod p_expectedActivityPeriod := omit, - in template (omit) ExpectedIdlePeriod p_expectedIdlePeriod := omit, - in template (omit) SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := omit, - in template (omit) ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := omit - ) := { - expectedActivityPeriod := p_expectedActivityPeriod, - expectedIdlePeriod := p_expectedIdlePeriod, - sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_expectedUEActivityBehaviour - - template (omit) ExpectedUEBehaviour m_expectedUEBehaviour( - in template (omit) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := omit, - in template (omit) ExpectedHOInterval p_expectedHOInterval := omit, - in template (omit) ExpectedUEMobility p_expectedUEMobility := omit, - in template (omit) ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= omit, - in template (omit) ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := omit - ) := { - expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, - expectedHOInterval := p_expectedHOInterval, - expectedUEMobility := p_expectedUEMobility, - expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, - iE_Extensions := p_iE_Extensions - } // End of template m_expectedUEBehaviour - - template (value) ExpectedUEMobility m_expectedUEMobility(in ExpectedUEMobility p_value := mobile) := p_value; - - template (omit) ExpectedUEMovingTrajectoryItem m_expectedUEMovingTrajectoryItem( - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (omit) ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := omit, - in template (omit) ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := omit - ) := { - nGRAN_CGI := p_nGRAN_CGI, - timeStayedInCell := p_timeStayedInCell, - iE_Extensions := p_iE_Extensions - } // End of template m_expectedUEMovingTrajectoryItem - - template (omit) Extended_AMFName m_extended_AMFName( - in template (omit) AMFNameVisibleString p_aMFNameVisibleString := omit, - in template (omit) AMFNameUTF8String p_aMFNameUTF8String := omit, - in template (omit) Extended_AMFName.iE_Extensions p_iE_Extensions := omit - ) := { - aMFNameVisibleString := p_aMFNameVisibleString, - aMFNameUTF8String := p_aMFNameUTF8String, - iE_Extensions := p_iE_Extensions - } // End of template m_extended_AMFName - - template (omit) Extended_RANNodeName m_extended_RANNodeName( - in template (omit) RANNodeNameVisibleString p_rANNodeNameVisibleString := omit, - in template (omit) RANNodeNameUTF8String p_rANNodeNameUTF8String := omit, - in template (omit) Extended_RANNodeName.iE_Extensions p_iE_Extensions := omit + template (omit) TAIBroadcastEUTRA_Item m_tAIBroadcastEUTRA_Item( + in template (value) TAI p_tAI, + in template (value) CompletedCellsInTAI_EUTRA p_completedCellsInTAI_EUTRA, + in template (omit) TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + completedCellsInTAI_EUTRA := p_completedCellsInTAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIBroadcastEUTRA_Item + + template (omit) TAIBroadcastNR_Item m_tAIBroadcastNR_Item( + in template (value) TAI p_tAI, + in template (value) CompletedCellsInTAI_NR p_completedCellsInTAI_NR, + in template (omit) TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit ) := { - rANNodeNameVisibleString := p_rANNodeNameVisibleString, - rANNodeNameUTF8String := p_rANNodeNameUTF8String, - iE_Extensions := p_iE_Extensions - } // End of template m_extended_RANNodeName - - template (omit) ExtendedRATRestrictionInformation m_extendedRATRestrictionInformation( - in template (value) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction, - in template (value) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction, - in template (omit) ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := omit - ) := { - primaryRATRestriction := p_primaryRATRestriction, - secondaryRATRestriction := p_secondaryRATRestriction, - iE_Extensions := p_iE_Extensions - } // End of template m_extendedRATRestrictionInformation - - template (value) EventTrigger m_eventTrigger_outOfCoverage( - in template (value) EventTrigger.outOfCoverage p_outOfCoverage := true_ - ) := { - outOfCoverage := p_outOfCoverage - } // End of template m_eventTrigger_outOfCoverage - - template (value) EventTrigger m_eventTrigger_eventL1LoggedMDTConfig( - in template (value) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig + tAI := p_tAI, + completedCellsInTAI_NR := p_completedCellsInTAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIBroadcastNR_Item + + template (omit) TAICancelledEUTRA_Item m_tAICancelledEUTRA_Item( + in template (value) TAI p_tAI, + in template (value) CancelledCellsInTAI_EUTRA p_cancelledCellsInTAI_EUTRA, + in template (omit) TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit ) := { - eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig - } // End of template m_eventTrigger_eventL1LoggedMDTConfig - - template (value) EventTrigger m_eventTrigger_choice_Extensions( - in template (value) EventTrigger.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_eventTrigger_choice_Extensions - - template (omit) EventL1LoggedMDTConfig m_eventL1LoggedMDTConfig( - in template (value) MeasurementThresholdL1LoggedMDT p_l1Threshold, - in template (value) Hysteresis p_hysteresis, - in template (value) TimeToTrigger p_timeToTrigger, - in template (omit) EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := omit - ) := { - l1Threshold := p_l1Threshold, - hysteresis := p_hysteresis, - timeToTrigger := p_timeToTrigger, - iE_Extensions := p_iE_Extensions - } // End of template m_eventL1LoggedMDTConfig - - template (value) MeasurementThresholdL1LoggedMDT m_measurementThresholdL1LoggedMDT_threshold_RSRP( - in template (value) Threshold_RSRP p_threshold_RSRP - ) := { - threshold_RSRP := p_threshold_RSRP - } // End of template m_measurementThresholdL1LoggedMDT_threshold_RSRP - - template (value) MeasurementThresholdL1LoggedMDT m_measurementThresholdL1LoggedMDT_threshold_RSRQ( - in template (value) Threshold_RSRQ p_threshold_RSRQ - ) := { - threshold_RSRQ := p_threshold_RSRQ - } // End of template m_measurementThresholdL1LoggedMDT_threshold_RSRQ - - template (value) MeasurementThresholdL1LoggedMDT m_measurementThresholdL1LoggedMDT_choice_Extensions( - in template (value) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_measurementThresholdL1LoggedMDT_choice_Extensions - - template (omit) FailureIndication m_failureIndication( - in template (value) UERLFReportContainer p_uERLFReportContainer, - in template (omit) FailureIndication.iE_Extensions p_iE_Extensions := omit - ) := { - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template m_failureIndication - - template (omit) FiveG_ProSeAuthorized m_FiveG_ProSeAuthorized( - in template (omit) FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := omit, - in template (omit) FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := omit, - in template (omit) FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := omit, - in template (omit) FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := omit, - in template (omit) FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := omit, - in template (omit) FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := omit - ) := { - fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, - fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, - fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, - fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, - fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, - iE_Extensions := p_iE_Extensions - } // End of template m_FiveG_ProSeAuthorized - - template (value) FiveGProSeDirectDiscovery m_fiveGProSeDirectDiscovery(in FiveGProSeDirectDiscovery p_value := authorized) := p_value; - - template (value) FiveGProSeDirectCommunication m_fiveGProSeDirectCommunication(in FiveGProSeDirectCommunication p_value := authorized) := p_value; - - template (value) FiveGProSeLayer2UEtoNetworkRelay m_fiveGProSeLayer2UEtoNetworkRelay(in FiveGProSeLayer2UEtoNetworkRelay p_value := authorized) := p_value; - - template (value) FiveGProSeLayer3UEtoNetworkRelay m_fiveGProSeLayer3UEtoNetworkRelay(in FiveGProSeLayer3UEtoNetworkRelay p_value := authorized) := p_value; - - template (value) FiveGProSeLayer2RemoteUE m_fiveGProSeLayer2RemoteUE(in FiveGProSeLayer2RemoteUE p_value := authorized) := p_value; - - template (omit) FiveG_ProSePC5QoSParameters m_fiveG_ProSePC5QoSParameters( - in template (value) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList, - in template (omit) BitRate p_fiveGProSepc5LinkAggregateBitRates := omit, - in template (omit) FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := omit - ) := { - fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, - fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, - iE_Extensions := p_iE_Extensions - } // End of template m_fiveG_ProSePC5QoSParameters - - template (omit) FiveGProSePC5QoSFlowItem m_fiveGProSePC5QoSFlowItem( - in template (value) FiveQI p_fiveGproSepQI, - in template (omit) FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := omit, - in template (omit) Range p_fiveGproSerange := omit, - in template (omit) FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := omit + tAI := p_tAI, + cancelledCellsInTAI_EUTRA := p_cancelledCellsInTAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_tAICancelledEUTRA_Item + + template (omit) TAICancelledNR_Item m_tAICancelledNR_Item( + in template (value) TAI p_tAI, + in template (value) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR, + in template (omit) TAICancelledNR_Item.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + cancelledCellsInTAI_NR := p_cancelledCellsInTAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template m_tAICancelledNR_Item + + template (omit) TAIListForInactiveItem m_tAIListForInactiveItem( + in template (value) TAI p_tAI, + in template (omit) TAIListForInactiveItem.iE_Extensions p_iE_Extensions := omit ) := { - fiveGproSepQI := p_fiveGproSepQI, - fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, - fiveGproSerange := p_fiveGproSerange, - iE_Extensions := p_iE_Extensions - } // End of template m_fiveGProSePC5QoSFlowItem - - template (omit) FiveGProSePC5FlowBitRates m_fiveGProSePC5FlowBitRates( - in template (value) BitRate p_fiveGproSeguaranteedFlowBitRate, - in template (value) BitRate p_fiveGproSemaximumFlowBitRate, - in template (omit) FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := omit - ) := { - fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, - fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, - iE_Extensions := p_iE_Extensions - } // End of template m_fiveGProSePC5FlowBitRates - - template (omit) FiveG_S_TMSI m_fiveG_S_TMSI( - in template (value) AMFSetID p_aMFSetID := PX_AMF_SET_ID, - in template (value) AMFPointer p_aMFPointer := PX_AMF_POINTER, - in template (value) FiveG_TMSI p_fiveG_TMSI, - in template (omit) FiveG_S_TMSI.iE_Extensions p_iE_Extensions := omit - ) := { - aMFSetID := p_aMFSetID, - aMFPointer := p_aMFPointer, - fiveG_TMSI := p_fiveG_TMSI, - iE_Extensions := p_iE_Extensions - } // End of template m_fiveG_S_TMSI - - template (omit) ForbiddenAreaInformation_Item m_forbiddenAreaInformation_Item( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) ForbiddenTACs p_forbiddenTACs, - in template (omit) ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - forbiddenTACs := p_forbiddenTACs, - iE_Extensions := p_iE_Extensions - } // End of template m_forbiddenAreaInformation_Item - - template (omit) FromEUTRANtoNGRAN m_fromEUTRANtoNGRAN( - in template (value) IntersystemSONeNBID p_sourceeNBID, - in template (value) IntersystemSONNGRANnodeID p_targetNGRANnodeID, - in template (omit) FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := omit - ) := { - sourceeNBID := p_sourceeNBID, - targetNGRANnodeID := p_targetNGRANnodeID, - iE_Extensions := p_iE_Extensions - } // End of template m_fromEUTRANtoNGRAN - - template (omit) FromNGRANtoEUTRAN m_fromNGRANtoEUTRAN( - in template (value) IntersystemSONNGRANnodeID p_sourceNGRANnodeID, - in template (value) IntersystemSONeNBID p_targeteNBID, - in template (omit) FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := omit - ) := { - sourceNGRANnodeID := p_sourceNGRANnodeID, - targeteNBID := p_targeteNBID, - iE_Extensions := p_iE_Extensions - } // End of template m_fromNGRANtoEUTRAN - - template (omit) GBR_QosInformation m_gBR_QosInformation( - in template (value) BitRate p_maximumFlowBitRateDL, - in template (value) BitRate p_maximumFlowBitRateUL, - in template (value) BitRate p_guaranteedFlowBitRateDL, - in template (value) BitRate p_guaranteedFlowBitRateUL, - in template (omit) NotificationControl p_notificationControl := omit, - in template (omit) PacketLossRate p_maximumPacketLossRateDL := omit, - in template (omit) PacketLossRate p_maximumPacketLossRateUL := omit, - in template (omit) GBR_QosInformation.iE_Extensions p_iE_Extensions := omit - ) := { - maximumFlowBitRateDL := p_maximumFlowBitRateDL, - maximumFlowBitRateUL := p_maximumFlowBitRateUL, - guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, - guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, - notificationControl := p_notificationControl, - maximumPacketLossRateDL := p_maximumPacketLossRateDL, - maximumPacketLossRateUL := p_maximumPacketLossRateUL, - iE_Extensions := p_iE_Extensions - } // End of template m_gBR_QosInformation - - template (value) GBR_QosInformation.iE_Extensions m_gBR_QosInformation_id_AlternativeQoSParaSetList( - in template (value) AlternativeQoSParaSetList p_alternativeQoSParaSetList - ) := { - { - id := id_AlternativeQoSParaSetList, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} - } - } // End of template m_gBR_QosInformation_id_AlternativeQoSParaSetList + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIListForInactiveItem - template (omit) GlobalCable_ID_new m_globalCable_ID_new( - in template (value) GlobalCable_ID p_globalCable_ID, - in template (value) TAI p_tAI, - in template (omit) GlobalCable_ID_new.iE_Extensions p_iE_Extensions := omit - ) := { - globalCable_ID := p_globalCable_ID, - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template m_globalCable_ID_new - - template (omit) GlobalGNB_ID m_ie_globalGnbId( - in template (value) PLMNIdentity p_plmnId := PX_PLMN_IDENTITY, - in template (value) bitstring p_gnbId, - in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_plmnId,//'010001'O, - gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_globalGnbId - - template (omit) GlobalN3IWF_ID m_globalN3IWF_ID( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) N3IWF_ID p_n3IWF_ID, - in template (omit) GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := omit + template (omit) TAIListForPagingItem m_tAIListForPagingItem( + in template (value) TAI p_tAI, + in template (omit) TAIListForPagingItem.iE_Extensions p_iE_Extensions := omit + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIListForPagingItem + + template (omit) TAINSAGSupportItem m_tAINSAGSupportItem( + in template (value) NSAG_ID p_nSAG_ID, + in template (value) ExtendedSliceSupportList p_nSAGSliceSupportList, + in template (omit) TAINSAGSupportItem.iE_Extensions p_iE_Extensions := omit + ) := { + nSAG_ID := p_nSAG_ID, + nSAGSliceSupportList := p_nSAGSliceSupportList, + iE_Extensions := p_iE_Extensions + } // End of template m_tAINSAGSupportItem + + template (omit) TargeteNB_ID m_targeteNB_ID( + in template (value) GlobalNgENB_ID p_globalENB_ID, + in template (value) EPS_TAI p_selected_EPS_TAI, + in template (omit) TargeteNB_ID.iE_Extensions p_iE_Extensions := omit ) := { - pLMNIdentity := p_pLMNIdentity, - n3IWF_ID := p_n3IWF_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_globalN3IWF_ID - - template (omit) GlobalLine_ID m_globalLine_ID( - in template (value) GlobalLineIdentity p_globalLineIdentity, - in template (omit) LineType p_lineType := omit, - in template (omit) GlobalLine_ID.iE_Extensions p_iE_Extensions := omit - ) := { - globalLineIdentity := p_globalLineIdentity, - lineType := p_lineType, - iE_Extensions := p_iE_Extensions - } // End of template m_globalLine_ID - - template (value) GlobalLine_ID.iE_Extensions m_globalLine_ID_id_TAI(in template (value) TAI p_tAI) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template m_globalLine_ID_id_TAI + globalENB_ID := p_globalENB_ID, + selected_EPS_TAI := p_selected_EPS_TAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targeteNB_ID + + template (omit) TargetHomeENB_ID m_targetHomeENB_ID( + in template (value) PLMNIdentity p_pLMNidentity, + in template (value) TargetHomeENB_ID.homeENB_ID p_homeENB_ID, + in template (value) EPS_TAI p_selected_EPS_TAI, + in template (omit) TargetHomeENB_ID.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNidentity := p_pLMNidentity, + homeENB_ID := p_homeENB_ID, + selected_EPS_TAI := p_selected_EPS_TAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetHomeENB_ID + + template (value) TargetID m_targetID_targetRANNodeID( + in template (value) TargetRANNodeID p_targetRANNodeID + ) := { + targetRANNodeID := p_targetRANNodeID + } // End of template m_targetID_targetRANNodeID - template (omit) GlobalNgENB_ID m_globalNgENB_ID( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) NgENB_ID p_ngENB_ID, - in template (omit) GlobalNgENB_ID.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - ngENB_ID := p_ngENB_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_globalNgENB_ID + template (value) TargetID m_targetID_targeteNB_ID( + in template (value) TargeteNB_ID p_targeteNB_ID + ) := { + targeteNB_ID := p_targeteNB_ID + } // End of template m_targetID_targeteNB_ID - template (value) GlobalRANNodeID m_globalRANNodeID_globalGNB_ID( - in template (value) GlobalGNB_ID p_globalGNB_ID - ) := { - globalGNB_ID := p_globalGNB_ID - } // End of template m_globalRANNodeID_globalGNB_ID - - template (value) GlobalRANNodeID m_globalRANNodeID_globalNgENB_ID( - in template (value) GlobalNgENB_ID p_globalNgENB_ID - ) := { - globalNgENB_ID := p_globalNgENB_ID - } // End of template m_globalRANNodeID_globalNgENB_ID - - template (value) GlobalRANNodeID m_globalRANNodeID_globalN3IWF_ID( - in template (value) GlobalN3IWF_ID p_globalN3IWF_ID - ) := { - globalN3IWF_ID := p_globalN3IWF_ID - } // End of template m_globalRANNodeID_globalN3IWF_ID - - template (value) GlobalRANNodeID m_globalRANNodeID_choice_Extensions( - in template (value) GlobalRANNodeID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_globalRANNodeID_choice_Extensions + template (value) TargetID m_targetID_choice_Extensions( + in template (value) TargetID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_targetID_choice_Extensions - template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_id_GlobalTNGF_ID( - in template (value) GlobalTNGF_ID p_globalTNGF_ID - ) := { - id := id_GlobalTNGF_ID, - criticality := reject, - value_ := { GlobalTNGF_ID := p_globalTNGF_ID } - } // End of template m_globalRANNodeID_id_GlobalTNGF_ID + template (value) TargetID.choice_Extensions m_targetID_id_TargetRNC_ID( + in template (value) TargetRNC_ID p_targetRNC_ID + ) := { + id := id_TargetRNC_ID, + criticality := reject, + value_ := { TargetRNC_ID := p_targetRNC_ID } + } // End of template m_sONInformationReport_id_SONInformationReport - template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_id_GlobalTWIF_ID( - in template (value) GlobalTNGF_ID p_globalTWIF_ID - ) := { - id := id_GlobalTWIF_ID, - criticality := reject, - value_ := { GlobalTNGF_ID := p_globalTWIF_ID } - } // End of template m_globalRANNodeID_id_GlobalTWIF_ID + template (value) TargetID.choice_Extensions m_targetID_id_TargetHomeENB_ID( + in template (value) TargetHomeENB_ID p_targetHomeENB_ID + ) := { + id := id_TargetHomeENB_ID, + criticality := reject, + value_ := { TargetHomeENB_ID := p_targetHomeENB_ID } + } // End of template m_sONInformationReport_id_TargetHomeENB_ID - template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_id_GlobalW_AGF_ID( - in template (value) GlobalW_AGF_ID p_globalW_AGF_ID - ) := { - id := id_GlobalW_AGF_ID, - criticality := reject, - value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } - } // End of template m_globalRANNodeID_id_GlobalW_AGF_ID - - // template (value) GlobalRANNodeID.choice_Extensions m_globalRANNodeID_all( - // in template (value) GlobalTNGF_ID p_globalTNGF_ID, - // in template (value) GlobalTWIF_ID p_globalTWIF_ID, - // in template (value) GlobalW_AGF_ID p_globalW_AGF_ID - // ) := { - // { - // id := id_GlobalTNGF_ID, - // criticality := reject, - // value_ := { GlobalTNGF_ID := p_globalTNGF_ID } - // }, - // { - // id := id_GlobalTWIF_ID, - // criticality := reject, - // value_ := { GlobalTNGF_ID := p_globalTWIF_ID } - // }, - // { - // id := id_GlobalW_AGF_ID, - // criticality := reject, - // value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } - // } - // } // End of template m_globalRANNodeID_all - - template (omit) GlobalTNGF_ID m_globalTNGF_ID( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) TNGF_ID p_tNGF_ID, - in template (omit) GlobalTNGF_ID.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - tNGF_ID := p_tNGF_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_globalTNGF_ID - - template (omit) GlobalTWIF_ID m_globalTWIF_ID( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) TWIF_ID p_tWIF_ID, - in template (omit) GlobalTWIF_ID.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - tWIF_ID := p_tWIF_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_globalTWIF_ID - - template (omit) GlobalW_AGF_ID m_GlobalW_AGF_ID( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) W_AGF_ID p_w_AGF_ID, - in template (omit) GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - w_AGF_ID := p_w_AGF_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_GlobalW_AGF_ID + template (omit) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer( + in template (value) RRCContainer p_rRCContainer, + in template (omit) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := omit + ) := { + rRCContainer := p_rRCContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer + + template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList( + in template (value) DAPSResponseInfoList p_dAPSResponseInfoList + ) := { + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList + + template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability( + in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability + ) := { + { + id := id_DirectForwardingPathAvailability, + criticality := ignore, + extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability + + template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList( + in template (value) MBS_ActiveSessionInformation_TargettoSourceList p_mBS_ActiveSessionInformation_TargettoSourceList + ) := { + { + id := id_MBS_ActiveSessionInformation_TargettoSourceList, + criticality := ignore, + extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList + + template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList( + in template (value) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList + ) := { + { + id := id_NGAPIESupportInformationResponseList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList - template (value) GNB_ID m_gNB_ID_gNB_ID( - in template (value) GNB_ID.gNB_ID p_gNB_ID - ) := { - gNB_ID := p_gNB_ID - } // End of template m_gNB_ID_gNB_ID - - template (value) GNB_ID m_gNB_ID_choice_Extensions( - in template (value) GNB_ID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_gNB_ID_choice_Extensions - - template (omit) GTPTunnel m_gTPTunnel( - in template (value) TransportLayerAddress p_tla := PX_TRANSPORT_LAYER_ADDRESS, - in template (value) GTP_TEID p_gtp_teid := PX_GTP_TEID, - in template (omit) GTPTunnel.iE_Extensions p_iE_Extensions := omit - ):= { - transportLayerAddress := p_tla, - gTP_TEID := p_gtp_teid, - iE_Extensions := p_iE_Extensions - } // End of template m_gTPTunnel - - template (omit) GUAMI m_gUAMI( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) AMFRegionID p_aMFRegionID := PX_AMF_REGION_ID, - in template (value) AMFSetID p_aMFSetID := PX_AMF_SET_ID, - in template (value) AMFPointer p_aMFPointer := PX_AMF_POINTER, - in template (omit) GUAMI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - aMFRegionID := p_aMFRegionID, - aMFSetID := p_aMFSetID, - aMFPointer := p_aMFPointer, - iE_Extensions := p_iE_Extensions - } // End of template m_gUAMI - - template (value) GUAMIType m_gUAMIType(in GUAMIType p_val := native) := p_val; - - template (omit) HandoverCommandTransfer m_handoverCommandTransfer( - in template (omit) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := omit, - in template (omit) QosFlowToBeForwardedList p_qosFlowToBeForwardedList := omit, - in template (omit) DataForwardingResponseDRBList p_dataForwardingResponseDRBList := omit, - in template (omit) HandoverCommandTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, - dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, - iE_Extensions := p_iE_Extensions - } // End of template m_handoverCommandTransfer - - template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( - in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList - ) := { - { - id := id_AdditionalDLForwardingUPTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template m_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation - - template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_ULForwardingUP_TNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_handoverCommandTransfer_id_ULForwardingUP_TNLInformation - - template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( - in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList - ) := { - { - id := id_AdditionalULForwardingUPTNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template m_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation - - template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_DataForwardingResponseERABList( - in template (value) DataForwardingResponseERABList p_dataForwardingResponseERABList - ) := { - { - id := id_DataForwardingResponseERABList, - criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } - } - } // End of template m_handoverCommandTransfer_id_DataForwardingResponseERABList - - template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_QosFlowFailedToSetupList( - in template (value) QosFlowListWithCause p_qosFlowListWithCause - ) := { - { - id := id_QosFlowFailedToSetupList, - criticality := ignore, - extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template m_handoverCommandTransfer_id_QosFlowFailedToSetupList - - template (value) HandoverFlag m_handoverFlag(in HandoverFlag p_val := handover_preparation) := p_val; - - template (omit) HandoverPreparationUnsuccessfulTransfer m_mandoverPreparationUnsuccessfulTransfer( - in template (value) Cause p_cause, - in template (omit) HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_mandoverPreparationUnsuccessfulTransfer - - template (omit) HandoverRequestAcknowledgeTransfer m_handoverRequestAcknowledgeTransfer( - in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, - in template (value) QosFlowListWithDataForwarding p_qosFlowSetupResponseList, - in template (omit) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := omit, - in template (omit) SecurityResult p_securityResult := omit, - in template (omit) QosFlowListWithCause p_qosFlowFailedToSetupList := omit, - in template (omit) DataForwardingResponseDRBList p_dataForwardingResponseDRBList := omit, - in template (omit) HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - securityResult := p_securityResult, - qosFlowSetupResponseList := p_qosFlowSetupResponseList, - qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, - dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, - iE_Extensions := p_iE_Extensions - } // End of template m_handoverRequestAcknowledgeTransfer - - template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( - in template (value) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList + template (omit) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer( + in template (omit) Cell_CAGInformation p_cell_CAGInformation := omit, + in template (omit) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions p_iE_Extensions := omit ) := { - { - id := id_AdditionalDLUPTNLInformationForHOList, - criticality := reject, - extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } - } - } // End of template m_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList - - template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_ULForwardingUP_TNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation - - template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( - in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList - ) := { - { - id := id_AdditionalULForwardingUPTNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template m_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation - - template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( - in template (value) DataForwardingResponseERABList p_dataForwardingResponseERABList - ) := { - { - id := id_DataForwardingResponseERABList, - criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } - } - } // End of template m_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList + cell_CAGInformation := p_cell_CAGInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer - template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation - - template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( - in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation - ) := { - { - id := id_UsedRSNInformation, - criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template m_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation - - template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( - in template (value) GlobalRANNodeID p_globalRANNodeID - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template m_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID - - template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( - in template (value) MBS_SupportIndicator p_mBS_SupportIndicator - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template m_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator + template (value) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList( + in template (value) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList + ) := { + { + id := id_NGAPIESupportInformationResponseList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + } + } // End of template m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList - template (omit) HandoverRequiredTransfer m_handoverRequiredTransfer( - in template (omit) DirectForwardingPathAvailability p_directForwardingPathAvailability := omit, - in template (omit) HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := omit + template (omit) TargetNSSAI_Item m_targetNSSAI_Item( + in template (value) S_NSSAI p_s_NSSAI, + in template (omit) TargetNSSAI_Item.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetNSSAI_Item + + template (omit) TargetNSSAIInformation m_targetNSSAIInformation( + in template (value) TargetNSSAI p_targetNSSAI, + in template (value) IndexToRFSP p_indexToRFSP, + in template (omit) TargetNSSAIInformation.iE_Extensions p_iE_Extensions := omit ) := { - directForwardingPathAvailability := p_directForwardingPathAvailability, - iE_Extensions := p_iE_Extensions - } // End of template m_handoverRequiredTransfer - - template (omit) HandoverResourceAllocationUnsuccessfulTransfer m_handoverResourceAllocationUnsuccessfulTransfer( - in template (value) Cause p_cause, - in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, - in template (omit) HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template m_handoverResourceAllocationUnsuccessfulTransfer + targetNSSAI := p_targetNSSAI, + indexToRFSP := p_indexToRFSP, + iE_Extensions := p_iE_Extensions + } // End of template m_targetNSSAIInformation + + template (omit) TargetRANNodeID m_targetRANNodeID( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) TargetRANNodeID.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetRANNodeID + + template (omit) TargetRANNodeID_RIM m_targetRANNodeID_RIM( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) TargetRANNodeID_RIM.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetRANNodeID_RIM + + template (omit) TargetRANNodeID_SON m_targetRANNodeID_SON( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) TargetRANNodeID_SON.iE_Extensions p_iE_Extensions := omit + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template m_targetRANNodeID_SON - template (value) HandoverType m_handoverType(in HandoverType p_value := intra5gs) := p_value; + template (value) TargetRANNodeID_SON.iE_Extensions m_targetRANNodeID_SON_id_NR_CGI( + in template (value) NR_CGI p_nR_CGI + ) := { + { + id := id_NR_CGI, + criticality := ignore, + extensionValue := { NR_CGI := p_nR_CGI } + } + } // End of template m_targetRANNodeID_SON_id_NR_CGI - template (omit) HFCNode_ID_new m_hFCNode_ID_new( - in template (value) HFCNode_ID p_hFCNode_ID, - in template (value) TAI p_tAI, - in template (omit) HFCNode_ID_new.iE_Extensions p_iE_Extensions := omit - ) := { - hFCNode_ID := p_hFCNode_ID, - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template m_hFCNode_ID_new - - template (omit) HOReport m_hOReport( - in template (value) HOReport.handoverReportType p_handoverReportType := ho_too_early, - in template (value) Cause p_handoverCause, - in template (value) NGRAN_CGI p_sourcecellCGI, - in template (value) NGRAN_CGI p_targetcellCGI, - in template (omit) NGRAN_CGI p_reestablishmentcellCGI, - in template (omit) Bit16 p_sourcecellC_RNTI := omit, - in template (omit) EUTRA_CGI p_targetcellinE_UTRAN := omit, - in template (omit) MobilityInformation p_mobilityInformation := omit, - in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, - in template (omit) HOReport.iE_Extensions p_iE_Extensions := omit - ) := { - handoverReportType := p_handoverReportType, - handoverCause := p_handoverCause, - sourcecellCGI := p_sourcecellCGI, - targetcellCGI := p_targetcellCGI, - reestablishmentcellCGI := p_reestablishmentcellCGI, - // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" - sourcecellC_RNTI := p_sourcecellC_RNTI, - targetcellinE_UTRAN := p_targetcellinE_UTRAN, - // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" - mobilityInformation := p_mobilityInformation, - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template m_hOReport - - template (value) IAB_Authorized m_iAB_Authorized(in IAB_Authorized p_value := authorized) := p_value; - - template (value) IAB_Supported m_iAB_Supported(in IAB_Supported p_value := true_) := p_value; - - template (value) IABNodeIndication m_iABNodeIndication(in IABNodeIndication p_value := true_) := p_value; - - template (value) IMSVoiceSupportIndicator m_iMSVoiceSupportIndicator(in IMSVoiceSupportIndicator p_value := supported) := p_value; - - template (omit) InfoOnRecommendedCellsAndRANNodesForPaging m_infoOnRecommendedCellsAndRANNodesForPaging( - in template (value) RecommendedCellsForPaging p_recommendedCellsForPaging, - in template (value) RecommendedRANNodesForPaging p_recommendRANNodesForPaging, - in template (omit) InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := omit - ) := { - recommendedCellsForPaging := p_recommendedCellsForPaging, - recommendRANNodesForPaging := p_recommendRANNodesForPaging, - iE_Extensions := p_iE_Extensions - } // End of template m_infoOnRecommendedCellsAndRANNodesForPaging - - template (value) IntegrityProtectionIndication m_integrityProtectionIndication(in IntegrityProtectionIndication p_value := required) := p_value; - - template (value) IntegrityProtectionResult m_integrityProtectionResult(in IntegrityProtectionResult p_value := performed) := p_value; - - template (omit) ImmediateMDTNr m_immediateMDTNr( - in template (value) MeasurementsToActivate p_measurementsToActivate, - in template (omit) M1Configuration p_m1Configuration := omit, - in template (omit) M4Configuration p_m4Configuration := omit, - in template (omit) M5Configuration p_m5Configuration := omit, - in template (omit) M6Configuration p_m6Configuration := omit, - in template (omit) M7Configuration p_m7Configuration := omit, - in template (omit) BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := omit, - in template (omit) WLANMeasurementConfiguration p_wLANMeasurementConfiguration := omit, - in template (omit) MDT_Location_Info p_mDT_Location_Info := omit, - in template (omit) SensorMeasurementConfiguration p_sensorMeasurementConfiguration := omit, - in template (omit) ImmediateMDTNr.iE_Extensions p_iE_Extensions := omit + template (omit) TargetRNC_ID m_targetRNC_ID( + in template (value) LAI p_lAI, + in template (value) RNC_ID p_rNC_ID, + in template (omit) ExtendedRNC_ID p_extendedRNC_ID := omit, + in template (omit) TargetRNC_ID.iE_Extensions p_iE_Extensions := omit ) := { - measurementsToActivate := p_measurementsToActivate, - m1Configuration := p_m1Configuration, - // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” - m4Configuration := p_m4Configuration, - // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” - m5Configuration := p_m5Configuration, - // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” - m6Configuration := p_m6Configuration, - // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” - m7Configuration := p_m7Configuration, - // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” - bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, - wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, - mDT_Location_Info := p_mDT_Location_Info, - sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, - iE_Extensions := p_iE_Extensions - } // End of template m_immediateMDTNr - - template (omit) InterSystemFailureIndication m_interSystemFailureIndication( - in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, - in template (omit) InterSystemFailureIndication.iE_Extensions p_iE_Extensions := omit - ) := { - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template m_interSystemFailureIndication - - template (omit) IntersystemSONConfigurationTransfer m_intersystemSONConfigurationTransfer( - in template (value) IntersystemSONTransferType p_transferType, - in template (value) IntersystemSONInformation p_intersystemSONInformation, - in template (omit) IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - transferType := p_transferType, - intersystemSONInformation := p_intersystemSONInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_intersystemSONConfigurationTransfer - - template (value) IntersystemSONTransferType m_intersystemSONTransferType_fromEUTRANtoNGRAN( - in template (value) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN - ) := { - fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN - } // End of template m_intersystemSONTransferType_fromEUTRANtoNGRAN - - template (value) IntersystemSONTransferType m_intersystemSONTransferType_fromNGRANtoEUTRAN( - in template (value) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN - ) := { - fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN - } // End of template m_intersystemSONTransferType_fromNGRANtoEUTRAN - - template (value) IntersystemSONTransferType m_intersystemSONTransferType_choice_Extensions( - in template (value) IntersystemSONTransferType.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_intersystemSONTransferType_choice_Extensions - - template (value) IntersystemSONeNBID m_intersystemSONeNBID( - in template (value) GlobalENB_ID p_globaleNBID, - in template (value) EPS_TAI p_selectedEPSTAI, - in template (omit) IntersystemSONeNBID.iE_Extensions p_iE_Extensions := omit - ) := { - globaleNBID := p_globaleNBID, - selectedEPSTAI := p_selectedEPSTAI, - iE_Extensions := p_iE_Extensions - } // End of template m_intersystemSONeNBID - - template (value) IntersystemSONNGRANnodeID m_intersystemSONNGRANnodeID( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) TAI p_selectedTAI, - in template (omit) IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := omit - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template m_intersystemSONNGRANnodeID - - template (value) IntersystemSONInformation m_intersystemSONInformation_intersystemSONInformationReport( - in template (value) IntersystemSONInformationReport p_intersystemSONInformationReport - ) := { - intersystemSONInformationReport := p_intersystemSONInformationReport - } // End of template m_intersystemSONInformation_intersystemSONInformationReport - - template (value) IntersystemSONInformation m_intersystemSONInformation_choice_Extensions( - in template (value) IntersystemSONInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_intersystemSONInformation_choice_Extensions - - template (value) IntersystemSONInformation.choice_Extensions m_intersystemSONInformation_id_IntersystemSONInformationRequest( - in template (value) IntersystemSONInformationRequest p_intersystemSONInformationRequest - ) := { - id := id_IntersystemSONInformationRequest, - criticality := ignore, - value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } - } // End of template m_intersystemSONInformation_id_IntersystemSONInformationRequest - - template (value) IntersystemSONInformation.choice_Extensions m_intersystemSONInformation_id_IntersystemSONInformationReply( - in template (value) IntersystemSONInformationReply p_intersystemSONInformationReply - ) := { - id := id_IntersystemSONInformationReply, - criticality := ignore, - value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } - } // End of template m_intersystemSONInformation_id_IntersystemSONInformationReply - - template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_nGRAN_CellActivation( - in template (value) IntersystemCellActivationRequest p_nGRAN_CellActivation - ) := { - nGRAN_CellActivation := p_nGRAN_CellActivation - } // End of template m_intersystemSONInformationRequest_nGRAN_CellActivation - - template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_resourceStatus( - in template (value) IntersystemResourceStatusRequest p_resourceStatus - ) := { - resourceStatus := p_resourceStatus - } // End of template m_intersystemSONInformationRequest_resourceStatus - - template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_choice_Extensions( - in template (value) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_intersystemSONInformationRequest_choice_Extensions - - template (omit) IntersystemCellActivationRequest m_intersystemCellActivationRequest( - in template (value) IntersystemCellActivationRequest.activationID p_activationID, - in template (value) CellsToActivateList p_cellsToActivateList, - in template (omit) IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := omit - ) := { - activationID := p_activationID, - cellsToActivateList := p_cellsToActivateList, - iE_Extensions := p_iE_Extensions - } // End of template m_intersystemCellActivationRequest - - template (omit) IntersystemResourceStatusRequest m_intersystemResourceStatusRequest( - in template (value) ReportingSystem p_reportingSystem, - in template (value) ReportCharacteristics p_reportCharacteristics, - in template (value) ReportType p_reportType, - in template (omit) IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := omit - ) := { - reportingSystem := p_reportingSystem, - reportCharacteristics := p_reportCharacteristics, - reportType := p_reportType, - iE_Extensions := p_iE_Extensions - } // End of template m_intersystemResourceStatusRequest - - template (value) ReportingSystem m_reportingSystem_eUTRAN( - in template (value) EUTRAN_ReportingSystemIEs p_eUTRAN - ) := { - eUTRAN := p_eUTRAN - } // End of template m_reportingSystem_eUTRAN - - template (value) ReportingSystem m_reportingSystem_nGRAN( - in template (value) NGRAN_ReportingSystemIEs p_nGRAN - ) := { - nGRAN := p_nGRAN - } // End of template m_reportingSystem_nGRAN - - template (value) ReportingSystem m_reportingSystem_choice_Extensions( - in template (value) ReportingSystem.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_reportingSystem_choice_Extensions + lAI := p_lAI, + rNC_ID := p_rNC_ID, + extendedRNC_ID := p_extendedRNC_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_targetRNC_ID + + template (value) TimerApproachForGUAMIRemoval m_timerApproachForGUAMIRemoval(in TimerApproachForGUAMIRemoval p_value := apply_timer) := p_value; + + template (omit) TimeSyncAssistanceInfo m_timeSyncAssistanceInfo( + in template (value) TimeSyncAssistanceInfo.timeDistributionIndication p_timeDistributionIndication := enabled, + in template (omit) TimeSyncAssistanceInfo.uUTimeSyncErrorBudget p_uUTimeSyncErrorBudget := omit, + in template (omit) TimeSyncAssistanceInfo.iE_Extensions p_iE_Extensions := omit + ) := { + timeDistributionIndication := p_timeDistributionIndication, + uUTimeSyncErrorBudget := p_uUTimeSyncErrorBudget, + // The above IE shall be present if the Time Distribution Indication IE is set to the value “enabled” + iE_Extensions := p_iE_Extensions + } // End of template m_timeSyncAssistanceInfo - template (omit) EUTRAN_ReportingSystemIEs m_eUTRAN_ReportingSystemIEs( - in template (value) EUTRAN_CellToReportList p_eUTRAN_CellToReportList, - in template (omit) EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, - iE_Extensions := p_iE_Extensions - } // End of template m_eUTRAN_ReportingSystemIEs + template (value) TimeToWait m_timeToWait(in TimeToWait p_value := v1s) := p_value; - template (omit) NGRAN_ReportingSystemIEs m_nGRAN_ReportingSystemIEs( - in template (value) NGRAN_CellToReportList p_nGRAN_CellToReportList, - in template (omit) NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := omit - ) := { - nGRAN_CellToReportList := p_nGRAN_CellToReportList, - iE_Extensions := p_iE_Extensions - } // End of template m_nGRAN_ReportingSystemIEs - - template (omit) EUTRAN_CellToReportItem m_eUTRAN_CellToReportItem( - in template (value) EUTRA_CGI p_eCGI, - in template (omit) EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := omit - ) := { - eCGI := p_eCGI, - iE_Extensions := p_iE_Extensions - } // End of template m_eUTRAN_CellToReportItem - - template (omit) NGRAN_CellToReportItem m_nGRAN_CellToReportItem( - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (omit) NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := omit - ):= { - nGRAN_CGI := p_nGRAN_CGI, - iE_Extensions := p_iE_Extensions - } // End of template m_nGRAN_CellToReportItem - - template (value) ReportType m_reportType_eventBasedReporting( - in template (value) EventBasedReportingIEs p_eventBasedReporting - ) := { - eventBasedReporting := p_eventBasedReporting - } // End of template m_reportType_eventBasedReporting - - template (value) ReportType m_reportType_periodicReporting( - in template (value) PeriodicReportingIEs p_periodicReporting - ) := { - periodicReporting := p_periodicReporting - } // End of template m_reportType_periodicReporting - - template (value) ReportType m_reportType_choice_Extensions( - in template (value) ReportType.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_reportType_choice_Extensions - - template (value) EventBasedReportingIEs m_eventBasedReportingIEs( - in template (value) IntersystemResourceThreshold p_intersystemResourceThresholdLow, - in template (value) IntersystemResourceThreshold p_intersystemResourceThresholdHigh, - in template (value)NumberOfMeasurementReportingLevels p_numberOfMeasurementReportingLevels, - in template (omit) EventBasedReportingIEs.iE_Extensions p_iE_Extensions := omit - ) := { - intersystemResourceThresholdLow := p_intersystemResourceThresholdLow, - intersystemResourceThresholdHigh := p_intersystemResourceThresholdHigh, - numberOfMeasurementReportingLevels := p_numberOfMeasurementReportingLevels, - iE_Extensions := p_iE_Extensions - } // End of template m_eventBasedReportingIEs - - template (value) NumberOfMeasurementReportingLevels m_numberOfMeasurementReportingLevels(in NumberOfMeasurementReportingLevels p_value := n2) := p_value; - - template (omit) PeriodicReportingIEs m_PeriodicReportingIEs( - in template (value) ReportingPeriodicity p_reportingPeriodicity, - in template (omit) PeriodicReportingIEs.iE_Extensions p_iE_Extensions := omit - ) := { - reportingPeriodicity := p_reportingPeriodicity, - iE_Extensions := p_iE_Extensions - } // End of template m_PeriodicReportingIEs + template (value) TNGF_ID m_tNGF_ID_tNGF_ID( + in template (value) TNGF_ID.tNGF_ID p_tNGF_ID + ) := { + tNGF_ID := p_tNGF_ID + } // End of template m_tNGF_ID_tNGF_ID - template (value) ReportingPeriodicity m_reportingPeriodicity(in ReportingPeriodicity p_value := stop_) := p_value; + template (value) TNGF_ID m_tNGF_ID_choice_Extensions( + in template (value) TNGF_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_tNGF_ID_choice_Extensions - template (value) IntersystemSONInformationReply m_intersystemSONInformationReply_nGRAN_CellActivation( - in template (value) IntersystemCellActivationReply p_nGRAN_CellActivation - ) := { - nGRAN_CellActivation := p_nGRAN_CellActivation - } // End of template m_intersystemSONInformationReply_nGRAN_CellActivation + template (omit) TNLAssociationItem m_tNLAssociationItem( + in template (value) CPTransportLayerInformation p_tNLAssociationAddress, + in template (value) Cause p_cause, + in template (omit) TNLAssociationItem.iE_Extensions p_iE_Extensions := omit + ) := { + tNLAssociationAddress := p_tNLAssociationAddress, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template m_tNLAssociationItem + + template (value) TNLAssociationUsage m_TNLAssociationUsage(in TNLAssociationUsage p_value := ue) := p_value; + + template (omit) TooearlyIntersystemHO m_tooearlyIntersystemHO( + in template (value) EUTRA_CGI p_sourcecellID, + in template (value) NGRAN_CGI p_failurecellID, + in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, + in template (omit) TooearlyIntersystemHO.iE_Extensions p_iE_Extensions := omit + ) := { + sourcecellID := p_sourcecellID, + failurecellID := p_failurecellID, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template m_tooearlyIntersystemHO + + template (omit) TraceActivation m_traceActivation( + in template (value) NGRANTraceID p_nGRANTraceID, + in template (value) InterfacesToTrace p_interfacesToTrace, + in template (value) TraceDepth p_traceDepth, + in template (value) TransportLayerAddress p_traceCollectionEntityIPAddress := PX_TRANSPORT_LAYER_ADDRESS, + in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit + ) := { + nGRANTraceID := p_nGRANTraceID, + interfacesToTrace := p_interfacesToTrace, + traceDepth := p_traceDepth, + traceCollectionEntityIPAddress := p_traceCollectionEntityIPAddress, + iE_Extensions := p_iE_Extensions + } // End of template m_traceActivation + + template (value) TraceActivation.iE_Extensions m_traceActivation_id_MDTConfiguration( + in template (value) MDT_Configuration p_mDT_Configuration + ) := { + { + id := id_MDTConfiguration, + criticality := ignore, + extensionValue := { MDT_Configuration := p_mDT_Configuration } + } + } // End of template m_traceActivation_id_MDTConfiguration - template (value) IntersystemSONInformationReply m_intersystemSONInformationReply_resourceStatus( - in template (value) IntersystemResourceStatusReply p_resourceStatus - ) := { - resourceStatus := p_resourceStatus - } // End of template m_intersystemSONInformationReply_resourceStatus - - template (value) IntersystemSONInformationReply m_intersystemSONInformationReply_choice_Extensions( - in template (value) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_intersystemSONInformationReply_choice_Extensions - - template (omit) IntersystemCellActivationReply m_intersystemCellActivationReply( - in template (value) ActivatedCellList p_activatedCellList, - in template (value) IntersystemCellActivationReply.activation_ID p_activation_ID, - in template (omit) IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := omit - ) := { - activatedCellList := p_activatedCellList, - activation_ID := p_activation_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_intersystemCellActivationReply - - template (omit) IntersystemResourceStatusReply m_intersystemResourceStatusReply( - in template (value) ReportingSystem p_reportingsystem, - in template (omit) IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := omit - ) := { - reportingsystem := p_reportingsystem, - iE_Extensions := p_iE_Extensions - } // End of template m_intersystemResourceStatusReply - - template (value) IntersystemSONInformationReport m_intersystemSONInformationReport_hOReportInformation( - in template (value) InterSystemHOReport p_hOReportInformation - ) := { - hOReportInformation := p_hOReportInformation - } // End of template m_intersystemSONInformationReport_hOReportInformation - - template (value) IntersystemSONInformationReport m_intersystemSONInformationReport_failureIndicationInformation( - in template (value) InterSystemFailureIndication p_failureIndicationInformation - ) := { - failureIndicationInformation := p_failureIndicationInformation - } // End of template m_intersystemSONInformationReport_failureIndicationInformation - - template (value) IntersystemSONInformationReport m_intersystemSONInformationReport_choice_Extensions( - in template (value) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_intersystemSONInformationReport_choice_Extensions - - template (value) IntersystemSONInformationReport.choice_Extensions m_intersystemSONInformationReport_id_EnergySavingIndication( - in template (value) IntersystemCellStateIndication p_intersystemCellStateIndication - ) := { - id := id_EnergySavingIndication, - criticality := ignore, - value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } - } // End of template m_intersystemSONInformationReport_id_EnergySavingIndication - - template (value) IntersystemSONInformationReport.choice_Extensions m_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( - in template (value) IntersystemResourceStatusReport p_intersystemResourceStatusReport - ) := { - id := id_IntersystemResourceStatusUpdate, - criticality := ignore, - value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } - } // End of template m_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate - - template (omit) NotificationCell_Item m_notificationCell_Item( - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (value) NotificationCell_Item.notifyFlag p_notifyFlag := activated, - in template (omit) NotificationCell_Item.iE_Extensions p_iE_Extensions := omit - ) := { - nGRAN_CGI := p_nGRAN_CGI, - notifyFlag := p_notifyFlag, - iE_Extensions := p_iE_Extensions - } // End of template m_notificationCell_Item - - template (omit) IntersystemResourceStatusReport m_intersystemResourceStatusReport( - in template (value) ResourceStatusReportingSystem p_reportingSystem, - in template (omit) IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := omit - ) := { - reportingSystem := p_reportingSystem, - iE_Extensions := p_iE_Extensions - } // End of template m_intersystemResourceStatusReport - - template (value) ResourceStatusReportingSystem m_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( - in template (value) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus - ) := { - eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus - } // End of template m_resourceStatusReportingSystem_eUTRAN_ReportingStatus - - template (value) ResourceStatusReportingSystem m_resourceStatusReportingSystemt_nGRAN_ReportingStatus( - in template (value) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus - ) := { - nGRAN_ReportingStatus := p_nGRAN_ReportingStatus - } // End of template m_resourceStatusReportingSystem_nGRAN_ReportingStatus - - template (value) ResourceStatusReportingSystem m_resourceStatusReportingSystem_choice_Extensions( - in template (value) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_resourceStatusReportingSystem_choice_Extensions - - template (omit) EUTRAN_ReportingStatusIEs m_eUTRAN_ReportingStatusIEs( - in template (value) EUTRAN_CellReportList p_eUTRAN_CellReportList, - in template (omit) EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRAN_CellReportList := p_eUTRAN_CellReportList, - iE_Extensions := p_iE_Extensions - } // End of template m_eUTRAN_ReportingStatusIEs - - template (omit) EUTRAN_CellReportItem m_eUTRAN_CellReportItem ( - in template (value) EUTRA_CGI p_eCGI, - in template (value) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup, - in template (omit) EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := omit, - in template (omit) NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := omit, - in template (omit) EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := omit, - in template (omit) EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := omit - ):= { - eCGI := p_eCGI, - eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, - eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, - eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, - eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, - iE_Extensions := p_iE_Extensions - } // End of template m_eUTRAN_ReportingStatusIEs - - template (omit) EUTRAN_CompositeAvailableCapacityGroup m_EUTRAN_CompositeAvailableCapacityGroup( - in template (value) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity, - in template (value) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity, - in template (omit) EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := omit + template (value) TraceActivation.iE_Extensions m_traceActivation_id_TraceCollectionEntityURI( + in template (value) URI_address p_uRI_address ) := { - dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, - uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, - iE_Extensions := p_iE_Extensions - } // End of template m_EUTRAN_CompositeAvailableCapacityGroup - - template (omit) CompositeAvailableCapacity m_compositeAvailableCapacity( - in template (value) CompositeAvailableCapacity.capacityValue p_capacityValue, - in template (omit) CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := omit, - in template (omit) CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := omit - ) := { - cellCapacityClassValue := p_cellCapacityClassValue, - capacityValue := p_capacityValue, - iE_Extensions := p_iE_Extensions - } // End of template m_compositeAvailableCapacity - - template (omit) EUTRAN_RadioResourceStatus m_eUTRAN_RadioResourceStatus( - in template (value) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage, - in template (value) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage, - in template (value) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage, - in template (value) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage, - in template (value) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage, - in template (value) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage, - in template (omit) EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := omit, - in template (omit) EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := omit, - in template (omit) EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := omit - ) := { - dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, - uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, - dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, - uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, - dL_Total_PRB_usage := p_dL_Total_PRB_usage, - uL_Total_PRB_usage := p_uL_Total_PRB_usage, - dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, - uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, - iE_Extensions := p_iE_Extensions - } // End of template m_eUTRAN_RadioResourceStatus - - template (omit) NGRAN_ReportingStatusIEs m_nGRAN_ReportingStatusIEs( - in template (value) NGRAN_CellReportList p_nGRAN_CellReportList, - in template (omit) NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := omit - ) := { - nGRAN_CellReportList := p_nGRAN_CellReportList, - iE_Extensions := p_iE_Extensions - } // End of template m_nGRAN_ReportingStatusIEs + { + id := id_TraceCollectionEntityURI, + criticality := ignore, + extensionValue := { URI_address := p_uRI_address } + } + } // End of template m_traceActivation_id_TraceCollectionEntityURI - template (omit) NGRAN_CellReportItem m_nGRAN_CellReportItem( - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (value) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup, - in template (omit) NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := omit, - in template (omit) NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := omit, - in template (omit) NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := omit, - in template (omit) NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := omit - ) := { - nGRAN_CGI := p_nGRAN_CGI, - nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, - nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, - nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, - nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, - iE_Extensions := p_iE_Extensions - } // End of template m_nGRAN_CellReportItem - - template (omit) NGRAN_RadioResourceStatus m_nGRAN_RadioResourceStatus( - in template (value) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO, - in template (value) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO, - in template (value) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO, - in template (value) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO, - in template (value) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO, - in template (value) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO, - in template (omit) NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := omit - ) := { - dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, - uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, - dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, - uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, - dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, - uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, - iE_Extensions := p_iE_Extensions - } // End of template m_nGRAN_RadioResourceStatus - - template (omit) InterSystemHOReport m_interSystemHOReport( - in template (value) InterSystemHandoverReportType p_handoverReportType, - in template (omit) InterSystemHOReport.iE_Extensions p_iE_Extensions := omit - ) := { - handoverReportType := p_handoverReportType, - iE_Extensions := p_iE_Extensions - } // End of template m_interSystemHOReport - - template (value) InterSystemHandoverReportType m_interSystemHandoverReportType_tooearlyIntersystemHO( - in template (value) TooearlyIntersystemHO p_tooearlyIntersystemHO - ) := { - tooearlyIntersystemHO := p_tooearlyIntersystemHO - } // End of template m_interSystemHandoverReportType_tooearlyIntersystemHO - - template (value) InterSystemHandoverReportType m_interSystemHandoverReportType_intersystemUnnecessaryHO( - in template (value) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO - ) := { - intersystemUnnecessaryHO := p_intersystemUnnecessaryHO - } // End of template m_interSystemHandoverReportType_intersystemUnnecessaryHO - - template (value) InterSystemHandoverReportType m_interSystemHandoverReportType_choice_Extensions( - in template (value) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_interSystemHandoverReportType_choice_Extensions - - template (omit) IntersystemUnnecessaryHO m_intersystemUnnecessaryHO( - in template (value) NGRAN_CGI p_sourcecellID, - in template (value) EUTRA_CGI p_targetcellID, - in template (value) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := true_, - in template (value) CandidateCellList p_candidateCellList, - in template (omit) IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := omit - ) := { - sourcecellID := p_sourcecellID, - targetcellID := p_targetcellID, - earlyIRATHO := p_earlyIRATHO, - candidateCellList := p_candidateCellList, - iE_Extensions := p_iE_Extensions - } // End of template m_intersystemUnnecessaryHO - - template (omit) LAI m_lai( - in template (value) PLMNIdentity p_pLMNidentity, - in template (value) LAC p_lAC, - in template (omit) LAI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNidentity := p_pLMNidentity, - lAC := p_lAC, - iE_Extensions := p_iE_Extensions - } // End of template m_lai - - template (value) LastVisitedCellInformation m_interSystemHandoverReportType_nGRANCell( - in template (value) LastVisitedNGRANCellInformation p_nGRANCell - ) := { - nGRANCell := p_nGRANCell - } // End of template m_interSystemHandoverReportType_nGRANCell + template (value) TraceDepth m_traceDepth(in TraceDepth p_value := minimum) := p_value; - template (value) LastVisitedCellInformation m_interSystemHandoverReportType_eUTRANCell( - in template (value) LastVisitedEUTRANCellInformation p_eUTRANCell - ) := { - eUTRANCell := p_eUTRANCell - } // End of template m_interSystemHandoverReportType_eUTRANCell + template (value) TypeOfError m_typeOfError(in TypeOfError p_value := not_understood) := p_value; - template (value) LastVisitedCellInformation m_interSystemHandoverReportType_uTRANCell( - in template (value) LastVisitedUTRANCellInformation p_uTRANCell - ) := { - uTRANCell := p_uTRANCell - } // End of template m_interSystemHandoverReportType_uTRANCell + template (omit) TAIBasedMDT m_tAIBasedMDT( + in template (value) TAIListforMDT p_tAIListforMDT, + in template (omit) TAIBasedMDT.iE_Extensions p_iE_Extensions := omit + ) := { + tAIListforMDT := p_tAIListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIBasedMDT - template (value) LastVisitedCellInformation m_interSystemHandoverReportType_gERANCell( - in template (value) LastVisitedGERANCellInformation p_gERANCell - ) := { - gERANCell := p_gERANCell - } // End of template m_interSystemHandoverReportType_gERANCell - - template (value) LastVisitedCellInformation m_lastVisitedCellInformation_choice_Extensions( - in template (value) LastVisitedCellInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_lastVisitedCellInformation_choice_Extensions - - template (omit) LastVisitedCellItem m_lastVisitedCellItem( - in template (value) LastVisitedCellInformation p_lastVisitedCellInformation, - in template (omit) LastVisitedCellItem.iE_Extensions p_iE_Extensions := omit - ) := { - lastVisitedCellInformation := p_lastVisitedCellInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_lastVisitedCellItem - - template (omit) LastVisitedNGRANCellInformation m_lastVisitedNGRANCellInformation( - in template (value) NGRAN_CGI p_globalCellID, - in template (value) CellType p_cellType, - in template (value) TimeUEStayedInCell p_timeUEStayedInCell, - in template (omit) TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := omit, - in template (omit) Cause p_hOCauseValue := omit, - in template (omit) LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := omit - ) := { - globalCellID := p_globalCellID, - cellType := p_cellType, - timeUEStayedInCell := p_timeUEStayedInCell, - timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, - hOCauseValue := p_hOCauseValue, - iE_Extensions := p_iE_Extensions - } // End of template m_lastVisitedNGRANCellInformation - - template (value) LastVisitedNGRANCellInformation.iE_Extensions m_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( - in template (value) LastVisitedPSCellList p_lastVisitedPSCellList - ) := { - { - id := id_LastVisitedPSCellList, - criticality := ignore, - extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } - } - } // End of template m_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList + template (omit) TAIBasedQMC m_tAIBasedQMC( + in template (value) TAIListforQMC p_tAIListforQMC, + in template (omit) TAIBasedQMC.iE_Extensions p_iE_Extensions := omit + ) := { + tAIListforQMC := p_tAIListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template m_tAIBasedQMC + + template (omit) TABasedQMC m_tABasedQMC( + in template (value) TAListforQMC p_tAListforQMC, + in template (omit) TABasedQMC.iE_Extensions p_iE_Extensions := omit + ) := { + tAListforQMC := p_tAListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template m_tABasedQMC + + template (omit) TABasedMDT m_tABasedMDT( + in template (value) TAListforMDT p_tAListforMDT, + in template (omit) TABasedMDT.iE_Extensions p_iE_Extensions := omit + ) := { + tAListforMDT := p_tAListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template m_tABasedMDT - template (omit) LastVisitedPSCellInformation m_LastVisitedPSCellInformation( - in template (value) NGRAN_CGI p_pSCellID, - in template (value) LastVisitedPSCellInformation.timeStay p_timeStay, - in template (omit) LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := omit - ) := { - pSCellID := p_pSCellID, - timeStay := p_timeStay, - iE_Extensions := p_iE_Extensions - } // End of template m_LastVisitedPSCellInformation + template (value) TimeToTrigger m_timeToTrigger(in TimeToTrigger p_value := ms0) := p_value; - template (value) LineType m_lineType(in LineType p_value := pon) := p_value; + template (value) TWIF_ID m_tWIF_ID_tWIF_ID( + in template (value) TWIF_ID.tWIF_ID p_tWIF_ID + ) := { + tWIF_ID := p_tWIF_ID + } // End of template m_tWIF_ID_tWIF_ID - template (value) LocationReportingAdditionalInfo m_locationReportingAdditionalInfo(in LocationReportingAdditionalInfo p_value := includePSCell) := p_value; + template (value) TWIF_ID m_tWIF_ID_choice_Extensions( + in template (value) TWIF_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_tWIF_ID_choice_Extensions - template (omit) LocationReportingRequestType m_locationReportingRequestType( - in template (value) EventType p_eventType, - in template (value) ReportArea p_reportArea, - in template (omit) AreaOfInterestList p_areaOfInterestList := omit, - in template (omit) LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := omit, - in template (omit) LocationReportingRequestType.iE_Extensions p_iE_Extensions := omit - ) := { - eventType := p_eventType, - reportArea := p_reportArea, - areaOfInterestList := p_areaOfInterestList, - locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, - // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” - iE_Extensions := p_iE_Extensions - } // End of template m_locationReportingRequestType - - template (value) LocationReportingRequestType.iE_Extensions m_locationReportingRequestType_id_LocationReportingAdditionalInfo( - in template (value) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo - ) := { - { - id := id_LocationReportingAdditionalInfo, - criticality := ignore, - extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } - } - } // End of template m_locationReportingRequestType_id_LocationReportingAdditionalInfo - - template (omit) LoggedMDTNr m_loggedMDTNr( - in template (value) LoggingInterval p_loggingInterval, - in template (value) LoggingDuration p_loggingDuration, - in template (value) LoggedMDTTrigger p_loggedMDTTrigger, - in template (omit) BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := omit, - in template (omit) WLANMeasurementConfiguration p_wLANMeasurementConfiguration := omit, - in template (omit) SensorMeasurementConfiguration p_sensorMeasurementConfiguration := omit, - in template (omit) AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := omit, - in template (omit) LoggedMDTNr.iE_Extensions p_iE_Extensions := omit - ) := { - loggingInterval := p_loggingInterval, - loggingDuration := p_loggingDuration, - loggedMDTTrigger := p_loggedMDTTrigger, - bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, - wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, - sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, - areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, - iE_Extensions := p_iE_Extensions - } // End of template m_loggedMDTNr - - template (value) LoggingInterval m_loggingInterval(in LoggingInterval p_value := ms320) := p_value; - - template (value) LoggingDuration m_loggingDuration(in LoggingDuration p_value := m10) := p_value; - - template (value) Links_to_log m_Links_to_log(in Links_to_log p_value := uplink) := p_value; - - template (value) LoggedMDTTrigger m_loggedMDTTrigger_gERANCell( - in template (value) EventTrigger p_eventTrigger - ) := { - eventTrigger := p_eventTrigger - } // End of template m_loggedMDTTrigger_gERANCell - - template (value) LoggedMDTTrigger m_loggedMDTTrigger_choice_Extensions( - in template (value) LoggedMDTTrigger.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_loggedMDTTrigger_choice_Extensions + template (omit) TSCAssistanceInformation m_tSCAssistanceInformation( + in template (value) Periodicity p_periodicity, + in template (omit) BurstArrivalTime p_burstArrivalTime := omit, + in template (omit) TSCAssistanceInformation.iE_Extensions p_iE_Extensions := omit + ) := { + periodicity := p_periodicity, + burstArrivalTime := p_burstArrivalTime, + iE_Extensions := p_iE_Extensions + } // End of template m_tSCAssistanceInformation - template (value) LTEM_Indication m_lTEM_Indication(in LTEM_Indication p_value := lte_m) := p_value; + template (value) TSCAssistanceInformation.iE_Extensions m_tSCAssistanceInformation_id_SurvivalTime( + in template (value) SurvivalTime p_survivalTime + ) := { + { + id := id_SurvivalTime, + criticality := ignore, + extensionValue := { SurvivalTime := p_survivalTime } + } + } // End of template m_tSCAssistanceInformation_id_SurvivalTime - template (omit) LTEV2XServicesAuthorized m_lTEV2XServicesAuthorized( - in template (omit) VehicleUE p_vehicleUE := omit, - in template (omit) PedestrianUE p_pedestrianUE:= omit, - in template (omit) LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit + template (omit) TSCTrafficCharacteristics m_tSCTrafficCharacteristics( + in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationDL := omit, + in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationUL := omit, + in template (omit) TSCTrafficCharacteristics.iE_Extensions p_iE_Extensions := omit + ) := { + tSCAssistanceInformationDL := p_tSCAssistanceInformationDL, + tSCAssistanceInformationUL := p_tSCAssistanceInformationUL, + iE_Extensions := p_iE_Extensions + } // End of template m_tSCTrafficCharacteristics + + template (omit) UEAggregateMaximumBitRate m_uEAggregateMaximumBitRate( + in template (value) BitRate p_uEAggregateMaximumBitRateDL, + in template (value) BitRate p_uEAggregateMaximumBitRateUL, + in template (omit) UEAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit + ) := { + uEAggregateMaximumBitRateDL := p_uEAggregateMaximumBitRateDL, + uEAggregateMaximumBitRateUL := p_uEAggregateMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template m_uEAggregateMaximumBitRate + + template (omit) UEAppLayerMeasInfoItem m_uEAppLayerMeasInfoItem( + in template (value) UEAppLayerMeasConfigInfo p_uEAppLayerMeasConfigInfo, + in template (omit) UEAppLayerMeasInfoItem.iE_Extensions p_iE_Extensions := omit ) := { - vehicleUE := p_vehicleUE, - pedestrianUE := p_pedestrianUE, - iE_Extensions := p_iE_Extensions - } // End of template m_lTEV2XServicesAuthorized + uEAppLayerMeasConfigInfo := p_uEAppLayerMeasConfigInfo, + iE_Extensions := p_iE_Extensions + } // End of template m_uEAppLayerMeasInfoItem + + template (omit) UEAppLayerMeasConfigInfo m_uEAppLayerMeasConfigInfo( + in template (value) QoEReference p_qoEReference, + in template (value) TransportLayerAddress p_measCollEntityIPAddress, + in template (omit) ServiceType p_serviceType, + in template (omit) AreaScopeOfQMC p_areaScopeOfQMC := omit, + in template (omit) UEAppLayerMeasConfigInfo.qoEMeasurementStatus p_qoEMeasurementStatus := omit, + in template (omit) UEAppLayerMeasConfigInfo.containerForAppLayerMeasConfig p_containerForAppLayerMeasConfig := omit, + in template (omit) UEAppLayerMeasConfigInfo.measConfigAppLayerID p_measConfigAppLayerID := omit, + in template (omit) SliceSupportListQMC p_sliceSupportListQMC := omit, + in template (omit) MDT_AlignmentInfo p_mDT_AlignmentInfo := omit, + in template (omit) AvailableRANVisibleQoEMetrics p_availableRANVisibleQoEMetrics := omit, + in template (omit) UEAppLayerMeasConfigInfo.iE_Extensions p_iE_Extensions := omit + ) := { + qoEReference := p_qoEReference, + serviceType := p_serviceType, + areaScopeOfQMC := p_areaScopeOfQMC, + measCollEntityIPAddress := p_measCollEntityIPAddress, + qoEMeasurementStatus := p_qoEMeasurementStatus, + containerForAppLayerMeasConfig := p_containerForAppLayerMeasConfig, + measConfigAppLayerID := p_measConfigAppLayerID, + sliceSupportListQMC := p_sliceSupportListQMC, + mDT_AlignmentInfo := p_mDT_AlignmentInfo, + availableRANVisibleQoEMetrics := p_availableRANVisibleQoEMetrics, + iE_Extensions := p_iE_Extensions + } // End of template m_uEAppLayerMeasConfigInfo + + template (omit) UE_associatedLogicalNG_connectionItem m_uE_associatedLogicalNG_connectionItem( + in template (omit) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := omit, + in template (omit) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := omit, + in template (omit) UE_associatedLogicalNG_connectionItem.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, + rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_uE_associatedLogicalNG_connectionItem - template (omit) LTEUESidelinkAggregateMaximumBitrate m_lTEUESidelinkAggregateMaximumBitrate( - in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, - in template (omit) LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit - ) := { - uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, - iE_Extensions := p_iE_Extensions - } // End of template m_lTEUESidelinkAggregateMaximumBitrate + template (value) UECapabilityInfoRequest m_uECapabilityInfoRequest(in UECapabilityInfoRequest p_value := requested) := p_value; - template (value) MaximumIntegrityProtectedDataRate m_maximumIntegrityProtectedDataRate(in MaximumIntegrityProtectedDataRate p_value := bitrate64kbs) := p_value; + template (value) UEContextRequest m_uEContextRequest(in UEContextRequest p_value := requested) := p_value; - template (omit) MBS_DataForwardingResponseMRBItem m_mBS_DataForwardingResponseMRBItem( - in template (value) MRB_ID p_mRB_ID, - in template (value) UPTransportLayerInformation p_dL_Forwarding_UPTNLInformation, - in template (omit) MRB_ProgressInformation p_mRB_ProgressInformation := omit, - in template (omit) MBS_DataForwardingResponseMRBItem.iE_Extensions p_iE_Extensions := omit - ) := { - mRB_ID := p_mRB_ID, - dL_Forwarding_UPTNLInformation := p_dL_Forwarding_UPTNLInformation, - mRB_ProgressInformation := p_mRB_ProgressInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_DataForwardingResponseMRBItem - - template (omit) MBS_MappingandDataForwardingRequestItem m_mBS_MappingandDataForwardingRequestItem( - in template (value) MRB_ID p_mRB_ID, - in template (value) MBS_QoSFlowList p_mBS_QoSFlowList, - in template (omit) MRB_ProgressInformation p_mRB_ProgressInformation := omit, - in template (omit) MBS_MappingandDataForwardingRequestItem.iE_Extensions p_iE_Extensions := omit - ) := { - mRB_ID := p_mRB_ID, - mBS_QoSFlowList := p_mBS_QoSFlowList, - mRB_ProgressInformation := p_mRB_ProgressInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_MappingandDataForwardingRequestItem - - template (value) MRB_ProgressInformation m_mRB_ProgressInformation_pDCP_SN_Length12( - in template (value) MRB_ProgressInformation.pDCP_SN_Length12 p_pDCP_SN_Length12 + template (omit) UEContextResumeRequestTransfer m_uEContextResumeRequestTransfer( + in template (omit) QosFlowListWithCause p_qosFlowFailedToResumeList := omit, + in template (omit) UEContextResumeRequestTransfer.iE_Extensions p_iE_Extensions := omit ) := { - pDCP_SN_Length12 := p_pDCP_SN_Length12 - } // End of template m_mRB_ProgressInformation_pDCP_SN_Length12 + qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, + iE_Extensions := p_iE_Extensions + } // End of template m_uEContextResumeRequestTransfer - template (value) MRB_ProgressInformation m_mRB_ProgressInformation_pDCP_SN_Length18( - in template (value) MRB_ProgressInformation.pDCP_SN_Length18 p_pDCP_SN_Length18 + template (omit) UEContextResumeResponseTransfer m_uEContextResumeResponseTransfer( + in template (omit) QosFlowListWithCause p_qosFlowFailedToResumeList := omit, + in template (omit) UEContextResumeResponseTransfer.iE_Extensions p_iE_Extensions := omit ) := { - pDCP_SN_Length18 := p_pDCP_SN_Length18 - } // End of template m_mRB_ProgressInformation_pDCP_SN_Length18 + qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, + iE_Extensions := p_iE_Extensions + } // End of template m_uEContextResumeResponseTransfer - template (value) MRB_ProgressInformation m_mRB_ProgressInformation_choice_Extensions( - in template (value) MRB_ProgressInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_mRB_ProgressInformation_choice_Extensions + template (omit) UEContextSuspendRequestTransfer m_uEContextSuspendRequestTransfer( + in template (omit) SuspendIndicator p_suspendIndicator := omit, + in template (omit) UEContextSuspendRequestTransfer.iE_Extensions p_iE_Extensions := omit + ) := { + suspendIndicator := p_suspendIndicator, + iE_Extensions := p_iE_Extensions + } // End of template m_uEContextSuspendRequestTransfer + + template (omit) UE_DifferentiationInfo m_uE_DifferentiationInfo( + in template (omit) UE_DifferentiationInfo.periodicCommunicationIndicator p_periodicCommunicationIndicator := omit, + in template (omit) UE_DifferentiationInfo.periodicTime p_periodicTime := omit, + in template (omit) UE_DifferentiationInfo.scheduledCommunicationTime p_scheduledCommunicationTime := omit, + in template (omit) UE_DifferentiationInfo.stationaryIndication p_stationaryIndication := omit, + in template (omit) UE_DifferentiationInfo.trafficProfile p_trafficProfile := omit, + in template (omit) UE_DifferentiationInfo.batteryIndication p_batteryIndication := omit, + in template (omit) UE_DifferentiationInfo.iE_Extensions p_iE_Extensions := omit + ) := { + periodicCommunicationIndicator := p_periodicCommunicationIndicator, + periodicTime := p_periodicTime, + scheduledCommunicationTime := p_scheduledCommunicationTime, + stationaryIndication := p_stationaryIndication, + trafficProfile := p_trafficProfile, + batteryIndication := p_batteryIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_uE_DifferentiationInfo + + template (value) UEHistoryInformationFromTheUE m_uEHistoryInformationFromTheUE_nR( + in template (value) NRMobilityHistoryReport p_nR + ) := { + nR := p_nR + } // End of template m_uEHistoryInformationFromTheUE_nR - template (omit) MBS_QoSFlowsToBeSetupItem m_mBS_QoSFlowsToBeSetupItem( - in template (value)QosFlowIdentifier p_mBSqosFlowIdentifier, - in template (value)QosFlowLevelQosParameters p_mBSqosFlowLevelQosParameters, - in template (omit) MBS_QoSFlowsToBeSetupItem.iE_Extensions p_iE_Extensions := omit - ) := { - mBSqosFlowIdentifier := p_mBSqosFlowIdentifier, - mBSqosFlowLevelQosParameters := p_mBSqosFlowLevelQosParameters, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_QoSFlowsToBeSetupItem + template (value) UEHistoryInformationFromTheUE m_uEHistoryInformationFromTheUE_choice_Extensions( + in template (value) UEHistoryInformationFromTheUE.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uEHistoryInformationFromTheUE_choice_Extensions - template (value) MBS_ServiceArea m_mBS_ServiceArea_locationindependent( - in template (value) MBS_ServiceAreaInformation p_locationindependent - ) := { - locationindependent := p_locationindependent - } // End of template m_mBS_ServiceArea_locationindependent + template (value) UEIdentityIndexValue m_uEIdentityIndexValue_indexLength10( + in template (value) UEIdentityIndexValue.indexLength10 p_indexLength10 + ) := { + indexLength10 := p_indexLength10 + } // End of template m_uEIdentityIndexValue_indexLength10 - template (value) MBS_ServiceArea m_mBS_ServiceArea_locationdependent( - in template (value) MBS_ServiceAreaInformationList p_locationdependent - ) := { - locationdependent := p_locationdependent - } // End of template m_mBS_ServiceArea_locationdependent + template (value) UEIdentityIndexValue m_uEIdentityIndexValue_choice_Extensions( + in template (value) UEIdentityIndexValue.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uEIdentityIndexValue_choice_Extensions - template (value) MBS_ServiceArea m_mBS_ServiceArea_choice_Extensions( - in template (value) MBS_ServiceArea.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_mBS_ServiceArea_choice_Extensions + template (value) UE_NGAP_IDs m_uE_NGAP_IDs_uE_NGAP_ID_pair( + in template (value) UE_NGAP_ID_pair p_uE_NGAP_ID_pair + ) := { + uE_NGAP_ID_pair := p_uE_NGAP_ID_pair + } // End of template m_uE_NGAP_IDs_uE_NGAP_ID_pair - template (omit) MBS_ServiceAreaInformationItem m_mBS_ServiceAreaInformationItem( - in template (value) MBS_AreaSessionID p_mBS_AreaSessionID, - in template (value) MBS_ServiceAreaInformation p_mBS_ServiceAreaInformation, - in template (omit) MBS_ServiceAreaInformationItem.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_AreaSessionID := p_mBS_AreaSessionID, - mBS_ServiceAreaInformation := p_mBS_ServiceAreaInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_ServiceAreaInformationItem - - template (omit) MBS_ServiceAreaInformation m_mBS_ServiceAreaInformation( - in template (omit) MBS_ServiceAreaCellList p_mBS_ServiceAreaCellList := omit, - in template (omit) MBS_ServiceAreaTAIList p_mBS_ServiceAreaTAIList := omit, - in template (omit) MBS_ServiceAreaInformation.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_ServiceAreaCellList := p_mBS_ServiceAreaCellList, - mBS_ServiceAreaTAIList := p_mBS_ServiceAreaTAIList, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_ServiceAreaInformation - - template (omit) MBS_SessionID m_mBS_SessionID( - in template (value) TMGI p_tMGI, - in template (omit) NID p_nID := omit, - in template (omit) MBS_SessionID.iE_Extensions p_iE_Extensions := omit - ) := { - tMGI := p_tMGI, - nID := p_nID, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_SessionID - - template (omit) MBSSessionFailedtoSetupItem m_mBSSessionFailedtoSetupItem( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (value) Cause p_cause, - in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, - in template (omit) MBSSessionFailedtoSetupItem.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_mBSSessionFailedtoSetupItem - - template (omit) MBS_ActiveSessionInformation_SourcetoTargetItem m_mBS_ActiveSessionInformation_SourcetoTargetItem( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList, - in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, - in template (omit) MBS_ServiceArea p_mBS_ServiceArea := omit, - in template (omit) MBS_MappingandDataForwardingRequestList p_mBS_MappingandDataForwardingRequestList := omit, - in template (omit) MBS_ActiveSessionInformation_SourcetoTargetItem.iE_Extensions p_iE_Extensions := omit - ):= { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - mBS_ServiceArea := p_mBS_ServiceArea, - mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, - mBS_MappingandDataForwardingRequestList := p_mBS_MappingandDataForwardingRequestList, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_ActiveSessionInformation_SourcetoTargetItem - - template (omit) MBS_ActiveSessionInformation_TargettoSourceItem m_mBS_ActiveSessionInformation_TargettoSourceItem( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (omit) MBS_DataForwardingResponseMRBList p_mBS_DataForwardingResponseMRBList := omit, - in template (omit) MBS_ActiveSessionInformation_TargettoSourceItem.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_DataForwardingResponseMRBList := p_mBS_DataForwardingResponseMRBList, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_ActiveSessionInformation_TargettoSourceItem - - template (omit) MBSSessionSetupOrModFailureTransfer m_mBSSessionSetupOrModFailureTransfer( - in template (value) Cause p_cause, - in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, - in template (omit) MBSSessionSetupOrModFailureTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template m_mBSSessionSetupOrModFailureTransfer - - template (omit) MBSSessionSetupResponseItem m_mBSSessionSetupResponseItem( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, - in template (omit) MBSSessionSetupResponseItem.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - iE_Extensions := p_iE_Extensions - } // End of template m_mBSSessionSetupResponseItem - - template (value) MBSSessionSetupOrModRequestTransfer m_mBSSessionSetupOrModRequestTransfer( - in template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs - ) := { - protocolIEs := p_protocolIEs - } // End of template m_mBSSessionSetupOrModRequestTransfer - - template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( - in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC - ) := { - { - id := id_MBS_SessionTNLInfo5GC, - criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } - } - } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC + template (value) UE_NGAP_IDs m_uE_NGAP_IDs_aMF_UE_NGAP_ID( + in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := PX_AMF_UE_NGAP_ID + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID + } // End of template m_uE_NGAP_IDs_aMF_UE_NGAP_ID - template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( - in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList - ) := { - { - id := id_MBS_QoSFlowsToBeSetupModList, - criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } - } - } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + template (value) UE_NGAP_IDs m_uE_NGAP_IDs_choice_Extensions( + in template (value) UE_NGAP_IDs.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uE_NGAP_IDs_choice_Extensions - template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( - in template (value) MBS_SessionFSAIDList p_mBS_SessionFSAIDList - ) := { - { - id := id_MBS_SessionFSAIDList, - criticality := ignore, - value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } - } - } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList + template (omit) UE_NGAP_ID_pair m_uE_NGAP_ID_pair( + in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := PX_RAN_UE_NGAP_ID, + in template (omit) UE_NGAP_ID_pair.iE_Extensions p_iE_Extensions := omit + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, + rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, + iE_Extensions := p_iE_Extensions + } // End of template m_uE_NGAP_ID_pair - template (omit) MBSSessionReleaseResponseTransfer m_mBSSessionReleaseResponseTransfer( - in template (omit) MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := omit, - in template (omit) MBSSessionReleaseResponseTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, - iE_Extensions := p_iE_Extensions - } // End of template m_mBSSessionReleaseResponseTransfer + template (value) UEPagingIdentity m_uEPagingIdentity_fiveG_S_TMSI( + in template (value) FiveG_S_TMSI p_fiveG_S_TMSI + ) := { + fiveG_S_TMSI := p_fiveG_S_TMSI + } // End of template m_uEPagingIdentity_fiveG_S_TMSI - template (omit) MBSSessionSetupOrModResponseTransfer m_mBSSessionSetupOrModResponseTransfer( - in template (omit) MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := omit, - in template (omit) MBSSessionSetupOrModResponseTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, - iE_Extensions := p_iE_Extensions - } // End of template m_mBSSessionSetupOrModResponseTransfer + template (value) UEPagingIdentity m_uEPagingIdentity_choice_Extensions( + in template (value) UEPagingIdentity.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uEPagingIdentity_choice_Extensions - template (value) MBS_SupportIndicator m_mBS_SupportIndicator(in MBS_SupportIndicator p_value := true_) := p_value; + template (value) UEPresence m_uEPresence(in UEPresence p_value := in_) := p_value; - template (value) MBS_SessionTNLInfo5GC m_mBS_SessionTNLInfo5GC_locationindependent( - in template (value) SharedNGU_MulticastTNLInformation p_locationindependent - ) := { - locationindependent := p_locationindependent - } // End of template m_mBS_SessionTNLInfo5GC_locationindependent + template (omit) UEPresenceInAreaOfInterestItem m_uEPresenceInAreaOfInterestItem( + in template (value) LocationReportingReferenceID p_locationReportingReferenceID, + in template (value) UEPresence p_uEPresence, + in template (omit) UEPresenceInAreaOfInterestItem.iE_Extensions p_iE_Extensions := omit + ) := { + locationReportingReferenceID := p_locationReportingReferenceID, + uEPresence := p_uEPresence, + iE_Extensions := p_iE_Extensions + } // End of template m_uEPresenceInAreaOfInterestItem + + template (omit) UERadioCapabilityForPaging m_uERadioCapabilityForPaging( + in template (omit) UERadioCapabilityForPagingOfNR p_uERadioCapabilityForPagingOfNR := omit, + in template (omit) UERadioCapabilityForPagingOfEUTRA p_uERadioCapabilityForPagingOfEUTRA := omit, + in template (omit) UERadioCapabilityForPaging.iE_Extensions p_iE_Extensions := omit + ) := { + uERadioCapabilityForPagingOfNR := p_uERadioCapabilityForPagingOfNR, + uERadioCapabilityForPagingOfEUTRA := p_uERadioCapabilityForPagingOfEUTRA, + iE_Extensions := p_iE_Extensions + } // End of template m_uERadioCapabilityForPaging - template (value) MBS_SessionTNLInfo5GC m_mBS_SessionTNLInfo5GC_locationdependent( - in template (value) MBS_SessionTNLInfo5GCList p_locationdependent - ) := { - locationdependent := p_locationdependent - } // End of template m_mBS_SessionTNLInfo5GC_locationdependent + template (value) UERadioCapabilityForPaging.iE_Extensions m_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT( + in template (value) UERadioCapabilityForPagingOfNB_IoT p_uERadioCapabilityForPagingOfNB_IoT + ) := { + { + id := id_UERadioCapabilityForPagingOfNB_IoT, + criticality := ignore, + extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } + } + } // End of template m_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT - template (value) MBS_SessionTNLInfo5GC m_mBS_SessionTNLInfo5GC_choice_Extensions( - in template (value) MBS_SessionTNLInfo5GC.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_mBS_SessionTNLInfo5GC_choice_Extensions + template (value) UERetentionInformation m_uERetentionInformation(in UERetentionInformation p_value := ues_retained):= p_value; - template (omit) MBS_SessionTNLInfo5GCItem m_mBS_SessionTNLInfo5GCItem( - in template (value) MBS_AreaSessionID p_mBS_AreaSessionID, - in template (value) SharedNGU_MulticastTNLInformation p_sharedNGU_MulticastTNLInformation, - in template (omit) MBS_SessionTNLInfo5GCItem.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_SessionTNLInfo5GCItem + template (value) UERLFReportContainer m_uERLFReportContainer_nR( + in template (value) NRUERLFReportContainer p_nR + ) := { + nR := p_nR + } // End of template m_uERLFReportContainer_nR - template (value) MBS_SessionTNLInfoNGRAN m_mBS_SessionTNLInfoNGRAN_locationindependent( - in template (value) UPTransportLayerInformation p_locationindependent - ) := { - locationindependent := p_locationindependent - } // End of template m_mBS_SessionTNLInfoNGRAN_locationindependent + template (value) UERLFReportContainer m_uERLFReportContainer_lTE( + in template (value) LTEUERLFReportContainer p_lTE + ) := { + lTE := p_lTE + } // End of template m_uERLFReportContainer_lTE - template (value) MBS_SessionTNLInfoNGRAN m_mBS_SessionTNLInfoNGRAN_locationdependent( - in template (value) MBS_SessionTNLInfoNGRANList p_locationdependent - ) := { - locationdependent := p_locationdependent - } // End of template m_mBS_SessionTNLInfoNGRAN_locationdependent + template (value) UERLFReportContainer m_uERLFReportContainer_choice_Extensions( + in template (value) UERLFReportContainer.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uERLFReportContainer_choice_Extensions + + template (omit) UESecurityCapabilities m_uESecurityCapabilities( + in template (value) NRencryptionAlgorithms p_nRencryptionAlgorithms, + in template (value) NRintegrityProtectionAlgorithms p_nRintegrityProtectionAlgorithms, + in template (value) EUTRAencryptionAlgorithms p_eUTRAencryptionAlgorithms, + in template (value) EUTRAintegrityProtectionAlgorithms p_eUTRAintegrityProtectionAlgorithms, + in template (omit) UESecurityCapabilities.iE_Extensions p_iE_Extensions := omit + ) := { + nRencryptionAlgorithms := p_nRencryptionAlgorithms, + nRintegrityProtectionAlgorithms := p_nRintegrityProtectionAlgorithms, + eUTRAencryptionAlgorithms := p_eUTRAencryptionAlgorithms, + eUTRAintegrityProtectionAlgorithms := p_eUTRAintegrityProtectionAlgorithms, + iE_Extensions := p_iE_Extensions + } // End of template m_uESecurityCapabilities + + template (omit) UESliceMaximumBitRateItem m_uESliceMaximumBitRateItem( + in template (value) S_NSSAI p_s_NSSAI, + in template (value) BitRate p_uESliceMaximumBitRateDL, + in template (value) BitRate p_uESliceMaximumBitRateUL, + in template (omit) UESliceMaximumBitRateItem.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + uESliceMaximumBitRateDL := p_uESliceMaximumBitRateDL, + uESliceMaximumBitRateUL := p_uESliceMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template m_uESliceMaximumBitRateItem + + template (value) UE_UP_CIoT_Support m_uE_UP_CIoT_Support(in UE_UP_CIoT_Support p_value := supported) := p_value; + + template (omit) UL_CP_SecurityInformation m_UL_CP_SecurityInformation( + in template (value) UL_NAS_MAC p_ul_NAS_MAC := PX_UL_NAS_MAC, + in template (value) UL_NAS_Count p_ul_NAS_Count := PX_UL_NAS_COUNT, + in template (omit) UL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + ul_NAS_MAC := p_ul_NAS_MAC, + ul_NAS_Count := p_ul_NAS_Count, + iE_Extensions := p_iE_Extensions + } // End of template + + template (omit) UL_NGU_UP_TNLModifyItem m_uL_NGU_UP_TNLModifyItem( + in template (value) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation, + in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, + in template (omit) UL_NGU_UP_TNLModifyItem.iE_Extensions p_iE_Extensions := omit + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_uL_NGU_UP_TNLModifyItem - template (value) MBS_SessionTNLInfoNGRAN m_mBS_SessionTNLInfoNGRAN_choice_Extensions( - in template (value) MBS_SessionTNLInfoNGRAN.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_mBS_SessionTNLInfoNGRAN_choice_Extensions + template (value) UL_NGU_UP_TNLModifyItem.iE_Extensions m_uL_NGU_UP_TNLModifyItem_id_RedundantUL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_uL_NGU_UP_TNLModifyItem_id_RedundantUL_NGU_UP_TNLInformation - template (omit) MBS_SessionTNLInfoNGRANItem m_mBS_SessionTNLInfoNGRANItem( - in template (value) MBS_AreaSessionID p_mBS_AreaSessionID, - in template (omit) UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := omit, - in template (omit) MBS_SessionTNLInfoNGRANItem.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_SessionTNLInfoNGRANItem + template (value) UL_NGU_UP_TNLModifyItem.iE_Extensions m_uL_NGU_UP_TNLModifyItem_id_RedundantDL_NGU_UP_TNLInformation( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_uL_NGU_UP_TNLModifyItem_id_RedundantDL_NGU_UP_TNLInformation - template (omit) MBS_DistributionReleaseRequestTransfer m_mBS_DistributionReleaseRequestTransfer( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (value) Cause p_cause, - in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, - in template (omit) UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := omit, - in template (omit) MBS_DistributionReleaseRequestTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_DistributionReleaseRequestTransfer - - template (omit) MBS_DistributionSetupRequestTransfer m_mBS_DistributionSetupRequestTransfer( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, - in template (omit) UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := omit, - in template (omit) MBS_DistributionSetupRequestTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_DistributionSetupRequestTransfer - - template (omit) MBS_DistributionSetupResponseTransfer m_mBS_DistributionSetupResponseTransfer( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList, - in template (value) MBSSessionStatus p_mBSSessionStatus, - in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, - in template (omit) MBS_SessionTNLInfo5GCItem p_sharedNGU_MulticastTNLInformation := omit, - in template (omit) MBS_ServiceArea p_mBS_ServiceArea := omit, - in template (omit) MBS_DistributionSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, - mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, - mBSSessionStatus := p_mBSSessionStatus, - mBS_ServiceArea := p_mBS_ServiceArea, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_DistributionSetupResponseTransfer - - template (omit) MBS_DistributionSetupUnsuccessfulTransfer m_mBS_DistributionSetupUnsuccessfulTransfer( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (value) Cause p_cause, - in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, - in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, - in template (omit) MBS_DistributionSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template m_mBS_DistributionSetupUnsuccessfulTransfer - - template (omit) MBSSessionSetupRequestItem m_mBSSessionSetupRequestItem( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, - in template (omit) AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := omit, - in template (omit) MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := omit - ):= { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - associatedMBSQosFlowSetupRequestList := p_associatedMBSQosFlowSetupRequestList, - iE_Extensions := p_iE_Extensions - } // End of template m_mBSSessionSetupRequestItem - - template (omit) MBSSessionSetuporModifyRequestItem m_mBSSessionSetuporModifyRequestItem( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (omit) MBS_AreaSessionID p_mBS_AreaSessionID := omit, - in template (omit) AssociatedMBSQosFlowSetuporModifyRequestList p_associatedMBSQosFlowSetuporModifyRequestList := omit, - in template (omit) QosFlowListWithCause p_mBS_QosFlowToReleaseList := omit, - in template (omit) MBSSessionSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := omit + template (omit) UnavailableGUAMIItem m_unavailableGUAMIItem( + in template (value) GUAMI p_gUAMI, + in template (omit) TimerApproachForGUAMIRemoval p_timerApproachForGUAMIRemoval := omit, + in template (omit) AMFName p_backupAMFName := omit, + in template (omit) UnavailableGUAMIItem.iE_Extensions p_iE_Extensions := omit + ) := { + gUAMI := p_gUAMI, + timerApproachForGUAMIRemoval := p_timerApproachForGUAMIRemoval, + backupAMFName := p_backupAMFName, + iE_Extensions := p_iE_Extensions + } // End of template m_unavailableGUAMIItem + + template (value) ULForwarding m_uLForwarding(in ULForwarding p_value := ul_forwarding_proposed) := p_value; + + template (value) UPTransportLayerInformation m_uPTransportLayerInformation_gTPTunnel( + in template (value) GTPTunnel p_gTPTunnel ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - associatedMBSQosFlowSetuporModifyRequestList := p_associatedMBSQosFlowSetuporModifyRequestList, - mBS_QosFlowToReleaseList := p_mBS_QosFlowToReleaseList, - iE_Extensions := p_iE_Extensions - } // End of template m_mBSSessionSetuporModifyRequestItem - - template (omit) MBSSessionToReleaseItem m_mBSSessionToReleaseItem( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (value) Cause p_cause, - in template (omit) MBSSessionToReleaseItem.iE_Extensions p_iE_Extensions := omit - ):= { - mBS_SessionID := p_mBS_SessionID, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_mBSSessionToReleaseItem - - template (value) MBSSessionStatus m_mBSSessionStatus(in MBSSessionStatus p_value := activated) := p_value; - - template (value) MicoAllPLMN m_micoAllPLMN(in MicoAllPLMN p_value := true_) := p_value; - - template (value) MICOModeIndication m_mICOModeIndication(in MICOModeIndication p_value := true_) := p_value; - - template (omit) MobilityRestrictionList m_mobilityRestrictionList( - in template (value) PLMNIdentity p_servingPLMN, - in template (omit) EquivalentPLMNs p_equivalentPLMNs := omit, - in template (omit) RATRestrictions p_rATRestrictions := omit, - in template (omit) ForbiddenAreaInformation p_forbiddenAreaInformation := omit, - in template (omit) ServiceAreaInformation p_serviceAreaInformation := omit, - in template (omit) MobilityRestrictionList.iE_Extensions p_iE_Extensions := omit - ) := { - servingPLMN := p_servingPLMN, - equivalentPLMNs := p_equivalentPLMNs, - rATRestrictions := p_rATRestrictions, - forbiddenAreaInformation := p_forbiddenAreaInformation, - serviceAreaInformation := p_serviceAreaInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_mobilityRestrictionList - - template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( - in template (value) PLMNIdentity p_pLMNIdentity - ) := { - { - id := id_LastEUTRAN_PLMNIdentity, - criticality := ignore, - extensionValue := { PLMNIdentity := p_pLMNIdentity } - } - } // End of template m_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity - - template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_CNTypeRestrictionsForServing( - in template (value) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing - ) := { - { - id := id_CNTypeRestrictionsForServing, - criticality := ignore, - extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } - } - } // End of template m_mobilityRestrictionList_id_CNTypeRestrictionsForServing + gTPTunnel := p_gTPTunnel + } // End of template m_uPTransportLayerInformation_gTPTunnel - template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( - in template (value) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent - ) := { - { - id := id_CNTypeRestrictionsForEquivalent, - criticality := ignore, - extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } - } - } // End of template m_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent + template (value) UPTransportLayerInformation m_uPTransportLayerInformation_choice_Extensions( + in template (value) UPTransportLayerInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_uPTransportLayerInformation_choice_Extensions - template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_NPN_MobilityInformation( - in template (value) NPN_MobilityInformation p_nPN_MobilityInformation - ) := { - { - id := id_NPN_MobilityInformation, - criticality := reject, - extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } - } - } // End of template m_mobilityRestrictionList_id_NPN_MobilityInformation + template (omit) UPTransportLayerInformationItem m_uPTransportLayerInformationItem( + in template (value) UPTransportLayerInformation p_nGU_UP_TNLInformation, + in template (omit) UPTransportLayerInformationItem.iE_Extensions p_iE_Extensions := omit + ) := { + nGU_UP_TNLInformation := p_nGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_uPTransportLayerInformationItem - template (value) MDT_AlignmentInfo m_mDT_AlignmentInfo_s_basedMDT( - in template (value) NGRANTraceID p_s_basedMDT - ) := { - s_basedMDT := p_s_basedMDT - } // End of template m_mDT_AlignmentInfo_s_basedMDT + template (value) UPTransportLayerInformationItem.iE_Extensions m_uPTransportLayerInformationItem_id_CommonNetworkInstance( + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { + { + id := id_CommonNetworkInstance, + criticality := ignore, + extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template m_uPTransportLayerInformationItem_id_CommonNetworkInstance - template (value) MDT_AlignmentInfo m_mDT_AlignmentInfo_choice_Extensions( - in template (value) MDT_AlignmentInfo.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_mDT_AlignmentInfo_choice_Extensions - - template (omit) MDT_Configuration m_mDT_Configuration( - in template (omit) MDT_Configuration_NR p_mdt_Config_NR := omit, - in template (omit) MDT_Configuration_EUTRA p_mdt_Config_EUTRA := omit, - in template (omit) MDT_Configuration.iE_Extensions p_iE_Extensions := omit - ) := { - mdt_Config_NR := p_mdt_Config_NR, - mdt_Config_EUTRA := p_mdt_Config_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template m_mDT_Configuration - - template (omit) MDT_Configuration_NR m_mDT_Configuration_NR( - in template (value) MDT_Activation p_mdt_Activation, - in template (value) AreaScopeOfMDT_NR p_areaScopeOfMDT, - in template (value) MDTModeNr p_mDTModeNr, - in template (omit) MDTPLMNList p_signallingBasedMDTPLMNList := omit, - in template (omit) MDT_Configuration_NR.iE_Extensions p_iE_Extensions := omit - ) := { - mdt_Activation := p_mdt_Activation, - areaScopeOfMDT := p_areaScopeOfMDT, - mDTModeNr := p_mDTModeNr, - signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template m_mDT_Configuration_NR - - template (omit) MDT_Configuration_EUTRA m_mDT_Configuration_EUTRA( - in template (value) MDT_Activation p_mdt_Activation, - in template (value) AreaScopeOfMDT_EUTRA p_areaScopeOfMDT, - in template (value) MDTModeEutra p_mDTMode, - in template (omit) MDTPLMNList p_signallingBasedMDTPLMNList := omit, - in template (omit) MDT_Configuration_EUTRA.iE_Extensions p_iE_Extensions := omit - ) := { - mdt_Activation := p_mdt_Activation, - areaScopeOfMDT := p_areaScopeOfMDT, - mDTMode := p_mDTMode, - signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template m_mDT_Configuration_EUTRA - - template (value) MDT_Activation m_mDT_Activation(in MDT_Activation p_value := immediate_MDT_only) := p_value; - - template (value) MDTModeNr m_mDTModeNro_immediateMDTNr( - in template (value) ImmediateMDTNr p_immediateMDTNr - ) := { - immediateMDTNr := p_immediateMDTNr - } // End of template m_mDTModeNr_immediateMDTNr - - template (value) MDTModeNr m_mDTModeNro_loggedMDTNr( - in template (value) LoggedMDTNr p_loggedMDTNr - ) := { - loggedMDTNr := p_loggedMDTNr - } // End of template m_mDTModeNr_loggedMDTNr - - template (value) MDTModeNr m_mDTModeNr_choice_Extensions( - in template (value) MDTModeNr.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_mDTModeNr_choice_Extensions - - template (omit) MulticastSessionActivationRequestTransfer m_multicastSessionActivationRequestTransfer( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (omit) MulticastSessionActivationRequestTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionID := p_mBS_SessionID, - iE_Extensions := p_iE_Extensions - } // End of template m_multicastSessionActivationRequestTransfer - - template (omit) MulticastSessionDeactivationRequestTransfer m_multicastSessionDeactivationRequestTransfer( - in template (value) MBS_SessionID p_mBS_SessionID, - in template (omit) MulticastSessionDeactivationRequestTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_SessionID := p_mBS_SessionID, - iE_Extensions := p_iE_Extensions - } // End of template m_multicastSessionDeactivationRequestTransfer - - template (value) MulticastSessionUpdateRequestTransfer m_multicastSessionUpdateRequestTransfer( - in template (value) MulticastSessionUpdateRequestTransfer.protocolIEs p_protocolIEs - ) := { - protocolIEs := p_protocolIEs - } // End of template m_multicastSessionUpdateRequestTransfer - - template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( - in template (value) MBS_SessionID p_mBS_SessionID - ) := { - { - id := id_MBS_SessionID, - criticality := reject, - value_ := { MBS_SessionID := p_mBS_SessionID } - } - } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_SessionID + template (omit) UPTransportLayerInformationPairItem m_uPTransportLayerInformationPairItem( + in template (value) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation, + in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, + in template (omit) UPTransportLayerInformationPairItem.iE_Extensions p_iE_Extensions := omit + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_uPTransportLayerInformationPairItem - template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( - in template (value) MBS_ServiceArea p_mBS_ServiceArea - ) := { - { - id := id_MBS_ServiceArea, - criticality := reject, - value_ := { MBS_ServiceArea := p_mBS_ServiceArea } - } - } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea + template (value) UserLocationInformation m_uPTransportLayerInformation_userLocationInformationEUTRA( + in template (value) UserLocationInformationEUTRA p_userLocationInformationEUTRA + ) := { + userLocationInformationEUTRA := p_userLocationInformationEUTRA + } // End of template m_uPTransportLayerInformation_userLocationInformationEUTRA - template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( - in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList - ) := { - { - id := id_MBS_QoSFlowsToBeSetupModList, - criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } - } - } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + template (value) UserLocationInformation m_uPTransportLayerInformation_userLocationInformationNR( + in template (value) UserLocationInformationNR p_userLocationInformationNR + ) := { + userLocationInformationNR := p_userLocationInformationNR + } // End of template m_uPTransportLayerInformation_userLocationInformationNR - template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( - in template (value) QosFlowListWithCause p_qosFlowListWithCause - ) := { - { - id := id_MBS_QoSFlowToReleaseList, - criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList + template (value) UserLocationInformation m_uPTransportLayerInformation_userLocationInformationN3IWF( + in template (value) UserLocationInformationN3IWF p_userLocationInformationN3IWF + ) := { + userLocationInformationN3IWF := p_userLocationInformationN3IWF + } // End of template m_uPTransportLayerInformation_userLocationInformationN3IWF - template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( - in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC - ) := { - { - id := id_MBS_SessionTNLInfo5GC, - criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } - } - } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC + template (value) UserLocationInformation m_userLocationInformation_choice_Extensions( + in template (value) UserLocationInformation.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_userLocationInformation_choice_Extensions - template (omit) MulticastGroupPagingAreaItem m_multicastGroupPagingAreaItem( - in template (value) MulticastGroupPagingArea p_multicastGroupPagingArea, - in template (omit) UE_PagingList p_uE_PagingList := omit, - in template (omit) MulticastGroupPagingAreaItem.iE_Extensions p_iE_Extensions := omit - ) := { - multicastGroupPagingArea := p_multicastGroupPagingArea, - uE_PagingList := p_uE_PagingList, - iE_Extensions := p_iE_Extensions - } // End of template m_multicastGroupPagingAreaItem - - template (omit) MulticastGroupPagingArea m_multicastGroupPagingArea( - in template (value) MBS_AreaTAIList p_mBS_AreaTAIList, - in template (omit) MulticastGroupPagingArea.iE_Extensions p_iE_Extensions := omit - ) := { - mBS_AreaTAIList := p_mBS_AreaTAIList, - iE_Extensions := p_iE_Extensions - } // End of template m_multicastGroupPagingArea - - template (omit) UE_PagingItem m_uE_PagingItem( - in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, - in template (omit) PagingDRX p_pagingDRX := omit, - in template (omit) UE_PagingItem.iE_Extensions p_iE_Extensions := omit - ) := { - uEIdentityIndexValue := p_uEIdentityIndexValue, - pagingDRX := p_pagingDRX, - iE_Extensions := p_iE_Extensions - } // End of template m_uE_PagingItem - - template (omit) M1Configuration m_m1Configuration( - in template (value) M1ReportingTrigger p_m1reportingTrigger, - in template (omit) M1ThresholdEventA2 p_m1thresholdEventA2 := omit, - in template (omit) M1PeriodicReporting p_m1periodicReporting := omit, - in template (omit) M1Configuration.iE_Extensions p_iE_Extensions := omit - ) := { - m1reportingTrigger := p_m1reportingTrigger, - m1thresholdEventA2 := p_m1thresholdEventA2, - // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” - m1periodicReporting := p_m1periodicReporting, - // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” - iE_Extensions := p_iE_Extensions - } // End of template m_m1Configuration - - template (value) M1Configuration.iE_Extensions m_m1Configuration_id_IncludeBeamMeasurementsIndication( - in template (value) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication - ) := { - { - id := id_IncludeBeamMeasurementsIndication, - criticality := ignore, - extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } - } - } // End of template m_m1Configuration_id_IncludeBeamMeasurementsIndication + template (value) UserLocationInformation.choice_Extensions m_userLocationInformation_id_UserLocationInformationTNGF( + in template (value) UserLocationInformationTNGF p_userLocationInformationTNGF + ) := { + id := id_UserLocationInformationTNGF, + criticality := ignore, + value_ := { UserLocationInformationTNGF := p_userLocationInformationTNGF } + } // End of template m_userLocationInformation_id_UserLocationInformationTNGF - template (value) M1Configuration.iE_Extensions m_m1Configuration_id_BeamMeasurementsReportConfiguration( - in template (value) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration - ) := { - { - id := id_BeamMeasurementsReportConfiguration, - criticality := ignore, - extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } - } - } // End of template m_m1Configuration_id_BeamMeasurementsReportConfiguration + template (value) UserLocationInformation.choice_Extensions m_userLocationInformation_id_UserLocationInformationTWIF( + in template (value) UserLocationInformationTWIF p_userLocationInformationTWIF + ) := { + id := id_UserLocationInformationTWIF, + criticality := ignore, + value_ := { UserLocationInformationTWIF := p_userLocationInformationTWIF } + } // End of template m_userLocationInformation_id_UserLocationInformationTWIF + + template (value) UserLocationInformation.choice_Extensions m_userLocationInformation_id_UserLocationInformationW_AGF( + in template (value) UserLocationInformationW_AGF p_userLocationInformationW_AGF + ) := { + id := id_UserLocationInformationW_AGF, + criticality := ignore, + value_ := { UserLocationInformationW_AGF := p_userLocationInformationW_AGF } + } // End of template m_userLocationInformation_id_UserLocationInformationW_AGF + + template (omit) UserLocationInformationEUTRA m_userLocationInformationEUTRA( + in template (value) EUTRA_CGI p_eUTRA_CGI, + in template (value) TAI p_tAI, + in template (omit) TimeStamp p_timeStamp := omit, + in template (omit) UserLocationInformationEUTRA.iE_Extensions p_iE_Extensions := omit + ) := { + eUTRA_CGI := p_eUTRA_CGI, + tAI := p_tAI, + timeStamp := p_timeStamp, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationEUTRA + + template (value) UserLocationInformationEUTRA.iE_Extensions m_userLocationInformationEUTRA_id_PSCellInformation( + in template (value) NGRAN_CGI p_nGRAN_CGI + ) := { + { + id := id_PSCellInformation, + criticality := ignore, + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + } + } // End of template m_userLocationInformationEUTRA_id_PSCellInformation - template (value) IncludeBeamMeasurementsIndication m_includeBeamMeasurementsIndication(in IncludeBeamMeasurementsIndication p_value := true_) := p_value; + template (omit) UserLocationInformationN3IWF m_userLocationInformationN3IWF( + in template (value) TransportLayerAddress p_iPAddress := PX_TRANSPORT_LAYER_ADDRESS, + in template (value) PortNumber p_portNumber, + in template (omit) UserLocationInformationN3IWF.iE_Extensions p_iE_Extensions := omit + ) := { + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationN3IWF - template (value) M1ReportingTrigger m_m1ReportingTrigger(in M1ReportingTrigger p_value := periodic) := p_value; + template (value) UserLocationInformationN3IWF.iE_Extensions m_userLocationInformationN3IWF_id_TAI( + in template (value) TAI p_tAI + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template m_userLocationInformationN3IWF_id_TAI - template (omit) M1ThresholdEventA2 m_m1ThresholdEventA2( - in template (value) M1ThresholdType p_m1ThresholdType, - in template (omit) M1ThresholdEventA2.iE_Extensions p_iE_Extensions := omit - ) := { - m1ThresholdType := p_m1ThresholdType, - iE_Extensions := p_iE_Extensions - } // End of template m_m1ThresholdEventA2 - - template (value) M1ThresholdType m_m1ThresholdType_threshold_RSRP( - in template (value) Threshold_RSRP p_threshold_RSRP - ) := { - threshold_RSRP := p_threshold_RSRP - } // End of template m_m1ThresholdType_threshold_RSRP - - template (value) M1ThresholdType m_m1ThresholdType_threshold_RSRQ( - in template (value) Threshold_RSRQ p_threshold_RSRQ - ) := { - threshold_RSRQ := p_threshold_RSRQ - } // End of template m_m1ThresholdType_threshold_RSRQ - - template (value) M1ThresholdType m_m1ThresholdType_threshold_SINR( - in template (value) Threshold_SINR p_threshold_SINR - ) := { - threshold_SINR := p_threshold_SINR - } // End of template m_m1ThresholdType_threshold_SINR - - template (value) M1ThresholdType m_m1ThresholdType_choice_Extensions( - in template (value) M1ThresholdType.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_m1ThresholdType_choice_Extensions - - template (omit) M1PeriodicReporting m_m1PeriodicReporting( - in template (value) ReportIntervalMDT p_reportInterval, - in template (value) ReportAmountMDT p_reportAmount, - in template (omit) M1PeriodicReporting.iE_Extensions p_iE_Extensions := omit - ) := { - reportInterval := p_reportInterval, - reportAmount := p_reportAmount, - iE_Extensions := p_iE_Extensions - } // End of template m_m1PeriodicReporting - - template (value) M1PeriodicReporting.iE_Extensions m_m1PeriodicReporting_id_ExtendedReportIntervalMDT( - in template (value) ExtendedReportIntervalMDT p_extendedReportIntervalMDT - ) := { - { - id := id_ExtendedReportIntervalMDT, - criticality := ignore, - extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } - } - } // End of template m_m1PeriodicReporting_id_ExtendedReportIntervalMDT - - template (omit) M4Configuration m_m4Configuration( - in template (value) M4period p_m4period, - in template (value) Links_to_log p_m4_links_to_log, - in template (omit) M4Configuration.iE_Extensions p_iE_Extensions := omit - ) := { - m4period := p_m4period, - m4_links_to_log := p_m4_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template m_m4Configuration - - template (value) M4Configuration.iE_Extensions m_m4Configuration_id_M4ReportAmount( - in template (value) M4ReportAmountMDT p_m4ReportAmountMDT - ) := { - { - id := id_ExtendedReportIntervalMDT, - criticality := ignore, - extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } - } - } // End of template m_m4Configuration_id_M4ReportAmount + template (omit) UserLocationInformationTNGF m_userLocationInformationTNGF( + in template (value) TNAP_ID p_tNAP_ID, + in template (value) TransportLayerAddress p_iPAddress := PX_TRANSPORT_LAYER_ADDRESS, + in template (value) PortNumber p_portNumber, + in template (omit) UserLocationInformationTNGF.iE_Extensions p_iE_Extensions := omit + ) := { + tNAP_ID := p_tNAP_ID, + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationTNGF + + template (value) UserLocationInformationTNGF.iE_Extensions m_userLocationInformationTNGF_id_TAI( + in template (value) TAI p_tAI + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template m_userLocationInformationTNGF_id_TAI - template (value) M4ReportAmountMDT m_m4ReportAmountMDT(in M4ReportAmountMDT p_value := r1) := p_value; + template (omit) UserLocationInformationTWIF m_userLocationInformationTWIF( + in template (value) TWAP_ID p_tWAP_ID, + in template (value) TransportLayerAddress p_iPAddress := PX_TRANSPORT_LAYER_ADDRESS, + in template (value) PortNumber p_portNumber, + in template (omit) UserLocationInformationTWIF.iE_Extensions p_iE_Extensions := omit + ) := { + tWAP_ID := p_tWAP_ID, + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationTWIF + + template (value) UserLocationInformationTWIF.iE_Extensions m_userLocationInformationTWIF_id_TAI( + in template (value) TAI p_tAI + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template m_userLocationInformationTWIF_id_TAI - template (value) M4period m_m4period(in M4period p_value := ms1024) := p_value; + template (value) UserLocationInformationW_AGF m_userLocationInformationW_AGF_globalLine_ID( + in template (value) GlobalLine_ID p_globalLine_ID + ) := { + globalLine_ID := p_globalLine_ID + } // End of template m_userLocationInformationW_AGF_globalLine_ID - template (omit) M5Configuration m_m5Configuration( - in template (value) M5period p_m5period, - in template (value) Links_to_log p_m5_links_to_log, - in template (omit) M5Configuration.iE_Extensions p_iE_Extensions := omit - ) := { - m5period := p_m5period, - m5_links_to_log := p_m5_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template m_m5Configuration + template (value) UserLocationInformationW_AGF m_userLocationInformationW_AGF_hFCNode_ID( + in template (value) HFCNode_ID p_hFCNode_ID + ) := { + hFCNode_ID := p_hFCNode_ID + } // End of template m_userLocationInformationW_AGF_hFCNode_ID - template (value) M5Configuration.iE_Extensions m_m5Configuration_id_M5ReportAmount( - in template (value) M5ReportAmountMDT p_m5ReportAmountMDT - ) := { - { - id := id_M5ReportAmount, - criticality := ignore, - extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } - } - } // End of template m_m5Configuration_id_M5ReportAmount + template (value) UserLocationInformationW_AGF m_userLocationInformationW_AGF_choice_Extensions( + in template (value) UserLocationInformationW_AGF.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_userLocationInformationW_AGF_choice_Extensions - template (value) M5ReportAmountMDT m_m5ReportAmountMDT(in M5ReportAmountMDT p_value := r1) := p_value; + template (value) UserLocationInformationW_AGF.choice_Extensions m_userLocationInformationW_AGF_id_GlobalCable_ID( + in template (value) GlobalCable_ID p_globalCable_ID + ) := { + id := id_GlobalCable_ID, + criticality := ignore, + value_ := { GlobalCable_ID := p_globalCable_ID } + } // End of template m_userLocationInformationW_AGF_id_GlobalCable_ID - template (value) M5period m_m5period(in M5period p_value := ms1024) := p_value; + template (value) UserLocationInformationW_AGF.choice_Extensions m_userLocationInformationW_AGF_id_HFCNode_ID_new( + in template (value) HFCNode_ID_new p_hFCNode_ID_new + ) := { + id := id_HFCNode_ID_new, + criticality := ignore, + value_ := { HFCNode_ID_new := p_hFCNode_ID_new } + } // End of template m_userLocationInformationW_AGF_id_HFCNode_ID_new - template (omit) M6Configuration m_m6Configuration( - in template (value) M6report_Interval p_m6report_Interval, - in template (value) Links_to_log p_m6_links_to_log, - in template (omit) M6Configuration.iE_Extensions p_iE_Extensions := omit - ) := { - m6report_Interval := p_m6report_Interval, - m6_links_to_log := p_m6_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template m_m6Configuration + template (value) UserLocationInformationW_AGF.choice_Extensions m_userLocationInformationW_AGF_id_GlobalCable_ID_new( + in template (value) GlobalCable_ID_new p_globalCable_ID_new + ) := { + id := id_GlobalCable_ID_new, + criticality := ignore, + value_ := { GlobalCable_ID_new := p_globalCable_ID_new } + } // End of template m_userLocationInformationW_AGF_id_GlobalCable_ID_new - template (value) M6Configuration.iE_Extensions m_m6Configuration_id_M6ReportAmount( - in template (value) M6ReportAmountMDT p_m6ReportAmountMDT - ) := { - { - id := id_M6ReportAmount, - criticality := ignore, - extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } - } - } // End of template m_m6Configuration_id_M6ReportAmount - template (value) M6Configuration.iE_Extensions m_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( - in template (value) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration + + template (omit) UserLocationInformationNR m_userLocationInformationNR( + in template (value) NR_CGI p_nR_CGI, + in template (value) TAI p_tAI, + in template (omit) TimeStamp p_timeStamp := omit, + in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit + ) := { + nR_CGI := p_nR_CGI, + tAI := p_tAI, + timeStamp := p_timeStamp, + iE_Extensions := p_iE_Extensions + } // End of template m_userLocationInformationNR + + template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_PSCellInformation( + in template (value) NGRAN_CGI p_nGRAN_CGI ) := { - { - id := id_ExcessPacketDelayThresholdConfiguration, - criticality := ignore, - extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } - } - } // End of template m_m6Configuration_id_ExcessPacketDelayThresholdConfiguration + { + id := id_PSCellInformation, + criticality := ignore, + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + } + } // End of template m_userLocationInformationNR_id_PSCellInformation - template (value) M6ReportAmountMDT m_m6ReportAmountMDT(in M6ReportAmountMDT p_value := r1) := p_value; + template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_NID( + in template (value) NID p_nID + ) := { + { + id := id_NID, + criticality := reject, + extensionValue := { NID := p_nID } + } + } // End of template m_userLocationInformationNR_id_NID - template (value) M6report_Interval m_m6report_Interval(in M6report_Interval p_value := ms120) := p_value; + template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_NRNTNTAIInformation( + in template (value) NRNTNTAIInformation p_nRNTNTAIInformation + ) := { + { + id := id_NRNTNTAIInformation, + criticality := ignore, + extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } + } + } // End of template m_userLocationInformationNR_id_NRNTNTAIInformation - template (omit) M7Configuration m_m7Configuration( - in template (value) M7period p_m7period, - in template (value) Links_to_log p_m7_links_to_log, - in template (omit) M7Configuration.iE_Extensions p_iE_Extensions := omit - ) := { - m7period := p_m7period, - m7_links_to_log := p_m7_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template m_m7Configuration + template (omit) UserPlaneSecurityInformation m_userPlaneSecurityInformation( + in template (value) SecurityResult p_securityResult, + in template (value) SecurityIndication p_securityIndication, + in template (omit) UserPlaneSecurityInformation.iE_Extensions p_iE_Extensions := omit + ) := { + securityResult := p_securityResult, + securityIndication := p_securityIndication, + iE_Extensions := p_iE_Extensions + } // End of template m_userPlaneSecurityInformation + + template (omit) VolumeTimedReport_Item m_volumeTimedReport_Item( + in template (value) VolumeTimedReport_Item.startTimeStamp p_startTimeStamp, + in template (value) VolumeTimedReport_Item.endTimeStamp p_endTimeStamp, + in template (value) VolumeTimedReport_Item.usageCountUL p_usageCountUL, + in template (value) VolumeTimedReport_Item.usageCountDL p_usageCountDL, + in template (omit) VolumeTimedReport_Item.iE_Extensions p_iE_Extensions := omit + ) := { + startTimeStamp := p_startTimeStamp, + endTimeStamp := p_endTimeStamp, + usageCountUL := p_usageCountUL, + usageCountDL := p_usageCountDL, + iE_Extensions := p_iE_Extensions + } // End of template m_volumeTimedReport_Item + + template (value) W_AGF_ID m_w_AGF_ID_w_AGF_ID( + in template (value) W_AGF_ID.w_AGF_ID p_w_AGF_ID + ) := { + w_AGF_ID := p_w_AGF_ID + } // End of template m_w_AGF_ID_w_AGF_ID - template (value) M7Configuration.iE_Extensions m_m7Configuration_id_M7ReportAmount( - in template (value) M7ReportAmountMDT p_m7ReportAmountMDT - ) := { - { - id := id_M7ReportAmount, - criticality := ignore, - extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } - } - } // End of template m_m7Configuration_id_M7ReportAmount + template (value) W_AGF_ID m_w_AGF_ID_choice_Extensions( + in template (value) W_AGF_ID.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_w_AGF_ID_choice_Extensions - template (value) M7ReportAmountMDT m_m7ReportAmountMDT(in M7ReportAmountMDT p_value := r1) := p_value; + template (value) WarningAreaList m_warningAreaList_eUTRA_CGIListForWarning( + in template (value) EUTRA_CGIListForWarning p_eUTRA_CGIListForWarning + ) := { + eUTRA_CGIListForWarning := p_eUTRA_CGIListForWarning + } // End of template m_warningAreaList_eUTRA_CGIListForWarning - template (omit) MDT_Location_Info m_mDT_Location_Info( - in template (value) MDT_Location_Information p_mDT_Location_Information, - in template (omit) MDT_Location_Info.iE_Extensions p_iE_Extensions := omit - ) := { - mDT_Location_Information := p_mDT_Location_Information, - iE_Extensions := p_iE_Extensions - } // End of template m_mDT_Location_Info + template (value) WarningAreaList m_warningAreaList_nR_CGIListForWarning( + in template (value) NR_CGIListForWarning p_nR_CGIListForWarning + ) := { + nR_CGIListForWarning := p_nR_CGIListForWarning + } // End of template m_warningAreaList_nR_CGIListForWarning - template (value) N3IWF_ID m_n3IWF_ID_n3IWF_ID( - in template (value) N3IWF_ID.n3IWF_ID p_n3IWF_ID - ) := { - n3IWF_ID := p_n3IWF_ID - } // End of template m_n3IWF_ID_n3IWF_ID + template (value) WarningAreaList m_warningAreaList_tAIListForWarning( + in template (value) TAIListForWarning p_tAIListForWarning + ) := { + tAIListForWarning := p_tAIListForWarning + } // End of template m_warningAreaList_tAIListForWarning - template (value) N3IWF_ID m_n3IWF_ID_choice_Extensions( - in template (value) N3IWF_ID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_n3IWF_ID_choice_Extensions + template (value) WarningAreaList m_warningAreaList_emergencyAreaIDList( + in template (value) EmergencyAreaIDList p_emergencyAreaIDList + ) := { + emergencyAreaIDList := p_emergencyAreaIDList + } // End of template m_warningAreaList_emergencyAreaIDList - template (value) NB_IoT_DefaultPagingDRX m_nB_IoT_DefaultPagingDRX(in NB_IoT_DefaultPagingDRX p_value := rf128) := p_value; + template (value) WarningAreaList m_warningAreaList_choice_Extensions( + in template (value) WarningAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template m_warningAreaList_choice_Extensions + + template (omit) WLANMeasurementConfiguration m_wLANMeasurementConfiguration( + in template (value) WLANMeasConfig p_wlanMeasConfig, + in template (omit) WLANMeasConfigNameList p_wlanMeasConfigNameList := omit, + in template (omit) WLANMeasurementConfiguration.wlan_rssi p_wlan_rssi := omit, + in template (omit) WLANMeasurementConfiguration.wlan_rtt p_wlan_rtt := omit, + in template (omit) WLANMeasurementConfiguration.iE_Extensions p_iE_Extensions := omit + ) := { + wlanMeasConfig := p_wlanMeasConfig, + wlanMeasConfigNameList := p_wlanMeasConfigNameList, + wlan_rssi := p_wlan_rssi, + wlan_rtt := p_wlan_rtt, + iE_Extensions := p_iE_Extensions + } // End of template m_wLANMeasurementConfiguration + + template (omit) WLANMeasConfigNameItem m_wLANMeasConfigNameItem( + in template (value) WLANName p_wLANName, + in template (omit) WLANMeasConfigNameItem.iE_Extensions p_iE_Extensions := omit + ) := { + wLANName := p_wLANName, + iE_Extensions := p_iE_Extensions + } // End of template m_wLANMeasConfigNameItem - template (value) NB_IoT_PagingDRX m_nB_IoT_PagingDRX(in NB_IoT_PagingDRX p_value := rf32) := p_value; + template (value) WLANMeasConfig m_wLANMeasConfig(in WLANMeasConfig p_value := setup) := p_value; - template (value) NB_IoT_Paging_eDRXCycle m_nB_IoT_Paging_eDRXCycle(in NB_IoT_Paging_eDRXCycle p_value := hf2) := p_value; + template (omit) WUS_Assistance_Information m_wUS_Assistance_Information( + in template (value) PagingProbabilityInformation p_pagingProbabilityInformation, + in template (omit) WUS_Assistance_Information.iE_Extensions p_iE_Extensions := omit + ) := { + pagingProbabilityInformation := p_pagingProbabilityInformation, + iE_Extensions := p_iE_Extensions + } // End of template m_wUS_Assistance_Information + + template (omit) XnExtTLA_Item m_xnExtTLA_Item( + in template (omit) TransportLayerAddress p_iPsecTLA := omit, + in template (omit) XnGTP_TLAs p_gTP_TLAs := omit, + in template (omit) XnExtTLA_Item.iE_Extensions p_iE_Extensions := omit + ) := { + iPsecTLA := p_iPsecTLA, + gTP_TLAs := p_gTP_TLAs, + iE_Extensions := p_iE_Extensions + } // End of template m_xnExtTLA_Item - template (value) NB_IoT_Paging_TimeWindow m_nB_IoT_Paging_TimeWindow(in NB_IoT_Paging_TimeWindow p_value := s1) := p_value; + template (value) XnExtTLA_Item.iE_Extensions m_xnExtTLA_Item_id_SCTP_TLAs( + in template (value) SCTP_TLAs p_sCTP_TLAs + ) := { + { + id := id_SCTP_TLAs, + criticality := ignore, + extensionValue := { SCTP_TLAs := p_sCTP_TLAs } + } + } // End of template m_xnExtTLA_Item_id_SCTP_TLAs - template (omit) NB_IoT_Paging_eDRXInfo m_nB_IoT_Paging_eDRXInfo( - in template (value) NB_IoT_Paging_eDRXCycle p_nB_IoT_Paging_eDRXCycle, - in template (omit) NB_IoT_Paging_TimeWindow p_nB_IoT_Paging_TimeWindow := omit, - in template (omit) NB_IoT_Paging_eDRXInfo.iE_Extensions p_iE_Extensions := omit - ) := { - nB_IoT_Paging_eDRXCycle := p_nB_IoT_Paging_eDRXCycle, - nB_IoT_Paging_TimeWindow := p_nB_IoT_Paging_TimeWindow, - iE_Extensions := p_iE_Extensions - } // End of template m_nB_IoT_Paging_eDRXInfo + template (omit) XnTNLConfigurationInfo m_xnTNLConfigurationInfo( + in template (value) XnTLAs p_xnTransportLayerAddresses, + in template (omit) XnExtTLAs p_xnExtendedTransportLayerAddresses := omit, + in template (omit) XnTNLConfigurationInfo.iE_Extensions p_iE_Extensions := omit + ) := { + xnTransportLayerAddresses := p_xnTransportLayerAddresses, + xnExtendedTransportLayerAddresses := p_xnExtendedTransportLayerAddresses, + iE_Extensions := p_iE_Extensions + } // End of template m_xnTNLConfigurationInfo - template (value) NewSecurityContextInd m_newSecurityContextInd(in NewSecurityContextInd p_value := true_) := p_value; + } // End of group send - template (value) NextPagingAreaScope m_nextPagingAreaScope(in NextPagingAreaScope p_value := same) := p_value; + group Receive { - template (omit) NGAPIESupportInformationRequestItem m_nGAPIESupportInformationRequestItem( - in template (value) ProtocolIE_ID p_ngap_ProtocolIE_Id, - in template (omit) NGAPIESupportInformationRequestItem.iE_Extensions p_iE_Extensions := omit - ) := { - ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, - iE_Extensions := p_iE_Extensions - } // End of template m_nGAPIESupportInformationRequestItem + template (present) AdditionalDLUPTNLInformationForHOItem mw_additionalDLUPTNLInformationForHOItem( + template (present) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation := ?, + template (present) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList := ?, + template UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := *, + template AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := * + ) := { + additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, + additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, + additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_additionalDLUPTNLInformationForHOItem + + template (present) AdditionalDLUPTNLInformationForHOItem.iE_Extensions mw_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_additionalDLUPTNLInformationForHOItem_iE_Extensions - template (omit) NGAPIESupportInformationResponseItem m_nGAPIESupportInformationResponseItem( - in template (value) ProtocolIE_ID p_ngap_ProtocolIE_Id, - in template (value) NGAPIESupportInformationResponseItem.ngap_ProtocolIESupportInfo p_ngap_ProtocolIESupportInfo, - in template (value) NGAPIESupportInformationResponseItem.ngap_ProtocolIEPresenceInfo p_ngap_ProtocolIEPresenceInfo, - in template (omit) NGAPIESupportInformationResponseItem.iE_Extensions p_iE_Extensions := omit - ) := { - ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, - ngap_ProtocolIESupportInfo := p_ngap_ProtocolIESupportInfo, - ngap_ProtocolIEPresenceInfo := p_ngap_ProtocolIEPresenceInfo, - iE_Extensions := p_iE_Extensions - } // End of template m_nGAPIESupportInformationResponseItem - - template (value) NgENB_ID m_ngENB_ID_macroNgENB_ID( - in template (value) NgENB_ID.macroNgENB_ID p_macroNgENB_ID - ) := { - macroNgENB_ID := p_macroNgENB_ID - } // End of template m_ngENB_ID_macroNgENB_ID - - template (value) NgENB_ID m_ngENB_ID_shortMacroNgENB_ID( - in template (value) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID - ) := { - shortMacroNgENB_ID := p_shortMacroNgENB_ID - } // End of template m_ngENB_ID_shortMacroNgENB_ID + template (present) AdditionalQosFlowInformation mw_additionalQosFlowInformation(template (present) AdditionalQosFlowInformation p_value := ?) := p_value; - template (value) NgENB_ID m_ngENB_ID_longMacroNgENB_ID( - in template (value) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID - ) := { - longMacroNgENB_ID := p_longMacroNgENB_ID - } // End of template m_ngENB_ID_longMacroNgENB_ID + template (present) AllocationAndRetentionPriority mw_allocationAndRetentionPriority( + template (present) PriorityLevelARP p_priorityLevelARP := ?, + template (present) Pre_emptionCapability p_pre_emptionCapability := ?, + template (present) Pre_emptionVulnerability p_pre_emptionVulnerability := ?, + template AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := * + ) := { + priorityLevelARP := p_priorityLevelARP, + pre_emptionCapability := p_pre_emptionCapability, + pre_emptionVulnerability := p_pre_emptionVulnerability, + iE_Extensions := p_iE_Extensions + } // End of template mw_allocationAndRetentionPriority + + template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(template (present) integer p_value := ?) := p_value; + + template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(template (present) integer p_value := ?) := p_value; + + template (present) AlternativeQoSParaSetItem mw_alternativeQoSParaSetItem( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ?, + template BitRate p_guaranteedFlowBitRateDL := *, + template BitRate p_guaranteedFlowBitRateUL := *, + template PacketDelayBudget p_packetDelayBudget := *, + template PacketErrorRate p_packetErrorRate := *, + template AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := * + ) := { + alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_alternativeQoSParaSetItem - template (value) NgENB_ID m_ngENB_ID_choice_Extensions( - in template (value) NgENB_ID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_ngENB_ID_choice_Extensions + template (present) AMFName mw_aMFName(template (present) AMFName p_value := ?) := p_value; - template (value) NotifySourceNGRANNode m_notifySourceNGRANNode(in NotifySourceNGRANNode p_value := notifySource) := p_value; + template (present) AMFNameVisibleString mw_aMFNameVisibleString(template (present) AMFNameVisibleString p_value := ?) := p_value; - template (value) NGRAN_CGI m_ngENB_ID_nR_CGI( - in template (value) NR_CGI p_nR_CGI - ) := { - nR_CGI := p_nR_CGI - } // End of template m_ngENB_ID_nR_CGI + template (present) AMFNameUTF8String mw_aMFNameUTF8String(template (present) AMFNameUTF8String p_value := ?) := p_value; - template (value) NGRAN_CGI m_ngENB_ID_eUTRA_CGI( - in template (value) EUTRA_CGI p_eUTRA_CGI - ) := { - eUTRA_CGI := p_eUTRA_CGI - } // End of template m_ngENB_ID_eUTRA_CGI - - template (value) NGRAN_CGI m_nGRAN_CGI_choice_Extensions( - in template (value) NGRAN_CGI.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_nGRAN_CGI_choice_Extensions - - template (omit) NGRAN_TNLAssociationToRemoveItem m_nGRAN_TNLAssociationToRemoveItem( - in template (value) CPTransportLayerInformation p_tNLAssociationTransportLayerAddress, - in template (omit) CPTransportLayerInformation p_tNLAssociationTransportLayerAddressAMF := omit, - in template (omit) NGRAN_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := omit - ) := { - tNLAssociationTransportLayerAddress := p_tNLAssociationTransportLayerAddress, - tNLAssociationTransportLayerAddressAMF := p_tNLAssociationTransportLayerAddressAMF, - iE_Extensions := p_iE_Extensions - } // End of template m_nGRAN_TNLAssociationToRemoveItem - - template (omit) NonDynamic5QIDescriptor m_nonDynamic5QIDescriptor( - in template (value) FiveQI p_fiveQI, - in template (omit) PriorityLevelQos p_priorityLevelQos := omit, - in template (omit) AveragingWindow p_averagingWindow := omit, - in template (omit) MaximumDataBurstVolume p_maximumDataBurstVolume := omit, - in template (omit) NonDynamic5QIDescriptor.iE_Extensions p_iE_Extensions := omit - ) := { - fiveQI := p_fiveQI, - priorityLevelQos := p_priorityLevelQos, - averagingWindow := p_averagingWindow, - maximumDataBurstVolume := p_maximumDataBurstVolume, - iE_Extensions := p_iE_Extensions - } // End of template m_nonDynamic5QIDescriptor - - template (value) NonDynamic5QIDescriptor.iE_Extensions m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( - in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget - ) := { - { - id := id_CNPacketDelayBudgetDL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL - - template (value) NonDynamic5QIDescriptor.iE_Extensions m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( - in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget - ) := { - { - id := id_CNPacketDelayBudgetUL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL + template (present) AMFPagingTarget mw_aMFPagingTarget_globalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + globalRANNodeID := p_globalRANNodeID + } // End of template mw_aMFPagingTarget_globalRANNodeID - template (value) NotificationCause m_notificationCause(in NotificationCause p_value := fulfilled) := p_value; + template (present) AMFPagingTarget mw_aMFPagingTarget_tAI( + template (present) TAI p_tAI := ? + ) := { + tAI := p_tAI + } // End of template mw_aMFPagingTarget_tAI - template (value) NotificationControl m_notificationControl(in NotificationControl p_value := notification_requested) := p_value; + template (present) AMFPagingTarget mw_aMFPagingTarget_ext( + template (present) AMFPagingTarget.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_aMFPagingTarget_ext - template (value) NPN_AccessInformation m_nPN_AccessInformation_pNI_NPN_Access_Information( - in template (value) CellCAGList p_pNI_NPN_Access_Information - ) := { - pNI_NPN_Access_Information := p_pNI_NPN_Access_Information - } // End of template m_nPN_AccessInformation_pNI_NPN_Access_Information + template (present) AMF_TNLAssociationSetupItem mw_aMF_TNLAssociationSetupItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationSetupItem + + template (present) AMF_TNLAssociationToAddItem mw_aMF_TNLAssociationToAddItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template (present) TNLAddressWeightFactor p_tNLAddressWeightFactor := ?, + template TNLAssociationUsage p_tNLAssociationUsage := *, + template AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := * + ):= { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToAddItem + + template (present) AMF_TNLAssociationToRemoveItem mw_aMF_TNLAssociationToRemoveItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToRemoveItem + + template (present) AMF_TNLAssociationToUpdateItem mw_aMF_TNLAssociationToUpdateItem( + template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, + template TNLAssociationUsage p_tNLAssociationUsage := *, + template TNLAddressWeightFactor p_tNLAddressWeightFactor := *, + template AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, + tNLAssociationUsage := p_tNLAssociationUsage, + tNLAddressWeightFactor := p_tNLAddressWeightFactor, + iE_Extensions := p_iE_Extensions + } // End of template mw_aMF_TNLAssociationToUpdateItem + + template AreaOfInterest mw_areaOfInterest( + template AreaOfInterestTAIList p_areaOfInterestTAIList := *, + template AreaOfInterestCellList p_areaOfInterestCellList := *, + template AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := *, + template AreaOfInterest.iE_Extensions p_iE_Extensions := * + ) := { + areaOfInterestTAIList := p_areaOfInterestTAIList, + areaOfInterestCellList := p_areaOfInterestCellList, + areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterest + + template (present) AreaOfInterestCellItem mw_areaOfInterestCellItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestCellItem + + template (present) AreaOfInterestItem mw_reaOfInterestItem( + template (present) AreaOfInterest p_areaOfInterest := ?, + template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, + template AreaOfInterestItem.iE_Extensions p_iE_Extensions := * + ) := { + areaOfInterest := p_areaOfInterest, + locationReportingReferenceID := p_locationReportingReferenceID, + iE_Extensions := p_iE_Extensions + } // End of template mw_reaOfInterestItem + + template (present) AreaOfInterestRANNodeItem mw_areaOfInterestRANNodeItem( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := * + ):= { + globalRANNodeID := p_globalRANNodeID, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestRANNodeItem + + template (present) AreaOfInterestTAIItem mw_areaOfInterestTAIItem( + template (present) TAI p_tAI := ?, + template AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaOfInterestTAIItem + + template AssistanceDataForPaging mw_assistanceDataForPaging( + template AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := *, + template PagingAttemptInformation p_pagingAttemptInformation := *, + template AssistanceDataForPaging.iE_Extensions p_iE_Extensions := * + ) := { + assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, + pagingAttemptInformation := p_pagingAttemptInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_assistanceDataForPaging - template (value) NPN_AccessInformation m_nPN_AccessInformation_choice_Extensions( - in template (value) NPN_AccessInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_nPN_AccessInformation_choice_Extensions + template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_NPN_PagingAssistanceInformation( + template (present) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation := ? + ) := { + { + id := id_NPN_PagingAssistanceInformation, + criticality := ignore, + extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } + } + } // End of template mw_assistanceDataForPaging_NPN_PagingAssistanceInformation - template (value) NPN_MobilityInformation m_nPN_MobilityInformation_sNPN_MobilityInformation( - in template (value) SNPN_MobilityInformation p_sNPN_MobilityInformation - ) := { - sNPN_MobilityInformation := p_sNPN_MobilityInformation - } // End of template m_nPN_MobilityInformation_sNPN_MobilityInformation + template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE( + template (present) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE := ? + ) := { + { + id := id_PagingAssisDataforCEcapabUE, + criticality := ignore, + extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } + } + } // End of template mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE + + template (present) AssistanceDataForRecommendedCells mw_assistanceDataForRecommendedCells( + template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, + template AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + iE_Extensions := p_iE_Extensions + } // End of template mw_assistanceDataForRecommendedCells + + template (present) AssociatedMBSQosFlowSetupRequestItem mw_associatedMBSQosFlowSetupRequestItem( + template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, + template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, + template AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedMBSQosFlowSetupRequestItem + + template (present) AssociatedMBSQosFlowSetuporModifyRequestItem mw_associatedMBSQosFlowSetuporModifyRequestItem( + template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, + template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, + template AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, + associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedMBSQosFlowSetuporModifyRequestItem - template (value) NPN_MobilityInformation m_nPN_MobilityInformation_pNI_NPN_MobilityInformation( - in template (value) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation - ) := { - pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation - } // End of template m_nPN_MobilityInformation_pNI_NPN_MobilityInformation + template (present) AssociatedQosFlowItem mw_associatedQosFlowItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := *, + template AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowMappingIndication := p_qosFlowMappingIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_associatedQosFlowItem - template (value) NPN_MobilityInformation m_nPN_MobilityInformation_choice_Extensions( - in template (value) NPN_MobilityInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_nPN_MobilityInformation_choice_Extensions + template (present) AssociatedQosFlowItem.iE_Extensions mw_associatedQosFlowItem_alternativeQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_associatedQosFlowItem_alternativeQoSParaSetIndex - template (value) NPN_PagingAssistanceInformation m_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance( - in template (value) Allowed_PNI_NPN_List p_pNI_NPN_PagingAssistance - ) := { - pNI_NPN_PagingAssistance := p_pNI_NPN_PagingAssistance - } // End of template m_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance + template (present) AuthenticatedIndication mw_authenticatedIndication(template (present) AuthenticatedIndication p_value := true_) := p_value; - template (value) NPN_PagingAssistanceInformation m_nPN_PagingAssistanceInformation_choice_Extensions( - in template (value) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_nPN_PagingAssistanceInformation_choice_Extensions + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_NR_cellBased( + template (present) CellBasedMDT_NR p_cellBased := ? + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfMDT_cellBased - template (value) NPN_Support m_nPN_Support_sNPN( - in template (value) NID p_sNPN - ) := { - sNPN := p_sNPN - } // End of template m_nPN_Support_sNPN + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tABased( + template (present) TABasedMDT p_tABased := ? + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfMDT_tABased - template (value) NPN_Support m_nPN_Support_choice_Extensions( - in template (value) NPN_Support.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_nPN_Support_choice_Extensions + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_pLMNWide := { + pLMNWide := NULL + } // End of template mw_areaScopeOfMDT_pLMNWide - template (omit) NR_CGI m_nR_CGI( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) NRCellIdentity p_nRCellIdentity, - in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - nRCellIdentity := p_nRCellIdentity, - iE_Extensions := p_iE_Extensions - } // End of template m_nR_CGI - - template (omit) NR_PagingeDRXInformation m_NR_PagingeDRXInformation( - in template (value) NR_Paging_eDRX_Cycle p_nR_paging_eDRX_Cycle, - in template (omit) NR_Paging_Time_Window p_nR_paging_Time_Window := omit, - in template (omit) NR_PagingeDRXInformation.iE_Extensions p_iE_Extensions := omit + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tAIBased( + template (present) TAIBasedMDT p_tAIBased := ? ) := { - nR_paging_eDRX_Cycle := p_nR_paging_eDRX_Cycle, - nR_paging_Time_Window := p_nR_paging_Time_Window, - iE_Extensions := p_iE_Extensions - } // End of template m_NR_PagingeDRXInformation - - template (value) NR_Paging_eDRX_Cycle m_nR_Paging_eDRX_Cycle(in NR_Paging_eDRX_Cycle p_value := hfquarter) := p_value; - - template (value) NR_Paging_Time_Window m_nR_Paging_Time_Window(in NR_Paging_Time_Window p_value := s1) := p_value; - - template (omit) NRNTNTAIInformation m_nRNTNTAIInformation( - in template (value) PLMNIdentity p_servingPLMN, - in template (value) TACListInNRNTN p_tACListInNRNTN, - in template (omit) TAC p_uELocationDerivedTACInNRNTN := omit, - in template (omit) NRNTNTAIInformation.iE_Extensions p_iE_Extensions := omit - ) := { - servingPLMN := p_servingPLMN, - tACListInNRNTN := p_tACListInNRNTN, - uELocationDerivedTACInNRNTN := p_uELocationDerivedTACInNRNTN, - iE_Extensions := p_iE_Extensions - } // End of template m_nRNTNTAIInformation - - template (omit) NRFrequencyBandItem m_nRFrequencyBandItem( - in template (value) NRFrequencyBand p_nr_frequency_band, - in template (omit) NRFrequencyBandItem.iE_Extension p_iE_Extension := omit - ) := { - nr_frequency_band := p_nr_frequency_band, - iE_Extension := p_iE_Extension - } // End of template m_nRFrequencyBandItem - - template (omit) NRFrequencyInfo m_nRFrequencyInfo( - in template (value) NRARFCN p_nrARFCN, - in template (value) NRFrequencyBand_List p_frequencyBand_List, - in template (omit) NRFrequencyInfo.iE_Extension p_iE_Extension := omit - ) := { - nrARFCN := p_nrARFCN, - frequencyBand_List := p_frequencyBand_List, - iE_Extension := p_iE_Extension - } // End of template m_nRFrequencyInfo - - template (omit) NRV2XServicesAuthorized m_nRV2XServicesAuthorized( - in template (omit) VehicleUE p_vehicleUE := omit, - in template (omit) PedestrianUE p_pedestrianUE := omit, - in template (omit) NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit - - ) := { - vehicleUE := p_vehicleUE, - pedestrianUE := p_pedestrianUE, - iE_Extensions := p_iE_Extensions - } // End of template m_nRV2XServicesAuthorized - - template (value) VehicleUE m_vehicleUE(in VehicleUE p_value := authorized) := p_value; - - template (value) PedestrianUE m_pedestrianUE(in PedestrianUE p_value := authorized) := p_value; - - template (omit) NRUESidelinkAggregateMaximumBitrate m_nRUESidelinkAggregateMaximumBitrate( - in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, - in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit - ) := { - uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, - iE_Extensions := p_iE_Extensions - } // End of template m_nRUESidelinkAggregateMaximumBitrate + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfMDT_tAIBased - template (value) OnboardingSupport m_onboardingSupport(in OnboardingSupport p_value := true_) := p_value; + template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_ext( + template (present) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfMDT_ext - template (value) OverloadAction m_overloadAction(in OverloadAction p_value := reject_non_emergency_mo_dt) := p_value; + template (present) AreaScopeOfNeighCellsItem mw_areaScopeOfNeighCellsItem( + template (present) NRFrequencyInfo p_nrFrequencyInfo := ?, + template PCIListForMDT p_pciListForMDT := *, + template AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := * + ) := { + nrFrequencyInfo := p_nrFrequencyInfo, + pciListForMDT := p_pciListForMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_areaScopeOfNeighCellsItem - template (value) OverloadResponse m_overloadResponse_overloadAction( - in template (value) OverloadAction p_overloadAction - ) := { - overloadAction := p_overloadAction - } // End of template m_overloadResponse_overloadAction + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_cellBased( + template (present) CellBasedQMC p_cellBased := ? + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfQMC_cellBased - template (value) OverloadResponse m_overloadResponse_choice_Extensions( - in template (value) OverloadResponse.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_overloadResponse_choice_Extensions - - template (omit) OverloadStartNSSAIItem m_overloadStartNSSAIItem( - in template (value) SliceOverloadList p_sliceOverloadList, - in template (omit) OverloadResponse p_sliceOverloadResponse := omit, - in template (omit) TrafficLoadReductionIndication p_sliceTrafficLoadReductionIndication := omit, - in template (omit) OverloadStartNSSAIItem.iE_Extensions p_iE_Extensions := omit + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tABased( + template (present) TABasedQMC p_tABased := ? ) := { - sliceOverloadList := p_sliceOverloadList, - sliceOverloadResponse := p_sliceOverloadResponse, - sliceTrafficLoadReductionIndication := p_sliceTrafficLoadReductionIndication, - iE_Extensions := p_iE_Extensions - } // End of template m_overloadStartNSSAIItem - - template (omit) PacketErrorRate m_PacketErrorRate( - in template (value) PacketErrorRate.pERScalar p_pERScalar, - in template (value) PacketErrorRate.pERExponent p_pERExponent, - in template (omit) PacketErrorRate.iE_Extensions p_iE_Extensions := omit - ) := { - pERScalar := p_pERScalar, - pERExponent := p_pERExponent, - iE_Extensions := p_iE_Extensions - } // End of template m_PacketErrorRate - - template (omit) PagingAssisDataforCEcapabUE m_pagingAssisDataforCEcapabUE( - in template (value) EUTRA_CGI p_eUTRA_CGI, - in template (value) CoverageEnhancementLevel p_coverageEnhancementLevel, - in template (omit) PagingAssisDataforCEcapabUE.iE_Extensions p_iE_Extensions := omit - ) := { - eUTRA_CGI := p_eUTRA_CGI, - coverageEnhancementLevel := p_coverageEnhancementLevel, - iE_Extensions := p_iE_Extensions - } // End of template m_pagingAssisDataforCEcapabUE - - template (omit) PagingAttemptInformation m_pagingAttemptInformation( - in template (value) PagingAttemptCount p_pagingAttemptCount, - in template (value) IntendedNumberOfPagingAttempts p_intendedNumberOfPagingAttempts, - in template (omit) NextPagingAreaScope p_nextPagingAreaScope := omit, - in template (omit) PagingAttemptInformation.iE_Extensions p_iE_Extensions := omit + tABased := p_tABased + } // End of template mw_areaScopeOfQMC_tABased + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tAIBased( + template (present) TAIBasedQMC p_tAIBased := ? + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfQMC_tAIBased + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_pLMNAreaBased( + template (present) PLMNAreaBasedQMC p_pLMNAreaBased := ? ) := { - pagingAttemptCount := p_pagingAttemptCount, - intendedNumberOfPagingAttempts := p_intendedNumberOfPagingAttempts, - nextPagingAreaScope := p_nextPagingAreaScope, - iE_Extensions := p_iE_Extensions - } // End of template m_pagingAttemptInformation + pLMNAreaBased := p_pLMNAreaBased + } // End of template mw_areaScopeOfQMC_pLMNAreaBased + + template (present) AreaScopeOfQMC mw_areaScopeOfQMC_ext( + template (present) AreaScopeOfQMC.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfQMC_ext + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_cellBased( + template (present) CellBasedMDT_EUTRA p_cellBased + ) := { + cellBased := p_cellBased + } // End of template mw_areaScopeOfMDT_EUTRA_cellBased - template (value) PagingCause m_pagingCause(in PagingCause p_value := voice) := p_value; + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tABased( + template (present) TABasedMDT p_tABased + ) := { + tABased := p_tABased + } // End of template mw_areaScopeOfMDT_EUTRA_tABased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_pLMNWide := { + pLMNWide := NULL + } // End of template mw_areaScopeOfMDT_EUTRA_pLMNWide + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tAIBased( + template (present) TAIBasedMDT p_tAIBased + ) := { + tAIBased := p_tAIBased + } // End of template mw_areaScopeOfMDT_EUTRA_tAIBased + + template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_ext( + template (present) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_areaScopeOfMDT_EUTRA_ext + + template AvailableRANVisibleQoEMetrics mw_availableRANVisibleQoEMetrics( + template AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := *, + template AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := *, + template AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := * + ) := { + applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, + playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, + iE_Extensions := p_iE_Extensions + } // End of template mw_availableRANVisibleQoEMetrics + + template BeamMeasurementsReportConfiguration mw_beamMeasurementsReportConfiguration( + template BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := *, + template MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := *, + template BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, + maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, + iE_Extensions := p_iE_Extensions + } // End of template mw_beamMeasurementsReportConfiguration + + template BeamMeasurementsReportQuantity mw_beamMeasurementsReportQuantity( + template BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, + template BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, + template BeamMeasurementsReportQuantity.sINR p_sINR := true_, + template BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := * + ) := { + rSRP := p_rSRP, + rSRQ := p_rSRQ, + sINR := p_sINR, + iE_Extensions := p_iE_Extensions + } // End of template mw_beamMeasurementsReportQuantity - template (value) PagingCauseIndicationForVoiceService m_pagingCauseIndicationForVoiceService(in PagingCauseIndicationForVoiceService p_value := supported) := p_value; + template (present) BitRate mw_bitRate (template (present) BitRate p_value := ?) := p_value; - template (value) PagingDRX m_pagingDRX(in PagingDRX p_value := v256) := p_value; + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledEUTRA( + template (present) CellIDCancelledEUTRA p_cellIDCancelledEUTRA := ? + ) := { + cellIDCancelledEUTRA := p_cellIDCancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_cellIDCancelledEUTRA - template (value) PagingOrigin m_pagingOrigin(in PagingOrigin p_value := non_3gpp) := p_value; + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledEUTRA( + template (present) TAICancelledEUTRA p_tAICancelledEUTRA := ? + ) := { + tAICancelledEUTRA := p_tAICancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_tAICancelledEUTRA - template (value) PagingPriority m_pagingPriority(in PagingPriority p_value := priolevel1) := p_value; + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( + template (present) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA := ? + ) := { + emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA + } // End of template mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA - template (value) PagingProbabilityInformation m_pagingProbabilityInformation(in PagingProbabilityInformation p_value := p00) := p_value; + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledNR( + template (present) CellIDCancelledNR p_cellIDCancelledNR := ? + ) := { + cellIDCancelledNR := p_cellIDCancelledNR + } // End of template mw_broadcastCancelledAreaList_cellIDCancelledNR - template (omit) PathSwitchRequestAcknowledgeTransfer m_PathSwitchRequestAcknowledgeTransfer( - in template (omit) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := omit, - in template (omit) SecurityIndication p_securityIndication := omit, - in template (omit) PathSwitchRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := omit + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledNR( + template (present) TAICancelledNR p_tAICancelledNR := ? ) := { - uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, - securityIndication := p_securityIndication, - iE_Extensions := p_iE_Extensions - } // End of template m_PathSwitchRequestAcknowledgeTransfer - - template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList - ) := { - { - id := id_AdditionalNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation + tAICancelledNR := p_tAICancelledNR + } // End of template mw_broadcastCancelledAreaList_tAICancelledNR - template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation - - template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList - ) := { - { - id := id_AdditionalRedundantNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( + template (present) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR := ? + ) := { + emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR + } // End of template mw_broadcastCancelledAreaList_ext - template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList( - in template (value) QosFlowParametersList p_qosFlowParametersList - ) := { - { - id := id_QosFlowParametersList, - criticality := ignore, - extensionValue := { QosFlowParametersList := p_qosFlowParametersList } - } - } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList + template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_ext( + template (present) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_broadcastCancelledAreaList_ext - template (omit) PathSwitchRequestSetupFailedTransfer m_pathSwitchRequestSetupFailedTransfer( - in template (value) Cause p_cause, - in template (omit) PathSwitchRequestSetupFailedTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_pathSwitchRequestSetupFailedTransfer - - template (omit) PathSwitchRequestTransfer m_pathSwitchRequestTransfer( - in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, - in template (value) QosFlowAcceptedList p_qosFlowAcceptedList, - in template (omit) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := omit, - in template (omit) UserPlaneSecurityInformation p_userPlaneSecurityInformation := omit, - in template (omit) PathSwitchRequestTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - dL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused, - userPlaneSecurityInformation := p_userPlaneSecurityInformation, - qosFlowAcceptedList := p_qosFlowAcceptedList, - iE_Extensions := p_iE_Extensions - } // End of template m_pathSwitchRequestTransfer - - template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation( - in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList - ) := { - { - id := id_AdditionalDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template m_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation - - template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation - - template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused( - in template (value) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused - ) := { - { - id := id_RedundantDL_NGU_TNLInformationReused, - criticality := ignore, - extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } - } - } // End of template m_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused - - template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation( - in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList - ) := { - { - id := id_AdditionalRedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template m_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastEUTRA( + template (present) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA + ) := { + cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_cellIDCancelledEUTRA - template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_UsedRSNInformation( - in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation - ) := { - { - id := id_UsedRSNInformation, - criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template m_pathSwitchRequestTransferr_id_UsedRSNInformation - - template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_GlobalRANNodeID( - in template (value) GlobalRANNodeID p_globalRANNodeID - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template m_pathSwitchRequestTransferr_id_GlobalRANNodeID - - template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransfer_id_MBS_SupportIndicator( - in template (value) MBS_SupportIndicator p_mBS_SupportIndicator - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template m_pathSwitchRequestTransfer_id_MBS_SupportIndicator - - template (omit) PathSwitchRequestUnsuccessfulTransfer m_pathSwitchRequestUnsuccessfulTransfer( - in template (value) Cause p_cause, - in template (omit) PathSwitchRequestUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_pathSwitchRequestUnsuccessfulTransfer - - template (omit) PC5QoSParameters m_pC5QoSParameters( - in template (value) PC5QoSFlowList p_pc5QoSFlowList, - in template (omit) BitRate p_pc5LinkAggregateBitRates := omit, - in template (omit) PC5QoSParameters.iE_Extensions p_iE_Extensions := omit - ) := { - pc5QoSFlowList := p_pc5QoSFlowList, - pc5LinkAggregateBitRates := p_pc5LinkAggregateBitRates, - iE_Extensions := p_iE_Extensions - } // End of template m_pC5QoSParameters - - template (omit) PC5QoSFlowItem m_pC5QoSFlowItem( - in template (value) FiveQI p_pQI, - in template (omit) PC5FlowBitRates p_pc5FlowBitRates := omit, - in template (omit) Range p_range := omit, - in template (omit) PC5QoSFlowItem.iE_Extensions p_iE_Extensions := omit - ) := { - pQI := p_pQI, - pc5FlowBitRates := p_pc5FlowBitRates, - range := p_range, - iE_Extensions := p_iE_Extensions - } // End of template m_pC5QoSFlowItem - - template (omit) PC5FlowBitRates m_pC5FlowBitRates( - in template (value) BitRate p_guaranteedFlowBitRate, - in template (value) BitRate p_maximumFlowBitRate, - in template (omit) PC5FlowBitRates.iE_Extensions p_iE_Extensions := omit - ) := { - guaranteedFlowBitRate := p_guaranteedFlowBitRate, - maximumFlowBitRate := p_maximumFlowBitRate, - iE_Extensions := p_iE_Extensions - } // End of template m_pC5FlowBitRates - - template (value) PrivacyIndicator m_privacyIndicator(in PrivacyIndicator p_value := immediate_MDT) := p_value; - - template (omit) PDUSessionAggregateMaximumBitRate m_pDUSessionAggregateMaximumBitRate( - in template (value) BitRate p_pDUSessionAggregateMaximumBitRateDL, - in template (value) BitRate p_pDUSessionAggregateMaximumBitRateUL, - in template (omit) PDUSessionAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionAggregateMaximumBitRateDL := p_pDUSessionAggregateMaximumBitRateDL, - pDUSessionAggregateMaximumBitRateUL := p_pDUSessionAggregateMaximumBitRateUL, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionAggregateMaximumBitRate + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastEUTRA( + template (present) TAIBroadcastEUTRA p_tAIBroadcastEUTRA + ) := { + tAIBroadcastEUTRA := p_tAIBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_tAIBroadcastEUTRA - template (omit) PDUSessionResourceAdmittedItem m_pDUSessionResourceAdmittedItem( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceAdmittedItem.handoverRequestAcknowledgeTransfer p_handoverRequestAcknowledgeTransfer, - in template (omit) PDUSessionResourceAdmittedItem.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - handoverRequestAcknowledgeTransfer := p_handoverRequestAcknowledgeTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceAdmittedItem + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( + template (present) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA + ) := { + emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA + } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA - template (omit) PDUSessionResourceFailedToModifyItemModCfm m_pDUSessionResourceFailedToModifyItemModCfm( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceFailedToModifyItemModCfm.pDUSessionResourceModifyIndicationUnsuccessfulTransfer p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer, - in template (omit) PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyIndicationUnsuccessfulTransfer := p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceFailedToModifyItemModCfm + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastNR( + template (present) CellIDBroadcastNR p_cellIDBroadcastNR + ) := { + cellIDBroadcastNR := p_cellIDBroadcastNR + } // End of template mw_broadcastCompletedAreaList_cellIDBroadcastNR - template (omit) PDUSessionResourceFailedToModifyItemModRes m_pDUSessionResourceFailedToModifyItemModRes( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceFailedToModifyItemModRes.pDUSessionResourceModifyUnsuccessfulTransfer p_pDUSessionResourceModifyUnsuccessfulTransfer, - in template (omit) PDUSessionResourceFailedToModifyItemModRes.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyUnsuccessfulTransfer := p_pDUSessionResourceModifyUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceFailedToModifyItemModRes + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastNR( + template (present) TAIBroadcastNR p_tAIBroadcastNR + ) := { + tAIBroadcastNR := p_tAIBroadcastNR + } // End of template mw_broadcastCompletedAreaList_tAIBroadcastNR - template (omit) PDUSessionResourceFailedToResumeItemRESReq m_pDUSessionResourceFailedToResumeItemRESReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) Cause p_cause, - in template (omit) PDUSessionResourceFailedToResumeItemRESReq.iE_Extensions p_iE_Extensions := omit + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( + template (present) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR ) := { - pDUSessionID := p_pDUSessionID, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceFailedToResumeItemRESReq + emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR + } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR - template (omit) PDUSessionResourceFailedToResumeItemRESRes m_pDUSessionResourceFailedToResumeItemRESRes( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) Cause p_cause, - in template (omit) PDUSessionResourceFailedToResumeItemRESRes.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceFailedToResumeItemRESRes + template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_ext( + template (present) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_broadcastCompletedAreaList_ext - template (omit) PDUSessionResourceFailedToSetupItemCxtFail m_pDUSessionResourceFailedToSetupItemCxtFail( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceFailedToSetupItemCxtFail.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer, - in template (omit) PDUSessionResourceFailedToSetupItemCxtFail.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceFailedToSetupItemCxtFail - - template (omit) PDUSessionResourceFailedToSetupItemCxtRes m_pDUSessionResourceFailedToSetupItemCxtRes( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceFailedToSetupItemCxtRes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer, - in template (omit) PDUSessionResourceFailedToSetupItemCxtRes.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceFailedToSetupItemCxtRes - - template (omit) PDUSessionResourceFailedToSetupItemHOAck m_pDUSessionResourceFailedToSetupItemHOAck( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer, - in template (omit) PDUSessionResourceFailedToSetupItemHOAck.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - handoverResourceAllocationUnsuccessfulTransfer := p_handoverResourceAllocationUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceFailedToSetupItemHOAck + template (present) BroadcastPLMNItem mw_ie_broadcastPLMNItem( + template (present) PLMNIdentity p_plmnId := ?, + template (present) SliceSupportList p_ssl := ?, + template BroadcastPLMNItem.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_plmnId, + tAISliceSupportList := p_ssl, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_broadcastPLMNItem + + template (present) BluetoothMeasurementConfiguration mw_bluetoothMeasurementConfiguration( + template (present) BluetoothMeasConfig p_bluetoothMeasConfig := ?, + template BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := *, + template BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := *, + template BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + bluetoothMeasConfig := p_bluetoothMeasConfig, + bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, + bt_rssi := p_bt_rssi, + iE_Extensions := p_iE_Extensions + } // End of template mw_bluetoothMeasurementConfiguration + + template (present) BluetoothMeasConfigNameItem mw_bluetoothMeasConfigNameItem( + template (present) BluetoothName p_bluetoothName := ?, + template BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := * + ) := { + bluetoothName := p_bluetoothName, + iE_Extensions := p_iE_Extensions + } // End of template mw_bluetoothMeasConfigNameItem - template (omit) PDUSessionResourceFailedToSetupItemPSReq m_pDUSessionResourceFailedToSetupItemPSReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer, - in template (omit) PDUSessionResourceFailedToSetupItemPSReq.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestSetupFailedTransfer := p_pathSwitchRequestSetupFailedTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceFailedToSetupItemPSReq + template (present) BluetoothMeasConfig mw_bluetoothMeasConfig(template (present) BluetoothMeasConfig p_value := setup) := p_value; - template (omit) PDUSessionResourceFailedToSetupItemSURes m_pDUSessionResourceFailedToSetupItemSURes( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer, - in template (omit) PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceFailedToSetupItemSURes + template (present) CancelAllWarningMessages mw_cancelAllWarningMessages(template (present) CancelAllWarningMessages p_value := true_) := p_value; - template (omit) PDUSessionResourceHandoverItem m_pDUSessionResourceHandoverItem( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceHandoverItem.handoverCommandTransfer p_handoverCommandTransfer, - in template (omit) PDUSessionResourceHandoverItem.iE_Extensions p_iE_Extensions := omit + template (present) CancelledCellsInEAI_EUTRA_Item mw_cancelledCellsInEAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInEAI_EUTRA_Item + + template (present) CancelledCellsInEAI_NR_Item mw_cancelledCellsInEAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * ) := { - pDUSessionID := p_pDUSessionID, - handoverCommandTransfer := p_handoverCommandTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceHandoverItem - - template (omit) PDUSessionResourceInformationItem m_pDUSessionResourceInformationItem( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) QosFlowInformationList p_qosFlowInformationList, - in template (omit) DRBsToQosFlowsMappingList p_dRBsToQosFlowsMappingList := omit, - in template (omit) PDUSessionResourceInformationItem.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - qosFlowInformationList := p_qosFlowInformationList, - dRBsToQosFlowsMappingList := p_dRBsToQosFlowsMappingList, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceInformationItem - - template (omit) PDUSessionResourceItemCxtRelCpl m_pDUSessionResourceItemCxtRelCpl( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (omit) PDUSessionResourceItemCxtRelCpl.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceItemCxtRelCpl - - template (value) PDUSessionResourceItemCxtRelCpl.iE_Extensions m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer( - in template (value) PDUSessionResourceReleaseResponseTransfer_OCTET_STRING p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING - ) := { - { - id := id_PDUSessionResourceReleaseResponseTransfer, - criticality := ignore, - extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } - } - } // End of template m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInEAI_NR_Item + + template (present) CancelledCellsInTAI_EUTRA_Item mw_cancelledCellsInTAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cancelledCellsInTAI_EUTRA_Item + + template (present) CancelledCellsInTAI_NR_Item mw_CancelledCellsInTAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_CancelledCellsInTAI_NR_Item + + template (present) CandidateCellItem mw_candidateCellItem( + template (present) CandidateCell p_candidateCell := ?, + template CandidateCellItem.iE_Extensions p_iE_Extensions := * + ) := { + candidateCell := p_candidateCell, + iE_Extensions := p_iE_Extensions + } // End of template mw_candidateCellItem - template (omit) PDUSessionResourceItemCxtRelReq m_pDUSessionResourceItemCxtRelReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (omit) PDUSessionResourceItemCxtRelReq.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceItemCxtRelReq - - template (omit) PDUSessionResourceItemHORqd m_pDUSessionResourceItemHORqd( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceItemHORqd.handoverRequiredTransfer p_handoverRequiredTransfer, - in template (omit) PDUSessionResourceItemHORqd.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - handoverRequiredTransfer := p_handoverRequiredTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceItemHORqd - - template (omit) PDUSessionResourceModifyConfirmTransfer m_pDUSessionResourceModifyConfirmTransfer( - in template (value) QosFlowModifyConfirmList p_qosFlowModifyConfirmList, - in template (value) UPTransportLayerInformation p_uLNGU_UP_TNLInformation, - in template (omit) UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := omit, - in template (omit) QosFlowListWithCause p_qosFlowFailedToModifyList := omit, - in template (omit) PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowModifyConfirmList := p_qosFlowModifyConfirmList, - uLNGU_UP_TNLInformation := p_uLNGU_UP_TNLInformation, - additionalNG_UUPTNLInformation := p_additionalNG_UUPTNLInformation, - qosFlowFailedToModifyList := p_qosFlowFailedToModifyList, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceModifyConfirmTransfer - - template (value) PDUSessionResourceModifyConfirmTransfer.iE_Extensions m_pDUSessionResourceModifyConfirmTransfer_id_RedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_pDUSessionResourceModifyConfirmTransferr_id_RedundantUL_NGU_UP_TNLInformation - - template (value) PDUSessionResourceModifyConfirmTransfer.iE_Extensions m_pDUSessionResourceModifyConfirmTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList - ) := { - { - id := id_AdditionalRedundantNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template m_pDUSessionResourceModifyConfirmTransferr_id_AdditionalRedundantNGU_UP_TNLInformation + template (present) CandidateCell mw_candidateCell_candidateCGI( + template (present) CandidateCellID p_candidateCGI := ? + ) := { + candidateCGI := p_candidateCGI + } // End of template mw_candidateCell_candidateCGI - template (omit) PDUSessionResourceModifyIndicationUnsuccessfulTransfer m_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( - in template (value) Cause p_cause, - in template (omit) PDUSessionResourceModifyIndicationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceModifyIndicationUnsuccessfulTransfer + template (present) CandidateCell mw_candidateCell_candidatePCI( + template (present) CandidatePCI p_candidatePCI := ? + ) := { + candidatePCI := p_candidatePCI + } // End of template mw_candidateCell_candidatePCI - template (value) PDUSessionResourceModifyRequestTransfer m_pDUSessionResourceModifyRequestTransfer( - in template (omit) PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs - ) := { - protocolIEs := p_protocolIEs - } // End of template m_pDUSessionResourceModifyRequestTransfer + template (present) CandidateCell mw_candidateCell_ext( + template (present) CandidateCell.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_candidateCell_ext - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( - in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate - ) := { - { - id := id_PDUSessionAggregateMaximumBitRate, - criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate + template (present) CandidatePCI mw_candidatePCI( + template (present) CandidatePCI.candidatePCI p_candidatePCI := ?, + template (present) CandidatePCI.candidateNRARFCN p_candidateNRARFCN := ?, + template CandidatePCI.iE_Extensions p_iE_Extensions := * + ) := { + candidatePCI := p_candidatePCI, + candidateNRARFCN := p_candidateNRARFCN, + iE_Extensions := p_iE_Extensions + } // End of template mw_candidatePCI - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( - in template (value) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList - ) := { - { - id := id_UL_NGU_UP_TNLModifyList, - criticality := reject, - value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList + template (present) Cause mw_cause_radioNetwork( + template (present) CauseRadioNetwork p_radioNetwork + ) := { + radioNetwork := p_radioNetwork + } // End of template mw_cause_radioNetwork - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( - in template (value) NetworkInstance p_networkInstance - ) := { - { - id := id_NetworkInstance, - criticality := reject, - value_ := { NetworkInstance := p_networkInstance } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance + template (present) Cause mw_cause_transport( + template (present) CauseTransport p_transport + ) := { + transport := p_transport + } // End of template mw_cause_transport - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( - in template (value) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList - ) := { - { - id := id_QosFlowAddOrModifyRequestList, - criticality := reject, - value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList + template (present) Cause mw_cause_nas( + template (present) CauseNas p_nas + ) := { + nas := p_nas + } // End of template mw_cause_nas - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( - in template (value) QosFlowListWithCause p_qosFlowListWithCause - ) := { - { - id := id_QosFlowToReleaseList, - criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList + template (present) Cause mw_cause_protocol( + template (present) CauseProtocol p_protocol + ) := { + protocol := p_protocol + } // End of template mw_cause_protocol - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList - ) := { - { - id := id_AdditionalUL_NGU_UP_TNLInformation, - criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation + template (present) Cause mw_cause_misc( + template (present) CauseMisc p_misc + ) := { + misc := p_misc + } // End of template mw_cause_misc - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( - in template (value) CommonNetworkInstance p_commonNetworkInstance - ) := { - { - id := id_CommonNetworkInstance, - criticality := reject, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance + template (present) Cause mw_cause_ext( + template (present) Cause.choice_Extensions p_choice_Extensions + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cause_ext + + template (present) CauseMisc mw_causeMisc(template (present) CauseMisc p_value := ?) := p_value; + template (present) CauseNas mw_causeNas(template (present) CauseNas p_value := ?) := p_value; + template (present) CauseProtocol mw_causeProtocol(template (present) CauseProtocol p_value := ?) := p_value; + template (present) CauseRadioNetwork mww_causeRadioNetwork(template (present) CauseRadioNetwork p_value := ?) := p_value; + template (present) CauseTransport mw_causeTransport(template (present) CauseTransport p_value := ?) := p_value; + + template (present) Cell_CAGInformation mw_cell_CAGInformation( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) CellCAGList p_cellCAGList := ?, + template Cell_CAGInformation.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + cellCAGList := p_cellCAGList, + iE_Extensions := p_iE_Extensions + } // End of template mw_cell_CAGInformation + + template (present) CellIDBroadcastEUTRA_Item mw_cellIDBroadcastEUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDBroadcastEUTRA_Item - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList - ) := { - { - id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation + template (present) CellIDBroadcastNR_Item mw_cellIDBroadcastNR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDBroadcastNR_Item + + template (present) CellIDCancelledEUTRA_Item mw_cellIDCancelledEUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDCancelledEUTRA_Item + + template (present) CellIDCancelledNR_Item mw_cellIDCancelledNR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, + template CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + numberOfBroadcasts := p_numberOfBroadcasts, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellIDCancelledNR_Item + + template (present) CellIDListForRestart mw_cellIDListForRestart_eUTRA_CGIListforRestart( + template (present) EUTRA_CGIList p_eUTRA_CGIListforRestart := ? + ) := { + eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart + } // End of template mw_cellIDListForRestart_misc - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( - in template (value) CommonNetworkInstance p_commonNetworkInstance - ) := { - { - id := id_RedundantCommonNetworkInstance, - criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance + template (present) CellIDListForRestart mw_cellIDListForRestart_nR_CGIListforRestart( + template (present) NR_CGIList p_nR_CGIListforRestart := ? + ) := { + nR_CGIListforRestart := p_nR_CGIListforRestart + } // End of template mw_cellIDListForRestart_nR_CGIListforRestart - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation + template (present) CellIDListForRestart mw_cellIDListForRestart_ext( + template (present) CellIDListForRestart.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cellIDListForRestart_ext - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( - in template (value) SecurityIndication p_securityIndication - ) := { - { - id := id_SecurityIndication, - criticality := ignore, - value_ := { SecurityIndication := p_securityIndication } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication + template (present) CellSize mw_cellSize(template (present) CellSize p_value := ?) := p_value; - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( - in template (value) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList - ) := { - { - id := id_MBSSessionSetuporModifyRequestList, - criticality := ignore, - value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList + template (present) CellType mw_cellType( + template (present) CellSize p_cellSize:= ?, + template CellType.iE_Extensions p_iE_Extensions := * + ) := { + cellSize := p_cellSize, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellType - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( - in template (value) MBSSessionToReleaseList p_mBSSessionToReleaseList - ) := { - { - id := id_MBSSessionToReleaseList, - criticality := ignore, - value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList + template (present) CEmodeBSupport_Indicator mw_cEmodeBSupport_Indicator(template (present) CEmodeBSupport_Indicator p_value := ?) := p_value; + template (present) CEmodeBrestricted mw_cEmodeBrestricted(template (present) CEmodeBrestricted p_value := ?) := p_value; - template (omit) PDUSessionResourceModifyResponseTransfer m_pDUSessionResourceModifyResponseTransfer( - in template (omit) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := omit, - in template (omit) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := omit, - in template (omit) QosFlowAddOrModifyResponseList p_qosFlowAddOrModifyResponseList := omit, - in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, - in template (omit) QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := omit, - in template (omit) PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, - qosFlowAddOrModifyResponseList := p_qosFlowAddOrModifyResponseList, - additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, - qosFlowFailedToAddOrModifyList := p_qosFlowFailedToAddOrModifyList, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceModifyResponseTransfer - - template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList - ) := { - { - id := id_AdditionalNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation + template CNAssistedRANTuning mw_cNAssistedRANTuning( + template ExpectedUEBehaviour p_expectedUEBehaviour := *, + template CNAssistedRANTuning.iE_Extensions p_iE_Extensions := * + ) := { + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template mw_cNAssistedRANTuning + + template (present) CNTypeRestrictionsForEquivalentItem mw_cNTypeRestrictionsForEquivalentItem( + template (present) PLMNIdentity p_plmnIdentity := ?, + template (present) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type := ?, + template CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := * + ) := { + plmnIdentity := p_plmnIdentity, + cn_Type := p_cn_Type, + iE_Extensions := p_iE_Extensions + } // End of template mw_cNTypeRestrictionsForEquivalentItem - template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation + template (present) CNTypeRestrictionsForServing mw_cNTypeRestrictionsForServing(template (present) CNTypeRestrictionsForServing p_value := ?) := p_value; - template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation + template (present) CompletedCellsInEAI_EUTRA_Item mw_completedCellsInEAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInEAI_EUTRA_Item - template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( - in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList - ) := { - { - id := id_AdditionalRedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - - template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList - ) := { - { - id := id_AdditionalRedundantNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation - - template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation( - in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template m_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation + template (present) CompletedCellsInEAI_NR_Item mw_completedCellsInEAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInEAI_NR_Item - template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator( - in template (value) MBS_SupportIndicator p_mBS_SupportIndicator - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator - - template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList( - in template (value) MBSSessionSetupResponseList p_mBSSessionSetupResponseList - ) := { - { - id := id_MBSSessionSetuporModifyResponseList, - criticality := ignore, - extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } - } - } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList - - template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList( - in template (value) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList - ) := { - { - id := id_MBSSessionFailedtoSetuporModifyList, - criticality := ignore, - extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } - } - } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList + template (present) CompletedCellsInTAI_EUTRA_Item mw_completedCellsInTAI_EUTRA_Item( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInTAI_EUTRA_Item - template (omit) PDUSessionResourceModifyIndicationTransfer m_pDUSessionResourceModifyIndicationTransfer( - in template (value) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation, - in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, - in template (omit) PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, - additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceModifyIndicationTransfer - - template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation( - in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation - - template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult( - in template (value) SecurityResult p_securityResult - ) := { - { - id := id_SecurityResult, - criticality := ignore, - extensionValue := { SecurityResult := p_securityResult } - } - } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult + template (present) CompletedCellsInTAI_NR_Item mw_completedCellsInTAI_NR_Item( + template (present) NR_CGI p_nR_CGI := ?, + template CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_completedCellsInTAI_NR_Item + + template (present) ConcurrentWarningMessageInd mw_concurrentWarningMessageInd(template (present) ConcurrentWarningMessageInd p_value := true_) := p_value; + template (present) ConfidentialityProtectionIndication mw_confidentialityProtectionIndication(template (present) ConfidentialityProtectionIndication p_value := ?) := p_value; + template (present) ConfidentialityProtectionResult mw_confidentialityProtectionResult(template (present) ConfidentialityProtectionResult p_value := ?) := p_value; + template (present) ConfiguredTACIndication mw_configuredTACIndication(template (present) ConfiguredTACIndication p_value := true_) := p_value; + + template (present) CoreNetworkAssistanceInformationForInactive mw_coreNetworkAssistanceInformationForInactive( + template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, + template (present) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := ?, + template (present) TAIListForInactive p_tAIListForInactive := ?, + template PagingDRX p_uESpecificDRX := *, + template MICOModeIndication p_mICOModeIndication := *, + template ExpectedUEBehaviour p_expectedUEBehaviour := *, + template CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := * + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + uESpecificDRX := p_uESpecificDRX, + periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, + mICOModeIndication := p_mICOModeIndication, + tAIListForInactive := p_tAIListForInactive, + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template mw_coreNetworkAssistanceInformationForInactive + + template (present) CoreNetworkAssistanceInformationForInactive.iE_Extensions mw_coreNetworkAssistanceInformationForInactive_paging( + template (present) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation := ?, + template (present) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue := ?, + template (present) UERadioCapabilityForPaging p_uERadioCapabilityForPaging := ?, + template (present) MicoAllPLMN p_micoAllPLMN := ? + ) := { + { + id := id_EUTRA_PagingeDRXInformation, + criticality := ignore, + extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } + }, + { + id := id_ExtendedUEIdentityIndexValue, + criticality := ignore, + extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } + }, + { + id := id_UERadioCapabilityForPaging, + criticality := ignore, + extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } + }, + { + id := id_MicoAllPLMN, + criticality := ignore, + extensionValue := { MicoAllPLMN := p_micoAllPLMN } + } + // TODO To be enhanced + } // End of template mw_coreNetworkAssistanceInformationForInactive_paging - template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation( - in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation - ) := { - { - id := id_RedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } - } - } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation - - template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( - in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList - ) := { - { - id := id_AdditionalRedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation + template (present) COUNTValueForPDCP_SN12 mw_cOUNTValueForPDCP_SN12( + template (present) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12 := ?, + template (present) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12 := ?, + template COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := * + ) := { + pDCP_SN12 := p_pDCP_SN12, + hFN_PDCP_SN12 := p_hFN_PDCP_SN12, + iE_Extensions := p_iE_Extensions + } // End of template mw_cOUNTValueForPDCP_SN12 + + template (present) COUNTValueForPDCP_SN18 mw_cOUNTValueForPDCP_SN18( + template (present) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18 := ?, + template (present) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18 := ?, + template COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := * + ) := { + pDCP_SN18 := p_pDCP_SN18, + hFN_PDCP_SN18 := p_hFN_PDCP_SN18, + iE_Extensions := p_iE_Extensions + } // End of template mw_cOUNTValueForPDCP_SN18 - template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID( - in template (value) GlobalRANNodeID p_globalRANNodeID - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID + template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_endpointIPAddress( + template (present) TransportLayerAddress p_endpointIPAddress := ? + ) := { + endpointIPAddress := p_endpointIPAddress + } // End of template mw_cPTransportLayerInformation_endpointIPAddress - template (omit) PDUSessionResourceModifyItemModCfm m_pDUSessionResourceModifyItemModCfm( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceModifyItemModCfm.pDUSessionResourceModifyConfirmTransfer p_pDUSessionResourceModifyConfirmTransfer, - in template (omit) PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyConfirmTransfer := p_pDUSessionResourceModifyConfirmTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceModifyItemModCfm + template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_choice_Extensions( + template (present) CPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_cPTransportLayerInformation_choice_Extensions - template (omit) PDUSessionResourceModifyItemModInd m_pDUSessionResourceModifyItemModInd( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceModifyItemModInd.pDUSessionResourceModifyIndicationTransfer p_pDUSessionResourceModifyIndicationTransfer, - in template (omit) PDUSessionResourceModifyItemModInd.iE_Extensions p_iE_Extensions := omit + template (present) CPTransportLayerInformation.choice_Extensions mw_cPTransportLayerInformation_ext( + template (present) EndpointIPAddressAndPort p_EndpointIPAddressAndPort := ? + ) := { + id := id_EndpointIPAddressAndPort, + criticality := reject, + value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } + } // End of template mw_cPTransportLayerInformation_ext + + template CriticalityDiagnostics mw_criticalityDiagnostics( + template ProcedureCode p_procedureCode := *, + template TriggeringMessage p_triggeringMessage := *, + template Criticality p_procedureCriticality := *, + template CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := *, + template CriticalityDiagnostics.iE_Extensions p_iE_Extensions := * + ) := { + procedureCode := p_procedureCode, + triggeringMessage := p_triggeringMessage, + procedureCriticality := p_procedureCriticality, + iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, + iE_Extensions := p_iE_Extensions + } // End of template mw_criticalityDiagnostics + + template (present) CriticalityDiagnostics_IE_Item mw_criticalityDiagnostics_IE_Item( + template (present) Criticality p_iECriticality := ?, + template (present) ProtocolIE_ID p_iE_ID := ?, + template (present) TypeOfError p_typeOfError := ?, + template CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := * ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyIndicationTransfer := p_pDUSessionResourceModifyIndicationTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceModifyItemModInd + iECriticality := p_iECriticality, + iE_ID := p_iE_ID, + typeOfError := p_typeOfError, + iE_Extensions := p_iE_Extensions + } // End of template mw_criticalityDiagnostics_IE_Item + + template (present) CellBasedMDT_NR mw_cellBasedMDT_NR( + in template (present) CellIdListforMDT_NR p_cellIdListforMDT := ?, + in template CellBasedMDT_NR.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedMDT_NR - template (omit) PDUSessionResourceModifyItemModReq m_pDUSessionResourceModifyItemModReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceModifyItemModReq.pDUSessionResourceModifyRequestTransfer p_pDUSessionResourceModifyRequestTransfer, - in template (omit) NAS_PDU p_nAS_PDU := omit, - in template (omit) PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - nAS_PDU := p_nAS_PDU, - pDUSessionResourceModifyRequestTransfer := p_pDUSessionResourceModifyRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceModifyItemModReq - - template (value) PDUSessionResourceModifyItemModReq.iE_Extensions m_pDUSessionResourceModifyItemModReq_id_S_NSSAI( - in template (value) S_NSSAI p_s_nSSAI - ) := { - { - id := id_S_NSSAI, - criticality := reject, - extensionValue := { S_NSSAI := p_s_nSSAI } - } - } // End of template m_pDUSessionResourceModifyItemModReq_id_S_NSSAI + template (present) CellBasedMDT_EUTRA mw_cellBasedMDT_EUTRA( + template (present) CellIdListforMDT_EUTRA p_cellIdListforMDT := ?, + template CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforMDT := p_cellIdListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedMDT_EUTRA - template (value) PDUSessionResourceModifyItemModReq.iE_Extensions m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour( - in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour + template (present) CellBasedQMC mw_cellBasedQMC( + template (present) CellIdListforQMC p_cellIdListforQMC := ?, + template CellBasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + cellIdListforQMC := p_cellIdListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_cellBasedQMC - template (omit) PDUSessionResourceModifyItemModRes m_pDUSessionResourceModifyItemModRes( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceModifyItemModRes.pDUSessionResourceModifyResponseTransfer p_pDUSessionResourceModifyResponseTransfer, - in template (omit) PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := omit - ) := { + template (present) DataForwardingNotPossible mw_DataForwardingNotPossible(template (present) DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyResponseTransfer := p_pDUSessionResourceModifyResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceModifyItemModRes + template (present) DataForwardingAccepted mw_dataForwardingAccepted(template (present) DataForwardingAccepted p_value := ?) := p_value; - template (omit) PDUSessionResourceModifyUnsuccessfulTransfer m_pDUSessionResourceModifyUnsuccessfulTransfer( - in template (value) Cause p_cause, - in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, - in template (omit) PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceModifyUnsuccessfulTransfer + template (present) DataForwardingResponseDRBItem mw_dataForwardingResponseDRBItem( + template (present) DRB_ID p_dRB_ID := ?, + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template UPTransportLayerInformation p_uLForwardingUP_TNLInformation := *, + template DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := * + ) := { + dRB_ID := p_dRB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_dataForwardingResponseDRBItem + + template (present) DAPSRequestInfo mw_dAPSRequestInfo( + template (present) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, + template DAPSRequestInfo.iE_Extensions p_iE_Extensions := * + ) := { + dAPSIndicator := p_dAPSIndicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_dAPSRequestInfo + + template (present) DAPSResponseInfoItem mw_dAPSResponseInfoItem( + template (present) DRB_ID p_dRB_ID := ?, + template (present) DAPSResponseInfo p_dAPSResponseInfo := ?, + template DAPSResponseInfoItem.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + dAPSResponseInfo := p_dAPSResponseInfo, + iE_Extension := p_iE_Extension + } // End of template mw_dAPSResponseInfoItem + + template (present) DAPSResponseInfo mw_dAPSResponseInfo( + template (present) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator := ?, + template DAPSResponseInfo.iE_Extensions p_iE_Extensions := * + ) := { + dapsresponseindicator := p_dapsresponseindicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_dAPSResponseInfo + + template (present) DataForwardingResponseERABListItem mw_DataForwardingResponseERABListItem( + template (present) E_RAB_ID p_e_RAB_ID := ?, + template (present) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := ?, + template DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := * + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_DataForwardingResponseERABListItem - template (omit) PDUSessionResourceNotifyItem m_pDUSessionResourceNotifyItem( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer, - in template (omit) PDUSessionResourceNotifyItem.iE_Extensions p_iE_Extensions := omit + template (present) DelayCritical mw_delayCritical(template (present) DelayCritical p_value := ?) := p_value; + + template (present) DL_CP_SecurityInformation mw_dL_CP_SecurityInformation( + template (present) DL_NAS_MAC p_dl_NAS_MAC := ?, + template DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceNotifyTransfer := p_pDUSessionResourceNotifyTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceNotifyItem + dl_NAS_MAC := p_dl_NAS_MAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_dL_CP_SecurityInformation - template (omit) PDUSessionResourceNotifyReleasedTransfer m_pDUSessionResourceNotifyReleasedTransfer( - in template (value) Cause p_cause, - in template (omit) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceNotifyReleasedTransfer - - template (value) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation( - in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation + template (present) DLForwarding mw_dLForwarding(template (present) DLForwarding p_value := dl_forwarding_proposed) := p_value; + + template (present) DL_NGU_TNLInformationReused mw_dL_NGU_TNLInformationReused(template (present) DL_NGU_TNLInformationReused p_value := true_) := p_value; - template (omit) PDUSessionResourceNotifyTransfer m_pDUSessionResourceNotifyTransfer( - in template (omit) QosFlowNotifyList p_qosFlowNotifyList := omit, - in template (omit) QosFlowListWithCause p_qosFlowReleasedList := omit, - in template (omit) PDUSessionResourceNotifyTransfer.iE_Extensions p_iE_Extensions := omit + template (present) DirectForwardingPathAvailability mw_directForwardingPathAvailability(template (present) DirectForwardingPathAvailability p_value := direct_path_available) := p_value; + + template (present) DRBsSubjectToStatusTransferItem mw_dRBsSubjectToStatusTransferItem( + in template (present) DRB_ID p_dRB_ID := ?, + in template (present) DRBStatusUL p_dRBStatusUL := ?, + in template (present) DRBStatusDL p_dRBStatusDL := ?, + in template DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := * ) := { - qosFlowNotifyList := p_qosFlowNotifyList, - qosFlowReleasedList := p_qosFlowReleasedList, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceNotifyTransfer - - template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceNotifyTransfer_id_SecondaryRATUsageInformation( - in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation - - template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceNotifyTransfer_id_QosFlowFeedbackList( - in template (value) QosFlowFeedbackList p_qosFlowFeedbackList - ) := { - { - id := id_QosFlowFeedbackList, - criticality := ignore, - extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } - } - } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_QosFlowFeedbackList + dRB_ID := p_dRB_ID, + dRBStatusUL := p_dRBStatusUL, + dRBStatusDL := p_dRBStatusDL, + iE_Extension := p_iE_Extension + } // End of template mw_dRBsSubjectToStatusTransferItem + + template (present) DRBsSubjectToStatusTransferItem.iE_Extension mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList( + template (present) AssociatedQosFlowList p_AssociatedQosFlowList := ? + ) := { + { + id := id_OldAssociatedQosFlowList_ULendmarkerexpected, + criticality := ignore, + extensionValue := { AssociatedQosFlowList := p_AssociatedQosFlowList } + } + } // End of template mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList - template (omit) PDUSessionResourceReleaseCommandTransfer m_pDUSessionResourceReleaseCommandTransfer( - in template (value) Cause p_cause, - in template (omit) PDUSessionResourceReleaseCommandTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceReleaseCommandTransfer - - template (omit) PDUSessionResourceReleasedItemNot m_pDUSessionResourceReleasedItemNot( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceReleasedItemNot.pDUSessionResourceNotifyReleasedTransfer p_pDUSessionResourceNotifyReleasedTransfer, - in template (omit) PDUSessionResourceReleasedItemNot.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceNotifyReleasedTransfer := p_pDUSessionResourceNotifyReleasedTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceReleasedItemNot - - template (omit) PDUSessionResourceReleasedItemPSAck m_pDUSessionResourceReleasedItemPSAck( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceReleasedItemPSAck.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer, - in template (omit) PDUSessionResourceReleasedItemPSAck.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceReleasedItemPSAck + template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL12( + template (present) DRBStatusDL12 p_dRBStatusDL12 := ? + ) := { + dRBStatusDL12 := p_dRBStatusDL12 + } // End of template mw_dRBStatusDL_dRBStatusDL12 - template (omit) PDUSessionResourceReleasedItemPSFail m_pDUSessionResourceReleasedItemPSFail( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceReleasedItemPSFail.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer, - in template (omit) PDUSessionResourceReleasedItemPSFail.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceReleasedItemPSFail + template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL18( + template (present) DRBStatusDL18 p_dRBStatusDL18 := ? + ) := { + dRBStatusDL18 := p_dRBStatusDL18 + } // End of template mw_dRBStatusDL_dRBStatusDL18 - template (omit) PDUSessionResourceReleasedItemRelRes m_pDUSessionResourceReleasedItemRelRes( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer, - in template (omit) PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceReleaseResponseTransfer := p_pDUSessionResourceReleaseResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceReleasedItemRelRes - - template (omit) PDUSessionResourceReleaseResponseTransfer m_pDUSessionResourceReleaseResponseTransfer( - in template (omit) PDUSessionResourceReleaseResponseTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceReleaseResponseTransfer - - template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation( - in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template m_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation + template (present) DRBStatusDL mw_dRBStatusDL_choice_Extensions( + template (present) DRBStatusDL.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_dRBStatusDL_choice_Extensions - template (omit) PDUSessionResourceResumeItemRESReq m_pDUSessionResourceResumeItemRESReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceResumeItemRESReq.uEContextResumeRequestTransfer p_uEContextResumeRequestTransfer, - in template (omit) PDUSessionResourceResumeItemRESReq.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - uEContextResumeRequestTransfer := p_uEContextResumeRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceResumeItemRESReq + template (present) DRBStatusDL12 mw_dRBStatusDL12( + template (present) COUNTValueForPDCP_SN12 p_dL_COUNTValue := ?, + template DRBStatusDL12.iE_Extension p_iE_Extension := * + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusDL12 - template (omit) PDUSessionResourceResumeItemRESRes m_pDUSessionResourceResumeItemRESRes( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceResumeItemRESRes.uEContextResumeResponseTransfer p_uEContextResumeResponseTransfer, - in template (omit) PDUSessionResourceResumeItemRESRes.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - uEContextResumeResponseTransfer := p_uEContextResumeResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceResumeItemRESRes - - template (omit) PDUSessionResourceSecondaryRATUsageItem m_pPDUSessionResourceSecondaryRATUsageItem( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceSecondaryRATUsageItem.secondaryRATDataUsageReportTransfer p_secondaryRATDataUsageReportTransfer, - in template (omit) PDUSessionResourceSecondaryRATUsageItem.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - secondaryRATDataUsageReportTransfer := p_secondaryRATDataUsageReportTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pPDUSessionResourceSecondaryRATUsageItem - - template (omit) PDUSessionResourceSetupItemCxtReq m_pDUSessionResourceSetupItemCxtReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) S_NSSAI p_s_NSSAI, - in template (value) PDUSessionResourceSetupItemCxtReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer, - in template (omit) NAS_PDU p_nAS_PDU := omit, - in template (omit) PDUSessionResourceSetupItemCxtReq.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - nAS_PDU := p_nAS_PDU, - s_NSSAI := p_s_NSSAI, - pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceSetupItemCxtReq - - template (value) PDUSessionResourceSetupItemCxtReq.iE_Extensions m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour( - in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour + template (present) DRBStatusDL18 mw_dRBStatusDL18( + template (present) COUNTValueForPDCP_SN18 p_dL_COUNTValue := ?, + template DRBStatusDL18.iE_Extension p_iE_Extension := * + ) := { + dL_COUNTValue := p_dL_COUNTValue, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusDL18 - template (omit) PDUSessionResourceSetupItemCxtRes m_pDUSessionResourceSetupItemCxtRes( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceSetupItemCxtRes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer, - in template (omit) PDUSessionResourceSetupItemCxtRes.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceSetupItemCxtRes + template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL12( + template (present) DRBStatusUL12 p_dRBStatusUL12 := ? + ) := { + dRBStatusUL12 := p_dRBStatusUL12 + } // End of template mw_dRBStatusUL_dRBStatusUL12 - template (omit) PDUSessionResourceSetupItemHOReq m_pDUSessionResourceSetupItemHOReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) S_NSSAI p_s_NSSAI, - in template (value) PDUSessionResourceSetupItemHOReq.handoverRequestTransfer p_handoverRequestTransfer, - in template (omit) PDUSessionResourceSetupItemHOReq.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - s_NSSAI := p_s_NSSAI, - handoverRequestTransfer := p_handoverRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceSetupItemHOReq + template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL18( + template (present) DRBStatusUL18 p_dRBStatusUL18 := ? + ) := { + dRBStatusUL18 := p_dRBStatusUL18 + } // End of template mw_dRBStatusUL_dRBStatusUL18 - template (value) PDUSessionResourceSetupItemHOReq.iE_Extensions m_pDUSessionResourceSetupItemHOReq_id_PduSessionExpectedUEActivityBehaviour( - in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour + template (present) DRBStatusUL mw_dRBStatusUL_choice_Extensions( + template (present) DRBStatusUL.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_dRBStatusUL_choice_Extensions - template (omit) PDUSessionResourceSetupItemSUReq m_pDUSessionResourceSetupItemSUReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) S_NSSAI p_s_NSSAI, - in template (value) PDUSessionResourceSetupItemSUReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer, - in template (omit) NAS_PDU p_pDUSessionNAS_PDU := omit, - in template (omit) PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionNAS_PDU := p_pDUSessionNAS_PDU, - s_NSSAI := p_s_NSSAI, - pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceSetupItemSUReq - - template (value) PDUSessionResourceSetupItemSUReq.iE_Extensions m_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour( - in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template m_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour + template (present) DRBStatusUL12 mw_dRBStatusUL12( + template (present) COUNTValueForPDCP_SN12 p_uL_COUNTValue := ?, + template DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, + template DRBStatusUL12.iE_Extension p_iE_Extension := * + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusUL12 + + template (present) DRBStatusUL18 mw_dRBStatusUL18( + template (present) COUNTValueForPDCP_SN18 p_uL_COUNTValue := ?, + template DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, + template DRBStatusUL18.iE_Extension p_iE_Extension := * + ) := { + uL_COUNTValue := p_uL_COUNTValue, + receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, + iE_Extension := p_iE_Extension + } // End of template mw_dRBStatusUL18 + + template (present) DRBsToQosFlowsMappingItem mw_dRBsToQosFlowsMappingItem( + template (present) DRB_ID p_dRB_ID := ?, + template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, + template DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := * + ) := { + dRB_ID := p_dRB_ID, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template mw_dRBsToQosFlowsMappingItem - template (omit) PDUSessionResourceSetupItemSURes m_pDUSessionResourceSetupItemSURes( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer, - in template (omit) PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceSetupItemSURes - - template (value) PDUSessionResourceSetupRequestTransfer m_pDUSessionResourceSetupRequestTransfer( - in template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs p_protocolIEs - ) := { - protocolIEs := p_protocolIEs - } // End of template m_pDUSessionResourceSetupRequestTransfer - - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( - in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate - ) := { - { - id := id_PDUSessionAggregateMaximumBitRate, - criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate + template (present) DRBsToQosFlowsMappingItem.iE_Extensions mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo( + template (present) DAPSRequestInfo p_dAPSRequestInfo := ? + ) := { + { + id := id_DAPSRequestInfo, + criticality := ignore, + extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } + } + } // End of template mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo + + template (present) Dynamic5QIDescriptor mw_dynamic5QIDescriptor( + template (present) PriorityLevelQos p_priorityLevelQos := ?, + template (present) PacketDelayBudget p_packetDelayBudget := ?, + template (present) PacketErrorRate p_packetErrorRate := ?, + template FiveQI p_fiveQI := *, + template DelayCritical p_delayCritical := *, + template AveragingWindow p_averagingWindow := *, + template MaximumDataBurstVolume p_maximumDataBurstVolume := *, + template Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * + ) := { + priorityLevelQos := p_priorityLevelQos, + packetDelayBudget := p_packetDelayBudget, + packetErrorRate := p_packetErrorRate, + fiveQI := p_fiveQI, + delayCritical := p_delayCritical, + // The above IE shall be present in case of GBR QoS flow + averagingWindow := p_averagingWindow, + // The above IE shall be present in case of GBR QoS flow + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template mw_dynamic5QIDescriptor + + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_extendedPacketDelayBudget( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_ExtendedPacketDelayBudget, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_extendedPacketDelayBudget - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList - ) := { - { - id := id_UL_NGU_UP_TNLInformation, - criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible( - in template (value) DataForwardingNotPossible p_dataForwardingNotPossible - ) := { - { - id := id_DataForwardingNotPossible, - criticality := reject, - value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible + template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType( - in template (value) PDUSessionType p_pDUSessionType - ) := { - { - id := id_PDUSessionType, - criticality := reject, - value_ := { PDUSessionType := p_pDUSessionType } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType + template (present) EarlyMeasurement mw_earlyMeasurement(template (present) EarlyMeasurement p_value := true_) := p_value; - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication( - in template (value) SecurityIndication p_securityIndication - ) := { - { - id := id_SecurityIndication, - criticality := reject, - value_ := { SecurityIndication := p_securityIndication } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication + template (present) EarlyStatusTransfer_TransparentContainer mw_earlyStatusTransfer_TransparentContainer( + template (present) ProcedureStageChoice p_procedureStage := ?, + template EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * + ) := { + procedureStage := p_procedureStage, + iE_Extensions := p_iE_Extensions + } // End of template mw_earlyStatusTransfer_TransparentContainer - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance( - in template (value) NetworkInstance p_networkInstance - ) := { - { - id := id_NetworkInstance, - criticality := reject, - value_ := { NetworkInstance := p_networkInstance } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance + template (present) ProcedureStageChoice mw_procedureStageChoice_firstDLCount( + template (present) FirstDLCount p_firstDLCount := ? + ) := { + first_dl_count := p_firstDLCount + } // End of template mw_procedureStageChoice_firstDLCount - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList( - in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList - ) := { - { - id := id_QosFlowSetupRequestList, - criticality := reject, - value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList + template (present) ProcedureStageChoice mw_procedureStageChoice_choice_Extensions( + template (present) ProcedureStageChoice.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_procedureStageChoice_choice_Extensions - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance( - in template (value) CommonNetworkInstance p_commonNetworkInstance - ) := { - { - id := id_CommonNetworkInstance, - criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance + template (present) FirstDLCount mw_firstDLCount( + template (present) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer := ?, + template FirstDLCount.iE_Extension p_iE_Extension := * + ) := { + dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, + iE_Extension := p_iE_Extension + } // End of template mw_firstDLCount + + template (present) DRBsSubjectToEarlyStatusTransfer_Item mw_dRBsSubjectToEarlyStatusTransfer_Item( + template (present) DRB_ID p_dRB_ID := ?, + template (present) DRBStatusDL p_firstDLCOUNT := ?, + template DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := * + ) := { + dRB_ID := p_dRB_ID, + firstDLCOUNT := p_firstDLCOUNT, + iE_Extension := p_iE_Extension + } // End of template mw_dRBsSubjectToEarlyStatusTransfer_Item - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability( - in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability - ) := { - { - id := id_DirectForwardingPathAvailability, - criticality := ignore, - value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability + template (present) EDT_Session mw_eDT_Session(template (present) EDT_Session p_value := true_) := p_value; - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation + template (present) EmergencyAreaIDBroadcastEUTRA_Item mw_emergencyAreaIDBroadcastEUTRA_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA := ?, + template EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDBroadcastEUTRA_Item + + template (present) EmergencyAreaIDBroadcastNR_Item mw_emergencyAreaIDBroadcastNR_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CompletedCellsInEAI_NR p_completedCellsInEAI_NR := ?, + template EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + completedCellsInEAI_NR := p_completedCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDBroadcastNR_Item + + template (present) EmergencyAreaIDCancelledEUTRA_Item mw_emergencyAreaIDCancelledEUTRA_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA := ?, + template EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDCancelledEUTRA_Item + + template (present) EmergencyAreaIDCancelledNR_Item mw_emergencyAreaIDCancelledNR_Item( + template (present) EmergencyAreaID p_emergencyAreaID := ?, + template (present) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR := ?, + template EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + emergencyAreaID := p_emergencyAreaID, + cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyAreaIDCancelledNR_Item + + template (present) EmergencyFallbackIndicator mw_emergencyFallbackIndicator( + template (present) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator := ?, + template EmergencyServiceTargetCN p_emergencyServiceTargetCN := *, + template EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := * + ) := { + emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, + emergencyServiceTargetCN := p_emergencyServiceTargetCN, + iE_Extensions := p_iE_Extensions + } // End of template mw_emergencyFallbackIndicator - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList - ) := { - { - id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation + template (present) EmergencyFallbackRequestIndicator mw_emergencyFallbackRequestIndicator(template (present) EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstancen( - in template (value) CommonNetworkInstance p_commonNetworkInstance - ) := { - { - id := id_RedundantCommonNetworkInstance, - criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstance + template (present) EmergencyServiceTargetCN mw_emergencyServiceTargetCN(template (present) EmergencyServiceTargetCN p_value := ?) := p_value; - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation( - in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation - ) := { - { - id := id_RedundantPDUSessionInformation, - criticality := ignore, - value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation + template (present) ENB_ID mw_eNB_ID_macroENB_ID( + template (present) Bit20 p_macroENB_ID := ? + ) := { + macroENB_ID := p_macroENB_ID + } // End of template mw_eNB_ID_macroENB_ID - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList( - in template (value) MBSSessionSetupRequestList p_mBSSessionSetupRequestList - ) := { - { - id := id_MBSSessionSetupRequestList, - criticality := ignore, - value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } - } - } // End of template m_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList - - template (omit) PDUSessionResourceSetupResponseTransfer m_pDUSessionResourceSetupResponseTransfer( - in template (value) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation, - in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, - in template (omit) SecurityResult p_securityResult := omit, - in template (omit) QosFlowListWithCause p_qosFlowFailedToSetupList := omit, - in template (omit) PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, - additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, - securityResult := p_securityResult, - qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceSetupResponseTransfer - - template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation( - in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation - ) := { - { - id := id_RedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } - } - } // End of template m_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation - - template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( - in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList - ) := { - { - id := id_AdditionalRedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template m_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - - template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation( - in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation - ) := { - { - id := id_UsedRSNInformation, - criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template m_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation + template (present) ENB_ID mw_eNB_ID_homeENB_ID( + template (present) Bit28 p_homeENB_ID := ? + ) := { + homeENB_ID := p_homeENB_ID + } // End of template mw_eNB_ID_homeENB_ID - template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID( - in template (value) GlobalRANNodeID p_globalRANNodeID - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template m_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID - - template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator( - in template (value) MBS_SupportIndicator p_mBS_SupportIndicator - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator + template (present) ENB_ID mw_eNB_ID_short_macroENB_ID( + template (present) Bit18 p_short_macroENB_ID := ? + ) := { + short_macroENB_ID := p_short_macroENB_ID + } // End of template mw_eNB_ID_short_macroENB_ID - template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList( - in template (value) MBSSessionSetupResponseList p_mBSSessionSetupResponseList - ) := { - { - id := id_MBSSessionSetupResponseList, - criticality := ignore, - extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } - } - } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList + template (present) ENB_ID mw_eNB_ID_long_macroENB_ID( + template (present) Bit21 p_long_macroENB_ID := ? + ) := { + long_macroENB_ID := p_long_macroENB_ID + } // End of template mw_eNB_ID_long_macroENB_ID - template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList( - in template (value) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList - ) := { - { - id := id_MBSSessionFailedtoSetupList, - criticality := ignore, - extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } - } - } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList - - template (omit) PDUSessionResourceSetupUnsuccessfulTransfer m_pDUSessionResourceSetupUnsuccessfulTransfer( - in template (value) Cause p_cause, - in template (omit) CriticalityDiagnostics p_criticalityDiagnostics := omit, - in template (omit) PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceSetupUnsuccessfulTransfer - - template (omit) PDUSessionResourceSuspendItemSUSReq m_pDUSessionResourceSuspendItemSUSReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceSuspendItemSUSReq.uEContextSuspendRequestTransfer p_uEContextSuspendRequestTransfer, - in template (omit) PDUSessionResourceSuspendItemSUSReq.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - uEContextSuspendRequestTransfer := p_uEContextSuspendRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceSuspendItemSUSReq + template (present) ENB_ID mw_eNB_ID_choice_Extensions( + template (present) ENB_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_eNB_ID_choice_Extensions - template (omit) PDUSessionResourceSwitchedItem m_pDUSessionResourceSwitchedItem( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceSwitchedItem.pathSwitchRequestAcknowledgeTransfer p_pathSwitchRequestAcknowledgeTransfer, - in template (omit) PDUSessionResourceSwitchedItem.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestAcknowledgeTransfer := p_pathSwitchRequestAcknowledgeTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceSwitchedItem + template (present) Enhanced_CoverageRestriction mw_enhanced_CoverageRestriction(template (present) Enhanced_CoverageRestriction p_value := restricted) := p_value; - template (value) PDUSessionResourceSwitchedItem.iE_Extensions m_pDUSessionResourceSwitchedItem_id_PduSessionExpectedUEActivityBehaviour( - in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template m_pDUSessionResourceSwitchedItem_id_PduSessionExpectedUEActivityBehaviour + template (present) EndpointIPAddressAndPort mw_endpointIPAddressAndPort( + template (present) TransportLayerAddress p_endpointIPAddress := ?, + template (present) PortNumber p_portNumber := ?, + template EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := * + ) := { + endpointIPAddress := p_endpointIPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_endpointIPAddressAndPort - template (omit) PDUSessionResourceToBeSwitchedDLItem m_pDUSessionResourceToBeSwitchedDLItem( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceToBeSwitchedDLItem.pathSwitchRequestTransfer p_pathSwitchRequestTransfer, - in template (omit) PDUSessionResourceToBeSwitchedDLItem.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestTransfer := p_pathSwitchRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceToBeSwitchedDLItem + template (present) EndIndication mw_endIndication(template (present) EndIndication p_value := ?) := p_value; - template (omit) PDUSessionResourceToReleaseItemHOCmd m_pDUSessionResourceToReleaseItemHOCmd( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceToReleaseItemHOCmd.handoverPreparationUnsuccessfulTransfer p_handoverPreparationUnsuccessfulTransfer, - in template (omit) PDUSessionResourceToReleaseItemHOCmd.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - handoverPreparationUnsuccessfulTransfer := p_handoverPreparationUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceToReleaseItemHOCmd - - template (omit) PDUSessionResourceToReleaseItemRelCmd m_pDUSessionResourceToReleaseItemRelCmd( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceToReleaseItemRelCmd.pDUSessionResourceReleaseCommandTransfer p_pDUSessionResourceReleaseCommandTransfer, - in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceReleaseCommandTransfer := p_pDUSessionResourceReleaseCommandTransfer, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionResourceToReleaseItemRelCmd - - template (value) PDUSessionType m_pDUSessionType(in PDUSessionType p_value := ipv4) := p_value; - - template (omit) PDUSessionUsageReport m_pDUSessionUsageReport( - in template (value) PDUSessionUsageReport.rATType p_rATType := nr, - in template (value) VolumeTimedReportList p_pDUSessionTimedReportList, - in template (omit) PDUSessionUsageReport.iE_Extensions p_iE_Extensions := omit - ) := { - rATType := p_rATType, - pDUSessionTimedReportList := p_pDUSessionTimedReportList, - iE_Extensions := p_iE_Extensions - } // End of template m_pDUSessionUsageReport - - template (omit) PEIPSassistanceInformation m_pEIPSassistanceInformation( - in template (value)CNsubgroupID p_cNsubgroupID, - in template (omit) PEIPSassistanceInformation.iE_Extensions p_iE_Extensions := omit - ) := { - cNsubgroupID := p_cNsubgroupID, - iE_Extensions := p_iE_Extensions - } // End of template m_pEIPSassistanceInformation + template (present) EPS_TAI mw_ePS_TAI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) EPS_TAC p_ePS_TAC := ?, + template EPS_TAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + ePS_TAC := p_ePS_TAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_ePS_TAI + + template (present) E_RABInformationItem mw_e_RABInformationItem( + template (present) E_RAB_ID p_e_RAB_ID := ?, + template (present) DLForwarding p_dLForwarding := ?, + template E_RABInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + e_RAB_ID := p_e_RAB_ID, + dLForwarding := p_dLForwarding, + iE_Extensions := p_iE_Extensions + } // End of template mw_e_RABInformationItem - template (omit) PLMNAreaBasedQMC m_pLMNAreaBasedQMC( - in template (value) PLMNListforQMC p_plmnListforQMC, - in template (omit) PLMNAreaBasedQMC.iE_Extensions p_iE_Extensions := omit - ) := { - plmnListforQMC := p_plmnListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template m_pLMNAreaBasedQMC - - template (omit) PLMNSupportItem m_pLMNSupportItem( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) SliceSupportList p_sliceSupportList, - in template (omit) PLMNSupportItem.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - sliceSupportList := p_sliceSupportList, - iE_Extensions := p_iE_Extensions - } // End of template m_pLMNSupportItem - - template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_NPN_Support( - in template (value) NPN_Support p_nPN_Support - ) := { - { - id := id_NPN_Support, - criticality := reject, - extensionValue := { NPN_Support := p_nPN_Support } - } - } // End of template m_pLMNSupportItem_id_NPN_Support - - template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_ExtendedSliceSupportList( - in template (value) ExtendedSliceSupportList p_extendedSliceSupportList - ) := { - { - id := id_ExtendedSliceSupportList, - criticality := reject, - extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } - } - } // End of template m_pLMNSupportItem_id_ExtendedSliceSupportList - - template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_OnboardingSupport( - in template (value) OnboardingSupport p_onboardingSupport - ) := { - { - id := id_OnboardingSupport, - criticality := ignore, - extensionValue := { OnboardingSupport := p_onboardingSupport } - } - } // End of template m_pLMNSupportItem_id_OnboardingSupport + template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_e_RABInformationItem_id_SourceTNLAddrInfo - template (omit) PNI_NPN_MobilityInformation m_pNI_NPN_MobilityInformation( - in template (value) Allowed_PNI_NPN_List p_allowed_PNI_NPI_List, - in template (omit) PNI_NPN_MobilityInformation.iE_Extensions p_iE_Extensions := omit - ) := { - allowed_PNI_NPI_List := p_allowed_PNI_NPI_List, - iE_Extensions := p_iE_Extensions - } // End of template m_pNI_NPN_MobilityInformation + template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo - template (value) Pre_emptionCapability m_pre_emptionCapability(in Pre_emptionCapability p_value := shall_not_trigger_pre_emption) := p_value; + template (present) EUTRA_CGI mw_uUTRA_CGI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) EUTRACellIdentity p_eUTRACellIdentity := ?, + template EUTRA_CGI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + eUTRACellIdentity := p_eUTRACellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template mw_uUTRA_CGI + + template (present) EUTRA_PagingeDRXInformation mw_eUTRA_PagingeDRXInformation( + template (present) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle := ?, + template EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := *, + template EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, + eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRA_PagingeDRXInformation - template (value) Pre_emptionVulnerability m_pre_emptionVulnerability(in Pre_emptionVulnerability p_value := not_pre_emptable) := p_value; + template (present) EUTRA_Paging_eDRX_Cycle mw_eUTRA_Paging_eDRX_Cycle(template (present) EUTRA_Paging_eDRX_Cycle p_value := ?) := p_value; - template (value) PWSFailedCellIDList m_pWSFailedCellIDList_nR_CGI_PWSFailedList( - in template (value) NR_CGIList p_nR_CGI_PWSFailedList - ) := { - nR_CGI_PWSFailedList := p_nR_CGI_PWSFailedList - } // End of template m_pWSFailedCellIDList_nR_CGI_PWSFailedList + template (present) EUTRA_Paging_Time_Window mw_eUTRA_Paging_Time_Window(template (present) EUTRA_Paging_Time_Window p_value := ?) := p_value; - template (value) PWSFailedCellIDList m_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList( - in template (value) EUTRA_CGIList p_eUTRA_CGI_PWSFailedList - ) := { - eUTRA_CGI_PWSFailedList := p_eUTRA_CGI_PWSFailedList - } // End of template m_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList + template (present) EventType mw_eventType(template (present) EventType p_value := ?) := p_value; - template (value) PWSFailedCellIDList m_pWSFailedCellIDList_choice_Extensions( - in template (value) PWSFailedCellIDList.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_pWSFailedCellIDList_choice_Extensions - - template (omit) QMCConfigInfo m_qMCConfigInfo( - in template (value) UEAppLayerMeasInfoList p_uEAppLayerMeasInfoList, - in template (omit) QMCConfigInfo.iE_Extensions p_iE_Extensions := omit - ) := { - uEAppLayerMeasInfoList := p_uEAppLayerMeasInfoList, - iE_Extensions := p_iE_Extensions - } // End of template m_qMCConfigInfo - - template (omit) QMCDeactivation m_qMCDeactivation( - in template (value) QoEReferenceList p_qoEReferenceList, - in template (omit) QMCDeactivation.iE_Extensions p_iE_Extensions := omit - ) := { - qoEReferenceList := p_qoEReferenceList, - iE_Extensions := p_iE_Extensions - } // End of template m_qMCDeactivation - - template (value) QosCharacteristics m_qosCharacteristics_nonDynamic5QI( - in template (value) NonDynamic5QIDescriptor p_nonDynamic5QI - ) := { - nonDynamic5QI := p_nonDynamic5QI - } // End of template m_qosCharacteristics_nonDynamic5QI + template (present) ExcessPacketDelayThresholdItem mw_excessPacketDelayThresholdItem( + template (present) FiveQI p_fiveQi := ?, + template (present) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue := ?, + template ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := * + ) := { + fiveQi := p_fiveQi, + excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_excessPacketDelayThresholdItem - template (value) QosCharacteristics m_qosCharacteristics_dynamic5QI( - in template (value) Dynamic5QIDescriptor p_dynamic5QI - ) := { - dynamic5QI := p_dynamic5QI - } // End of template m_qosCharacteristics_dynamic5QI + template (present) ExcessPacketDelayThresholdValue mw_excessPacketDelayThresholdValue(template (present) ExcessPacketDelayThresholdValue p_value := ?) := p_value; - template (value) QosCharacteristics m_qosCharacteristics_choice_Extensions( - in template (value) QosCharacteristics.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_qosCharacteristics_choice_Extensions - - template (omit) QosFlowAcceptedItem m_qosFlowAcceptedItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) QosFlowAcceptedItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template - - template (value) QosFlowAcceptedItem.iE_Extensions m_pLMNSupportItem_id_CurrentQoSParaSetIndex( - in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template m_pLMNSupportItem_id_ExtendedSliceSupportList + template (present) ExpectedHOInterval mw_expectedHOInterval(template (present) ExpectedHOInterval p_value := ?) := p_value; - template (omit) QosFlowAddOrModifyRequestItem m_qosFlowAddOrModifyRequestItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) QosFlowLevelQosParameters p_qosFlowLevelQosParameters := omit, - in template (omit) E_RAB_ID p_e_RAB_ID := omit, - in template (omit) QosFlowAddOrModifyRequestItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, - e_RAB_ID := p_e_RAB_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowAddOrModifyRequestItem - - template (value) QosFlowAddOrModifyRequestItem.iE_Extensions m_qosFlowAddOrModifyRequestItem_id_TSCTrafficCharacteristics( - in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics - ) := { - { - id := id_TSCTrafficCharacteristics, - criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } - } - } // End of template m_qosFlowAddOrModifyRequestItem_id_TSCTrafficCharacteristics - - template (value) QosFlowAddOrModifyRequestItem.iE_Extensions m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator( - in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator - ) := { - { - id := id_RedundantQosFlowIndicator, - criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } - } - } // End of template m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator + template ExpectedUEActivityBehaviour mw_expectedUEActivityBehaviour( + template ExpectedActivityPeriod p_expectedActivityPeriod := *, + template ExpectedIdlePeriod p_expectedIdlePeriod := *, + template SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := *, + template ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := * + ) := { + expectedActivityPeriod := p_expectedActivityPeriod, + expectedIdlePeriod := p_expectedIdlePeriod, + sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_expectedUEActivityBehaviour + + template ExpectedUEBehaviour mw_expectedUEBehaviour( + template ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := *, + template ExpectedHOInterval p_expectedHOInterval := *, + template ExpectedUEMobility p_expectedUEMobility := *, + template ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= *, + template ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := * + ) := { + expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, + expectedHOInterval := p_expectedHOInterval, + expectedUEMobility := p_expectedUEMobility, + expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, + iE_Extensions := p_iE_Extensions + } // End of template m_expectedUEBehaviour + + template (present) ExpectedUEMobility mw_expectedUEMobility(template (present) ExpectedUEMobility p_value := ?) := p_value; + + template (present) ExpectedUEMovingTrajectoryItem mw_expectedUEMovingTrajectoryItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := *, + template ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template mw_expectedUEMovingTrajectoryItem + + template Extended_AMFName mw_extended_AMFName( + template AMFNameVisibleString p_aMFNameVisibleString := *, + template AMFNameUTF8String p_aMFNameUTF8String := *, + template Extended_AMFName.iE_Extensions p_iE_Extensions := * + ) := { + aMFNameVisibleString := p_aMFNameVisibleString, + aMFNameUTF8String := p_aMFNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template mw_extended_AMFName + + template Extended_RANNodeName mw_extended_RANNodeName( + template RANNodeNameVisibleString p_rANNodeNameVisibleString := *, + template RANNodeNameUTF8String p_rANNodeNameUTF8String := *, + template Extended_RANNodeName.iE_Extensions p_iE_Extensions := * + ) := { + rANNodeNameVisibleString := p_rANNodeNameVisibleString, + rANNodeNameUTF8String := p_rANNodeNameUTF8String, + iE_Extensions := p_iE_Extensions + } // End of template mw_extended_RANNodeName + + template (present) ExtendedRATRestrictionInformation mw_extendedRATRestrictionInformation( + template (present) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction := ?, + template (present) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction := ?, + template ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := * + ) := { + primaryRATRestriction := p_primaryRATRestriction, + secondaryRATRestriction := p_secondaryRATRestriction, + iE_Extensions := p_iE_Extensions + } // End of template mw_extendedRATRestrictionInformation - template (omit) QosFlowAddOrModifyResponseItem m_qosFlowAddOrModifyResponseItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) QosFlowAddOrModifyResponseItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowAddOrModifyResponseItem - - template (value) QosFlowAddOrModifyResponseItem.iE_Extensions m_qosFlowAddOrModifyResponseItem_id_CurrentQoSParaSetIndex( - in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template m_qosFlowAddOrModifyResponseItem_id_CurrentQoSParaSetIndex - - template (omit) QosFlowFeedbackItem m_qosFlowFeedbackItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) UpdateFeedback p_updateFeedback := omit, - in template (omit) ExtendedPacketDelayBudget p_cNpacketDelayBudgetDL := omit, - in template (omit) ExtendedPacketDelayBudget p_cNpacketDelayBudgetUL := omit, - in template (omit) QosFlowFeedbackItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - updateFeedback := p_updateFeedback, - cNpacketDelayBudgetDL := p_cNpacketDelayBudgetDL, - cNpacketDelayBudgetUL := p_cNpacketDelayBudgetUL, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowFeedbackItem - - template (omit) QosFlowInformationItem m_qosFlowInformationItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) DLForwarding p_dLForwarding := omit, - in template (omit) QosFlowInformationItem.iE_Extensions p_iE_Extensions := omit + template (present) EventTrigger mw_eventTrigger_outOfCoverage( + template (present) EventTrigger.outOfCoverage p_outOfCoverage := true_ ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - dLForwarding := p_dLForwarding, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowInformationItem - - template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_ULForwarding( - in template (value) ULForwarding p_uLForwarding - ) := { - { - id := id_ULForwarding, - criticality := ignore, - extensionValue := { ULForwarding := p_uLForwarding } - } - } // End of template m_qosFlowInformationItem_id_ULForwarding + outOfCoverage := p_outOfCoverage + } // End of template mw_eventTrigger_outOfCoverage - template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceTNLAddrInfo( - in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS - ) := { - { - id := id_SourceTNLAddrInfo, - criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } - } - } // End of template m_qosFlowInformationItem_id_SourceTNLAddrInfo + template (present) EventTrigger mw_eventTrigger_eventL1LoggedMDTConfig( + template (present) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig := ? + ) := { + eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig + } // End of template mw_eventTrigger_eventL1LoggedMDTConfig - template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceNodeTNLAddrInfo( - in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS + template (present) EventTrigger mw_eventTrigger_choice_Extensions( + template (present) EventTrigger.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_eventTrigger_choice_Extensions + + template (present) EventL1LoggedMDTConfig mw_eventL1LoggedMDTConfig( + template (present) MeasurementThresholdL1LoggedMDT p_l1Threshold := ?, + template (present) Hysteresis p_hysteresis := ?, + template (present) TimeToTrigger p_timeToTrigger := ?, + template EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := * + ) := { + l1Threshold := p_l1Threshold, + hysteresis := p_hysteresis, + timeToTrigger := p_timeToTrigger, + iE_Extensions := p_iE_Extensions + } // End of template mw_eventL1LoggedMDTConfig + + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRP( + template (present) Threshold_RSRP p_threshold_RSRP := ? ) := { - { - id := id_SourceNodeTNLAddrInfo, - criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } - } - } // End of template m_qosFlowInformationItem_id_SourceNodeTNLAddrInfo - - template (omit) QosFlowLevelQosParameters m_qosFlowLevelQosParameters( - in template (value) QosCharacteristics p_qosCharacteristics, - in template (value) AllocationAndRetentionPriority p_allocationAndRetentionPriority, - in template (omit) GBR_QosInformation p_gBR_QosInformation := omit, - in template (omit) ReflectiveQosAttribute p_reflectiveQosAttribute := omit, - in template (omit) AdditionalQosFlowInformation p_additionalQosFlowInformation := omit, - in template (omit) QosFlowLevelQosParameters.iE_Extensions p_iE_Extensions := omit - ) := { - qosCharacteristics := p_qosCharacteristics, - allocationAndRetentionPriority := p_allocationAndRetentionPriority, - gBR_QosInformation := p_gBR_QosInformation, - reflectiveQosAttribute := p_reflectiveQosAttribute, - additionalQosFlowInformation := p_additionalQosFlowInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowLevelQosParameters - - template (value) QosFlowLevelQosParameters.iE_Extensions m_qosFlowLevelQosParameters_id_QosMonitoringRequest( - in template (value) QosMonitoringRequest p_qosMonitoringRequest - ) := { - { - id := id_QosMonitoringRequest, - criticality := ignore, - extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } - } - } // End of template m_qosFlowLevelQosParameters_id_QosMonitoringRequest + threshold_RSRP := p_threshold_RSRP + } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRP - template (value) QosFlowLevelQosParameters.iE_Extensions m_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency( - in template (value) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency - ) := { - { - id := id_QosMonitoringReportingFrequency, - criticality := ignore, - extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } - } - } // End of template m_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRQ( + template (present) Threshold_RSRQ p_threshold_RSRQ := ? + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRQ - template (value) QosMonitoringRequest m_qosMonitoringRequest(in QosMonitoringRequest p_value := ul) := p_value; + template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_choice_Extensions( + template (present) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_measurementThresholdL1LoggedMDT_choice_Extensions - template (omit) QosFlowWithCauseItem m_qosFlowWithCauseItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (value) Cause p_cause, - in template (omit) QosFlowWithCauseItem.iE_Extensions p_iE_Extensions := omit + template (present) FailureIndication mw_failureIndication( + template (present) UERLFReportContainer p_uERLFReportContainer := ?, + template FailureIndication.iE_Extensions p_iE_Extensions := * ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowWithCauseItem + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_failureIndication + + template FiveG_ProSeAuthorized mw_FiveG_ProSeAuthorized( + template FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := *, + template FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := *, + template FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := *, + template FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := *, + template FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := *, + template FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := * + ) := { + fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, + fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, + fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, + fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, + fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_FiveG_ProSeAuthorized - template (omit) QosFlowModifyConfirmItem m_qosFlowModifyConfirmItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) QosFlowModifyConfirmItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowModifyConfirmItem - - template (omit) QosFlowNotifyItem m_qosFlowNotifyItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (value) NotificationCause p_notificationCause, - in template (omit) QosFlowNotifyItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - notificationCause := p_notificationCause, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowNotifyItem - - template (value) QosFlowNotifyItem.iE_Extensions m_qosFlowNotifyItem_id_CurrentQoSParaSetIndex( - in template (value) AlternativeQoSParaSetNotifyIndex p_alternativeQoSParaSetNotifyIndex - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } - } - } // End of template m_qosFlowNotifyItem_id_CurrentQoSParaSetIndex - - template (omit) QosFlowParametersItem m_qosFlowParametersItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) AlternativeQoSParaSetList p_alternativeQoSParaSetList := omit, - in template (omit) QosFlowParametersItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - alternativeQoSParaSetList := p_alternativeQoSParaSetList, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowParametersItem - - template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_CNPacketDelayBudgetDL( - in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget - ) := { - { - id := id_CNPacketDelayBudgetDL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template m_qosFlowParametersItem_id_CNPacketDelayBudgetDL - - template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_CNPacketDelayBudgetUL( - in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget - ) := { - { - id := id_CNPacketDelayBudgetUL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template m_qosFlowParametersItem_id_CNPacketDelayBudgetUL - - template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_BurstArrivalTimeDownlink( - in template (value) BurstArrivalTime p_burstArrivalTime - ) := { - { - id := id_BurstArrivalTimeDownlink, - criticality := ignore, - extensionValue := { BurstArrivalTime := p_burstArrivalTime } - } - } // End of template m_qosFlowParametersItem_id_BurstArrivalTimeDownlink + template (present) FiveGProSeDirectDiscovery mw_fiveGProSeDirectDiscovery(template (present) FiveGProSeDirectDiscovery p_value := ?) := p_value; - template (omit) QosFlowPerTNLInformation m_qosFlowPerTNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, - in template (value) AssociatedQosFlowList p_associatedQosFlowList, - in template (omit) QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := omit - ) := { - uPTransportLayerInformation := p_uPTransportLayerInformation, - associatedQosFlowList := p_associatedQosFlowList, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowPerTNLInformation - - template (omit) QosFlowPerTNLInformationItem m_qosFlowPerTNLInformationItem( - in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation, - in template (omit) QosFlowPerTNLInformationItem.iE_Extensions p_iE_Extensions := omit + template (present) FiveGProSeDirectCommunication mw_fiveGProSeDirectCommunication(template (present) FiveGProSeDirectCommunication p_value := ?) := p_value; + + template (present) FiveGProSeLayer2UEtoNetworkRelay mw_fiveGProSeLayer2UEtoNetworkRelay(template (present) FiveGProSeLayer2UEtoNetworkRelay p_value := ?) := p_value; + + template (present) FiveGProSeLayer3UEtoNetworkRelay mw_fiveGProSeLayer3UEtoNetworkRelay(template (present) FiveGProSeLayer3UEtoNetworkRelay p_value := ?) := p_value; + + template (present) FiveGProSeLayer2RemoteUE mw_fiveGProSeLayer2RemoteUE(template (present) FiveGProSeLayer2RemoteUE p_value := ?) := p_value; + + template (present) FiveG_ProSePC5QoSParameters mw_fiveG_ProSePC5QoSParameters( + template (present) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList := ?, + template BitRate p_fiveGProSepc5LinkAggregateBitRates := *, + template FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := * + ) := { + fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, + fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveG_ProSePC5QoSParameters + + template (present) FiveGProSePC5QoSFlowItem mw_fiveGProSePC5QoSFlowItem( + template (present) FiveQI p_fiveGproSepQI := ?, + template FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := *, + template Range p_fiveGproSerange := *, + template FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := * ) := { - qosFlowPerTNLInformation := p_qosFlowPerTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowPerTNLInformationItem - - template (omit) QosFlowSetupRequestItem m_qosFlowSetupRequestItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (value) QosFlowLevelQosParameters p_qosFlowLevelQosParameters, - in template (omit) E_RAB_ID p_e_RAB_ID := omit, - in template (omit) QosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, - e_RAB_ID := p_e_RAB_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowSetupRequestItem - - template (value) QosFlowSetupRequestItem.iE_Extensions m_qosFlowSetupRequestItem_id_TSCTrafficCharacteristics( - in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics - ) := { - { - id := id_TSCTrafficCharacteristics, - criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } - } - } // End of template m_qosFlowSetupRequestItem_id_TSCTrafficCharacteristics - - template (value) QosFlowSetupRequestItem.iE_Extensions m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator( - in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator - ) := { - { - id := id_RedundantQosFlowIndicator, - criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } - } - } // End of template m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator + fiveGproSepQI := p_fiveGproSepQI, + fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, + fiveGproSerange := p_fiveGproSerange, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveGProSePC5QoSFlowItem + + template (present) FiveGProSePC5FlowBitRates mw_fiveGProSePC5FlowBitRates( + template (present) BitRate p_fiveGproSeguaranteedFlowBitRate := ?, + template (present) BitRate p_fiveGproSemaximumFlowBitRate := ?, + template FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := * + ) := { + fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, + fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveGProSePC5FlowBitRates + + template (present) FiveG_S_TMSI mw_fiveG_S_TMSI( + template (present) AMFSetID p_aMFSetID := ?, + template (present) AMFPointer p_aMFPointer := ?, + template (present) FiveG_TMSI p_fiveG_TMSI := ?, + template FiveG_S_TMSI.iE_Extensions p_iE_Extensions := * + ) := { + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + fiveG_TMSI := p_fiveG_TMSI, + iE_Extensions := p_iE_Extensions + } // End of template mw_fiveG_S_TMSI + + template (present) ForbiddenAreaInformation_Item mw_forbiddenAreaInformation_Item( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) ForbiddenTACs p_forbiddenTACs := ?, + template ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + forbiddenTACs := p_forbiddenTACs, + iE_Extensions := p_iE_Extensions + } // End of template mw_forbiddenAreaInformation_Item + + template (present) FromEUTRANtoNGRAN mw_fromEUTRANtoNGRAN( + template (present) IntersystemSONeNBID p_sourceeNBID := ?, + template (present) IntersystemSONNGRANnodeID p_targetNGRANnodeID := ?, + template FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := * + ) := { + sourceeNBID := p_sourceeNBID, + targetNGRANnodeID := p_targetNGRANnodeID, + iE_Extensions := p_iE_Extensions + } // End of template mw_fromEUTRANtoNGRAN + + template (present) FromNGRANtoEUTRAN mw_fromNGRANtoEUTRAN( + template (present) IntersystemSONNGRANnodeID p_sourceNGRANnodeID := ?, + template (present) IntersystemSONeNBID p_targeteNBID := ?, + template FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := * + ) := { + sourceNGRANnodeID := p_sourceNGRANnodeID, + targeteNBID := p_targeteNBID, + iE_Extensions := p_iE_Extensions + } // End of template mw_fromNGRANtoEUTRAN + + template (present) GBR_QosInformation mw_gBR_QosInformation( + template (present) BitRate p_maximumFlowBitRateDL := ?, + template (present) BitRate p_maximumFlowBitRateUL := ?, + template (present) BitRate p_guaranteedFlowBitRateDL := ?, + template (present) BitRate p_guaranteedFlowBitRateUL := ?, + template NotificationControl p_notificationControl := *, + template PacketLossRate p_maximumPacketLossRateDL := *, + template PacketLossRate p_maximumPacketLossRateUL := *, + template GBR_QosInformation.iE_Extensions p_iE_Extensions := * + ) := { + maximumFlowBitRateDL := p_maximumFlowBitRateDL, + maximumFlowBitRateUL := p_maximumFlowBitRateUL, + guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, + guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, + notificationControl := p_notificationControl, + maximumPacketLossRateDL := p_maximumPacketLossRateDL, + maximumPacketLossRateUL := p_maximumPacketLossRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_gBR_QosInformation + + template (present) GBR_QosInformation.iE_Extensions mw_gBR_QosInformation_id_AlternativeQoSParaSetList( + template (present) AlternativeQoSParaSetList p_alternativeQoSParaSetList := ? + ) := { + { + id := id_AlternativeQoSParaSetList, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} + } + } // End of template mw_gBR_QosInformation_id_AlternativeQoSParaSetList - template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, - in template (omit) QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - dataForwardingAccepted := p_dataForwardingAccepted, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowItemWithDataForwarding - - template (value) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( - in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex + template (present) GlobalCable_ID_new mw_globalCable_ID_new( + template (present) GlobalCable_ID p_globalCable_ID := ?, + template (present) TAI p_tAI := ?, + template GlobalCable_ID_new.iE_Extensions p_iE_Extensions := * + ) := { + globalCable_ID := p_globalCable_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalCable_ID_new + + template (present) GlobalGNB_ID mw_ie_globalGnbId( + template (present) PLMNIdentity p_plmnId := ?, + template (present) bitstring p_gnbId := ?, + template GlobalGNB_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_plmnId,//'010001'O, + gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, + iE_Extensions := p_iE_Extensions + } // End of template mw_ie_globalGnbId + + template (present) GlobalN3IWF_ID mw_globalN3IWF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) N3IWF_ID p_n3IWF_ID := ?, + template GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + n3IWF_ID := p_n3IWF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalN3IWF_ID + + template (present) GlobalLine_ID mw_globalLine_ID( + template (present) GlobalLineIdentity p_globalLineIdentity := ?, + template LineType p_lineType := *, + template GlobalLine_ID.iE_Extensions p_iE_Extensions := * + ) := { + globalLineIdentity := p_globalLineIdentity, + lineType := p_lineType, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalLine_ID + + template (present) GlobalLine_ID.iE_Extensions mw_globalLine_ID_id_TAI(template TAI p_tAI := *) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template mw_globalLine_ID_id_TAI - template (omit) QosFlowToBeForwardedItem m_qosFlowToBeForwardedItem( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (omit) QosFlowToBeForwardedItem.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template m_qosFlowToBeForwardedItem + template (present) GlobalNgENB_ID mw_globalNgENB_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) NgENB_ID p_ngENB_ID := ?, + template GlobalNgENB_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + ngENB_ID := p_ngENB_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalNgENB_ID - template (omit) QoSFlowsUsageReport_Item m_qoSFlowsUsageReport_Item( - in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, - in template (value) QoSFlowsUsageReport_Item.rATType p_rATType := nr, - in template (value) VolumeTimedReportList p_qoSFlowsTimedReportList, - in template (omit) QoSFlowsUsageReport_Item.iE_Extensions p_iE_Extensions := omit + template (present) GlobalRANNodeID mw_globalRANNodeID_globalGNB_ID( + template (present) GlobalGNB_ID p_globalGNB_ID := ? ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - rATType := p_rATType, - qoSFlowsTimedReportList := p_qoSFlowsTimedReportList, - iE_Extensions := p_iE_Extensions - } // End of template m_qoSFlowsUsageReport_Item + globalGNB_ID := p_globalGNB_ID + } // End of template mw_globalRANNodeID_globalGNB_ID - template (value) Range m_range(in Range p_value := m50) := p_value; + template (present) GlobalRANNodeID mw_globalRANNodeID_globalNgENB_ID( + template (present) GlobalNgENB_ID p_globalNgENB_ID := ? + ) := { + globalNgENB_ID := p_globalNgENB_ID + } // End of template mw_globalRANNodeID_globalNgENB_ID - template (omit) RANStatusTransfer_TransparentContainer m_rANStatusTransfer_TransparentContainer( - in template (value) DRBsSubjectToStatusTransferList p_dRBsSubjectToStatusTransferList, - in template (omit) RANStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := omit - ) := { - dRBsSubjectToStatusTransferList := p_dRBsSubjectToStatusTransferList, - iE_Extensions := p_iE_Extensions - } // End of template m_rANStatusTransfer_TransparentContainer + template (present) GlobalRANNodeID mw_globalRANNodeID_globalN3IWF_ID( + template (present) GlobalN3IWF_ID p_globalN3IWF_ID := ? + ) := { + globalN3IWF_ID := p_globalN3IWF_ID + } // End of template mw_globalRANNodeID_globalN3IWF_ID - template (value) RAT_Information m_rAT_Information(in RAT_Information p_value := unlicensed) := p_value; + template (present) GlobalRANNodeID mw_globalRANNodeID_choice_Extensions( + template (present) GlobalRANNodeID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_globalRANNodeID_choice_Extensions - template (omit) RATRestrictions_Item m_rATRestrictions_Item( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) RATRestrictionInformation p_rATRestrictionInformation, - in template (omit) RATRestrictions_Item.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - rATRestrictionInformation := p_rATRestrictionInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_rATRestrictions_Item + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTNGF_ID( + template (present) GlobalTNGF_ID p_globalTNGF_ID := ? + ) := { + id := id_GlobalTNGF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTNGF_ID } + } // End of template mw_globalRANNodeID_id_GlobalTNGF_ID - template (value) RATRestrictions_Item.iE_Extensions m_rATRestrictions_Item_id_ExtendedRATRestrictionInformation( - in template (value) ExtendedRATRestrictionInformation p_extendedRATRestrictionInformation - ) := { - { - id := id_ExtendedRATRestrictionInformation, - criticality := ignore, - extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } - } - } // End of template m_rATRestrictions_Item_id_ExtendedRATRestrictionInformation + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTWIF_ID( + template (present) GlobalTNGF_ID p_globalTWIF_ID := ? + ) := { + id := id_GlobalTWIF_ID, + criticality := reject, + value_ := { GlobalTNGF_ID := p_globalTWIF_ID } + } // End of template mw_globalRANNodeID_id_GlobalTWIF_ID - template (omit) RecommendedCellsForPaging m_recommendedCellsForPaging( - in template (value) RecommendedCellList p_recommendedCellList, - in template (omit) RecommendedCellsForPaging.iE_Extensions p_iE_Extensions := omit - ) := { - recommendedCellList := p_recommendedCellList, - iE_Extensions := p_iE_Extensions - } // End of template m_recommendedCellsForPaging - - template (omit) RecommendedCellItem m_recommendedCellItem( - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (omit) RecommendedCellItem.timeStayedInCell p_timeStayedInCell := omit, - in template (omit) RecommendedCellItem.iE_Extensions p_iE_Extensions := omit - ) := { - nGRAN_CGI := p_nGRAN_CGI, - timeStayedInCell := p_timeStayedInCell, - iE_Extensions := p_iE_Extensions - } // End of template m_recommendedCellItem - - template (omit) RecommendedRANNodesForPaging m_recommendedRANNodesForPaging( - in template (value) RecommendedRANNodeList p_recommendedRANNodeList, - in template (omit) RecommendedRANNodesForPaging.iE_Extensions p_iE_Extensions := omit - ) := { - recommendedRANNodeList := p_recommendedRANNodeList, - iE_Extensions := p_iE_Extensions - } // End of template m_recommendedRANNodesForPaging + template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalW_AGF_ID( + template (present) GlobalW_AGF_ID p_globalW_AGF_ID := ? + ) := { + id := id_GlobalW_AGF_ID, + criticality := reject, + value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } + } // End of template mw_globalRANNodeID_id_GlobalW_AGF_ID + + template (present) GlobalTNGF_ID mw_globalTNGF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TNGF_ID p_tNGF_ID := ?, + template GlobalTNGF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tNGF_ID := p_tNGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalTNGF_ID + + template (present) GlobalTWIF_ID mw_globalTWIF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TWIF_ID p_tWIF_ID := ?, + template GlobalTWIF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tWIF_ID := p_tWIF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_globalTWIF_ID + + template (present) GlobalW_AGF_ID mw_GlobalW_AGF_ID( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) W_AGF_ID p_w_AGF_ID := ?, + template GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + w_AGF_ID := p_w_AGF_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_GlobalW_AGF_ID + + template (present) GNB_ID mw_gNB_ID_gNB_ID( + template (present) GNB_ID.gNB_ID p_gNB_ID := ? + ) := { + gNB_ID := p_gNB_ID + } // End of template mw_gNB_ID_gNB_ID - template (omit) RecommendedRANNodeItem m_recommendedRANNodeItem( - in template (value) AMFPagingTarget p_aMFPagingTarget, - in template (omit) RecommendedRANNodeItem.iE_Extensions p_iE_Extensions := omit + template (present) GNB_ID mw_gNB_ID_choice_Extensions( + template (present) GNB_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_gNB_ID_choice_Extensions + + template (present) GTPTunnel mw_gTPTunnel( + in template (present) TransportLayerAddress p_tla := ?, + in template (present) GTP_TEID p_gtp_teid := ?, + in template GTPTunnel.iE_Extensions p_iE_Extensions := * + ):= { + transportLayerAddress := p_tla, + gTP_TEID := p_gtp_teid, + iE_Extensions := p_iE_Extensions + } // End of template mw_gTPTunnel + + template (present) GUAMI mw_gUAMI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) AMFRegionID p_aMFRegionID := ?, + template (present) AMFSetID p_aMFSetID := ?, + template (present) AMFPointer p_aMFPointer := ?, + template GUAMI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + aMFRegionID := p_aMFRegionID, + aMFSetID := p_aMFSetID, + aMFPointer := p_aMFPointer, + iE_Extensions := p_iE_Extensions + } // End of template mw_gUAMI + + template (present) GUAMIType mw_gUAMIType(template (present) GUAMIType p_val := ?) := p_val; + + template HandoverCommandTransfer mw_handoverCommandTransfer( + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template QosFlowToBeForwardedList p_qosFlowToBeForwardedList := *, + template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, + template HandoverCommandTransfer.iE_Extensions p_iE_Extensions := * ) := { - aMFPagingTarget := p_aMFPagingTarget, - iE_Extensions := p_iE_Extensions - } // End of template m_recommendedRANNodeItem + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverCommandTransfer + + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalDLForwardingUPTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation + + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation + + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation - template (value) RedCapIndication m_redCapIndication(in RedCapIndication p_value := redcap) := p_value; + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_DataForwardingResponseERABList( + template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template mw_handoverCommandTransfer_id_DataForwardingResponseERABList - template (value) RedirectionVoiceFallback m_redirectionVoiceFallback(in RedirectionVoiceFallback p_value := possible) := p_value; + template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_QosFlowFailedToSetupList( + template (present) QosFlowListWithCause p_qosFlowListWithCause := ? + ) := { + { + id := id_QosFlowFailedToSetupList, + criticality := ignore, + extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template mwhandoverCommandTransfer_id_QosFlowFailedToSetupList - template (omit) RedundantPDUSessionInformation m_redundantPDUSessionInformation( - in template (value) RSN p_rSN, - in template (omit) RedundantPDUSessionInformation.iE_Extensions p_iE_Extensions := omit - ) := { - rSN := p_rSN, - iE_Extensions := p_iE_Extensions - } // End of template m_redundantPDUSessionInformation - - template (value) RedundantPDUSessionInformation.iE_Extensions m_redundantPDUSessionInformation_id_PDUSessionPairID( - in template (value) PDUSessionPairID p_pDUSessionPairID - ) := { - { - id := id_PDUSessionPairID, - criticality := ignore, - extensionValue := { PDUSessionPairID := p_pDUSessionPairID } - } - } // End of template m_redundantPDUSessionInformation_id_PDUSessionPairID + template (present) HandoverFlag mw_handoverFlag(template (present) HandoverFlag p_val := handover_preparation) := p_val; - template (value) RedundantQosFlowIndicator m_RedundantQosFlowIndicator(in RedundantQosFlowIndicator p_value := true_) := p_value; + template (present) HandoverPreparationUnsuccessfulTransfer mw_mandoverPreparationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mandoverPreparationUnsuccessfulTransfer + + template (present) HandoverRequestAcknowledgeTransfer mw_handoverRequestAcknowledgeTransfer( + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template (present) QosFlowListWithDataForwarding p_qosFlowSetupResponseList := ?, + template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, + template SecurityResult p_securityResult := *, + template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, + template HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, + securityResult := p_securityResult, + qosFlowSetupResponseList := p_qosFlowSetupResponseList, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverRequestAcknowledgeTransfer + + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( + template (present) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList := ? + ) := { + { + id := id_AdditionalDLUPTNLInformationForHOList, + criticality := reject, + extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList - template (value) ReflectiveQosAttribute m_reflectiveQosAttribute(in ReflectiveQosAttribute p_value := subject_to) := p_value; + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_ULForwardingUP_TNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation - template (value) ReportArea m_reportArea(in ReportArea p_value := cell) := p_value; + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalULForwardingUPTNLInformation, + criticality := reject, + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation - template (value) ResetAll m_resetAll(in ResetAll p_value := reset_all) := p_value; + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( + template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? + ) := { + { + id := id_DataForwardingResponseERABList, + criticality := ignore, + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList - template (value) ReportAmountMDT m_reportAmountMDT(in ReportAmountMDT p_value := r1) := p_value; + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation - template (value) ReportIntervalMDT m_reportIntervalMDT(in ReportIntervalMDT p_value := ms120) := p_value; + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation - template (value) ExtendedReportIntervalMDT m_extendedReportIntervalMDT(in ExtendedReportIntervalMDT p_value := ms20480) := p_value; + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID - template (value) ResetType m_resetType_nG_Interface( - in template (value) ResetAll p_nG_Interface - ) := { - nG_Interface := p_nG_Interface - } // End of template m_resetType_nG_Interface + template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator - template (value) ResetType m_resetType_partOfNG_Interface( - in template (value) UE_associatedLogicalNG_connectionList p_partOfNG_Interface - ) := { - partOfNG_Interface := p_partOfNG_Interface - } // End of template m_resetType_partOfNG_Interface + template HandoverRequiredTransfer mw_handoverRequiredTransfer( + template DirectForwardingPathAvailability p_directForwardingPathAvailability := *, + template HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := * + ) := { + directForwardingPathAvailability := p_directForwardingPathAvailability, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverRequiredTransfer + + template (present) HandoverResourceAllocationUnsuccessfulTransfer mw_handoverResourceAllocationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_handoverResourceAllocationUnsuccessfulTransfer - template (value) ResetType m_resetType_choice_Extensions( - in template (value) ResetType.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_resetType_choice_Extensions + template (present) HandoverType mw_handoverType(template (present) HandoverType p_value := ?) := p_value; - template (value) RRCEstablishmentCause m_rRCEstablishmentCause(in RRCEstablishmentCause p_value := emergency) := p_value; + template (present) HFCNode_ID_new mw_hFCNode_ID_new( + template (present) HFCNode_ID p_hFCNode_ID := ?, + template (present) TAI p_tAI := ?, + template HFCNode_ID_new.iE_Extensions p_iE_Extensions := * + ) := { + hFCNode_ID := p_hFCNode_ID, + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_hFCNode_ID_new + + template (present) HOReport mw_hOReport( + template (present) HOReport.handoverReportType p_handoverReportType := ?, + template (present) Cause p_handoverCause := ?, + template (present) NGRAN_CGI p_sourcecellCGI := ?, + template (present) NGRAN_CGI p_targetcellCGI := ?, + template NGRAN_CGI p_reestablishmentcellCGI := ?, + template Bit16 p_sourcecellC_RNTI := *, + template EUTRA_CGI p_targetcellinE_UTRAN := *, + template MobilityInformation p_mobilityInformation := *, + template UERLFReportContainer p_uERLFReportContainer := *, + template HOReport.iE_Extensions p_iE_Extensions := * + ) := { + handoverReportType := p_handoverReportType, + handoverCause := p_handoverCause, + sourcecellCGI := p_sourcecellCGI, + targetcellCGI := p_targetcellCGI, + reestablishmentcellCGI := p_reestablishmentcellCGI, + // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" + sourcecellC_RNTI := p_sourcecellC_RNTI, + targetcellinE_UTRAN := p_targetcellinE_UTRAN, + // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" + mobilityInformation := p_mobilityInformation, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_hOReport + + template (present) IAB_Authorized mw_iAB_Authorized(template (present) IAB_Authorized p_value := ?) := p_value; + + template (present) IAB_Supported mw_iAB_Supported(template (present) IAB_Supported p_value := true_) := p_value; + + template (present) IABNodeIndication mw_iABNodeIndication(template (present) IABNodeIndication p_value := true_) := p_value; + + template (present) IMSVoiceSupportIndicator mw_iMSVoiceSupportIndicator(template (present) IMSVoiceSupportIndicator p_value := ?) := p_value; + + template (present) InfoOnRecommendedCellsAndRANNodesForPaging mw_infoOnRecommendedCellsAndRANNodesForPaging( + template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, + template (present) RecommendedRANNodesForPaging p_recommendRANNodesForPaging := ?, + template InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellsForPaging := p_recommendedCellsForPaging, + recommendRANNodesForPaging := p_recommendRANNodesForPaging, + iE_Extensions := p_iE_Extensions + } // End of template mw_infoOnRecommendedCellsAndRANNodesForPaging + + template (present) IntegrityProtectionIndication mw_integrityProtectionIndication(template (present) IntegrityProtectionIndication p_value := ?) := p_value; + + template (present) IntegrityProtectionResult mw_integrityProtectionResult(template (present) IntegrityProtectionResult p_value := ?) := p_value; + + template (present) ImmediateMDTNr mw_immediateMDTNr( + template (present) MeasurementsToActivate p_measurementsToActivate := ?, + template M1Configuration p_m1Configuration := *, + template M4Configuration p_m4Configuration := *, + template M5Configuration p_m5Configuration := *, + template M6Configuration p_m6Configuration := *, + template M7Configuration p_m7Configuration := *, + template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, + template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, + template MDT_Location_Info p_mDT_Location_Info := *, + template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, + template ImmediateMDTNr.iE_Extensions p_iE_Extensions := * + ) := { + measurementsToActivate := p_measurementsToActivate, + m1Configuration := p_m1Configuration, + // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” + m4Configuration := p_m4Configuration, + // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” + m5Configuration := p_m5Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” + m6Configuration := p_m6Configuration, + // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” + m7Configuration := p_m7Configuration, + // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + mDT_Location_Info := p_mDT_Location_Info, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + iE_Extensions := p_iE_Extensions + } // End of template mw_immediateMDTNr + + template InterSystemFailureIndication mw_interSystemFailureIndication( + template UERLFReportContainer p_uERLFReportContainer := *, + template InterSystemFailureIndication.iE_Extensions p_iE_Extensions := * + ) := { + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_interSystemFailureIndication + + template (present) IntersystemSONConfigurationTransfer mw_intersystemSONConfigurationTransfer( + template (present) IntersystemSONTransferType p_transferType := ?, + template (present) IntersystemSONInformation p_intersystemSONInformation := ?, + template IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + transferType := p_transferType, + intersystemSONInformation := p_intersystemSONInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONConfigurationTransfer - template (value) RRCInactiveTransitionReportRequest m_rRCInactiveTransitionReportRequest(in RRCInactiveTransitionReportRequest p_value := subsequent_state_transition_report) := p_value; + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromEUTRANtoNGRAN( + template (present) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN := ? + ) := { + fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN + } // End of template mw_intersystemSONTransferType_fromEUTRANtoNGRAN - template (value) RRCState m_rRCState(in RRCState p_value := inactive) := p_value; + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromNGRANtoEUTRAN( + template (present) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN := ? + ) := { + fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN + } // End of template mw_intersystemSONTransferType_fromNGRANtoEUTRAN - template (value) RSN m_rSN(in RSN p_value := v1) := p_value; + template (present) IntersystemSONTransferType mw_intersystemSONTransferType_choice_Extensions( + template (present) IntersystemSONTransferType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONTransferType_choice_Extensions - template (omit) RIMInformationTransfer m_rIMInformationTransfer( - in template (value) TargetRANNodeID_RIM p_targetRANNodeID_RIM, - in template (value) SourceRANNodeID p_sourceRANNodeID, - in template (value) RIMInformation p_rIMInformation, - in template (omit) RIMInformationTransfer.iE_Extensions p_iE_Extensions := omit + template (present) IntersystemSONeNBID mw_intersystemSONeNBID( + template (present) GlobalENB_ID p_globaleNBID := ?, + template (present) EPS_TAI p_selectedEPSTAI := ?, + template IntersystemSONeNBID.iE_Extensions p_iE_Extensions := * ) := { - targetRANNodeID_RIM := p_targetRANNodeID_RIM, - sourceRANNodeID := p_sourceRANNodeID, - rIMInformation := p_rIMInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_rIMInformationTransfer - - template (omit) RIMInformation m_rIMInformation( - in template (value) GNBSetID p_targetgNBSetID, - in template (value) RIMInformation.rIM_RSDetection p_rIM_RSDetection := rs_detected, - in template (omit) RIMInformation.iE_Extensions p_iE_Extensions := omit - ) := { - targetgNBSetID := p_targetgNBSetID, - rIM_RSDetection := p_rIM_RSDetection, - iE_Extensions := p_iE_Extensions - } // End of template m_rIMInformation - - template (omit) ScheduledCommunicationTime m_scheduledCommunicationTime( - in template (omit) ScheduledCommunicationTime.dayofWeek p_dayofWeek := omit, - in template (omit) ScheduledCommunicationTime.timeofDayStart p_timeofDayStart := omit, - in template (omit) ScheduledCommunicationTime.timeofDayEnd p_timeofDayEnd := omit, - in template (omit) ScheduledCommunicationTime.iE_Extensions p_iE_Extensions := omit - ) := { - dayofWeek := p_dayofWeek, - timeofDayStart := p_timeofDayStart, - timeofDayEnd := p_timeofDayEnd, - iE_Extensions := p_iE_Extensions - } // End of template m_scheduledCommunicationTime - - template (omit) SecondaryRATUsageInformation m_secondaryRATUsageInformation( - in template (omit) PDUSessionUsageReport p_pDUSessionUsageReport := omit, - in template (omit) QoSFlowsUsageReportList p_qosFlowsUsageReportList := omit, - in template (omit) SecondaryRATUsageInformation.iE_Extension p_iE_Extensions := omit + globaleNBID := p_globaleNBID, + selectedEPSTAI := p_selectedEPSTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONeNBID + + template (present) IntersystemSONNGRANnodeID mw_intersystemSONNGRANnodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := * ) := { - pDUSessionUsageReport := p_pDUSessionUsageReport, - qosFlowsUsageReportList := p_qosFlowsUsageReportList, - iE_Extension := p_iE_Extensions - } // End of template m_secondaryRATUsageInformation - - template (omit) SecondaryRATDataUsageReportTransfer m_secondaryRATDataUsageReportTransfer( - in template (omit) SecondaryRATUsageInformation p_secondaryRATUsageInformation := omit, - in template (omit) SecondaryRATDataUsageReportTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - secondaryRATUsageInformation := p_secondaryRATUsageInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_secondaryRATDataUsageReportTransfer - - template (omit) SecurityContext m_securityContext( - in template (value) NextHopChainingCount p_nextHopChainingCount, - in template (value) SecurityKey p_nextHopNH, - in template (omit) SecurityContext.iE_Extensions p_iE_Extensions := omit - ) := { - nextHopChainingCount := p_nextHopChainingCount, - nextHopNH := p_nextHopNH, - iE_Extensions := p_iE_Extensions - } // End of template m_securityContext - - template (omit) SecurityIndication m_securityIndication( - in template (value) IntegrityProtectionIndication p_integrityProtectionIndication, - in template (value) ConfidentialityProtectionIndication p_confidentialityProtectionIndication, - in template (omit) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate_UL := omit, - in template (omit) SecurityIndication.iE_Extensions p_iE_Extensions := omit - ) := { - integrityProtectionIndication := p_integrityProtectionIndication, - confidentialityProtectionIndication := p_confidentialityProtectionIndication, - maximumIntegrityProtectedDataRate_UL := p_maximumIntegrityProtectedDataRate_UL, - // The above IE shall be present if integrity protection is required or preferred - iE_Extensions := p_iE_Extensions - } // End of template m_securityIndication - - template (value) SecurityIndication.iE_Extensions m_securityIndication_id_MaximumIntegrityProtectedDataRate_DL( - in template (value) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate - ) := { - { - id := id_MaximumIntegrityProtectedDataRate_DL, - criticality := ignore, - extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } - } - } // End of template m_securityIndication_id_MaximumIntegrityProtectedDataRate_DL + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemSONNGRANnodeID - template (omit) SecurityResult m_securityResult( - in template (value) IntegrityProtectionResult p_integrityProtectionResult, - in template (value) ConfidentialityProtectionResult p_confidentialityProtectionResult, - in template (omit) SecurityResult.iE_Extensions p_iE_Extensions := omit - ) := { - integrityProtectionResult := p_integrityProtectionResult, - confidentialityProtectionResult := p_confidentialityProtectionResult, - iE_Extensions := p_iE_Extensions - } // End of template m_securityResult - - template (omit) SensorMeasurementConfiguration m_sensorMeasurementConfiguration( - in template (value) SensorMeasConfig p_sensorMeasConfig, - in template (omit) SensorMeasConfigNameList p_sensorMeasConfigNameList := omit, - in template (omit) SensorMeasurementConfiguration.iE_Extensions p_iE_Extensions := omit - ) := { - sensorMeasConfig := p_sensorMeasConfig, - sensorMeasConfigNameList := p_sensorMeasConfigNameList, - iE_Extensions := p_iE_Extensions - } // End of template m_sensorMeasurementConfiguration - - template (omit) SensorMeasConfigNameItem m_sensorMeasConfigNameItem( - in template (value) SensorNameConfig p_sensorNameConfig, - in template (omit) SensorMeasConfigNameItem.iE_Extensions p_iE_Extensions := omit - ) := { - sensorNameConfig := p_sensorNameConfig, - iE_Extensions := p_iE_Extensions - } // End of template m_sensorMeasConfigNameItem + template (present) IntersystemSONInformation mw_intersystemSONInformation_intersystemSONInformationReport( + in template (present) IntersystemSONInformationReport p_intersystemSONInformationReport := ? + ) := { + intersystemSONInformationReport := p_intersystemSONInformationReport + } // End of template mw_intersystemSONInformation_intersystemSONInformationReport - template (value) SensorMeasConfig m_sensorMeasConfig(in SensorMeasConfig p_value := setup) := p_value; + template (present) IntersystemSONInformation mw_intersystemSONInformation_choice_Extensions( + template (present) IntersystemSONInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformation_choice_Extensions - template (value) SensorNameConfig m_sensorNameConfig_uncompensatedBarometricConfig( - in template (value) SensorNameConfig.uncompensatedBarometricConfig p_uncompensatedBarometricConfig := true_ - ) := { - uncompensatedBarometricConfig := p_uncompensatedBarometricConfig - } // End of template m_sensorNameConfig_uncompensatedBarometricConfig + template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationRequest( + template (present) IntersystemSONInformationRequest p_intersystemSONInformationRequest := ? + ) := { + id := id_IntersystemSONInformationRequest, + criticality := ignore, + value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } + } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationRequest - template (value) SensorNameConfig m_sensorNameConfig_ueSpeedConfig( - in template (value) SensorNameConfig.ueSpeedConfig p_ueSpeedConfig := true_ - ) := { - ueSpeedConfig := p_ueSpeedConfig - } // End of template m_sensorNameConfig_ueSpeedConfig + template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationReply( + template (present) IntersystemSONInformationReply p_intersystemSONInformationReply := ? + ) := { + id := id_IntersystemSONInformationReply, + criticality := ignore, + value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } + } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationReply - template (value) SensorNameConfig m_sensorNameConfig_ueOrientationConfig( - in template (value) SensorNameConfig.ueOrientationConfig p_ueOrientationConfig := true_ - ) := { - ueOrientationConfig := p_ueOrientationConfig - } // End of template m_sensorNameConfig_ueOrientationConfig + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_nGRAN_CellActivation( + template (present) IntersystemCellActivationRequest p_nGRAN_CellActivation := ? + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template mw_intersystemSONInformationRequest_nGRAN_CellActivation - template (value) SensorNameConfig m_sensorNameConfig_choice_Extensions( - in template (value) SensorNameConfig.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_sensorNameConfig_choice_Extensions - - template (omit) ServedGUAMIItem m_servedGUAMIItem( - in template (value) GUAMI p_gUAMI, - in template (omit) AMFName p_backupAMFName := omit, - in template (omit) ServedGUAMIItem.iE_Extensions p_iE_Extensions := omit - ) := { - gUAMI := p_gUAMI, - backupAMFName := p_backupAMFName, - iE_Extensions := p_iE_Extensions - } // End of template m_servedGUAMIItem - - template (value) ServedGUAMIItem.iE_Extensions m_servedGUAMIItem_id_GUAMIType( - in template (value) GUAMIType p_gUAMIType - ) := { - { - id := id_GUAMIType, - criticality := ignore, - extensionValue := { GUAMIType := p_gUAMIType } - } - } // End of template m_servedGUAMIItem_id_GUAMIType + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_resourceStatus( + template (present) IntersystemResourceStatusRequest p_resourceStatus := ? + ) := { + resourceStatus := p_resourceStatus + } // End of template mw_intersystemSONInformationRequest_resourceStatus + + template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_choice_Extensions( + template (present) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationRequest_choice_Extensions + + template (present) IntersystemCellActivationRequest mw_intersystemCellActivationRequest( + template (present) IntersystemCellActivationRequest.activationID p_activationID := ?, + template (present) CellsToActivateList p_cellsToActivateList := ?, + template IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := * + ) := { + activationID := p_activationID, + cellsToActivateList := p_cellsToActivateList, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemCellActivationRequest + + template (present) IntersystemResourceStatusRequest mw_intersystemResourceStatusRequest( + template (present) ReportingSystem p_reportingSystem := ?, + template (present) ReportCharacteristics p_reportCharacteristics := ?, + template (present) ReportType p_reportType := ?, + template IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := * + ) := { + reportingSystem := p_reportingSystem, + reportCharacteristics := p_reportCharacteristics, + reportType := p_reportType, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusRequest + + template (present) ReportingSystem mw_reportingSystem_eUTRAN( + template (present) EUTRAN_ReportingSystemIEs p_eUTRAN := ? + ) := { + eUTRAN := p_eUTRAN + } // End of template mw_reportingSystem_eUTRAN + + template (present) ReportingSystem mw_reportingSystem_nGRAN( + template (present) NGRAN_ReportingSystemIEs p_nGRAN := ? + ) := { + nGRAN := p_nGRAN + } // End of template mw_reportingSystem_nGRAN - template (omit) ServiceAreaInformation_Item m_serviceAreaInformation_Item( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (omit) AllowedTACs p_allowedTACs := omit, - in template (omit) NotAllowedTACs p_notAllowedTACs := omit, - in template (omit) ServiceAreaInformation_Item.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - allowedTACs := p_allowedTACs, - notAllowedTACs := p_notAllowedTACs, - iE_Extensions := p_iE_Extensions - } // End of template m_serviceAreaInformation_Item - - template (value) ServiceType m_serviceType(in ServiceType p_value := streaming) := p_value; - - template (omit) SharedNGU_MulticastTNLInformation m_sharedNGU_MulticastTNLInformation( - in template (value) TransportLayerAddress p_iP_MulticastAddress := PX_MC_TRANSPORT_LAYER_ADDRESS, - in template (value) TransportLayerAddress p_iP_SourceAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS, - in template (value) GTP_TEID p_gTP_TEID := PX_GTP_TEID, - in template (omit) SharedNGU_MulticastTNLInformation.iE_Extensions p_iE_Extensions := omit - ) := { - iP_MulticastAddress := p_iP_MulticastAddress, - iP_SourceAddress := p_iP_SourceAddress, - gTP_TEID := p_gTP_TEID, - iE_Extensions := p_iE_Extensions - } // End of template m_sharedNGU_MulticastTNLInformation - - template (omit) SliceOverloadItem m_sliceOverloadItem( - in template (value) S_NSSAI p_s_NSSAI, - in template (omit) SliceOverloadItem.iE_Extensions p_iE_Extensions := omit - ) := { - s_NSSAI := p_s_NSSAI, - iE_Extensions := p_iE_Extensions - } // End of template m_sliceOverloadItem - - template (omit) SliceSupportItem m_sliceSupportItem( - in template (value) S_NSSAI p_s_NSSAI, - in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit - ) := { - s_NSSAI := p_s_NSSAI, - iE_Extensions := p_iE_Extensions - } // End of template m_sliceSupportItem + template (present) ReportingSystem mw_reportingSystem_choice_Extensions( + template (present) ReportingSystem.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_reportingSystem_choice_Extensions - template (omit) SliceSupportQMC_Item m_sliceSupportQMC_Item( - in template (value) S_NSSAI p_s_NSSAI, - in template (omit) SliceSupportQMC_Item.iE_Extensions p_iE_Extensions := omit - ) := { - s_NSSAI := p_s_NSSAI, - iE_Extensions := p_iE_Extensions - } // End of template m_sliceSupportQMC_Item + template (present) EUTRAN_ReportingSystemIEs mw_eUTRAN_ReportingSystemIEs( + template (present) EUTRAN_CellToReportList p_eUTRAN_CellToReportList := ?, + template EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * + ) := { + eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingSystemIEs - template (omit) SNPN_MobilityInformation m_sNPN_MobilityInformation( - in template (value) NID p_serving_NID, - in template (omit) SNPN_MobilityInformation.iE_Extensions p_iE_Extensions := omit - ) := { - serving_NID := p_serving_NID, - iE_Extensions := p_iE_Extensions - } // End of template m_sNPN_MobilityInformation - - template (omit) S_NSSAI m_s_NSSAI( - in template (value) SST p_sST := PX_SST, - in template (omit) SD p_sD := omit, - in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit - ) := { - sST := p_sST, - sD := p_sD, - iE_Extensions := p_iE_Extensions - } // End of template m_s_NSSAI - - template (omit) SONConfigurationTransfer m_sONConfigurationTransfer( - in template (value) TargetRANNodeID_SON p_targetRANNodeID_SON, - in template (value) SourceRANNodeID p_sourceRANNodeID, - in template (value) SONInformation p_sONInformation, - in template (omit) XnTNLConfigurationInfo p_xnTNLConfigurationInfo := omit, - in template (omit) SONConfigurationTransfer.iE_Extensions p_iE_Extensions := omit + template (present) NGRAN_ReportingSystemIEs mw_nGRAN_ReportingSystemIEs( + template (present) NGRAN_CellToReportList p_nGRAN_CellToReportList := ?, + template NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CellToReportList := p_nGRAN_CellToReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_ReportingSystemIEs + + template (present) EUTRAN_CellToReportItem mw_eUTRAN_CellToReportItem( + template (present) EUTRA_CGI p_eCGI := ?, + template EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * + ) := { + eCGI := p_eCGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_CellToReportItem + + template (present) NGRAN_CellToReportItem mw_nGRAN_CellToReportItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * + ):= { + nGRAN_CGI := p_nGRAN_CGI, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_CellToReportItem + + template (present) ReportType mw_reportType_eventBasedReporting( + template (present) EventBasedReportingIEs p_eventBasedReporting := ? ) := { - targetRANNodeID_SON := p_targetRANNodeID_SON, - sourceRANNodeID := p_sourceRANNodeID, - sONInformation := p_sONInformation, - xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, - // The above IE shall be present if the SON Information IE contains the SON Information Request IE set to “Xn TNL Configuration Info” - iE_Extensions := p_iE_Extensions - } // End of template m_sONConfigurationTransfer - - template (value) SONInformation m_sONInformation_sONInformationRequest( - in template (value) SONInformationRequest p_sONInformationRequest - ) := { - sONInformationRequest := p_sONInformationRequest - } // End of template m_sONInformation_sONInformationRequest + eventBasedReporting := p_eventBasedReporting + } // End of template mw_reportType_eventBasedReporting - template (value) SONInformation m_sONInformation_sONInformationReply( - in template (value) SONInformationReply p_sONInformationReply - ) := { - sONInformationReply := p_sONInformationReply - } // End of template m_sONInformation_sONInformationReply + template (present) ReportType mw_reportType_periodicReporting( + template (present) PeriodicReportingIEs p_periodicReporting := ? + ) := { + periodicReporting := p_periodicReporting + } // End of template mw_reportType_periodicReporting - template (value) SONInformation m_sONInformation_choice_Extensions( - in template (value) SONInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_sONInformation_choice_Extensions + template (present) ReportType mw_reportType_choice_Extensions( + template (present) ReportType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_reportType_choice_Extensions - template (value) SONInformation.choice_Extensions m_sONInformatio_id_SONInformationReport( - in template (value) SONInformationReport p_sONInformationReport - ) := { - id := id_SONInformationReport, - criticality := ignore, - value_ := { SONInformationReport := p_sONInformationReport } - } // End of template m_sONInformatio_id_SONInformationReport - - template (omit) SONInformationReply m_sONInformationReply( - in template (omit) XnTNLConfigurationInfo p_xnTNLConfigurationInfo := omit, - in template (omit) SONInformationReply.iE_Extensions p_iE_Extensions := omit - ) := { - xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, - iE_Extensions := p_iE_Extensions - } // End of template m_sONInformationReply - - template (value) SONInformationReport m_sONInformationReport_failureIndicationInformation( - in template (value) FailureIndication p_failureIndicationInformation - ) := { - failureIndicationInformation := p_failureIndicationInformation - } // End of template m_sONInformationReport_failureIndicationInformation + template (present) NumberOfMeasurementReportingLevels mw_numberOfMeasurementReportingLevels(template (present) NumberOfMeasurementReportingLevels p_value := ?) := p_value; - template (value) SONInformationReport m_sONInformationReport_hOReportInformation( - in template (value) HOReport p_hOReportInformation - ) := { - hOReportInformation := p_hOReportInformation - } // End of template m_sONInformationReport_hOReportInformation + template (present) PeriodicReportingIEs mw_PeriodicReportingIEs( + template (present) ReportingPeriodicity p_reportingPeriodicity := ?, + template PeriodicReportingIEs.iE_Extensions p_iE_Extensions := * + ) := { + reportingPeriodicity := p_reportingPeriodicity, + iE_Extensions := p_iE_Extensions + } // End of template mw_PeriodicReportingIEs - template (value) SONInformationReport m_sONInformationReport_choice_Extensions( - in template (value) SONInformationReport.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_sONInformationReport_choice_Extensions - - template (value) SONInformationReport.choice_Extensions m_sONInformationReport_id_SONInformationReport( - in template (value) SuccessfulHandoverReportList p_successfulHandoverReportList - ) := { - id := id_SONInformationReport, - criticality := ignore, - value_ := { SuccessfulHandoverReportList := p_successfulHandoverReportList } - } // End of template m_sONInformationReport_id_SONInformationReport - - template (omit) SuccessfulHandoverReport_Item m_successfulHandoverReport_Item( - in template (value) octetstring p_successfulHOReportContainer, - in template (omit) SuccessfulHandoverReport_Item.iE_Extensions p_iE_Extensions := omit - ) := { - successfulHOReportContainer := p_successfulHOReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template m_successfulHandoverReport_Item - - template (value) SONInformationRequest m_sONInformationRequest(in SONInformationRequest p_value := xn_TNL_configuration_info) := p_value; - - template (omit) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer( - in template (value) NGRAN_CGI p_targetCell_ID, - in template (value) RRCContainer p_rRCContainer, - in template (value) UEHistoryInformation p_uEHistoryInformation, - in template (omit) PDUSessionResourceInformationList p_pDUSessionResourceInformationList := omit, - in template (omit) E_RABInformationList p_e_RABInformationList := omit, - in template (omit) IndexToRFSP p_indexToRFSP := omit, - in template (omit) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := omit - ):= { - rRCContainer := p_rRCContainer, - pDUSessionResourceInformationList := p_pDUSessionResourceInformationList, - e_RABInformationList := p_e_RABInformationList, - targetCell_ID := p_targetCell_ID, - indexToRFSP := p_indexToRFSP, - uEHistoryInformation := p_uEHistoryInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer - - template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID( - in template (value) SgNB_UE_X2AP_ID p_sgNB_UE_X2AP_ID - ) := { - { - id := id_SgNB_UE_X2AP_ID, - criticality := ignore, - extensionValue := { SgNB_UE_X2AP_ID := p_sgNB_UE_X2AP_ID } - } - } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID + template (present) ReportingPeriodicity mw_reportingPeriodicity(template (present) ReportingPeriodicity p_value := ?) := p_value; - template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE( - in template (value) UEHistoryInformationFromTheUE p_uEHistoryInformationFromTheUE - ) := { - { - id := id_UEHistoryInformationFromTheUE, - criticality := ignore, - extensionValue := { UEHistoryInformationFromTheUE := p_uEHistoryInformationFromTheUE } - } - } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE - - template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID( - in template (value) SourceNodeID p_sourceNodeID - ) := { - { - id := id_SourceNodeID, - criticality := ignore, - extensionValue := { SourceNodeID := p_sourceNodeID } - } - } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID - - template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource( - in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := PX_RAN_UE_NGAP_ID - ) := { - { - id := id_UEContextReferenceAtSource, - criticality := ignore, - extensionValue := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } - } - } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource - - template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList( - in template (value) MBS_ActiveSessionInformation_SourcetoTargetList p_mBS_ActiveSessionInformation_SourcetoTargetListD - ) := { - { - id := id_MBS_ActiveSessionInformation_SourcetoTargetList, - criticality := ignore, - extensionValue := { MBS_ActiveSessionInformation_SourcetoTargetList := p_mBS_ActiveSessionInformation_SourcetoTargetListD } - } - } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_nGRAN_CellActivation( + template (present) IntersystemCellActivationReply p_nGRAN_CellActivation := ? + ) := { + nGRAN_CellActivation := p_nGRAN_CellActivation + } // End of template mw_intersystemSONInformationReply_nGRAN_CellActivation - template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo( - in template (value) QMCConfigInfo p_qMCConfigInfo - ) := { - { - id := id_QMCConfigInfo, - criticality := ignore, - extensionValue := { QMCConfigInfo := p_qMCConfigInfo } - } - } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo - - template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList( - in template (value) NGAPIESupportInformationRequestList p_nGAPIESupportInformationRequestList - ) := { - { - id := id_NGAPIESupportInformationRequestList, - criticality := ignore, - extensionValue := { NGAPIESupportInformationRequestList := p_nGAPIESupportInformationRequestList } - } - } // End of template m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_resourceStatus( + template (present) IntersystemResourceStatusReply p_resourceStatus := ? + ) := { + resourceStatus := p_resourceStatus + } // End of template mw_intersystemSONInformationReply_resourceStatus - template (value) SourceNodeID m_sourceNodeID_sourceengNB_ID( - in template (value) GlobalGNB_ID p_sourceengNB_ID - ) := { - sourceengNB_ID := p_sourceengNB_ID - } // End of template m_sourceNodeID_sourceengNB_ID - - template (value) SourceNodeID m_sourceNodeID_choice_Extensions( - in template (value) SourceNodeID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_sourceNodeID_choice_Extensions - - template (value) SourceOfUEActivityBehaviourInformation m_sourceOfUEActivityBehaviourInformation(in SourceOfUEActivityBehaviourInformation p_value := subscription_information) := p_value; - - template (omit) SourceRANNodeID m_sourceRANNodeID( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) TAI p_selectedTAI, - in template (omit) SourceRANNodeID.iE_Extensions p_iE_Extensions := omit - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template m_sourceRANNodeID - - // This IE includes a transparent container from the source RAN node to the target RAN node. - // The octets of the OCTET STRING are encoded according to the specifications of the target system. - - template (omit) SourceToTarget_AMFInformationReroute m_sourceToTarget_AMFInformationReroute( - in template (omit) ConfiguredNSSAI p_configuredNSSAI := omit, - in template (omit) RejectedNSSAIinPLMN p_rejectedNSSAIinPLMN := omit, - in template (omit) RejectedNSSAIinTA p_rejectedNSSAIinTA := omit, - in template (omit) SourceToTarget_AMFInformationReroute.iE_Extensions p_iE_Extensions := omit - ) := { - configuredNSSAI := p_configuredNSSAI, - rejectedNSSAIinPLMN := p_rejectedNSSAIinPLMN, - rejectedNSSAIinTA := p_rejectedNSSAIinTA, - iE_Extensions := p_iE_Extensions - } // End of template m_sourceToTarget_AMFInformationReroute - - // This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF. - // The octets of the OCTET STRING are encoded according to the specifications of the Core network. - - template (value) SRVCCOperationPossible m_sRVCCOperationPossible(in SRVCCOperationPossible p_value := possible) := p_value; - - template (omit) SupportedTAItem m_supportedTAItem( - in template (value) TAC p_tAC := PX_TAC, - in template (value) BroadcastPLMNList p_broadcastPLMNList, - in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit - ) := { - tAC := p_tAC, - broadcastPLMNList := p_broadcastPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template m_supportedTAItem - - template (value) SupportedTAItem.iE_Extensions m_supportedTAItem_id_ConfiguredTACIndication( - in template (value) ConfiguredTACIndication p_configuredTACIndication - ) := { - { - id := id_ConfiguredTACIndication, - criticality := ignore, - extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } - } - } // End of template m_supportedTAItem_id_ConfiguredTACIndication + template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_choice_Extensions( + template (present) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationReply_choice_Extensions - template (value) SupportedTAItem.iE_Extensions m_supportedTAItem_id_RAT_Information( - in template (value) RAT_Information p_rAT_Information - ) := { - { - id := id_RAT_Information, - criticality := reject, - extensionValue := { RAT_Information := p_rAT_Information } - } - } // End of template m_supportedTAItem_id_RAT_Information + template (present) IntersystemCellActivationReply mw_intersystemCellActivationReply( + template (present) ActivatedCellList p_activatedCellList := ?, + template (present) IntersystemCellActivationReply.activation_ID p_activation_ID := ?, + template IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := * + ) := { + activatedCellList := p_activatedCellList, + activation_ID := p_activation_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemCellActivationReply + + template (present) IntersystemResourceStatusReply mw_intersystemResourceStatusReply( + template (present) ReportingSystem p_reportingsystem := ?, + template IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := * + ) := { + reportingsystem := p_reportingsystem, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusReply - template (value) SuspendIndicator m_suspendIndicator(in SuspendIndicator p_value := true_) := p_value; + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_hOReportInformation( + template (present) InterSystemHOReport p_hOReportInformation := ? + ) := { + hOReportInformation := p_hOReportInformation + } // End of template mw_intersystemSONInformationReport_hOReportInformation - template (value) Suspend_Request_Indication m_suspend_Request_Indication(in Suspend_Request_Indication p_value := suspend_requested) := p_value; + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_failureIndicationInformation( + template (present) InterSystemFailureIndication p_failureIndicationInformation := ? + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template mw_intersystemSONInformationReport_failureIndicationInformation - template (value) Suspend_Response_Indication m_suspend_Response_Indication(in Suspend_Response_Indication p_value := suspend_indicated) := p_value; + template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_choice_Extensions( + template (present) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_intersystemSONInformationReport_choice_Extensions - template (omit) TAI m_tAI( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) TAC p_tAC := PX_TAC, - in template (omit) TAI.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNIdentity := p_pLMNIdentity, - tAC := p_tAC, - iE_Extensions := p_iE_Extensions - } // End of template m_tAI + template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_EnergySavingIndication( + template (present) IntersystemCellStateIndication p_intersystemCellStateIndication := ? + ) := { + id := id_EnergySavingIndication, + criticality := ignore, + value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } + } // End of template mw_intersystemSONInformationReport_id_EnergySavingIndication - template (omit) TAIBroadcastEUTRA_Item m_tAIBroadcastEUTRA_Item( - in template (value) TAI p_tAI, - in template (value) CompletedCellsInTAI_EUTRA p_completedCellsInTAI_EUTRA, - in template (omit) TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - tAI := p_tAI, - completedCellsInTAI_EUTRA := p_completedCellsInTAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template m_tAIBroadcastEUTRA_Item - - template (omit) TAIBroadcastNR_Item m_tAIBroadcastNR_Item( - in template (value) TAI p_tAI, - in template (value) CompletedCellsInTAI_NR p_completedCellsInTAI_NR, - in template (omit) TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - tAI := p_tAI, - completedCellsInTAI_NR := p_completedCellsInTAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template m_tAIBroadcastNR_Item - - template (omit) TAICancelledEUTRA_Item m_tAICancelledEUTRA_Item( - in template (value) TAI p_tAI, - in template (value) CancelledCellsInTAI_EUTRA p_cancelledCellsInTAI_EUTRA, - in template (omit) TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - tAI := p_tAI, - cancelledCellsInTAI_EUTRA := p_cancelledCellsInTAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template m_tAICancelledEUTRA_Item - - template (omit) TAICancelledNR_Item m_tAICancelledNR_Item( - in template (value) TAI p_tAI, - in template (value) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR, - in template (omit) TAICancelledNR_Item.iE_Extensions p_iE_Extensions := omit - ) := { - tAI := p_tAI, - cancelledCellsInTAI_NR := p_cancelledCellsInTAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template m_tAICancelledNR_Item - - template (omit) TAIListForInactiveItem m_tAIListForInactiveItem( - in template (value) TAI p_tAI, - in template (omit) TAIListForInactiveItem.iE_Extensions p_iE_Extensions := omit - ) := { - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template m_tAIListForInactiveItem + template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( + template (present) IntersystemResourceStatusReport p_intersystemResourceStatusReport := ? + ) := { + id := id_IntersystemResourceStatusUpdate, + criticality := ignore, + value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } + } // End of template mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate - template (omit) TAIListForPagingItem m_tAIListForPagingItem( - in template (value) TAI p_tAI, - in template (omit) TAIListForPagingItem.iE_Extensions p_iE_Extensions := omit - ) := { - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template m_tAIListForPagingItem - - template (omit) TAINSAGSupportItem m_tAINSAGSupportItem( - in template (value) NSAG_ID p_nSAG_ID, - in template (value) ExtendedSliceSupportList p_nSAGSliceSupportList, - in template (omit) TAINSAGSupportItem.iE_Extensions p_iE_Extensions := omit - ) := { - nSAG_ID := p_nSAG_ID, - nSAGSliceSupportList := p_nSAGSliceSupportList, - iE_Extensions := p_iE_Extensions - } // End of template m_tAINSAGSupportItem - - template (omit) TargeteNB_ID m_targeteNB_ID( - in template (value) GlobalNgENB_ID p_globalENB_ID, - in template (value) EPS_TAI p_selected_EPS_TAI, - in template (omit) TargeteNB_ID.iE_Extensions p_iE_Extensions := omit - ) := { - globalENB_ID := p_globalENB_ID, - selected_EPS_TAI := p_selected_EPS_TAI, - iE_Extensions := p_iE_Extensions - } // End of template m_targeteNB_ID - - template (omit) TargetHomeENB_ID m_targetHomeENB_ID( - in template (value) PLMNIdentity p_pLMNidentity, - in template (value) TargetHomeENB_ID.homeENB_ID p_homeENB_ID, - in template (value) EPS_TAI p_selected_EPS_TAI, - in template (omit) TargetHomeENB_ID.iE_Extensions p_iE_Extensions := omit - ) := { - pLMNidentity := p_pLMNidentity, - homeENB_ID := p_homeENB_ID, - selected_EPS_TAI := p_selected_EPS_TAI, - iE_Extensions := p_iE_Extensions - } // End of template m_targetHomeENB_ID - - template (value) TargetID m_targetID_targetRANNodeID( - in template (value) TargetRANNodeID p_targetRANNodeID - ) := { - targetRANNodeID := p_targetRANNodeID - } // End of template m_targetID_targetRANNodeID - - template (value) TargetID m_targetID_targeteNB_ID( - in template (value) TargeteNB_ID p_targeteNB_ID - ) := { - targeteNB_ID := p_targeteNB_ID - } // End of template m_targetID_targeteNB_ID - - template (value) TargetID m_targetID_choice_Extensions( - in template (value) TargetID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_targetID_choice_Extensions - - template (value) TargetID.choice_Extensions m_targetID_id_TargetRNC_ID( - in template (value) TargetRNC_ID p_targetRNC_ID - ) := { - id := id_TargetRNC_ID, - criticality := reject, - value_ := { TargetRNC_ID := p_targetRNC_ID } - } // End of template m_sONInformationReport_id_SONInformationReport + template (present) NotificationCell_Item mw_notificationCell_Item( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) NotificationCell_Item.notifyFlag p_notifyFlag := ?, + template NotificationCell_Item.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + notifyFlag := p_notifyFlag, + iE_Extensions := p_iE_Extensions + } // End of template mw_notificationCell_Item + + template (present) IntersystemResourceStatusReport mw_intersystemResourceStatusReport( + template (present) ResourceStatusReportingSystem p_reportingSystem := ?, + template IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := * + ) := { + reportingSystem := p_reportingSystem, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemResourceStatusReport - template (value) TargetID.choice_Extensions m_targetID_id_TargetHomeENB_ID( - in template (value) TargetHomeENB_ID p_targetHomeENB_ID - ) := { - id := id_TargetHomeENB_ID, - criticality := reject, - value_ := { TargetHomeENB_ID := p_targetHomeENB_ID } - } // End of template m_sONInformationReport_id_TargetHomeENB_ID - - template (omit) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer( - in template (value) RRCContainer p_rRCContainer, - in template (omit) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := omit - ) := { - rRCContainer := p_rRCContainer, - iE_Extensions := p_iE_Extensions - } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer - - template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList( - in template (value) DAPSResponseInfoList p_dAPSResponseInfoList - ) := { - { - id := id_ConfiguredTACIndication, - criticality := ignore, - extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } - } - } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList - - template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability( - in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability - ) := { - { - id := id_DirectForwardingPathAvailability, - criticality := ignore, - extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } - } - } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability - - template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList( - in template (value) MBS_ActiveSessionInformation_TargettoSourceList p_mBS_ActiveSessionInformation_TargettoSourceList - ) := { - { - id := id_MBS_ActiveSessionInformation_TargettoSourceList, - criticality := ignore, - extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } - } - } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList - - template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList( - in template (value) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList - ) := { - { - id := id_NGAPIESupportInformationResponseList, - criticality := ignore, - extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } - } - } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList - - template (omit) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer( - in template (omit) Cell_CAGInformation p_cell_CAGInformation := omit, - in template (omit) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions p_iE_Extensions := omit - ) := { - cell_CAGInformation := p_cell_CAGInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer - - template (value) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList( - in template (value) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList - ) := { - { - id := id_NGAPIESupportInformationResponseList, - criticality := ignore, - extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } - } - } // End of template m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( + template (present) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus := ? + ) := { + eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus + } // End of template mw_resourceStatusReportingSystem_eUTRAN_ReportingStatus - template (omit) TargetNSSAI_Item m_targetNSSAI_Item( - in template (value) S_NSSAI p_s_NSSAI, - in template (omit) TargetNSSAI_Item.iE_Extensions p_iE_Extensions := omit - ) := { - s_NSSAI := p_s_NSSAI, - iE_Extensions := p_iE_Extensions - } // End of template m_targetNSSAI_Item - - template (omit) TargetNSSAIInformation m_targetNSSAIInformation( - in template (value) TargetNSSAI p_targetNSSAI, - in template (value) IndexToRFSP p_indexToRFSP, - in template (omit) TargetNSSAIInformation.iE_Extensions p_iE_Extensions := omit - ) := { - targetNSSAI := p_targetNSSAI, - indexToRFSP := p_indexToRFSP, - iE_Extensions := p_iE_Extensions - } // End of template m_targetNSSAIInformation - - template (omit) TargetRANNodeID m_targetRANNodeID( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) TAI p_selectedTAI, - in template (omit) TargetRANNodeID.iE_Extensions p_iE_Extensions := omit - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template m_targetRANNodeID - - template (omit) TargetRANNodeID_RIM m_targetRANNodeID_RIM( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) TAI p_selectedTAI, - in template (omit) TargetRANNodeID_RIM.iE_Extensions p_iE_Extensions := omit - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template m_targetRANNodeID_RIM - - template (omit) TargetRANNodeID_SON m_targetRANNodeID_SON( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) TAI p_selectedTAI, - in template (omit) TargetRANNodeID_SON.iE_Extensions p_iE_Extensions := omit - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template m_targetRANNodeID_SON - - template (value) TargetRANNodeID_SON.iE_Extensions m_targetRANNodeID_SON_id_NR_CGI( - in template (value) NR_CGI p_nR_CGI - ) := { - { - id := id_NR_CGI, - criticality := ignore, - extensionValue := { NR_CGI := p_nR_CGI } - } - } // End of template m_targetRANNodeID_SON_id_NR_CGI + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_nGRAN_ReportingStatus( + template (present) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus := ? + ) := { + nGRAN_ReportingStatus := p_nGRAN_ReportingStatus + } // End of template mw_resourceStatusReportingSystem_nGRAN_ReportingStatus - template (omit) TargetRNC_ID m_targetRNC_ID( - in template (value) LAI p_lAI, - in template (value) RNC_ID p_rNC_ID, - in template (omit) ExtendedRNC_ID p_extendedRNC_ID := omit, - in template (omit) TargetRNC_ID.iE_Extensions p_iE_Extensions := omit - ) := { - lAI := p_lAI, - rNC_ID := p_rNC_ID, - extendedRNC_ID := p_extendedRNC_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_targetRNC_ID - - template (value) TimerApproachForGUAMIRemoval m_timerApproachForGUAMIRemoval(in TimerApproachForGUAMIRemoval p_value := apply_timer) := p_value; - - template (omit) TimeSyncAssistanceInfo m_timeSyncAssistanceInfo( - in template (value) TimeSyncAssistanceInfo.timeDistributionIndication p_timeDistributionIndication := enabled, - in template (omit) TimeSyncAssistanceInfo.uUTimeSyncErrorBudget p_uUTimeSyncErrorBudget := omit, - in template (omit) TimeSyncAssistanceInfo.iE_Extensions p_iE_Extensions := omit - ) := { - timeDistributionIndication := p_timeDistributionIndication, - uUTimeSyncErrorBudget := p_uUTimeSyncErrorBudget, - // The above IE shall be present if the Time Distribution Indication IE is set to the value “enabled” - iE_Extensions := p_iE_Extensions - } // End of template m_timeSyncAssistanceInfo - - template (value) TimeToWait m_timeToWait(in TimeToWait p_value := v1s) := p_value; - - template (value) TNGF_ID m_tNGF_ID_tNGF_ID( - in template (value) TNGF_ID.tNGF_ID p_tNGF_ID - ) := { - tNGF_ID := p_tNGF_ID - } // End of template m_tNGF_ID_tNGF_ID - - template (value) TNGF_ID m_tNGF_ID_choice_Extensions( - in template (value) TNGF_ID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_tNGF_ID_choice_Extensions - - template (omit) TNLAssociationItem m_tNLAssociationItem( - in template (value) CPTransportLayerInformation p_tNLAssociationAddress, - in template (value) Cause p_cause, - in template (omit) TNLAssociationItem.iE_Extensions p_iE_Extensions := omit - ) := { - tNLAssociationAddress := p_tNLAssociationAddress, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template m_tNLAssociationItem - - template (value) TNLAssociationUsage m_TNLAssociationUsage(in TNLAssociationUsage p_value := ue) := p_value; - - template (omit) TooearlyIntersystemHO m_tooearlyIntersystemHO( - in template (value) EUTRA_CGI p_sourcecellID, - in template (value) NGRAN_CGI p_failurecellID, - in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, - in template (omit) TooearlyIntersystemHO.iE_Extensions p_iE_Extensions := omit - ) := { - sourcecellID := p_sourcecellID, - failurecellID := p_failurecellID, - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template m_tooearlyIntersystemHO - - template (omit) TraceActivation m_traceActivation( - in template (value) NGRANTraceID p_nGRANTraceID, - in template (value) InterfacesToTrace p_interfacesToTrace, - in template (value) TraceDepth p_traceDepth, - in template (value) TransportLayerAddress p_traceCollectionEntityIPAddress := PX_TRANSPORT_LAYER_ADDRESS, - in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit - ) := { - nGRANTraceID := p_nGRANTraceID, - interfacesToTrace := p_interfacesToTrace, - traceDepth := p_traceDepth, - traceCollectionEntityIPAddress := p_traceCollectionEntityIPAddress, - iE_Extensions := p_iE_Extensions - } // End of template m_traceActivation - - template (value) TraceActivation.iE_Extensions m_traceActivation_id_MDTConfiguration( - in template (value) MDT_Configuration p_mDT_Configuration - ) := { - { - id := id_MDTConfiguration, - criticality := ignore, - extensionValue := { MDT_Configuration := p_mDT_Configuration } - } - } // End of template m_traceActivation_id_MDTConfiguration - - template (value) TraceActivation.iE_Extensions m_traceActivation_id_TraceCollectionEntityURI( - in template (value) URI_address p_uRI_address - ) := { - { - id := id_TraceCollectionEntityURI, - criticality := ignore, - extensionValue := { URI_address := p_uRI_address } - } - } // End of template m_traceActivation_id_TraceCollectionEntityURI - - template (value) TraceDepth m_traceDepth(in TraceDepth p_value := minimum) := p_value; - - template (value) TypeOfError m_typeOfError(in TypeOfError p_value := not_understood) := p_value; - - template (omit) TAIBasedMDT m_tAIBasedMDT( - in template (value) TAIListforMDT p_tAIListforMDT, - in template (omit) TAIBasedMDT.iE_Extensions p_iE_Extensions := omit - ) := { - tAIListforMDT := p_tAIListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template m_tAIBasedMDT - - template (omit) TAIBasedQMC m_tAIBasedQMC( - in template (value) TAIListforQMC p_tAIListforQMC, - in template (omit) TAIBasedQMC.iE_Extensions p_iE_Extensions := omit - ) := { - tAIListforQMC := p_tAIListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template m_tAIBasedQMC - - template (omit) TABasedQMC m_tABasedQMC( - in template (value) TAListforQMC p_tAListforQMC, - in template (omit) TABasedQMC.iE_Extensions p_iE_Extensions := omit - ) := { - tAListforQMC := p_tAListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template m_tABasedQMC + template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystem_choice_Extensions( + template (present) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_resourceStatusReportingSystem_choice_Extensions - template (omit) TABasedMDT m_tABasedMDT( - in template (value) TAListforMDT p_tAListforMDT, - in template (omit) TABasedMDT.iE_Extensions p_iE_Extensions := omit - ) := { - tAListforMDT := p_tAListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template m_tABasedMDT - - template (value) TimeToTrigger m_timeToTrigger(in TimeToTrigger p_value := ms0) := p_value; - - template (value) TWIF_ID m_tWIF_ID_tWIF_ID( - in template (value) TWIF_ID.tWIF_ID p_tWIF_ID - ) := { - tWIF_ID := p_tWIF_ID - } // End of template m_tWIF_ID_tWIF_ID - - template (value) TWIF_ID m_tWIF_ID_choice_Extensions( - in template (value) TWIF_ID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_tWIF_ID_choice_Extensions - - template (omit) TSCAssistanceInformation m_tSCAssistanceInformation( - in template (value) Periodicity p_periodicity, - in template (omit) BurstArrivalTime p_burstArrivalTime := omit, - in template (omit) TSCAssistanceInformation.iE_Extensions p_iE_Extensions := omit + template (present) EUTRAN_ReportingStatusIEs mw_eUTRAN_ReportingStatusIEs( + template (present) EUTRAN_CellReportList p_eUTRAN_CellReportList := ?, + template EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * + ) := { + eUTRAN_CellReportList := p_eUTRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingStatusIEs + + template (present) EUTRAN_CellReportItem mw_eUTRAN_CellReportItem ( + template (present) EUTRA_CGI p_eCGI, + template (present) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup := ?, + template EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := *, + template NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := *, + template EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := *, + template EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := * + ):= { + eCGI := p_eCGI, + eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, + eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, + eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, + eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_ReportingStatusIEs + + template (present) EUTRAN_CompositeAvailableCapacityGroup mw_EUTRAN_CompositeAvailableCapacityGroup( + template (present) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity := ?, + template (present) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity := ?, + template EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := * + ) := { + dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, + uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, + iE_Extensions := p_iE_Extensions + } // End of template mw_EUTRAN_CompositeAvailableCapacityGroup + + template (present) CompositeAvailableCapacity mw_compositeAvailableCapacity( + template (present) CompositeAvailableCapacity.capacityValue p_capacityValue := ?, + template CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := *, + template CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := * + ) := { + cellCapacityClassValue := p_cellCapacityClassValue, + capacityValue := p_capacityValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_compositeAvailableCapacity + + template (present) EUTRAN_RadioResourceStatus mw_eUTRAN_RadioResourceStatus( + template (present) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage := ?, + template (present) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage := ?, + template EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := *, + template EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := *, + template EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * + ) := { + dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, + uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, + dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, + uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, + dL_Total_PRB_usage := p_dL_Total_PRB_usage, + uL_Total_PRB_usage := p_uL_Total_PRB_usage, + dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, + uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, + iE_Extensions := p_iE_Extensions + } // End of template mw_eUTRAN_RadioResourceStatus + + template (present) NGRAN_ReportingStatusIEs mw_nGRAN_ReportingStatusIEs( + template (present) NGRAN_CellReportList p_nGRAN_CellReportList := ?, + template NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CellReportList := p_nGRAN_CellReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_ReportingStatusIEs + + template (present) NGRAN_CellReportItem mw_nGRAN_CellReportItem( + template (present) NGRAN_CGI p_nGRAN_CGI, + template (present) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup := ?, + template NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := *, + template NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := *, + template NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := *, + template NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := * ) := { - periodicity := p_periodicity, - burstArrivalTime := p_burstArrivalTime, - iE_Extensions := p_iE_Extensions - } // End of template m_tSCAssistanceInformation - - template (value) TSCAssistanceInformation.iE_Extensions m_tSCAssistanceInformation_id_SurvivalTime( - in template (value) SurvivalTime p_survivalTime - ) := { - { - id := id_SurvivalTime, - criticality := ignore, - extensionValue := { SurvivalTime := p_survivalTime } - } - } // End of template m_tSCAssistanceInformation_id_SurvivalTime - - template (omit) TSCTrafficCharacteristics m_tSCTrafficCharacteristics( - in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationDL := omit, - in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationUL := omit, - in template (omit) TSCTrafficCharacteristics.iE_Extensions p_iE_Extensions := omit - ) := { - tSCAssistanceInformationDL := p_tSCAssistanceInformationDL, - tSCAssistanceInformationUL := p_tSCAssistanceInformationUL, - iE_Extensions := p_iE_Extensions - } // End of template m_tSCTrafficCharacteristics - - template (omit) UEAggregateMaximumBitRate m_uEAggregateMaximumBitRate( - in template (value) BitRate p_uEAggregateMaximumBitRateDL, - in template (value) BitRate p_uEAggregateMaximumBitRateUL, - in template (omit) UEAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit - ) := { - uEAggregateMaximumBitRateDL := p_uEAggregateMaximumBitRateDL, - uEAggregateMaximumBitRateUL := p_uEAggregateMaximumBitRateUL, - iE_Extensions := p_iE_Extensions - } // End of template m_uEAggregateMaximumBitRate - - template (omit) UEAppLayerMeasInfoItem m_uEAppLayerMeasInfoItem( - in template (value) UEAppLayerMeasConfigInfo p_uEAppLayerMeasConfigInfo, - in template (omit) UEAppLayerMeasInfoItem.iE_Extensions p_iE_Extensions := omit + nGRAN_CGI := p_nGRAN_CGI, + nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, + nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, + nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, + nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_CellReportItem + + template (present) NGRAN_RadioResourceStatus mw_nGRAN_RadioResourceStatus( + template (present) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO := ?, + template (present) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO := ?, + template NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * + ) := { + dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, + uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, + dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, + uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, + dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, + uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_RadioResourceStatus + + template (present) InterSystemHOReport mw_interSystemHOReport( + template (present) InterSystemHandoverReportType p_handoverReportType := ?, + template InterSystemHOReport.iE_Extensions p_iE_Extensions := * ) := { - uEAppLayerMeasConfigInfo := p_uEAppLayerMeasConfigInfo, - iE_Extensions := p_iE_Extensions - } // End of template m_uEAppLayerMeasInfoItem - - template (omit) UEAppLayerMeasConfigInfo m_uEAppLayerMeasConfigInfo( - in template (value) QoEReference p_qoEReference, - in template (value) TransportLayerAddress p_measCollEntityIPAddress, - in template (omit) ServiceType p_serviceType, - in template (omit) AreaScopeOfQMC p_areaScopeOfQMC := omit, - in template (omit) UEAppLayerMeasConfigInfo.qoEMeasurementStatus p_qoEMeasurementStatus := omit, - in template (omit) UEAppLayerMeasConfigInfo.containerForAppLayerMeasConfig p_containerForAppLayerMeasConfig := omit, - in template (omit) UEAppLayerMeasConfigInfo.measConfigAppLayerID p_measConfigAppLayerID := omit, - in template (omit) SliceSupportListQMC p_sliceSupportListQMC := omit, - in template (omit) MDT_AlignmentInfo p_mDT_AlignmentInfo := omit, - in template (omit) AvailableRANVisibleQoEMetrics p_availableRANVisibleQoEMetrics := omit, - in template (omit) UEAppLayerMeasConfigInfo.iE_Extensions p_iE_Extensions := omit - ) := { - qoEReference := p_qoEReference, - serviceType := p_serviceType, - areaScopeOfQMC := p_areaScopeOfQMC, - measCollEntityIPAddress := p_measCollEntityIPAddress, - qoEMeasurementStatus := p_qoEMeasurementStatus, - containerForAppLayerMeasConfig := p_containerForAppLayerMeasConfig, - measConfigAppLayerID := p_measConfigAppLayerID, - sliceSupportListQMC := p_sliceSupportListQMC, - mDT_AlignmentInfo := p_mDT_AlignmentInfo, - availableRANVisibleQoEMetrics := p_availableRANVisibleQoEMetrics, - iE_Extensions := p_iE_Extensions - } // End of template m_uEAppLayerMeasConfigInfo - - template (omit) UE_associatedLogicalNG_connectionItem m_uE_associatedLogicalNG_connectionItem( - in template (omit) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := omit, - in template (omit) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := omit, - in template (omit) UE_associatedLogicalNG_connectionItem.iE_Extensions p_iE_Extensions := omit - ) := { - aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, - rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_uE_associatedLogicalNG_connectionItem - - template (value) UECapabilityInfoRequest m_uECapabilityInfoRequest(in UECapabilityInfoRequest p_value := requested) := p_value; - - template (value) UEContextRequest m_uEContextRequest(in UEContextRequest p_value := requested) := p_value; - - template (omit) UEContextResumeRequestTransfer m_uEContextResumeRequestTransfer( - in template (omit) QosFlowListWithCause p_qosFlowFailedToResumeList := omit, - in template (omit) UEContextResumeRequestTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, - iE_Extensions := p_iE_Extensions - } // End of template m_uEContextResumeRequestTransfer + handoverReportType := p_handoverReportType, + iE_Extensions := p_iE_Extensions + } // End of template mw_interSystemHOReport - template (omit) UEContextResumeResponseTransfer m_uEContextResumeResponseTransfer( - in template (omit) QosFlowListWithCause p_qosFlowFailedToResumeList := omit, - in template (omit) UEContextResumeResponseTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, - iE_Extensions := p_iE_Extensions - } // End of template m_uEContextResumeResponseTransfer + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_tooearlyIntersystemHO( + template (present) TooearlyIntersystemHO p_tooearlyIntersystemHO := ? + ) := { + tooearlyIntersystemHO := p_tooearlyIntersystemHO + } // End of template mw_interSystemHandoverReportType_tooearlyIntersystemHO - template (omit) UEContextSuspendRequestTransfer m_uEContextSuspendRequestTransfer( - in template (omit) SuspendIndicator p_suspendIndicator := omit, - in template (omit) UEContextSuspendRequestTransfer.iE_Extensions p_iE_Extensions := omit - ) := { - suspendIndicator := p_suspendIndicator, - iE_Extensions := p_iE_Extensions - } // End of template m_uEContextSuspendRequestTransfer - - template (omit) UE_DifferentiationInfo m_uE_DifferentiationInfo( - in template (omit) UE_DifferentiationInfo.periodicCommunicationIndicator p_periodicCommunicationIndicator := omit, - in template (omit) UE_DifferentiationInfo.periodicTime p_periodicTime := omit, - in template (omit) UE_DifferentiationInfo.scheduledCommunicationTime p_scheduledCommunicationTime := omit, - in template (omit) UE_DifferentiationInfo.stationaryIndication p_stationaryIndication := omit, - in template (omit) UE_DifferentiationInfo.trafficProfile p_trafficProfile := omit, - in template (omit) UE_DifferentiationInfo.batteryIndication p_batteryIndication := omit, - in template (omit) UE_DifferentiationInfo.iE_Extensions p_iE_Extensions := omit - ) := { - periodicCommunicationIndicator := p_periodicCommunicationIndicator, - periodicTime := p_periodicTime, - scheduledCommunicationTime := p_scheduledCommunicationTime, - stationaryIndication := p_stationaryIndication, - trafficProfile := p_trafficProfile, - batteryIndication := p_batteryIndication, - iE_Extensions := p_iE_Extensions - } // End of template m_uE_DifferentiationInfo - - template (value) UEHistoryInformationFromTheUE m_uEHistoryInformationFromTheUE_nR( - in template (value) NRMobilityHistoryReport p_nR - ) := { - nR := p_nR - } // End of template m_uEHistoryInformationFromTheUE_nR + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_intersystemUnnecessaryHO( + template (present) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO := ? + ) := { + intersystemUnnecessaryHO := p_intersystemUnnecessaryHO + } // End of template mw_interSystemHandoverReportType_intersystemUnnecessaryHO - template (value) UEHistoryInformationFromTheUE m_uEHistoryInformationFromTheUE_choice_Extensions( - in template (value) UEHistoryInformationFromTheUE.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_uEHistoryInformationFromTheUE_choice_Extensions + template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_choice_Extensions( + template (present) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_interSystemHandoverReportType_choice_Extensions + + template (present) IntersystemUnnecessaryHO mw_intersystemUnnecessaryHO( + template (present) NGRAN_CGI p_sourcecellID := ?, + template (present) EUTRA_CGI p_targetcellID := ?, + template (present) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := ?, + template (present) CandidateCellList p_candidateCellList := ?, + template IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := * + ) := { + sourcecellID := p_sourcecellID, + targetcellID := p_targetcellID, + earlyIRATHO := p_earlyIRATHO, + candidateCellList := p_candidateCellList, + iE_Extensions := p_iE_Extensions + } // End of template mw_intersystemUnnecessaryHO + + template (present) LAI mw_lai( + template (present) PLMNIdentity p_pLMNidentity := ?, + template (present) LAC p_lAC := ?, + template LAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNidentity := p_pLMNidentity, + lAC := p_lAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_lai - template (value) UEIdentityIndexValue m_uEIdentityIndexValue_indexLength10( - in template (value) UEIdentityIndexValue.indexLength10 p_indexLength10 - ) := { - indexLength10 := p_indexLength10 - } // End of template m_uEIdentityIndexValue_indexLength10 + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_nGRANCell( + template (present) LastVisitedNGRANCellInformation p_nGRANCell := ? + ) := { + nGRANCell := p_nGRANCell + } // End of template mw_interSystemHandoverReportType_nGRANCell - template (value) UEIdentityIndexValue m_uEIdentityIndexValue_choice_Extensions( - in template (value) UEIdentityIndexValue.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_uEIdentityIndexValue_choice_Extensions - - template (value) UE_NGAP_IDs m_uE_NGAP_IDs_uE_NGAP_ID_pair( - in template (value) UE_NGAP_ID_pair p_uE_NGAP_ID_pair - ) := { - uE_NGAP_ID_pair := p_uE_NGAP_ID_pair - } // End of template m_uE_NGAP_IDs_uE_NGAP_ID_pair - - template (value) UE_NGAP_IDs m_uE_NGAP_IDs_aMF_UE_NGAP_ID( - in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := PX_AMF_UE_NGAP_ID - ) := { - aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID - } // End of template m_uE_NGAP_IDs_aMF_UE_NGAP_ID - - template (value) UE_NGAP_IDs m_uE_NGAP_IDs_choice_Extensions( - in template (value) UE_NGAP_IDs.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_uE_NGAP_IDs_choice_Extensions - - template (omit) UE_NGAP_ID_pair m_uE_NGAP_ID_pair( - in template (value) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := PX_AMF_UE_NGAP_ID, - in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := PX_RAN_UE_NGAP_ID, - in template (omit) UE_NGAP_ID_pair.iE_Extensions p_iE_Extensions := omit - ) := { - aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, - rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, - iE_Extensions := p_iE_Extensions - } // End of template m_uE_NGAP_ID_pair - - template (value) UEPagingIdentity m_uEPagingIdentity_fiveG_S_TMSI( - in template (value) FiveG_S_TMSI p_fiveG_S_TMSI - ) := { - fiveG_S_TMSI := p_fiveG_S_TMSI - } // End of template m_uEPagingIdentity_fiveG_S_TMSI - - template (value) UEPagingIdentity m_uEPagingIdentity_choice_Extensions( - in template (value) UEPagingIdentity.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_uEPagingIdentity_choice_Extensions + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_eUTRANCell( + template (present) LastVisitedEUTRANCellInformation p_eUTRANCell := ? + ) := { + eUTRANCell := p_eUTRANCell + } // End of template mw_interSystemHandoverReportType_eUTRANCell - template (value) UEPresence m_uEPresence(in UEPresence p_value := in_) := p_value; + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_uTRANCell( + template (present) LastVisitedUTRANCellInformation p_uTRANCell := ? + ) := { + uTRANCell := p_uTRANCell + } // End of template mw_interSystemHandoverReportType_uTRANCell - template (omit) UEPresenceInAreaOfInterestItem m_uEPresenceInAreaOfInterestItem( - in template (value) LocationReportingReferenceID p_locationReportingReferenceID, - in template (value) UEPresence p_uEPresence, - in template (omit) UEPresenceInAreaOfInterestItem.iE_Extensions p_iE_Extensions := omit - ) := { - locationReportingReferenceID := p_locationReportingReferenceID, - uEPresence := p_uEPresence, - iE_Extensions := p_iE_Extensions - } // End of template m_uEPresenceInAreaOfInterestItem - - template (omit) UERadioCapabilityForPaging m_uERadioCapabilityForPaging( - in template (omit) UERadioCapabilityForPagingOfNR p_uERadioCapabilityForPagingOfNR := omit, - in template (omit) UERadioCapabilityForPagingOfEUTRA p_uERadioCapabilityForPagingOfEUTRA := omit, - in template (omit) UERadioCapabilityForPaging.iE_Extensions p_iE_Extensions := omit - ) := { - uERadioCapabilityForPagingOfNR := p_uERadioCapabilityForPagingOfNR, - uERadioCapabilityForPagingOfEUTRA := p_uERadioCapabilityForPagingOfEUTRA, - iE_Extensions := p_iE_Extensions - } // End of template m_uERadioCapabilityForPaging - - template (value) UERadioCapabilityForPaging.iE_Extensions m_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT( - in template (value) UERadioCapabilityForPagingOfNB_IoT p_uERadioCapabilityForPagingOfNB_IoT - ) := { - { - id := id_UERadioCapabilityForPagingOfNB_IoT, - criticality := ignore, - extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } - } - } // End of template m_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT + template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_gERANCell( + template (present) LastVisitedGERANCellInformation p_gERANCell := ? + ) := { + gERANCell := p_gERANCell + } // End of template mw_interSystemHandoverReportType_gERANCell - template (value) UERetentionInformation m_uERetentionInformation(in UERetentionInformation p_value := ues_retained):= p_value; + template (present) LastVisitedCellInformation mw_lastVisitedCellInformation_choice_Extensions( + template (present) LastVisitedCellInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_lastVisitedCellInformation_choice_Extensions - template (value) UERLFReportContainer m_uERLFReportContainer_nR( - in template (value) NRUERLFReportContainer p_nR + template (present) LastVisitedCellItem mw_lastVisitedCellItem( + template (present) LastVisitedCellInformation p_lastVisitedCellInformation := ?, + template LastVisitedCellItem.iE_Extensions p_iE_Extensions := * ) := { - nR := p_nR - } // End of template m_uERLFReportContainer_nR + lastVisitedCellInformation := p_lastVisitedCellInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_lastVisitedCellItem + + template (present) LastVisitedNGRANCellInformation mw_lastVisitedNGRANCellInformation( + template (present) NGRAN_CGI p_globalCellID := ?, + template (present) CellType p_cellType := ?, + template (present) TimeUEStayedInCell p_timeUEStayedInCell := ?, + template TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := *, + template Cause p_hOCauseValue := *, + template LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := * + ) := { + globalCellID := p_globalCellID, + cellType := p_cellType, + timeUEStayedInCell := p_timeUEStayedInCell, + timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, + hOCauseValue := p_hOCauseValue, + iE_Extensions := p_iE_Extensions + } // End of template mw_lastVisitedNGRANCellInformation + + template (present) LastVisitedNGRANCellInformation.iE_Extensions mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( + template (present) LastVisitedPSCellList p_lastVisitedPSCellList := ? + ) := { + { + id := id_LastVisitedPSCellList, + criticality := ignore, + extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } + } + } // End of template mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList - template (value) UERLFReportContainer m_uERLFReportContainer_lTE( - in template (value) LTEUERLFReportContainer p_lTE - ) := { - lTE := p_lTE - } // End of template m_uERLFReportContainer_lTE + template (present) LastVisitedPSCellInformation mw_LastVisitedPSCellInformation( + template (present) NGRAN_CGI p_pSCellID := ?, + template (present) LastVisitedPSCellInformation.timeStay p_timeStay := ?, + template LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := * + ) := { + pSCellID := p_pSCellID, + timeStay := p_timeStay, + iE_Extensions := p_iE_Extensions + } // End of template mw_LastVisitedPSCellInformation - template (value) UERLFReportContainer m_uERLFReportContainer_choice_Extensions( - in template (value) UERLFReportContainer.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_uERLFReportContainer_choice_Extensions - - template (omit) UESecurityCapabilities m_uESecurityCapabilities( - in template (value) NRencryptionAlgorithms p_nRencryptionAlgorithms, - in template (value) NRintegrityProtectionAlgorithms p_nRintegrityProtectionAlgorithms, - in template (value) EUTRAencryptionAlgorithms p_eUTRAencryptionAlgorithms, - in template (value) EUTRAintegrityProtectionAlgorithms p_eUTRAintegrityProtectionAlgorithms, - in template (omit) UESecurityCapabilities.iE_Extensions p_iE_Extensions := omit - ) := { - nRencryptionAlgorithms := p_nRencryptionAlgorithms, - nRintegrityProtectionAlgorithms := p_nRintegrityProtectionAlgorithms, - eUTRAencryptionAlgorithms := p_eUTRAencryptionAlgorithms, - eUTRAintegrityProtectionAlgorithms := p_eUTRAintegrityProtectionAlgorithms, - iE_Extensions := p_iE_Extensions - } // End of template m_uESecurityCapabilities - - template (omit) UESliceMaximumBitRateItem m_uESliceMaximumBitRateItem( - in template (value) S_NSSAI p_s_NSSAI, - in template (value) BitRate p_uESliceMaximumBitRateDL, - in template (value) BitRate p_uESliceMaximumBitRateUL, - in template (omit) UESliceMaximumBitRateItem.iE_Extensions p_iE_Extensions := omit - ) := { - s_NSSAI := p_s_NSSAI, - uESliceMaximumBitRateDL := p_uESliceMaximumBitRateDL, - uESliceMaximumBitRateUL := p_uESliceMaximumBitRateUL, - iE_Extensions := p_iE_Extensions - } // End of template m_uESliceMaximumBitRateItem - - template (value) UE_UP_CIoT_Support m_uE_UP_CIoT_Support(in UE_UP_CIoT_Support p_value := supported) := p_value; - - template (omit) UL_CP_SecurityInformation m_UL_CP_SecurityInformation( - in template (value) UL_NAS_MAC p_ul_NAS_MAC := PX_UL_NAS_MAC, - in template (value) UL_NAS_Count p_ul_NAS_Count := PX_UL_NAS_COUNT, - in template (omit) UL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := omit - ) := { - ul_NAS_MAC := p_ul_NAS_MAC, - ul_NAS_Count := p_ul_NAS_Count, - iE_Extensions := p_iE_Extensions - } // End of template - - template (omit) UL_NGU_UP_TNLModifyItem m_uL_NGU_UP_TNLModifyItem( - in template (value) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation, - in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, - in template (omit) UL_NGU_UP_TNLModifyItem.iE_Extensions p_iE_Extensions := omit - ) := { - uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_uL_NGU_UP_TNLModifyItem - - template (value) UL_NGU_UP_TNLModifyItem.iE_Extensions m_uL_NGU_UP_TNLModifyItem_id_RedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_uL_NGU_UP_TNLModifyItem_id_RedundantUL_NGU_UP_TNLInformation - - template (value) UL_NGU_UP_TNLModifyItem.iE_Extensions m_uL_NGU_UP_TNLModifyItem_id_RedundantDL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_uL_NGU_UP_TNLModifyItem_id_RedundantDL_NGU_UP_TNLInformation + template (present) LineType mw_lineType(template (present) LineType p_value := pon) := p_value; - template (omit) UnavailableGUAMIItem m_unavailableGUAMIItem( - in template (value) GUAMI p_gUAMI, - in template (omit) TimerApproachForGUAMIRemoval p_timerApproachForGUAMIRemoval := omit, - in template (omit) AMFName p_backupAMFName := omit, - in template (omit) UnavailableGUAMIItem.iE_Extensions p_iE_Extensions := omit - ) := { - gUAMI := p_gUAMI, - timerApproachForGUAMIRemoval := p_timerApproachForGUAMIRemoval, - backupAMFName := p_backupAMFName, - iE_Extensions := p_iE_Extensions - } // End of template m_unavailableGUAMIItem + template (present) LocationReportingAdditionalInfo mw_locationReportingAdditionalInfo(template (present) LocationReportingAdditionalInfo p_value := includePSCell) := p_value; - template (value) ULForwarding m_uLForwarding(in ULForwarding p_value := ul_forwarding_proposed) := p_value; + template (present) LocationReportingRequestType mw_locationReportingRequestType( + template (present) EventType p_eventType := ?, + template (present) ReportArea p_reportArea := ?, + template AreaOfInterestList p_areaOfInterestList := *, + template LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := *, + template LocationReportingRequestType.iE_Extensions p_iE_Extensions := * + ) := { + eventType := p_eventType, + reportArea := p_reportArea, + areaOfInterestList := p_areaOfInterestList, + locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, + // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” + iE_Extensions := p_iE_Extensions + } // End of template mw_locationReportingRequestType + + template (present) LocationReportingRequestType.iE_Extensions mw_locationReportingRequestType_id_LocationReportingAdditionalInfo( + template (present) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo := ? + ) := { + { + id := id_LocationReportingAdditionalInfo, + criticality := ignore, + extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } + } + } // End of template mw_locationReportingRequestType_id_LocationReportingAdditionalInfo + + template (present) LoggedMDTNr mw_loggedMDTNr( + template (present) LoggingInterval p_loggingInterval := ?, + template (present) LoggingDuration p_loggingDuration := ?, + template (present) LoggedMDTTrigger p_loggedMDTTrigger := ?, + template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, + template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, + template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, + template AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := *, + template LoggedMDTNr.iE_Extensions p_iE_Extensions := * + ) := { + loggingInterval := p_loggingInterval, + loggingDuration := p_loggingDuration, + loggedMDTTrigger := p_loggedMDTTrigger, + bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, + wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, + sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, + areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, + iE_Extensions := p_iE_Extensions + } // End of template mw_loggedMDTNr - template (value) UPTransportLayerInformation m_uPTransportLayerInformation_gTPTunnel( - in template (value) GTPTunnel p_gTPTunnel - ) := { - gTPTunnel := p_gTPTunnel - } // End of template m_uPTransportLayerInformation_gTPTunnel - - template (value) UPTransportLayerInformation m_uPTransportLayerInformation_choice_Extensions( - in template (value) UPTransportLayerInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_uPTransportLayerInformation_choice_Extensions - - template (omit) UPTransportLayerInformationItem m_uPTransportLayerInformationItem( - in template (value) UPTransportLayerInformation p_nGU_UP_TNLInformation, - in template (omit) UPTransportLayerInformationItem.iE_Extensions p_iE_Extensions := omit - ) := { - nGU_UP_TNLInformation := p_nGU_UP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_uPTransportLayerInformationItem - - template (value) UPTransportLayerInformationItem.iE_Extensions m_uPTransportLayerInformationItem_id_CommonNetworkInstance( - in template (value) CommonNetworkInstance p_commonNetworkInstance - ) := { - { - id := id_CommonNetworkInstance, - criticality := ignore, - extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template m_uPTransportLayerInformationItem_id_CommonNetworkInstance + template (present) LoggingInterval mw_loggingInterval(template (present) LoggingInterval p_value := ?) := p_value; - template (omit) UPTransportLayerInformationPairItem m_uPTransportLayerInformationPairItem( - in template (value) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation, - in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, - in template (omit) UPTransportLayerInformationPairItem.iE_Extensions p_iE_Extensions := omit - ) := { - uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_uPTransportLayerInformationPairItem + template (present) LoggingDuration mw_loggingDuration(template (present) LoggingDuration p_value := ?) := p_value; - template (value) UserLocationInformation m_uPTransportLayerInformation_userLocationInformationEUTRA( - in template (value) UserLocationInformationEUTRA p_userLocationInformationEUTRA - ) := { - userLocationInformationEUTRA := p_userLocationInformationEUTRA - } // End of template m_uPTransportLayerInformation_userLocationInformationEUTRA + template (present) Links_to_log mw_Links_to_log(template (present) Links_to_log p_value := ?) := p_value; + + template (present) LoggedMDTTrigger mw_loggedMDTTrigger_gERANCell( + template (present) EventTrigger p_eventTrigger := ? + ) := { + eventTrigger := p_eventTrigger + } // End of template mw_loggedMDTTrigger_gERANCell + + template (present) LoggedMDTTrigger mw_loggedMDTTrigger_choice_Extensions( + template (present) LoggedMDTTrigger.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_loggedMDTTrigger_choice_Extensions - template (value) UserLocationInformation m_uPTransportLayerInformation_userLocationInformationNR( - in template (value) UserLocationInformationNR p_userLocationInformationNR - ) := { - userLocationInformationNR := p_userLocationInformationNR - } // End of template m_uPTransportLayerInformation_userLocationInformationNR + template (present) LTEM_Indication mw_lTEM_Indication(template (present) LTEM_Indication p_value := lte_m) := p_value; - template (value) UserLocationInformation m_uPTransportLayerInformation_userLocationInformationN3IWF( - in template (value) UserLocationInformationN3IWF p_userLocationInformationN3IWF + template LTEV2XServicesAuthorized mw_lTEV2XServicesAuthorized( + template VehicleUE p_vehicleUE := *, + template PedestrianUE p_pedestrianUE:= *, + template LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * + ) := { + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_lTEV2XServicesAuthorized + + template (present) LTEUESidelinkAggregateMaximumBitrate mw_lTEUESidelinkAggregateMaximumBitrate( + template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, + template LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * ) := { - userLocationInformationN3IWF := p_userLocationInformationN3IWF - } // End of template m_uPTransportLayerInformation_userLocationInformationN3IWF + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_lTEUESidelinkAggregateMaximumBitrate - template (value) UserLocationInformation m_userLocationInformation_choice_Extensions( - in template (value) UserLocationInformation.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_userLocationInformation_choice_Extensions + template (present) MaximumIntegrityProtectedDataRate mw_maximumIntegrityProtectedDataRate(template (present) MaximumIntegrityProtectedDataRate p_value := ?) := p_value; - template (value) UserLocationInformation.choice_Extensions m_userLocationInformation_id_UserLocationInformationTNGF( - in template (value) UserLocationInformationTNGF p_userLocationInformationTNGF - ) := { - id := id_UserLocationInformationTNGF, - criticality := ignore, - value_ := { UserLocationInformationTNGF := p_userLocationInformationTNGF } - } // End of template m_userLocationInformation_id_UserLocationInformationTNGF + template (present) MBS_DataForwardingResponseMRBItem mw_mBS_DataForwardingResponseMRBItem( + template (present) MRB_ID p_mRB_ID := ?, + template (present) UPTransportLayerInformation p_dL_Forwarding_UPTNLInformation := ?, + template MRB_ProgressInformation p_mRB_ProgressInformation := *, + template MBS_DataForwardingResponseMRBItem.iE_Extensions p_iE_Extensions := * + ) := { + mRB_ID := p_mRB_ID, + dL_Forwarding_UPTNLInformation := p_dL_Forwarding_UPTNLInformation, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DataForwardingResponseMRBItem + + template (present) MBS_MappingandDataForwardingRequestItem mw_mBS_MappingandDataForwardingRequestItem( + template (present) MRB_ID p_mRB_ID := ?, + template (present) MBS_QoSFlowList p_mBS_QoSFlowList := ?, + template MRB_ProgressInformation p_mRB_ProgressInformation := *, + template MBS_MappingandDataForwardingRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + mRB_ID := p_mRB_ID, + mBS_QoSFlowList := p_mBS_QoSFlowList, + mRB_ProgressInformation := p_mRB_ProgressInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_MappingandDataForwardingRequestItem + + template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length12( + template (present) MRB_ProgressInformation.pDCP_SN_Length12 p_pDCP_SN_Length12 := ? + ) := { + pDCP_SN_Length12 := p_pDCP_SN_Length12 + } // End of template mw_mRB_ProgressInformation_pDCP_SN_Length12 - template (value) UserLocationInformation.choice_Extensions m_userLocationInformation_id_UserLocationInformationTWIF( - in template (value) UserLocationInformationTWIF p_userLocationInformationTWIF - ) := { - id := id_UserLocationInformationTWIF, - criticality := ignore, - value_ := { UserLocationInformationTWIF := p_userLocationInformationTWIF } - } // End of template m_userLocationInformation_id_UserLocationInformationTWIF + template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length18( + template (present) MRB_ProgressInformation.pDCP_SN_Length18 p_pDCP_SN_Length18 := ? + ) := { + pDCP_SN_Length18 := p_pDCP_SN_Length18 + } // End of template m_mRB_ProgressInformation_pDCP_SN_Length18 - template (value) UserLocationInformation.choice_Extensions m_userLocationInformation_id_UserLocationInformationW_AGF( - in template (value) UserLocationInformationW_AGF p_userLocationInformationW_AGF - ) := { - id := id_UserLocationInformationW_AGF, - criticality := ignore, - value_ := { UserLocationInformationW_AGF := p_userLocationInformationW_AGF } - } // End of template m_userLocationInformation_id_UserLocationInformationW_AGF + template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_choice_Extensions( + template (present) MRB_ProgressInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mRB_ProgressInformation_choice_Extensions - template (omit) UserLocationInformationEUTRA m_userLocationInformationEUTRA( - in template (value) EUTRA_CGI p_eUTRA_CGI, - in template (value) TAI p_tAI, - in template (omit) TimeStamp p_timeStamp := omit, - in template (omit) UserLocationInformationEUTRA.iE_Extensions p_iE_Extensions := omit + template (present) MBS_QoSFlowsToBeSetupItem mw_mBS_QoSFlowsToBeSetupItem( + template (present)QosFlowIdentifier p_mBSqosFlowIdentifier := ?, + template (present)QosFlowLevelQosParameters p_mBSqosFlowLevelQosParameters := ?, + template MBS_QoSFlowsToBeSetupItem.iE_Extensions p_iE_Extensions := * ) := { - eUTRA_CGI := p_eUTRA_CGI, - tAI := p_tAI, - timeStamp := p_timeStamp, - iE_Extensions := p_iE_Extensions - } // End of template m_userLocationInformationEUTRA - - template (value) UserLocationInformationEUTRA.iE_Extensions m_userLocationInformationEUTRA_id_PSCellInformation( - in template (value) NGRAN_CGI p_nGRAN_CGI - ) := { - { - id := id_PSCellInformation, - criticality := ignore, - extensionValue := { NGRAN_CGI := p_nGRAN_CGI } - } - } // End of template m_userLocationInformationEUTRA_id_PSCellInformation + mBSqosFlowIdentifier := p_mBSqosFlowIdentifier, + mBSqosFlowLevelQosParameters := p_mBSqosFlowLevelQosParameters, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_QoSFlowsToBeSetupItem - template (omit) UserLocationInformationN3IWF m_userLocationInformationN3IWF( - in template (value) TransportLayerAddress p_iPAddress := PX_TRANSPORT_LAYER_ADDRESS, - in template (value) PortNumber p_portNumber, - in template (omit) UserLocationInformationN3IWF.iE_Extensions p_iE_Extensions := omit + template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationindependent( + template (present) MBS_ServiceAreaInformation p_locationindependent := ? ) := { - iPAddress := p_iPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template m_userLocationInformationN3IWF - - template (value) UserLocationInformationN3IWF.iE_Extensions m_userLocationInformationN3IWF_id_TAI( - in template (value) TAI p_tAI - ) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template m_userLocationInformationN3IWF_id_TAI + locationindependent := p_locationindependent + } // End of template mw_mBS_ServiceArea_locationindependent - template (omit) UserLocationInformationTNGF m_userLocationInformationTNGF( - in template (value) TNAP_ID p_tNAP_ID, - in template (value) TransportLayerAddress p_iPAddress := PX_TRANSPORT_LAYER_ADDRESS, - in template (value) PortNumber p_portNumber, - in template (omit) UserLocationInformationTNGF.iE_Extensions p_iE_Extensions := omit + template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationdependent( + template (present) MBS_ServiceAreaInformationList p_locationdependent := ? ) := { - tNAP_ID := p_tNAP_ID, - iPAddress := p_iPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template m_userLocationInformationTNGF - - template (value) UserLocationInformationTNGF.iE_Extensions m_userLocationInformationTNGF_id_TAI( - in template (value) TAI p_tAI - ) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template m_userLocationInformationTNGF_id_TAI - - template (omit) UserLocationInformationTWIF m_userLocationInformationTWIF( - in template (value) TWAP_ID p_tWAP_ID, - in template (value) TransportLayerAddress p_iPAddress := PX_TRANSPORT_LAYER_ADDRESS, - in template (value) PortNumber p_portNumber, - in template (omit) UserLocationInformationTWIF.iE_Extensions p_iE_Extensions := omit - ) := { - tWAP_ID := p_tWAP_ID, - iPAddress := p_iPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template m_userLocationInformationTWIF - - template (value) UserLocationInformationTWIF.iE_Extensions m_userLocationInformationTWIF_id_TAI( - in template (value) TAI p_tAI - ) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template m_userLocationInformationTWIF_id_TAI + locationdependent := p_locationdependent + } // End of template mw_mBS_ServiceArea_locationdependent - template (value) UserLocationInformationW_AGF m_userLocationInformationW_AGF_globalLine_ID( - in template (value) GlobalLine_ID p_globalLine_ID - ) := { - globalLine_ID := p_globalLine_ID - } // End of template m_userLocationInformationW_AGF_globalLine_ID + template (present) MBS_ServiceArea mw_mBS_ServiceArea_choice_Extensions( + template (present) MBS_ServiceArea.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mBS_ServiceArea_choice_Extensions - template (value) UserLocationInformationW_AGF m_userLocationInformationW_AGF_hFCNode_ID( - in template (value) HFCNode_ID p_hFCNode_ID + template (present) MBS_ServiceAreaInformationItem mw_mBS_ServiceAreaInformationItem( + template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, + template (present) MBS_ServiceAreaInformation p_mBS_ServiceAreaInformation := ?, + template MBS_ServiceAreaInformationItem.iE_Extensions p_iE_Extensions := * ) := { - hFCNode_ID := p_hFCNode_ID - } // End of template m_userLocationInformationW_AGF_hFCNode_ID + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceAreaInformation := p_mBS_ServiceAreaInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ServiceAreaInformationItem + + template MBS_ServiceAreaInformation mw_mBS_ServiceAreaInformation( + template MBS_ServiceAreaCellList p_mBS_ServiceAreaCellList := *, + template MBS_ServiceAreaTAIList p_mBS_ServiceAreaTAIList := *, + template MBS_ServiceAreaInformation.iE_Extensions p_iE_Extensions := * + ) := { + mBS_ServiceAreaCellList := p_mBS_ServiceAreaCellList, + mBS_ServiceAreaTAIList := p_mBS_ServiceAreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ServiceAreaInformation + + template (present) MBS_SessionID mw_mBS_SessionID( + template (present) TMGI p_tMGI := ?, + template NID p_nID := *, + template MBS_SessionID.iE_Extensions p_iE_Extensions := * + ) := { + tMGI := p_tMGI, + nID := p_nID, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_SessionID + + template (present) MBSSessionFailedtoSetupItem mw_mBSSessionFailedtoSetupItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBSSessionFailedtoSetupItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionFailedtoSetupItem + + template (present) MBS_ActiveSessionInformation_SourcetoTargetItem mw_mBS_ActiveSessionInformation_SourcetoTargetItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBS_ServiceArea p_mBS_ServiceArea := *, + template MBS_MappingandDataForwardingRequestList p_mBS_MappingandDataForwardingRequestList := *, + template MBS_ActiveSessionInformation_SourcetoTargetItem.iE_Extensions p_iE_Extensions := * + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + mBS_ServiceArea := p_mBS_ServiceArea, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBS_MappingandDataForwardingRequestList := p_mBS_MappingandDataForwardingRequestList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ActiveSessionInformation_SourcetoTargetItem + + template (present) MBS_ActiveSessionInformation_TargettoSourceItem mw_mBS_ActiveSessionInformation_TargettoSourceItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_DataForwardingResponseMRBList p_mBS_DataForwardingResponseMRBList := *, + template MBS_ActiveSessionInformation_TargettoSourceItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_DataForwardingResponseMRBList := p_mBS_DataForwardingResponseMRBList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_ActiveSessionInformation_TargettoSourceItem - template (value) UserLocationInformationW_AGF m_userLocationInformationW_AGF_choice_Extensions( - in template (value) UserLocationInformationW_AGF.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_userLocationInformationW_AGF_choice_Extensions - - template (value) UserLocationInformationW_AGF.choice_Extensions m_userLocationInformationW_AGF_id_GlobalCable_ID( - in template (value) GlobalCable_ID p_globalCable_ID - ) := { - id := id_GlobalCable_ID, - criticality := ignore, - value_ := { GlobalCable_ID := p_globalCable_ID } - } // End of template m_userLocationInformationW_AGF_id_GlobalCable_ID - - template (value) UserLocationInformationW_AGF.choice_Extensions m_userLocationInformationW_AGF_id_HFCNode_ID_new( - in template (value) HFCNode_ID_new p_hFCNode_ID_new - ) := { - id := id_HFCNode_ID_new, - criticality := ignore, - value_ := { HFCNode_ID_new := p_hFCNode_ID_new } - } // End of template m_userLocationInformationW_AGF_id_HFCNode_ID_new - - template (value) UserLocationInformationW_AGF.choice_Extensions m_userLocationInformationW_AGF_id_GlobalCable_ID_new( - in template (value) GlobalCable_ID_new p_globalCable_ID_new - ) := { - id := id_GlobalCable_ID_new, - criticality := ignore, - value_ := { GlobalCable_ID_new := p_globalCable_ID_new } - } // End of template m_userLocationInformationW_AGF_id_GlobalCable_ID_new - - - - template (omit) UserLocationInformationNR m_userLocationInformationNR( - in template (value) NR_CGI p_nR_CGI, - in template (value) TAI p_tAI, - in template (omit) TimeStamp p_timeStamp := omit, - in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit - ) := { - nR_CGI := p_nR_CGI, - tAI := p_tAI, - timeStamp := p_timeStamp, - iE_Extensions := p_iE_Extensions - } // End of template m_userLocationInformationNR - - template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_PSCellInformation( - in template (value) NGRAN_CGI p_nGRAN_CGI - ) := { - { - id := id_PSCellInformation, - criticality := ignore, - extensionValue := { NGRAN_CGI := p_nGRAN_CGI } - } - } // End of template m_userLocationInformationNR_id_PSCellInformation + template (present) MBSSessionSetupOrModFailureTransfer mw_mBSSessionSetupOrModFailureTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template MBSSessionSetupOrModFailureTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupOrModFailureTransfer + + template (present) MBSSessionSetupResponseItem mw_mBSSessionSetupResponseItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBSSessionSetupResponseItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupResponseItem - template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_NID( - in template (value) NID p_nID - ) := { - { - id := id_NID, - criticality := reject, - extensionValue := { NID := p_nID } - } - } // End of template m_userLocationInformationNR_id_NID + template (present) MBSSessionSetupOrModRequestTransfer mw_mBSSessionSetupOrModRequestTransfer( + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { + protocolIEs := p_protocolIEs + } // End of template mw_mBSSessionSetupOrModRequestTransfer - template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_NRNTNTAIInformation( - in template (value) NRNTNTAIInformation p_nRNTNTAIInformation - ) := { - { - id := id_NRNTNTAIInformation, - criticality := ignore, - extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } - } - } // End of template m_userLocationInformationNR_id_NRNTNTAIInformation + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( + template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC - template (omit) UserPlaneSecurityInformation m_userPlaneSecurityInformation( - in template (value) SecurityResult p_securityResult, - in template (value) SecurityIndication p_securityIndication, - in template (omit) UserPlaneSecurityInformation.iE_Extensions p_iE_Extensions := omit - ) := { - securityResult := p_securityResult, - securityIndication := p_securityIndication, - iE_Extensions := p_iE_Extensions - } // End of template m_userPlaneSecurityInformation - - template (omit) VolumeTimedReport_Item m_volumeTimedReport_Item( - in template (value) VolumeTimedReport_Item.startTimeStamp p_startTimeStamp, - in template (value) VolumeTimedReport_Item.endTimeStamp p_endTimeStamp, - in template (value) VolumeTimedReport_Item.usageCountUL p_usageCountUL, - in template (value) VolumeTimedReport_Item.usageCountDL p_usageCountDL, - in template (omit) VolumeTimedReport_Item.iE_Extensions p_iE_Extensions := omit - ) := { - startTimeStamp := p_startTimeStamp, - endTimeStamp := p_endTimeStamp, - usageCountUL := p_usageCountUL, - usageCountDL := p_usageCountDL, - iE_Extensions := p_iE_Extensions - } // End of template m_volumeTimedReport_Item - - template (value) W_AGF_ID m_w_AGF_ID_w_AGF_ID( - in template (value) W_AGF_ID.w_AGF_ID p_w_AGF_ID - ) := { - w_AGF_ID := p_w_AGF_ID - } // End of template m_w_AGF_ID_w_AGF_ID - - template (value) W_AGF_ID m_w_AGF_ID_choice_Extensions( - in template (value) W_AGF_ID.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_w_AGF_ID_choice_Extensions - - template (value) WarningAreaList m_warningAreaList_eUTRA_CGIListForWarning( - in template (value) EUTRA_CGIListForWarning p_eUTRA_CGIListForWarning - ) := { - eUTRA_CGIListForWarning := p_eUTRA_CGIListForWarning - } // End of template m_warningAreaList_eUTRA_CGIListForWarning + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList - template (value) WarningAreaList m_warningAreaList_nR_CGIListForWarning( - in template (value) NR_CGIListForWarning p_nR_CGIListForWarning - ) := { - nR_CGIListForWarning := p_nR_CGIListForWarning - } // End of template m_warningAreaList_nR_CGIListForWarning + template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( + template (present) MBS_SessionFSAIDList p_mBS_SessionFSAIDList := ? + ) := { + { + id := id_MBS_SessionFSAIDList, + criticality := ignore, + value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList - template (value) WarningAreaList m_warningAreaList_tAIListForWarning( - in template (value) TAIListForWarning p_tAIListForWarning - ) := { - tAIListForWarning := p_tAIListForWarning - } // End of template m_warningAreaList_tAIListForWarning + template MBSSessionReleaseResponseTransfer mw_mBSSessionReleaseResponseTransfer( + template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, + template MBSSessionReleaseResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionReleaseResponseTransfer - template (value) WarningAreaList m_warningAreaList_emergencyAreaIDList( - in template (value) EmergencyAreaIDList p_emergencyAreaIDList - ) := { - emergencyAreaIDList := p_emergencyAreaIDList - } // End of template m_warningAreaList_emergencyAreaIDList + template MBSSessionSetupOrModResponseTransfer mw_mBSSessionSetupOrModResponseTransfer( + template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, + template MBSSessionSetupOrModResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupOrModResponseTransfer - template (value) WarningAreaList m_warningAreaList_choice_Extensions( - in template (value) WarningAreaList.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template m_warningAreaList_choice_Extensions - - template (omit) WLANMeasurementConfiguration m_wLANMeasurementConfiguration( - in template (value) WLANMeasConfig p_wlanMeasConfig, - in template (omit) WLANMeasConfigNameList p_wlanMeasConfigNameList := omit, - in template (omit) WLANMeasurementConfiguration.wlan_rssi p_wlan_rssi := omit, - in template (omit) WLANMeasurementConfiguration.wlan_rtt p_wlan_rtt := omit, - in template (omit) WLANMeasurementConfiguration.iE_Extensions p_iE_Extensions := omit - ) := { - wlanMeasConfig := p_wlanMeasConfig, - wlanMeasConfigNameList := p_wlanMeasConfigNameList, - wlan_rssi := p_wlan_rssi, - wlan_rtt := p_wlan_rtt, - iE_Extensions := p_iE_Extensions - } // End of template m_wLANMeasurementConfiguration - - template (omit) WLANMeasConfigNameItem m_wLANMeasConfigNameItem( - in template (value) WLANName p_wLANName, - in template (omit) WLANMeasConfigNameItem.iE_Extensions p_iE_Extensions := omit - ) := { - wLANName := p_wLANName, - iE_Extensions := p_iE_Extensions - } // End of template m_wLANMeasConfigNameItem + template (present) MBS_SupportIndicator mw_mBS_SupportIndicator(template (present) MBS_SupportIndicator p_value := true_) := p_value; - template (value) WLANMeasConfig m_wLANMeasConfig(in WLANMeasConfig p_value := setup) := p_value; + template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationindependent( + template (present) SharedNGU_MulticastTNLInformation p_locationindependent := ? + ) := { + locationindependent := p_locationindependent + } // End of template mw_mBS_SessionTNLInfo5GC_locationindependent - template (omit) WUS_Assistance_Information m_wUS_Assistance_Information( - in template (value) PagingProbabilityInformation p_pagingProbabilityInformation, - in template (omit) WUS_Assistance_Information.iE_Extensions p_iE_Extensions := omit - ) := { - pagingProbabilityInformation := p_pagingProbabilityInformation, - iE_Extensions := p_iE_Extensions - } // End of template m_wUS_Assistance_Information - - template (omit) XnExtTLA_Item m_xnExtTLA_Item( - in template (omit) TransportLayerAddress p_iPsecTLA := omit, - in template (omit) XnGTP_TLAs p_gTP_TLAs := omit, - in template (omit) XnExtTLA_Item.iE_Extensions p_iE_Extensions := omit - ) := { - iPsecTLA := p_iPsecTLA, - gTP_TLAs := p_gTP_TLAs, - iE_Extensions := p_iE_Extensions - } // End of template m_xnExtTLA_Item - - template (value) XnExtTLA_Item.iE_Extensions m_xnExtTLA_Item_id_SCTP_TLAs( - in template (value) SCTP_TLAs p_sCTP_TLAs - ) := { - { - id := id_SCTP_TLAs, - criticality := ignore, - extensionValue := { SCTP_TLAs := p_sCTP_TLAs } - } - } // End of template m_xnExtTLA_Item_id_SCTP_TLAs + template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationdependent( + template (present) MBS_SessionTNLInfo5GCList p_locationdependent := ? + ) := { + locationdependent := p_locationdependent + } // End of template mw_mBS_SessionTNLInfo5GC_locationdependent - template (omit) XnTNLConfigurationInfo m_xnTNLConfigurationInfo( - in template (value) XnTLAs p_xnTransportLayerAddresses, - in template (omit) XnExtTLAs p_xnExtendedTransportLayerAddresses := omit, - in template (omit) XnTNLConfigurationInfo.iE_Extensions p_iE_Extensions := omit - ) := { - xnTransportLayerAddresses := p_xnTransportLayerAddresses, - xnExtendedTransportLayerAddresses := p_xnExtendedTransportLayerAddresses, - iE_Extensions := p_iE_Extensions - } // End of template m_xnTNLConfigurationInfo - - } // End of group send - - group Receive { - - template (present) AdditionalDLUPTNLInformationForHOItem mw_additionalDLUPTNLInformationForHOItem( - template (present) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation := ?, - template (present) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList := ?, - template UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := *, - template AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := * - ) := { - additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, - additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, - additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_additionalDLUPTNLInformationForHOItem - - template (present) AdditionalDLUPTNLInformationForHOItem.iE_Extensions mw_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_additionalDLUPTNLInformationForHOItem_iE_Extensions + template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_choice_Extensions( + template (present) MBS_SessionTNLInfo5GC.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mBS_SessionTNLInfo5GC_choice_Extensions - template (present) AdditionalQosFlowInformation mw_additionalQosFlowInformation(template (present) AdditionalQosFlowInformation p_value := ?) := p_value; - template (present) AllocationAndRetentionPriority mw_allocationAndRetentionPriority( - template (present) PriorityLevelARP p_priorityLevelARP := ?, - template (present) Pre_emptionCapability p_pre_emptionCapability := ?, - template (present) Pre_emptionVulnerability p_pre_emptionVulnerability := ?, - template AllocationAndRetentionPriority.iE_Extensions p_iE_Extensions := * - ) := { - priorityLevelARP := p_priorityLevelARP, - pre_emptionCapability := p_pre_emptionCapability, - pre_emptionVulnerability := p_pre_emptionVulnerability, - iE_Extensions := p_iE_Extensions - } // End of template mw_allocationAndRetentionPriority - - template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(template (present) integer p_value := ?) := p_value; - - template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(template (present) integer p_value := ?) := p_value; - - template (present) AlternativeQoSParaSetItem mw_alternativeQoSParaSetItem( - template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ?, - template BitRate p_guaranteedFlowBitRateDL := *, - template BitRate p_guaranteedFlowBitRateUL := *, - template PacketDelayBudget p_packetDelayBudget := *, - template PacketErrorRate p_packetErrorRate := *, - template AlternativeQoSParaSetItem.iE_Extensions p_iE_Extensions := * - ) := { - alternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex, - guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, - guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, - packetDelayBudget := p_packetDelayBudget, - packetErrorRate := p_packetErrorRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_alternativeQoSParaSetItem + template (present) MBS_SessionTNLInfo5GCItem mw_mBS_SessionTNLInfo5GCItem( + template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, + template (present) SharedNGU_MulticastTNLInformation p_sharedNGU_MulticastTNLInformation := ?, + template MBS_SessionTNLInfo5GCItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_SessionTNLInfo5GCItem - template (present) AMFName mw_aMFName(template (present) AMFName p_value := ?) := p_value; + template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationindependent( + template (present) UPTransportLayerInformation p_locationindependent := ? + ) := { + locationindependent := p_locationindependent + } // End of template mw_mBS_SessionTNLInfoNGRAN_locationindependent - template (present) AMFNameVisibleString mw_aMFNameVisibleString(template (present) AMFNameVisibleString p_value := ?) := p_value; + template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationdependent( + template (present) MBS_SessionTNLInfoNGRANList p_locationdependent := ? + ) := { + locationdependent := p_locationdependent + } // End of template mw_mBS_SessionTNLInfoNGRAN_locationdependent - template (present) AMFNameUTF8String mw_aMFNameUTF8String(template (present) AMFNameUTF8String p_value := ?) := p_value; + template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_choice_Extensions( + template (present) MBS_SessionTNLInfoNGRAN.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mBS_SessionTNLInfoNGRAN_choice_Extensions - template (present) AMFPagingTarget mw_aMFPagingTarget_globalRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ? - ) := { - globalRANNodeID := p_globalRANNodeID - } // End of template mw_aMFPagingTarget_globalRANNodeID - - template (present) AMFPagingTarget mw_aMFPagingTarget_tAI( - template (present) TAI p_tAI := ? - ) := { - tAI := p_tAI - } // End of template mw_aMFPagingTarget_tAI - - template (present) AMFPagingTarget mw_aMFPagingTarget_ext( - template (present) AMFPagingTarget.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_aMFPagingTarget_ext - - template (present) AMF_TNLAssociationSetupItem mw_aMF_TNLAssociationSetupItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template AMF_TNLAssociationSetupItem.iE_Extensions p_iE_Extensions := * - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationSetupItem - - template (present) AMF_TNLAssociationToAddItem mw_aMF_TNLAssociationToAddItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template (present) TNLAddressWeightFactor p_tNLAddressWeightFactor := ?, - template TNLAssociationUsage p_tNLAssociationUsage := *, - template AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := * - ):= { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - tNLAssociationUsage := p_tNLAssociationUsage, - tNLAddressWeightFactor := p_tNLAddressWeightFactor, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationToAddItem - - template (present) AMF_TNLAssociationToRemoveItem mw_aMF_TNLAssociationToRemoveItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template AMF_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationToRemoveItem - - template (present) AMF_TNLAssociationToUpdateItem mw_aMF_TNLAssociationToUpdateItem( - template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, - template TNLAssociationUsage p_tNLAssociationUsage := *, - template TNLAddressWeightFactor p_tNLAddressWeightFactor := *, - template AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := * - ) := { - aMF_TNLAssociationAddress := p_aMF_TNLAssociationAddress, - tNLAssociationUsage := p_tNLAssociationUsage, - tNLAddressWeightFactor := p_tNLAddressWeightFactor, - iE_Extensions := p_iE_Extensions - } // End of template mw_aMF_TNLAssociationToUpdateItem - - template AreaOfInterest mw_areaOfInterest( - template AreaOfInterestTAIList p_areaOfInterestTAIList := *, - template AreaOfInterestCellList p_areaOfInterestCellList := *, - template AreaOfInterestRANNodeList p_areaOfInterestRANNodeList := *, - template AreaOfInterest.iE_Extensions p_iE_Extensions := * - ) := { - areaOfInterestTAIList := p_areaOfInterestTAIList, - areaOfInterestCellList := p_areaOfInterestCellList, - areaOfInterestRANNodeList := p_areaOfInterestRANNodeList, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterest - - template (present) AreaOfInterestCellItem mw_areaOfInterestCellItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template AreaOfInterestCellItem.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterestCellItem - - template (present) AreaOfInterestItem mw_reaOfInterestItem( - template (present) AreaOfInterest p_areaOfInterest := ?, - template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, - template AreaOfInterestItem.iE_Extensions p_iE_Extensions := * - ) := { - areaOfInterest := p_areaOfInterest, - locationReportingReferenceID := p_locationReportingReferenceID, - iE_Extensions := p_iE_Extensions - } // End of template mw_reaOfInterestItem - - template (present) AreaOfInterestRANNodeItem mw_areaOfInterestRANNodeItem( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template AreaOfInterestRANNodeItem.iE_Extensions p_iE_Extensions := * - ):= { - globalRANNodeID := p_globalRANNodeID, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterestRANNodeItem - - template (present) AreaOfInterestTAIItem mw_areaOfInterestTAIItem( - template (present) TAI p_tAI := ?, - template AreaOfInterestTAIItem.iE_Extensions p_iE_Extensions := * - ) := { - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaOfInterestTAIItem - - template AssistanceDataForPaging mw_assistanceDataForPaging( - template AssistanceDataForRecommendedCells p_assistanceDataForRecommendedCells := *, - template PagingAttemptInformation p_pagingAttemptInformation := *, - template AssistanceDataForPaging.iE_Extensions p_iE_Extensions := * - ) := { - assistanceDataForRecommendedCells := p_assistanceDataForRecommendedCells, - pagingAttemptInformation := p_pagingAttemptInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_assistanceDataForPaging + template (present) MBS_SessionTNLInfoNGRANItem mw_mBS_SessionTNLInfoNGRANItem( + template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, + template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, + template MBS_SessionTNLInfoNGRANItem.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_SessionTNLInfoNGRANItem - template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_NPN_PagingAssistanceInformation( - template (present) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation := ? - ) := { - { - id := id_NPN_PagingAssistanceInformation, - criticality := ignore, - extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } - } - } // End of template mw_assistanceDataForPaging_NPN_PagingAssistanceInformation + template (present) MBS_DistributionReleaseRequestTransfer mw_mBS_DistributionReleaseRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, + template MBS_DistributionReleaseRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionReleaseRequestTransfer + + template (present) MBS_DistributionSetupRequestTransfer mw_mBS_DistributionSetupRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, + template MBS_DistributionSetupRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionSetupRequestTransfer - template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE( - template (present) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE := ? - ) := { - { - id := id_PagingAssisDataforCEcapabUE, - criticality := ignore, - extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } - } - } // End of template mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE - - template (present) AssistanceDataForRecommendedCells mw_assistanceDataForRecommendedCells( - template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, - template AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := * - ) := { - recommendedCellsForPaging := p_recommendedCellsForPaging, - iE_Extensions := p_iE_Extensions - } // End of template mw_assistanceDataForRecommendedCells - - template (present) AssociatedMBSQosFlowSetupRequestItem mw_associatedMBSQosFlowSetupRequestItem( - template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, - template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, - template AssociatedMBSQosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * + template (present) MBS_DistributionSetupResponseTransfer mw_mBS_DistributionSetupResponseTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, + template (present) MBSSessionStatus p_mBSSessionStatus := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template MBS_SessionTNLInfo5GCItem p_sharedNGU_MulticastTNLInformation := *, + template MBS_ServiceArea p_mBS_ServiceArea := *, + template MBS_DistributionSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, + mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, + mBSSessionStatus := p_mBSSessionStatus, + mBS_ServiceArea := p_mBS_ServiceArea, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionSetupResponseTransfer + + template (present) MBS_DistributionSetupUnsuccessfulTransfer mw_mBS_DistributionSetupUnsuccessfulTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template MBS_DistributionSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBS_DistributionSetupUnsuccessfulTransfer + + template (present) MBSSessionSetupRequestItem mw_mBSSessionSetupRequestItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := *, + template MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := * + ):= { + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetupRequestList := p_associatedMBSQosFlowSetupRequestList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetupRequestItem + + template (present) MBSSessionSetuporModifyRequestItem mw_mBSSessionSetuporModifyRequestItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template AssociatedMBSQosFlowSetuporModifyRequestList p_associatedMBSQosFlowSetuporModifyRequestList := *, + template QosFlowListWithCause p_mBS_QosFlowToReleaseList := *, + template MBSSessionSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * ) := { - mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, - associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template mw_associatedMBSQosFlowSetupRequestItem - - template (present) AssociatedMBSQosFlowSetuporModifyRequestItem mw_associatedMBSQosFlowSetuporModifyRequestItem( - template (present) QosFlowIdentifier p_mBS_QosFlowIdentifier := ?, - template (present) QosFlowIdentifier p_associatedUnicastQosFlowIdentifier := ?, - template AssociatedMBSQosFlowSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * + mBS_SessionID := p_mBS_SessionID, + mBS_AreaSessionID := p_mBS_AreaSessionID, + associatedMBSQosFlowSetuporModifyRequestList := p_associatedMBSQosFlowSetuporModifyRequestList, + mBS_QosFlowToReleaseList := p_mBS_QosFlowToReleaseList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionSetuporModifyRequestItem + + template (present) MBSSessionToReleaseItem mw_mBSSessionToReleaseItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template (present) Cause p_cause := ?, + template MBSSessionToReleaseItem.iE_Extensions p_iE_Extensions := * + ):= { + mBS_SessionID := p_mBS_SessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_mBSSessionToReleaseItem + + template (present) MBSSessionStatus mw_mBSSessionStatus(template (present) MBSSessionStatus p_value := ?) := p_value; + + template (present) MicoAllPLMN mw_micoAllPLMN(template (present) MicoAllPLMN p_value := true_) := p_value; + + template (present) MICOModeIndication mw_mICOModeIndication(template (present) MICOModeIndication p_value := true_) := p_value; + + template (present) MobilityRestrictionList mw_mobilityRestrictionList( + template (present) PLMNIdentity p_servingPLMN := ?, + template EquivalentPLMNs p_equivalentPLMNs := *, + template RATRestrictions p_rATRestrictions := *, + template ForbiddenAreaInformation p_forbiddenAreaInformation := *, + template ServiceAreaInformation p_serviceAreaInformation := *, + template MobilityRestrictionList.iE_Extensions p_iE_Extensions := * + ) := { + servingPLMN := p_servingPLMN, + equivalentPLMNs := p_equivalentPLMNs, + rATRestrictions := p_rATRestrictions, + forbiddenAreaInformation := p_forbiddenAreaInformation, + serviceAreaInformation := p_serviceAreaInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_mobilityRestrictionList + + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( + template (present) PLMNIdentity p_pLMNIdentity := ? ) := { - mBS_QosFlowIdentifier := p_mBS_QosFlowIdentifier, - associatedUnicastQosFlowIdentifier := p_associatedUnicastQosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template mw_associatedMBSQosFlowSetuporModifyRequestItem - - template (present) AssociatedQosFlowItem mw_associatedQosFlowItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template AssociatedQosFlowItem.qosFlowMappingIndication p_qosFlowMappingIndication := *, - template AssociatedQosFlowItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - qosFlowMappingIndication := p_qosFlowMappingIndication, - iE_Extensions := p_iE_Extensions - } // End of template mw_associatedQosFlowItem - - template (present) AssociatedQosFlowItem.iE_Extensions mw_associatedQosFlowItem_alternativeQoSParaSetIndex( - template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template mw_associatedQosFlowItem_alternativeQoSParaSetIndex + { + id := id_LastEUTRAN_PLMNIdentity, + criticality := ignore, + extensionValue := { PLMNIdentity := p_pLMNIdentity } + } + } // End of template mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity + + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing( + template (present) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing := ? + ) := { + { + id := id_CNTypeRestrictionsForServing, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } + } + } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing + + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( + template (present) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent := ? + ) := { + { + id := id_CNTypeRestrictionsForEquivalent, + criticality := ignore, + extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } + } + } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent + + template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_NPN_MobilityInformation( + template (present) NPN_MobilityInformation p_nPN_MobilityInformation := ? + ) := { + { + id := id_NPN_MobilityInformation, + criticality := reject, + extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } + } + } // End of template mw_mobilityRestrictionList_id_NPN_MobilityInformation + + template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_s_basedMDT( + template (present) NGRANTraceID p_s_basedMDT := ? + ) := { + s_basedMDT := p_s_basedMDT + } // End of template mw_mDT_AlignmentInfo_s_basedMDT - template (present) AuthenticatedIndication mw_authenticatedIndication(template (present) AuthenticatedIndication p_value := true_) := p_value; + template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_choice_Extensions( + template (present) MDT_AlignmentInfo.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mDT_AlignmentInfo_choice_Extensions - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_NR_cellBased( - template (present) CellBasedMDT_NR p_cellBased := ? + template MDT_Configuration mw_mDT_Configuration( + template MDT_Configuration_NR p_mdt_Config_NR := *, + template MDT_Configuration_EUTRA p_mdt_Config_EUTRA := *, + template MDT_Configuration.iE_Extensions p_iE_Extensions := * + ) := { + mdt_Config_NR := p_mdt_Config_NR, + mdt_Config_EUTRA := p_mdt_Config_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Configuration + + template (present) MDT_Configuration_NR mw_mDT_Configuration_NR( + template (present) MDT_Activation p_mdt_Activation := ?, + template (present) AreaScopeOfMDT_NR p_areaScopeOfMDT := ?, + template (present) MDTModeNr p_mDTModeNr := ?, + template MDTPLMNList p_signallingBasedMDTPLMNList := *, + template MDT_Configuration_NR.iE_Extensions p_iE_Extensions := * ) := { - cellBased := p_cellBased - } // End of template mw_areaScopeOfMDT_cellBased - - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tABased( - template (present) TABasedMDT p_tABased := ? - ) := { - tABased := p_tABased - } // End of template mw_areaScopeOfMDT_tABased + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTModeNr := p_mDTModeNr, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Configuration_NR + + template (present) MDT_Configuration_EUTRA mw_mDT_Configuration_EUTRA( + template (present) MDT_Activation p_mdt_Activation := ?, + template (present) AreaScopeOfMDT_EUTRA p_areaScopeOfMDT := ?, + template (present) MDTModeEutra p_mDTMode := ?, + template MDTPLMNList p_signallingBasedMDTPLMNList := *, + template MDT_Configuration_EUTRA.iE_Extensions p_iE_Extensions := * + ) := { + mdt_Activation := p_mdt_Activation, + areaScopeOfMDT := p_areaScopeOfMDT, + mDTMode := p_mDTMode, + signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Configuration_EUTRA - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_pLMNWide := { - pLMNWide := NULL - } // End of template mw_areaScopeOfMDT_pLMNWide + template (present) MDT_Activation mw_mDT_Activation(template (present) MDT_Activation p_value := ?) := p_value; - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_tAIBased( - template (present) TAIBasedMDT p_tAIBased := ? - ) := { - tAIBased := p_tAIBased - } // End of template mw_areaScopeOfMDT_tAIBased - - template (present) AreaScopeOfMDT_NR mw_areaScopeOfMDT_ext( - template (present) AreaScopeOfMDT_NR.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_areaScopeOfMDT_ext - - template (present) AreaScopeOfNeighCellsItem mw_areaScopeOfNeighCellsItem( - template (present) NRFrequencyInfo p_nrFrequencyInfo := ?, - template PCIListForMDT p_pciListForMDT := *, - template AreaScopeOfNeighCellsItem.iE_Extensions p_iE_Extensions := * - ) := { - nrFrequencyInfo := p_nrFrequencyInfo, - pciListForMDT := p_pciListForMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_areaScopeOfNeighCellsItem - - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_cellBased( - template (present) CellBasedQMC p_cellBased := ? - ) := { - cellBased := p_cellBased - } // End of template mw_areaScopeOfQMC_cellBased - - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tABased( - template (present) TABasedQMC p_tABased := ? + template (present) MDTModeNr mw_mDTModeNro_immediateMDTNr( + template (present) ImmediateMDTNr p_immediateMDTNr := ? ) := { - tABased := p_tABased - } // End of template mw_areaScopeOfQMC_tABased - - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_tAIBased( - template (present) TAIBasedQMC p_tAIBased := ? - ) := { - tAIBased := p_tAIBased - } // End of template mw_areaScopeOfQMC_tAIBased - - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_pLMNAreaBased( - template (present) PLMNAreaBasedQMC p_pLMNAreaBased := ? - ) := { - pLMNAreaBased := p_pLMNAreaBased - } // End of template mw_areaScopeOfQMC_pLMNAreaBased - - template (present) AreaScopeOfQMC mw_areaScopeOfQMC_ext( - template (present) AreaScopeOfQMC.choice_Extensions p_choice_Extensions := ? + immediateMDTNr := p_immediateMDTNr + } // End of template mw_mDTModeNr_immediateMDTNr + + template (present) MDTModeNr mw_mDTModeNro_loggedMDTNr( + template (present) LoggedMDTNr p_loggedMDTNr := ? ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_areaScopeOfQMC_ext + loggedMDTNr := p_loggedMDTNr + } // End of template mw_mDTModeNr_loggedMDTNr - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_cellBased( - template (present) CellBasedMDT_EUTRA p_cellBased - ) := { - cellBased := p_cellBased - } // End of template mw_areaScopeOfMDT_EUTRA_cellBased + template (present) MDTModeNr mw_mDTModeNr_choice_Extensions( + template (present) MDTModeNr.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_mDTModeNr_choice_Extensions - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tABased( - template (present) TABasedMDT p_tABased - ) := { - tABased := p_tABased - } // End of template mw_areaScopeOfMDT_EUTRA_tABased + template (present) MulticastSessionActivationRequestTransfer mw_multicastSessionActivationRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MulticastSessionActivationRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastSessionActivationRequestTransfer - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_pLMNWide := { - pLMNWide := NULL - } // End of template mw_areaScopeOfMDT_EUTRA_pLMNWide + template (present) MulticastSessionDeactivationRequestTransfer mw_multicastSessionDeactivationRequestTransfer( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MulticastSessionDeactivationRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + mBS_SessionID := p_mBS_SessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastSessionDeactivationRequestTransfer - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_tAIBased( - template (present) TAIBasedMDT p_tAIBased - ) := { - tAIBased := p_tAIBased - } // End of template mw_areaScopeOfMDT_EUTRA_tAIBased + template (present) MulticastSessionUpdateRequestTransfer mw_multicastSessionUpdateRequestTransfer( + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { + protocolIEs := p_protocolIEs + } // End of template mw_multicastSessionUpdateRequestTransfer - template (present) AreaScopeOfMDT_EUTRA mw_areaScopeOfMDT_EUTRA_ext( - template (present) AreaScopeOfMDT_EUTRA.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_areaScopeOfMDT_EUTRA_ext + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( + template (present) MBS_SessionID p_mBS_SessionID := ? + ) := { + { + id := id_MBS_SessionID, + criticality := reject, + value_ := { MBS_SessionID := p_mBS_SessionID } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID - template AvailableRANVisibleQoEMetrics mw_availableRANVisibleQoEMetrics( - template AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := *, - template AvailableRANVisibleQoEMetrics.playoutDelayForMediaStartup p_playoutDelayForMediaStartup := *, - template AvailableRANVisibleQoEMetrics.iE_Extensions p_iE_Extensions := * - ) := { - applicationLayerBufferLevelList := p_applicationLayerBufferLevelList, - playoutDelayForMediaStartup := p_playoutDelayForMediaStartup, - iE_Extensions := p_iE_Extensions - } // End of template mw_availableRANVisibleQoEMetrics - - template BeamMeasurementsReportConfiguration mw_beamMeasurementsReportConfiguration( - template BeamMeasurementsReportQuantity p_beamMeasurementsReportQuantity := *, - template MaxNrofRS_IndexesToReport p_maxNrofRS_IndexesToReport := *, - template BeamMeasurementsReportConfiguration.iE_Extensions p_iE_Extensions := * - ) := { - beamMeasurementsReportQuantity := p_beamMeasurementsReportQuantity, - maxNrofRS_IndexesToReport := p_maxNrofRS_IndexesToReport, - iE_Extensions := p_iE_Extensions - } // End of template mw_beamMeasurementsReportConfiguration - - template BeamMeasurementsReportQuantity mw_beamMeasurementsReportQuantity( - template BeamMeasurementsReportQuantity.rSRP p_rSRP := true_, - template BeamMeasurementsReportQuantity.rSRQ p_rSRQ := true_, - template BeamMeasurementsReportQuantity.sINR p_sINR := true_, - template BeamMeasurementsReportQuantity.iE_Extensions p_iE_Extensions := * - ) := { - rSRP := p_rSRP, - rSRQ := p_rSRQ, - sINR := p_sINR, - iE_Extensions := p_iE_Extensions - } // End of template mw_beamMeasurementsReportQuantity - - template (present) BitRate mw_bitRate (template (present) BitRate p_value := ?) := p_value; - - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledEUTRA( - template (present) CellIDCancelledEUTRA p_cellIDCancelledEUTRA := ? - ) := { - cellIDCancelledEUTRA := p_cellIDCancelledEUTRA - } // End of template mw_broadcastCancelledAreaList_cellIDCancelledEUTRA - - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledEUTRA( - template (present) TAICancelledEUTRA p_tAICancelledEUTRA := ? - ) := { - tAICancelledEUTRA := p_tAICancelledEUTRA - } // End of template mw_broadcastCancelledAreaList_tAICancelledEUTRA - - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA( - template (present) EmergencyAreaIDCancelledEUTRA p_emergencyAreaIDCancelledEUTRA := ? - ) := { - emergencyAreaIDCancelledEUTRA := p_emergencyAreaIDCancelledEUTRA - } // End of template mw_broadcastCancelledAreaList_emergencyAreaIDCancelledEUTRA - - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_cellIDCancelledNR( - template (present) CellIDCancelledNR p_cellIDCancelledNR := ? - ) := { - cellIDCancelledNR := p_cellIDCancelledNR - } // End of template mw_broadcastCancelledAreaList_cellIDCancelledNR - - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_tAICancelledNR( - template (present) TAICancelledNR p_tAICancelledNR := ? - ) := { - tAICancelledNR := p_tAICancelledNR - } // End of template mw_broadcastCancelledAreaList_tAICancelledNR - - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_emergencyAreaIDCancelledNR( - template (present) EmergencyAreaIDCancelledNR p_emergencyAreaIDCancelledNR := ? - ) := { - emergencyAreaIDCancelledNR := p_emergencyAreaIDCancelledNR - } // End of template mw_broadcastCancelledAreaList_ext - - template (present) BroadcastCancelledAreaList mw_broadcastCancelledAreaList_ext( - template (present) BroadcastCancelledAreaList.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_broadcastCancelledAreaList_ext - - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastEUTRA( - template (present) CellIDBroadcastEUTRA p_cellIDBroadcastEUTRA - ) := { - cellIDBroadcastEUTRA := p_cellIDBroadcastEUTRA - } // End of template mw_broadcastCompletedAreaList_cellIDCancelledEUTRA - - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastEUTRA( - template (present) TAIBroadcastEUTRA p_tAIBroadcastEUTRA - ) := { - tAIBroadcastEUTRA := p_tAIBroadcastEUTRA - } // End of template mw_broadcastCompletedAreaList_tAIBroadcastEUTRA - - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA( - template (present) EmergencyAreaIDBroadcastEUTRA p_emergencyAreaIDBroadcastEUTRA - ) := { - emergencyAreaIDBroadcastEUTRA := p_emergencyAreaIDBroadcastEUTRA - } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastEUTRA - - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_cellIDBroadcastNR( - template (present) CellIDBroadcastNR p_cellIDBroadcastNR - ) := { - cellIDBroadcastNR := p_cellIDBroadcastNR - } // End of template mw_broadcastCompletedAreaList_cellIDBroadcastNR - - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_tAIBroadcastNR( - template (present) TAIBroadcastNR p_tAIBroadcastNR - ) := { - tAIBroadcastNR := p_tAIBroadcastNR - } // End of template mw_broadcastCompletedAreaList_tAIBroadcastNR - - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR( - template (present) EmergencyAreaIDBroadcastNR p_emergencyAreaIDBroadcastNR - ) := { - emergencyAreaIDBroadcastNR := p_emergencyAreaIDBroadcastNR - } // End of template mw_broadcastCompletedAreaList_emergencyAreaIDBroadcastNR - - template (present) BroadcastCompletedAreaList mw_broadcastCompletedAreaList_ext( - template (present) BroadcastCompletedAreaList.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_broadcastCompletedAreaList_ext - - template (present) BroadcastPLMNItem mw_ie_broadcastPLMNItem( - template (present) PLMNIdentity p_plmnId := ?, - template (present) SliceSupportList p_ssl := ?, - template BroadcastPLMNItem.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_plmnId, - tAISliceSupportList := p_ssl, - iE_Extensions := p_iE_Extensions - } // End of template mw_ie_broadcastPLMNItem - - template (present) BluetoothMeasurementConfiguration mw_bluetoothMeasurementConfiguration( - template (present) BluetoothMeasConfig p_bluetoothMeasConfig := ?, - template BluetoothMeasConfigNameList p_bluetoothMeasConfigNameList := *, - template BluetoothMeasurementConfiguration.bt_rssi p_bt_rssi := *, - template BluetoothMeasurementConfiguration.iE_Extensions p_iE_Extensions := * - ) := { - bluetoothMeasConfig := p_bluetoothMeasConfig, - bluetoothMeasConfigNameList := p_bluetoothMeasConfigNameList, - bt_rssi := p_bt_rssi, - iE_Extensions := p_iE_Extensions - } // End of template mw_bluetoothMeasurementConfiguration - - template (present) BluetoothMeasConfigNameItem mw_bluetoothMeasConfigNameItem( - template (present) BluetoothName p_bluetoothName := ?, - template BluetoothMeasConfigNameItem.iE_Extensions p_iE_Extensions := * - ) := { - bluetoothName := p_bluetoothName, - iE_Extensions := p_iE_Extensions - } // End of template mw_bluetoothMeasConfigNameItem + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( + template (present) MBS_ServiceArea p_mBS_ServiceArea := ? + ) := { + { + id := id_MBS_ServiceArea, + criticality := reject, + value_ := { MBS_ServiceArea := p_mBS_ServiceArea } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea - template (present) BluetoothMeasConfig mw_bluetoothMeasConfig(template (present) BluetoothMeasConfig p_value := setup) := p_value; + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? + ) := { + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList - template (present) CancelAllWarningMessages mw_cancelAllWarningMessages(template (present) CancelAllWarningMessages p_value := true_) := p_value; + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( + template (present) QosFlowListWithCause p_qosFlowListWithCause := ? + ) := { + { + id := id_MBS_QoSFlowToReleaseList, + criticality := reject, + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList + template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( + template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? + ) := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + } + } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC - template (present) CancelledCellsInEAI_EUTRA_Item mw_cancelledCellsInEAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * + template (present) MulticastGroupPagingAreaItem mw_multicastGroupPagingAreaItem( + template (present) MulticastGroupPagingArea p_multicastGroupPagingArea := ?, + template UE_PagingList p_uE_PagingList := *, + template MulticastGroupPagingAreaItem.iE_Extensions p_iE_Extensions := * ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cancelledCellsInEAI_EUTRA_Item - - template (present) CancelledCellsInEAI_NR_Item mw_cancelledCellsInEAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cancelledCellsInEAI_NR_Item + multicastGroupPagingArea := p_multicastGroupPagingArea, + uE_PagingList := p_uE_PagingList, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastGroupPagingAreaItem + + template (present) MulticastGroupPagingArea mw_multicastGroupPagingArea( + template (present) MBS_AreaTAIList p_mBS_AreaTAIList := ?, + template MulticastGroupPagingArea.iE_Extensions p_iE_Extensions := * + ) := { + mBS_AreaTAIList := p_mBS_AreaTAIList, + iE_Extensions := p_iE_Extensions + } // End of template mw_multicastGroupPagingArea + + template (present) UE_PagingItem mw_uE_PagingItem( + template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, + template PagingDRX p_pagingDRX := *, + template UE_PagingItem.iE_Extensions p_iE_Extensions := * + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + pagingDRX := p_pagingDRX, + iE_Extensions := p_iE_Extensions + } // End of template mw_uE_PagingItem + + template (present) M1Configuration mw_m1Configuration( + template (present) M1ReportingTrigger p_m1reportingTrigger := ?, + template M1ThresholdEventA2 p_m1thresholdEventA2 := *, + template M1PeriodicReporting p_m1periodicReporting := *, + template M1Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m1reportingTrigger := p_m1reportingTrigger, + m1thresholdEventA2 := p_m1thresholdEventA2, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” + m1periodicReporting := p_m1periodicReporting, + // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” + iE_Extensions := p_iE_Extensions + } // End of template mw_m1Configuration + + template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_IncludeBeamMeasurementsIndication( + template (present) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication := ? + ) := { + { + id := id_IncludeBeamMeasurementsIndication, + criticality := ignore, + extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } + } + } // End of template mw_m1Configuration_id_IncludeBeamMeasurementsIndication - template (present) CancelledCellsInTAI_EUTRA_Item mw_cancelledCellsInTAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cancelledCellsInTAI_EUTRA_Item - - template (present) CancelledCellsInTAI_NR_Item mw_CancelledCellsInTAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CancelledCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_CancelledCellsInTAI_NR_Item - - template (present) CandidateCellItem mw_candidateCellItem( - template (present) CandidateCell p_candidateCell := ?, - template CandidateCellItem.iE_Extensions p_iE_Extensions := * - ) := { - candidateCell := p_candidateCell, - iE_Extensions := p_iE_Extensions - } // End of template mw_candidateCellItem - - template (present) CandidateCell mw_candidateCell_candidateCGI( - template (present) CandidateCellID p_candidateCGI := ? - ) := { - candidateCGI := p_candidateCGI - } // End of template mw_candidateCell_candidateCGI - - template (present) CandidateCell mw_candidateCell_candidatePCI( - template (present) CandidatePCI p_candidatePCI := ? - ) := { - candidatePCI := p_candidatePCI - } // End of template mw_candidateCell_candidatePCI - - template (present) CandidateCell mw_candidateCell_ext( - template (present) CandidateCell.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_candidateCell_ext - - template (present) CandidatePCI mw_candidatePCI( - template (present) CandidatePCI.candidatePCI p_candidatePCI := ?, - template (present) CandidatePCI.candidateNRARFCN p_candidateNRARFCN := ?, - template CandidatePCI.iE_Extensions p_iE_Extensions := * - ) := { - candidatePCI := p_candidatePCI, - candidateNRARFCN := p_candidateNRARFCN, - iE_Extensions := p_iE_Extensions - } // End of template mw_candidatePCI + template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_BeamMeasurementsReportConfiguration( + template (present) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration := ? + ) := { + { + id := id_BeamMeasurementsReportConfiguration, + criticality := ignore, + extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } + } + } // End of template mw_m1Configuration_id_BeamMeasurementsReportConfiguration - template (present) Cause mw_cause_radioNetwork( - template (present) CauseRadioNetwork p_radioNetwork - ) := { - radioNetwork := p_radioNetwork - } // End of template mw_cause_radioNetwork + template (present) IncludeBeamMeasurementsIndication mw_includeBeamMeasurementsIndication(template (present) IncludeBeamMeasurementsIndication p_value := true_) := p_value; - template (present) Cause mw_cause_transport( - template (present) CauseTransport p_transport - ) := { - transport := p_transport - } // End of template mw_cause_transport + template (present) M1ReportingTrigger mw_m1ReportingTrigger(template (present) M1ReportingTrigger p_value := ?) := p_value; - template (present) Cause mw_cause_nas( - template (present) CauseNas p_nas - ) := { - nas := p_nas - } // End of template mw_cause_nas + template (present) M1ThresholdEventA2 mw_m1ThresholdEventA2( + template (present) M1ThresholdType p_m1ThresholdType := ?, + template M1ThresholdEventA2.iE_Extensions p_iE_Extensions := * + ) := { + m1ThresholdType := p_m1ThresholdType, + iE_Extensions := p_iE_Extensions + } // End of template mw_m1ThresholdEventA2 - template (present) Cause mw_cause_protocol( - template (present) CauseProtocol p_protocol - ) := { - protocol := p_protocol - } // End of template mw_cause_protocol - - template (present) Cause mw_cause_misc( - template (present) CauseMisc p_misc - ) := { - misc := p_misc - } // End of template mw_cause_misc - - template (present) Cause mw_cause_ext( - template (present) Cause.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_cause_ext - - template (present) CauseMisc mw_causeMisc(template (present) CauseMisc p_value := ?) := p_value; - template (present) CauseNas mw_causeNas(template (present) CauseNas p_value := ?) := p_value; - template (present) CauseProtocol mw_causeProtocol(template (present) CauseProtocol p_value := ?) := p_value; - template (present) CauseRadioNetwork mww_causeRadioNetwork(template (present) CauseRadioNetwork p_value := ?) := p_value; - template (present) CauseTransport mw_causeTransport(template (present) CauseTransport p_value := ?) := p_value; - - template (present) Cell_CAGInformation mw_cell_CAGInformation( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template (present) CellCAGList p_cellCAGList := ?, - template Cell_CAGInformation.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - cellCAGList := p_cellCAGList, - iE_Extensions := p_iE_Extensions - } // End of template mw_cell_CAGInformation - - template (present) CellIDBroadcastEUTRA_Item mw_cellIDBroadcastEUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template CellIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDBroadcastEUTRA_Item + template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRP( + template (present) Threshold_RSRP p_threshold_RSRP := ? + ) := { + threshold_RSRP := p_threshold_RSRP + } // End of template mw_m1ThresholdType_threshold_RSRP - template (present) CellIDBroadcastNR_Item mw_cellIDBroadcastNR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template CellIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDBroadcastNR_Item - - template (present) CellIDCancelledEUTRA_Item mw_cellIDCancelledEUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CellIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDCancelledEUTRA_Item - - template (present) CellIDCancelledNR_Item mw_cellIDCancelledNR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template (present) NumberOfBroadcasts p_numberOfBroadcasts := ?, - template CellIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - numberOfBroadcasts := p_numberOfBroadcasts, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellIDCancelledNR_Item + template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRQ( + template (present) Threshold_RSRQ p_threshold_RSRQ := ? + ) := { + threshold_RSRQ := p_threshold_RSRQ + } // End of template mw_m1ThresholdType_threshold_RSRQ - template (present) CellIDListForRestart mw_cellIDListForRestart_eUTRA_CGIListforRestart( - template (present) EUTRA_CGIList p_eUTRA_CGIListforRestart := ? - ) := { - eUTRA_CGIListforRestart := p_eUTRA_CGIListforRestart - } // End of template mw_cellIDListForRestart_misc + template (present) M1ThresholdType mw_m1ThresholdType_threshold_SINR( + template (present) Threshold_SINR p_threshold_SINR := ? + ) := { + threshold_SINR := p_threshold_SINR + } // End of template mw_m1ThresholdType_threshold_SINR - template (present) CellIDListForRestart mw_cellIDListForRestart_nR_CGIListforRestart( - template (present) NR_CGIList p_nR_CGIListforRestart := ? - ) := { - nR_CGIListforRestart := p_nR_CGIListforRestart - } // End of template mw_cellIDListForRestart_nR_CGIListforRestart + template (present) M1ThresholdType mw_m1ThresholdType_choice_Extensions( + template (present) M1ThresholdType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_m1ThresholdType_choice_Extensions - template (present) CellIDListForRestart mw_cellIDListForRestart_ext( - template (present) CellIDListForRestart.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_cellIDListForRestart_ext + template (present) M1PeriodicReporting mw_m1PeriodicReporting( + template (present) ReportIntervalMDT p_reportInterval := ?, + template (present) ReportAmountMDT p_reportAmount := ?, + template M1PeriodicReporting.iE_Extensions p_iE_Extensions := * + ) := { + reportInterval := p_reportInterval, + reportAmount := p_reportAmount, + iE_Extensions := p_iE_Extensions + } // End of template mw_m1PeriodicReporting - template (present) CellSize mw_cellSize(template (present) CellSize p_value := ?) := p_value; + template (present) M1PeriodicReporting.iE_Extensions mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT( + template (present) ExtendedReportIntervalMDT p_extendedReportIntervalMDT := ? + ) := { + { + id := id_ExtendedReportIntervalMDT, + criticality := ignore, + extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } + } + } // End of template mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT - template (present) CellType mw_cellType( - template (present) CellSize p_cellSize:= ?, - template CellType.iE_Extensions p_iE_Extensions := * - ) := { - cellSize := p_cellSize, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellType + template (present) M4Configuration mw_m4Configuration( + template (present) M4period p_m4period := ?, + template (present) Links_to_log p_m4_links_to_log := ?, + template M4Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m4period := p_m4period, + m4_links_to_log := p_m4_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m4Configuration - template (present) CEmodeBSupport_Indicator mw_cEmodeBSupport_Indicator(template (present) CEmodeBSupport_Indicator p_value := ?) := p_value; - template (present) CEmodeBrestricted mw_cEmodeBrestricted(template (present) CEmodeBrestricted p_value := ?) := p_value; + template (present) M4Configuration.iE_Extensions mw_m4Configuration_id_M4ReportAmount( + template (present) M4ReportAmountMDT p_m4ReportAmountMDT := ? + ) := { + { + id := id_ExtendedReportIntervalMDT, + criticality := ignore, + extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } + } + } // End of template mw_m4Configuration_id_M4ReportAmount - template CNAssistedRANTuning mw_cNAssistedRANTuning( - template ExpectedUEBehaviour p_expectedUEBehaviour := *, - template CNAssistedRANTuning.iE_Extensions p_iE_Extensions := * - ) := { - expectedUEBehaviour := p_expectedUEBehaviour, - iE_Extensions := p_iE_Extensions - } // End of template mw_cNAssistedRANTuning - - template (present) CNTypeRestrictionsForEquivalentItem mw_cNTypeRestrictionsForEquivalentItem( - template (present) PLMNIdentity p_plmnIdentity := ?, - template (present) CNTypeRestrictionsForEquivalentItem.cn_Type p_cn_Type := ?, - template CNTypeRestrictionsForEquivalentItem.iE_Extensions p_iE_Extensions := * - ) := { - plmnIdentity := p_plmnIdentity, - cn_Type := p_cn_Type, - iE_Extensions := p_iE_Extensions - } // End of template mw_cNTypeRestrictionsForEquivalentItem - - template (present) CNTypeRestrictionsForServing mw_cNTypeRestrictionsForServing(template (present) CNTypeRestrictionsForServing p_value := ?) := p_value; - - template (present) CompletedCellsInEAI_EUTRA_Item mw_completedCellsInEAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template CompletedCellsInEAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInEAI_EUTRA_Item + template (present) M4ReportAmountMDT mw_m4ReportAmountMDT(template (present) M4ReportAmountMDT p_value := ?) := p_value; - template (present) CompletedCellsInEAI_NR_Item mw_completedCellsInEAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template CompletedCellsInEAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInEAI_NR_Item + template (present) M4period mw_m4period(template (present) M4period p_value := ?) := p_value; - template (present) CompletedCellsInTAI_EUTRA_Item mw_completedCellsInTAI_EUTRA_Item( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template CompletedCellsInTAI_EUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInTAI_EUTRA_Item + template (present) M5Configuration mw_m5Configuration( + template (present) M5period p_m5period := ?, + template (present) Links_to_log p_m5_links_to_log := ?, + template M5Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m5period := p_m5period, + m5_links_to_log := p_m5_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m5Configuration - template (present) CompletedCellsInTAI_NR_Item mw_completedCellsInTAI_NR_Item( - template (present) NR_CGI p_nR_CGI := ?, - template CompletedCellsInTAI_NR_Item.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_completedCellsInTAI_NR_Item - - template (present) ConcurrentWarningMessageInd mw_concurrentWarningMessageInd(template (present) ConcurrentWarningMessageInd p_value := true_) := p_value; - template (present) ConfidentialityProtectionIndication mw_confidentialityProtectionIndication(template (present) ConfidentialityProtectionIndication p_value := ?) := p_value; - template (present) ConfidentialityProtectionResult mw_confidentialityProtectionResult(template (present) ConfidentialityProtectionResult p_value := ?) := p_value; - template (present) ConfiguredTACIndication mw_configuredTACIndication(template (present) ConfiguredTACIndication p_value := true_) := p_value; - - template (present) CoreNetworkAssistanceInformationForInactive mw_coreNetworkAssistanceInformationForInactive( - template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, - template (present) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := ?, - template (present) TAIListForInactive p_tAIListForInactive := ?, - template PagingDRX p_uESpecificDRX := *, - template MICOModeIndication p_mICOModeIndication := *, - template ExpectedUEBehaviour p_expectedUEBehaviour := *, - template CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := * - ) := { - uEIdentityIndexValue := p_uEIdentityIndexValue, - uESpecificDRX := p_uESpecificDRX, - periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, - mICOModeIndication := p_mICOModeIndication, - tAIListForInactive := p_tAIListForInactive, - expectedUEBehaviour := p_expectedUEBehaviour, - iE_Extensions := p_iE_Extensions - } // End of template mw_coreNetworkAssistanceInformationForInactive - - template (present) CoreNetworkAssistanceInformationForInactive.iE_Extensions mw_coreNetworkAssistanceInformationForInactive_paging( - template (present) EUTRA_PagingeDRXInformation p_eUTRA_PagingeDRXInformation := ?, - template (present) ExtendedUEIdentityIndexValue p_extendedUEIdentityIndexValue := ?, - template (present) UERadioCapabilityForPaging p_uERadioCapabilityForPaging := ?, - template (present) MicoAllPLMN p_micoAllPLMN := ? - ) := { - { - id := id_EUTRA_PagingeDRXInformation, - criticality := ignore, - extensionValue := { EUTRA_PagingeDRXInformation := p_eUTRA_PagingeDRXInformation } - }, - { - id := id_ExtendedUEIdentityIndexValue, - criticality := ignore, - extensionValue := { ExtendedUEIdentityIndexValue := p_extendedUEIdentityIndexValue } - }, - { - id := id_UERadioCapabilityForPaging, - criticality := ignore, - extensionValue := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } - }, - { - id := id_MicoAllPLMN, - criticality := ignore, - extensionValue := { MicoAllPLMN := p_micoAllPLMN } - } - // TODO To be enhanced - } // End of template mw_coreNetworkAssistanceInformationForInactive_paging + template (present) M5Configuration.iE_Extensions mw_m5Configuration_id_M5ReportAmount( + template (present) M5ReportAmountMDT p_m5ReportAmountMDT := ? + ) := { + { + id := id_M5ReportAmount, + criticality := ignore, + extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } + } + } // End of template mw_m5Configuration_id_M5ReportAmount - template (present) COUNTValueForPDCP_SN12 mw_cOUNTValueForPDCP_SN12( - template (present) COUNTValueForPDCP_SN12.pDCP_SN12 p_pDCP_SN12 := ?, - template (present) COUNTValueForPDCP_SN12.hFN_PDCP_SN12 p_hFN_PDCP_SN12 := ?, - template COUNTValueForPDCP_SN12.iE_Extensions p_iE_Extensions := * - ) := { - pDCP_SN12 := p_pDCP_SN12, - hFN_PDCP_SN12 := p_hFN_PDCP_SN12, - iE_Extensions := p_iE_Extensions - } // End of template mw_cOUNTValueForPDCP_SN12 - - template (present) COUNTValueForPDCP_SN18 mw_cOUNTValueForPDCP_SN18( - template (present) COUNTValueForPDCP_SN18.pDCP_SN18 p_pDCP_SN18 := ?, - template (present) COUNTValueForPDCP_SN18.hFN_PDCP_SN18 p_hFN_PDCP_SN18 := ?, - template COUNTValueForPDCP_SN18.iE_Extensions p_iE_Extensions := * - ) := { - pDCP_SN18 := p_pDCP_SN18, - hFN_PDCP_SN18 := p_hFN_PDCP_SN18, - iE_Extensions := p_iE_Extensions - } // End of template mw_cOUNTValueForPDCP_SN18 + template (present) M5ReportAmountMDT mw_m5ReportAmountMDT(template (present) M5ReportAmountMDT p_value := ?) := p_value; - template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_endpointIPAddress( - template (present) TransportLayerAddress p_endpointIPAddress := ? - ) := { - endpointIPAddress := p_endpointIPAddress - } // End of template mw_cPTransportLayerInformation_endpointIPAddress + template (present) M5period mw_m5period(template (present) M5period p_value := ?) := p_value; - template (present) CPTransportLayerInformation mw_cPTransportLayerInformation_choice_Extensions( - template (present) CPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_cPTransportLayerInformation_choice_Extensions + template (present) M6Configuration mw_m6Configuration( + template (present) M6report_Interval p_m6report_Interval := ?, + template (present) Links_to_log p_m6_links_to_log := ?, + template M6Configuration.iE_Extensions p_iE_Extensions := * + ) := { + m6report_Interval := p_m6report_Interval, + m6_links_to_log := p_m6_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m6Configuration - template (present) CPTransportLayerInformation.choice_Extensions mw_cPTransportLayerInformation_ext( - template (present) EndpointIPAddressAndPort p_EndpointIPAddressAndPort := ? - ) := { - id := id_EndpointIPAddressAndPort, - criticality := reject, - value_ := { EndpointIPAddressAndPort := p_EndpointIPAddressAndPort } - } // End of template mw_cPTransportLayerInformation_ext - - template CriticalityDiagnostics mw_criticalityDiagnostics( - template ProcedureCode p_procedureCode := *, - template TriggeringMessage p_triggeringMessage := *, - template Criticality p_procedureCriticality := *, - template CriticalityDiagnostics_IE_List p_criticalityDiagnostics_IE_List := *, - template CriticalityDiagnostics.iE_Extensions p_iE_Extensions := * - ) := { - procedureCode := p_procedureCode, - triggeringMessage := p_triggeringMessage, - procedureCriticality := p_procedureCriticality, - iEsCriticalityDiagnostics := p_criticalityDiagnostics_IE_List, - iE_Extensions := p_iE_Extensions - } // End of template mw_criticalityDiagnostics - - template (present) CriticalityDiagnostics_IE_Item mw_criticalityDiagnostics_IE_Item( - template (present) Criticality p_iECriticality := ?, - template (present) ProtocolIE_ID p_iE_ID := ?, - template (present) TypeOfError p_typeOfError := ?, - template CriticalityDiagnostics_IE_Item.iE_Extensions p_iE_Extensions := * - ) := { - iECriticality := p_iECriticality, - iE_ID := p_iE_ID, - typeOfError := p_typeOfError, - iE_Extensions := p_iE_Extensions - } // End of template mw_criticalityDiagnostics_IE_Item - - template (present) CellBasedMDT_NR mw_cellBasedMDT_NR( - in template (present) CellIdListforMDT_NR p_cellIdListforMDT := ?, - in template CellBasedMDT_NR.iE_Extensions p_iE_Extensions := * - ) := { - cellIdListforMDT := p_cellIdListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellBasedMDT_NR - - template (present) CellBasedMDT_EUTRA mw_cellBasedMDT_EUTRA( - template (present) CellIdListforMDT_EUTRA p_cellIdListforMDT := ?, - template CellBasedMDT_EUTRA.iE_Extensions p_iE_Extensions := * - ) := { - cellIdListforMDT := p_cellIdListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellBasedMDT_EUTRA + template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_M6ReportAmount( + template (present) M6ReportAmountMDT p_m6ReportAmountMDT := ? + ) := { + { + id := id_M6ReportAmount, + criticality := ignore, + extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } + } + } // End of template mw_m6Configuration_id_M6ReportAmount - template (present) CellBasedQMC mw_cellBasedQMC( - template (present) CellIdListforQMC p_cellIdListforQMC := ?, - template CellBasedQMC.iE_Extensions p_iE_Extensions := * - ) := { - cellIdListforQMC := p_cellIdListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template mw_cellBasedQMC + template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( + template (present) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration := ? + ) := { + { + id := id_ExcessPacketDelayThresholdConfiguration, + criticality := ignore, + extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } + } + } // End of template mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration - template (present) DataForwardingNotPossible mw_DataForwardingNotPossible(template (present) DataForwardingNotPossible p_value := data_forwarding_not_possible) := p_value; + template (present) M6ReportAmountMDT mw_m6ReportAmountMDT(template (present) M6ReportAmountMDT p_value := ?) := p_value; - template (present) DataForwardingAccepted mw_dataForwardingAccepted(template (present) DataForwardingAccepted p_value := ?) := p_value; + template (present) M6report_Interval mw_m6report_Interval(template (present) M6report_Interval p_value := ?) := p_value; - template (present) DataForwardingResponseDRBItem mw_dataForwardingResponseDRBItem( - template (present) DRB_ID p_dRB_ID := ?, - template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, - template UPTransportLayerInformation p_uLForwardingUP_TNLInformation := *, - template DataForwardingResponseDRBItem.iE_Extensions p_iE_Extensions := * - ) := { - dRB_ID := p_dRB_ID, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - uLForwardingUP_TNLInformation := p_uLForwardingUP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_dataForwardingResponseDRBItem - - template (present) DAPSRequestInfo mw_dAPSRequestInfo( - template (present) DAPSRequestInfo.dAPSIndicator p_dAPSIndicator := daps_ho_required, - template DAPSRequestInfo.iE_Extensions p_iE_Extensions := * - ) := { - dAPSIndicator := p_dAPSIndicator, - iE_Extensions := p_iE_Extensions - } // End of template mw_dAPSRequestInfo - - template (present) DAPSResponseInfoItem mw_dAPSResponseInfoItem( - template (present) DRB_ID p_dRB_ID := ?, - template (present) DAPSResponseInfo p_dAPSResponseInfo := ?, - template DAPSResponseInfoItem.iE_Extension p_iE_Extension := * - ) := { - dRB_ID := p_dRB_ID, - dAPSResponseInfo := p_dAPSResponseInfo, - iE_Extension := p_iE_Extension - } // End of template mw_dAPSResponseInfoItem - - template (present) DAPSResponseInfo mw_dAPSResponseInfo( - template (present) DAPSResponseInfo.dapsresponseindicator p_dapsresponseindicator := ?, - template DAPSResponseInfo.iE_Extensions p_iE_Extensions := * + template (present) M7Configuration mw_m7Configuration( + template (present) M7period p_m7period := ?, + template (present) Links_to_log p_m7_links_to_log := ?, + template M7Configuration.iE_Extensions p_iE_Extensions := * ) := { - dapsresponseindicator := p_dapsresponseindicator, - iE_Extensions := p_iE_Extensions - } // End of template mw_dAPSResponseInfo - - template (present) DataForwardingResponseERABListItem mw_DataForwardingResponseERABListItem( - template (present) E_RAB_ID p_e_RAB_ID := ?, - template (present) UPTransportLayerInformation p_dLForwardingUP_TNLInformation := ?, - template DataForwardingResponseERABListItem.iE_Extensions p_iE_Extensions := * - ) := { - e_RAB_ID := p_e_RAB_ID, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_DataForwardingResponseERABListItem + m7period := p_m7period, + m7_links_to_log := p_m7_links_to_log, + iE_Extensions := p_iE_Extensions + } // End of template mw_m7Configuration - template (present) DelayCritical mw_delayCritical(template (present) DelayCritical p_value := ?) := p_value; + template (present) M7Configuration.iE_Extensions mw_m7Configuration_id_M7ReportAmount( + template (present) M7ReportAmountMDT p_m7ReportAmountMDT := ? + ) := { + { + id := id_M7ReportAmount, + criticality := ignore, + extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } + } + } // End of template mw_m7Configuration_id_M7ReportAmount - template (present) DL_CP_SecurityInformation mw_dL_CP_SecurityInformation( - template (present) DL_NAS_MAC p_dl_NAS_MAC := ?, - template DL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * - ) := { - dl_NAS_MAC := p_dl_NAS_MAC, - iE_Extensions := p_iE_Extensions - } // End of template mw_dL_CP_SecurityInformation + template (present) M7ReportAmountMDT mw_m7ReportAmountMDT(template (present) M7ReportAmountMDT p_value := ?) := p_value; - template (present) DLForwarding mw_dLForwarding(template (present) DLForwarding p_value := dl_forwarding_proposed) := p_value; + template (present) MDT_Location_Info mw_mDT_Location_Info( + template (present) MDT_Location_Information p_mDT_Location_Information := ?, + template MDT_Location_Info.iE_Extensions p_iE_Extensions := * + ) := { + mDT_Location_Information := p_mDT_Location_Information, + iE_Extensions := p_iE_Extensions + } // End of template mw_mDT_Location_Info - template (present) DL_NGU_TNLInformationReused mw_dL_NGU_TNLInformationReused(template (present) DL_NGU_TNLInformationReused p_value := true_) := p_value; + template (present) N3IWF_ID mw_n3IWF_ID_n3IWF_ID( + template (present) N3IWF_ID.n3IWF_ID p_n3IWF_ID := ? + ) := { + n3IWF_ID := p_n3IWF_ID + } // End of template mw_n3IWF_ID_n3IWF_ID - template (present) DirectForwardingPathAvailability mw_directForwardingPathAvailability(template (present) DirectForwardingPathAvailability p_value := direct_path_available) := p_value; + template (present) N3IWF_ID mw_n3IWF_ID_choice_Extensions( + template (present) N3IWF_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_n3IWF_ID_choice_Extensions - template (present) DRBsSubjectToStatusTransferItem mw_dRBsSubjectToStatusTransferItem( - in template (present) DRB_ID p_dRB_ID := ?, - in template (present) DRBStatusUL p_dRBStatusUL := ?, - in template (present) DRBStatusDL p_dRBStatusDL := ?, - in template DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := * - ) := { - dRB_ID := p_dRB_ID, - dRBStatusUL := p_dRBStatusUL, - dRBStatusDL := p_dRBStatusDL, - iE_Extension := p_iE_Extension - } // End of template mw_dRBsSubjectToStatusTransferItem - - template (present) DRBsSubjectToStatusTransferItem.iE_Extension mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList( - template (present) AssociatedQosFlowList p_AssociatedQosFlowList := ? - ) := { - { - id := id_OldAssociatedQosFlowList_ULendmarkerexpected, - criticality := ignore, - extensionValue := { AssociatedQosFlowList := p_AssociatedQosFlowList } - } - } // End of template mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList + template (present) NB_IoT_DefaultPagingDRX mw_nB_IoT_DefaultPagingDRX(template (present) NB_IoT_DefaultPagingDRX p_value := ?) := p_value; - template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL12( - template (present) DRBStatusDL12 p_dRBStatusDL12 := ? - ) := { - dRBStatusDL12 := p_dRBStatusDL12 - } // End of template mw_dRBStatusDL_dRBStatusDL12 + template (present) NB_IoT_PagingDRX mw_nB_IoT_PagingDRX(template (present) NB_IoT_PagingDRX p_value := ?) := p_value; - template (present) DRBStatusDL mw_dRBStatusDL_dRBStatusDL18( - template (present) DRBStatusDL18 p_dRBStatusDL18 := ? - ) := { - dRBStatusDL18 := p_dRBStatusDL18 - } // End of template mw_dRBStatusDL_dRBStatusDL18 + template (present) NB_IoT_Paging_eDRXCycle mw_nB_IoT_Paging_eDRXCycle(template (present) NB_IoT_Paging_eDRXCycle p_value := ?) := p_value; - template (present) DRBStatusDL mw_dRBStatusDL_choice_Extensions( - template (present) DRBStatusDL.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_dRBStatusDL_choice_Extensions - - template (present) DRBStatusDL12 mw_dRBStatusDL12( - template (present) COUNTValueForPDCP_SN12 p_dL_COUNTValue := ?, - template DRBStatusDL12.iE_Extension p_iE_Extension := * - ) := { - dL_COUNTValue := p_dL_COUNTValue, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusDL12 - - template (present) DRBStatusDL18 mw_dRBStatusDL18( - template (present) COUNTValueForPDCP_SN18 p_dL_COUNTValue := ?, - template DRBStatusDL18.iE_Extension p_iE_Extension := * - ) := { - dL_COUNTValue := p_dL_COUNTValue, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusDL18 - - template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL12( - template (present) DRBStatusUL12 p_dRBStatusUL12 := ? - ) := { - dRBStatusUL12 := p_dRBStatusUL12 - } // End of template mw_dRBStatusUL_dRBStatusUL12 + template (present) NB_IoT_Paging_TimeWindow mw_nB_IoT_Paging_TimeWindow(template (present) NB_IoT_Paging_TimeWindow p_value := ?) := p_value; - template (present) DRBStatusUL mw_dRBStatusUL_dRBStatusUL18( - template (present) DRBStatusUL18 p_dRBStatusUL18 := ? - ) := { - dRBStatusUL18 := p_dRBStatusUL18 - } // End of template mw_dRBStatusUL_dRBStatusUL18 + template (present) NB_IoT_Paging_eDRXInfo mw_nB_IoT_Paging_eDRXInfo( + template (present) NB_IoT_Paging_eDRXCycle p_nB_IoT_Paging_eDRXCycle := ?, + template NB_IoT_Paging_TimeWindow p_nB_IoT_Paging_TimeWindow := *, + template NB_IoT_Paging_eDRXInfo.iE_Extensions p_iE_Extensions := * + ) := { + nB_IoT_Paging_eDRXCycle := p_nB_IoT_Paging_eDRXCycle, + nB_IoT_Paging_TimeWindow := p_nB_IoT_Paging_TimeWindow, + iE_Extensions := p_iE_Extensions + } // End of template mw_nB_IoT_Paging_eDRXInfo - template (present) DRBStatusUL mw_dRBStatusUL_choice_Extensions( - template (present) DRBStatusUL.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_dRBStatusUL_choice_Extensions - - template (present) DRBStatusUL12 mw_dRBStatusUL12( - template (present) COUNTValueForPDCP_SN12 p_uL_COUNTValue := ?, - template DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, - template DRBStatusUL12.iE_Extension p_iE_Extension := * - ) := { - uL_COUNTValue := p_uL_COUNTValue, - receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusUL12 - - template (present) DRBStatusUL18 mw_dRBStatusUL18( - template (present) COUNTValueForPDCP_SN18 p_uL_COUNTValue := ?, - template DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, - template DRBStatusUL18.iE_Extension p_iE_Extension := * - ) := { - uL_COUNTValue := p_uL_COUNTValue, - receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, - iE_Extension := p_iE_Extension - } // End of template mw_dRBStatusUL18 - - template (present) DRBsToQosFlowsMappingItem mw_dRBsToQosFlowsMappingItem( - template (present) DRB_ID p_dRB_ID := ?, - template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, - template DRBsToQosFlowsMappingItem.iE_Extensions p_iE_Extensions := * - ) := { - dRB_ID := p_dRB_ID, - associatedQosFlowList := p_associatedQosFlowList, - iE_Extensions := p_iE_Extensions - } // End of template mw_dRBsToQosFlowsMappingItem + template (present) NewSecurityContextInd mw_newSecurityContextInd(template (present) NewSecurityContextInd p_value := true_) := p_value; - template (present) DRBsToQosFlowsMappingItem.iE_Extensions mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo( - template (present) DAPSRequestInfo p_dAPSRequestInfo := ? - ) := { - { - id := id_DAPSRequestInfo, - criticality := ignore, - extensionValue := { DAPSRequestInfo := p_dAPSRequestInfo } - } - } // End of template mw_dRBsToQosFlowsMappingItem_dAPSRequestInfo - - template (present) Dynamic5QIDescriptor mw_dynamic5QIDescriptor( - template (present) PriorityLevelQos p_priorityLevelQos := ?, - template (present) PacketDelayBudget p_packetDelayBudget := ?, - template (present) PacketErrorRate p_packetErrorRate := ?, - template FiveQI p_fiveQI := *, - template DelayCritical p_delayCritical := *, - template AveragingWindow p_averagingWindow := *, - template MaximumDataBurstVolume p_maximumDataBurstVolume := *, - template Dynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * - ) := { - priorityLevelQos := p_priorityLevelQos, - packetDelayBudget := p_packetDelayBudget, - packetErrorRate := p_packetErrorRate, - fiveQI := p_fiveQI, - delayCritical := p_delayCritical, - // The above IE shall be present in case of GBR QoS flow - averagingWindow := p_averagingWindow, - // The above IE shall be present in case of GBR QoS flow - maximumDataBurstVolume := p_maximumDataBurstVolume, - iE_Extensions := p_iE_Extensions - } // End of template mw_dynamic5QIDescriptor - - template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_extendedPacketDelayBudget( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_ExtendedPacketDelayBudget, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_dynamic5QIDescriptor_extendedPacketDelayBudget + template (present) NextPagingAreaScope mw_nextPagingAreaScope(template (present) NextPagingAreaScope p_value := ?) := p_value; - template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + template (present) NGAPIESupportInformationRequestItem mw_nGAPIESupportInformationRequestItem( + template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, + template NGAPIESupportInformationRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGAPIESupportInformationRequestItem + + template (present) NGAPIESupportInformationResponseItem mw_nGAPIESupportInformationResponseItem( + template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, + template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIESupportInfo p_ngap_ProtocolIESupportInfo := ?, + template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIEPresenceInfo p_ngap_ProtocolIEPresenceInfo := ?, + template NGAPIESupportInformationResponseItem.iE_Extensions p_iE_Extensions := * ) := { - { - id := id_CNPacketDelayBudgetDL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetDL + ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, + ngap_ProtocolIESupportInfo := p_ngap_ProtocolIESupportInfo, + ngap_ProtocolIEPresenceInfo := p_ngap_ProtocolIEPresenceInfo, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGAPIESupportInformationResponseItem + + template (present) NgENB_ID mw_ngENB_ID_macroNgENB_ID( + template (present) NgENB_ID.macroNgENB_ID p_macroNgENB_ID := ? + ) := { + macroNgENB_ID := p_macroNgENB_ID + } // End of template mw_ngENB_ID_macroNgENB_ID - template (present) Dynamic5QIDescriptor.iE_Extensions mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_CNPacketDelayBudgetUL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_dynamic5QIDescriptor_cNPacketDelayBudgetUL + template (present) NgENB_ID mw_ngENB_ID_shortMacroNgENB_ID( + template (present) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID := ? + ) := { + shortMacroNgENB_ID := p_shortMacroNgENB_ID + } // End of template mw_ngENB_ID_shortMacroNgENB_ID - template (present) EarlyMeasurement mw_earlyMeasurement(template (present) EarlyMeasurement p_value := true_) := p_value; + template (present) NgENB_ID mw_ngENB_ID_longMacroNgENB_ID( + template (present) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID := ? + ) := { + longMacroNgENB_ID := p_longMacroNgENB_ID + } // End of template mw_ngENB_ID_longMacroNgENB_ID - template (present) EarlyStatusTransfer_TransparentContainer mw_earlyStatusTransfer_TransparentContainer( - template (present) ProcedureStageChoice p_procedureStage := ?, - template EarlyStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * - ) := { - procedureStage := p_procedureStage, - iE_Extensions := p_iE_Extensions - } // End of template mw_earlyStatusTransfer_TransparentContainer + template (present) NgENB_ID mw_ngENB_ID_choice_Extensions( + template (present) NgENB_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_ngENB_ID_choice_Extensions - template (present) ProcedureStageChoice mw_procedureStageChoice_firstDLCount( - template (present) FirstDLCount p_firstDLCount := ? - ) := { - first_dl_count := p_firstDLCount - } // End of template mw_procedureStageChoice_firstDLCount + template (present) NotifySourceNGRANNode mw_notifySourceNGRANNode(template (present) NotifySourceNGRANNode p_value := ?) := p_value; - template (present) ProcedureStageChoice mw_procedureStageChoice_choice_Extensions( - template (present) ProcedureStageChoice.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_procedureStageChoice_choice_Extensions + template (present) NGRAN_CGI mw_ngENB_ID_nR_CGI( + template (present) NR_CGI p_nR_CGI + ) := { + nR_CGI := p_nR_CGI + } // End of template mw_ngENB_ID_nR_CGI - template (present) FirstDLCount mw_firstDLCount( - template (present) DRBsSubjectToEarlyStatusTransfer_List p_dRBsSubjectToEarlyStatusTransfer := ?, - template FirstDLCount.iE_Extension p_iE_Extension := * - ) := { - dRBsSubjectToEarlyStatusTransfer := p_dRBsSubjectToEarlyStatusTransfer, - iE_Extension := p_iE_Extension - } // End of template mw_firstDLCount - - template (present) DRBsSubjectToEarlyStatusTransfer_Item mw_dRBsSubjectToEarlyStatusTransfer_Item( - template (present) DRB_ID p_dRB_ID := ?, - template (present) DRBStatusDL p_firstDLCOUNT := ?, - template DRBsSubjectToEarlyStatusTransfer_Item.iE_Extension p_iE_Extension := * - ) := { - dRB_ID := p_dRB_ID, - firstDLCOUNT := p_firstDLCOUNT, - iE_Extension := p_iE_Extension - } // End of template mw_dRBsSubjectToEarlyStatusTransfer_Item - - template (present) EDT_Session mw_eDT_Session(template (present) EDT_Session p_value := true_) := p_value; - - template (present) EmergencyAreaIDBroadcastEUTRA_Item mw_emergencyAreaIDBroadcastEUTRA_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CompletedCellsInEAI_EUTRA p_completedCellsInEAI_EUTRA := ?, - template EmergencyAreaIDBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - completedCellsInEAI_EUTRA := p_completedCellsInEAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDBroadcastEUTRA_Item - - template (present) EmergencyAreaIDBroadcastNR_Item mw_emergencyAreaIDBroadcastNR_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CompletedCellsInEAI_NR p_completedCellsInEAI_NR := ?, - template EmergencyAreaIDBroadcastNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - completedCellsInEAI_NR := p_completedCellsInEAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDBroadcastNR_Item - - template (present) EmergencyAreaIDCancelledEUTRA_Item mw_emergencyAreaIDCancelledEUTRA_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CancelledCellsInEAI_EUTRA p_cancelledCellsInEAI_EUTRA := ?, - template EmergencyAreaIDCancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + template (present) NGRAN_CGI mw_ngENB_ID_eUTRA_CGI( + template (present) EUTRA_CGI p_eUTRA_CGI := ? + ) := { + eUTRA_CGI := p_eUTRA_CGI + } // End of template mw_ngENB_ID_eUTRA_CGI + + template (present) NGRAN_CGI mw_nGRAN_CGI_choice_Extensions( + template (present) NGRAN_CGI.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nGRAN_CGI_choice_Extensions + + template (present) NGRAN_TNLAssociationToRemoveItem mw_nGRAN_TNLAssociationToRemoveItem( + template (present) CPTransportLayerInformation p_tNLAssociationTransportLayerAddress := ?, + template CPTransportLayerInformation p_tNLAssociationTransportLayerAddressAMF := *, + template NGRAN_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * ) := { - emergencyAreaID := p_emergencyAreaID, - cancelledCellsInEAI_EUTRA := p_cancelledCellsInEAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDCancelledEUTRA_Item - - template (present) EmergencyAreaIDCancelledNR_Item mw_emergencyAreaIDCancelledNR_Item( - template (present) EmergencyAreaID p_emergencyAreaID := ?, - template (present) CancelledCellsInEAI_NR p_cancelledCellsInEAI_NR := ?, - template EmergencyAreaIDCancelledNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - emergencyAreaID := p_emergencyAreaID, - cancelledCellsInEAI_NR := p_cancelledCellsInEAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyAreaIDCancelledNR_Item - - template (present) EmergencyFallbackIndicator mw_emergencyFallbackIndicator( - template (present) EmergencyFallbackRequestIndicator p_emergencyFallbackRequestIndicator := ?, - template EmergencyServiceTargetCN p_emergencyServiceTargetCN := *, - template EmergencyFallbackIndicator.iE_Extensions p_iE_Extensions := * - ) := { - emergencyFallbackRequestIndicator := p_emergencyFallbackRequestIndicator, - emergencyServiceTargetCN := p_emergencyServiceTargetCN, - iE_Extensions := p_iE_Extensions - } // End of template mw_emergencyFallbackIndicator + tNLAssociationTransportLayerAddress := p_tNLAssociationTransportLayerAddress, + tNLAssociationTransportLayerAddressAMF := p_tNLAssociationTransportLayerAddressAMF, + iE_Extensions := p_iE_Extensions + } // End of template mw_nGRAN_TNLAssociationToRemoveItem + + template (present) NonDynamic5QIDescriptor mw_nonDynamic5QIDescriptor( + template (present) FiveQI p_fiveQI := ?, + template PriorityLevelQos p_priorityLevelQos := *, + template AveragingWindow p_averagingWindow := *, + template MaximumDataBurstVolume p_maximumDataBurstVolume := *, + template NonDynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * + ) := { + fiveQI := p_fiveQI, + priorityLevelQos := p_priorityLevelQos, + averagingWindow := p_averagingWindow, + maximumDataBurstVolume := p_maximumDataBurstVolume, + iE_Extensions := p_iE_Extensions + } // End of template mw_nonDynamic5QIDescriptor + + template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL - template (present) EmergencyFallbackRequestIndicator mw_emergencyFallbackRequestIndicator(template (present) EmergencyFallbackRequestIndicator p_value := emergency_fallback_requested) := p_value; + template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL - template (present) EmergencyServiceTargetCN mw_emergencyServiceTargetCN(template (present) EmergencyServiceTargetCN p_value := ?) := p_value; + template (present) NotificationCause mw_notificationCause(template (present) NotificationCause p_value := ?) := p_value; - template (present) ENB_ID mw_eNB_ID_macroENB_ID( - template (present) Bit20 p_macroENB_ID := ? - ) := { - macroENB_ID := p_macroENB_ID - } // End of template mw_eNB_ID_macroENB_ID + template (present) NotificationControl mw_notificationControl(template (present) NotificationControl p_value := ?) := p_value; - template (present) ENB_ID mw_eNB_ID_homeENB_ID( - template (present) Bit28 p_homeENB_ID := ? - ) := { - homeENB_ID := p_homeENB_ID - } // End of template mw_eNB_ID_homeENB_ID - - template (present) ENB_ID mw_eNB_ID_short_macroENB_ID( - template (present) Bit18 p_short_macroENB_ID := ? - ) := { - short_macroENB_ID := p_short_macroENB_ID - } // End of template mw_eNB_ID_short_macroENB_ID - - template (present) ENB_ID mw_eNB_ID_long_macroENB_ID( - template (present) Bit21 p_long_macroENB_ID := ? - ) := { - long_macroENB_ID := p_long_macroENB_ID - } // End of template mw_eNB_ID_long_macroENB_ID - - template (present) ENB_ID mw_eNB_ID_choice_Extensions( - template (present) ENB_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_eNB_ID_choice_Extensions - - template (present) Enhanced_CoverageRestriction mw_enhanced_CoverageRestriction(template (present) Enhanced_CoverageRestriction p_value := restricted) := p_value; - - template (present) EndpointIPAddressAndPort mw_endpointIPAddressAndPort( - template (present) TransportLayerAddress p_endpointIPAddress := ?, - template (present) PortNumber p_portNumber := ?, - template EndpointIPAddressAndPort.iE_Extensions p_iE_Extensions := * - ) := { - endpointIPAddress := p_endpointIPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template mw_endpointIPAddressAndPort - - template (present) EndIndication mw_endIndication(template (present) EndIndication p_value := ?) := p_value; - - template (present) EPS_TAI mw_ePS_TAI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) EPS_TAC p_ePS_TAC := ?, - template EPS_TAI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - ePS_TAC := p_ePS_TAC, - iE_Extensions := p_iE_Extensions - } // End of template mw_ePS_TAI - - template (present) E_RABInformationItem mw_e_RABInformationItem( - template (present) E_RAB_ID p_e_RAB_ID := ?, - template (present) DLForwarding p_dLForwarding := ?, - template E_RABInformationItem.iE_Extensions p_iE_Extensions := * - ) := { - e_RAB_ID := p_e_RAB_ID, - dLForwarding := p_dLForwarding, - iE_Extensions := p_iE_Extensions - } // End of template mw_e_RABInformationItem - - template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceTNLAddrInfo( - template (present) TransportLayerAddress p_transportLayerAddress := ? - ) := { - { - id := id_SourceTNLAddrInfo, - criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } - } - } // End of template mw_e_RABInformationItem_id_SourceTNLAddrInfo - - template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo( - template (present) TransportLayerAddress p_transportLayerAddress := ? - ) := { - { - id := id_SourceNodeTNLAddrInfo, - criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } - } - } // End of template mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo - - template (present) EUTRA_CGI mw_uUTRA_CGI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) EUTRACellIdentity p_eUTRACellIdentity := ?, - template EUTRA_CGI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - eUTRACellIdentity := p_eUTRACellIdentity, - iE_Extensions := p_iE_Extensions - } // End of template mw_uUTRA_CGI - - template (present) EUTRA_PagingeDRXInformation mw_eUTRA_PagingeDRXInformation( - template (present) EUTRA_Paging_eDRX_Cycle p_eUTRA_paging_eDRX_Cycle := ?, - template EUTRA_Paging_Time_Window p_eUTRA_paging_Time_Window := *, - template EUTRA_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_paging_eDRX_Cycle := p_eUTRA_paging_eDRX_Cycle, - eUTRA_paging_Time_Window := p_eUTRA_paging_Time_Window, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRA_PagingeDRXInformation + template (present) NPN_AccessInformation mw_nPN_AccessInformation_pNI_NPN_Access_Information( + template (present) CellCAGList p_pNI_NPN_Access_Information := ? + ) := { + pNI_NPN_Access_Information := p_pNI_NPN_Access_Information + } // End of template mw_nPN_AccessInformation_pNI_NPN_Access_Information - template (present) EUTRA_Paging_eDRX_Cycle mw_eUTRA_Paging_eDRX_Cycle(template (present) EUTRA_Paging_eDRX_Cycle p_value := ?) := p_value; + template (present) NPN_AccessInformation mw_nPN_AccessInformation_choice_Extensions( + template (present) NPN_AccessInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_AccessInformation_choice_Extensions - template (present) EUTRA_Paging_Time_Window mw_eUTRA_Paging_Time_Window(template (present) EUTRA_Paging_Time_Window p_value := ?) := p_value; + template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_sNPN_MobilityInformation( + template (present) SNPN_MobilityInformation p_sNPN_MobilityInformation := ? + ) := { + sNPN_MobilityInformation := p_sNPN_MobilityInformation + } // End of template mw_nPN_MobilityInformation_sNPN_MobilityInformation - template (present) EventType mw_eventType(template (present) EventType p_value := ?) := p_value; + template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation( + template (present) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation := ? + ) := { + pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation + } // End of template mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation - template (present) ExcessPacketDelayThresholdItem mw_excessPacketDelayThresholdItem( - template (present) FiveQI p_fiveQi := ?, - template (present) ExcessPacketDelayThresholdValue p_excessPacketDelayThresholdValue := ?, - template ExcessPacketDelayThresholdItem.iE_Extensions p_iE_Extensions := * - ) := { - fiveQi := p_fiveQi, - excessPacketDelayThresholdValue := p_excessPacketDelayThresholdValue, - iE_Extensions := p_iE_Extensions - } // End of template mw_excessPacketDelayThresholdItem + template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_choice_Extensions( + template (present) NPN_MobilityInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_MobilityInformation_choice_Extensions - template (present) ExcessPacketDelayThresholdValue mw_excessPacketDelayThresholdValue(template (present) ExcessPacketDelayThresholdValue p_value := ?) := p_value; + template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance( + template (present) Allowed_PNI_NPN_List p_pNI_NPN_PagingAssistance := ? + ) := { + pNI_NPN_PagingAssistance := p_pNI_NPN_PagingAssistance + } // End of template mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance - template (present) ExpectedHOInterval mw_expectedHOInterval(template (present) ExpectedHOInterval p_value := ?) := p_value; + template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_choice_Extensions( + template (present) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_PagingAssistanceInformation_choice_Extensions - template ExpectedUEActivityBehaviour mw_expectedUEActivityBehaviour( - template ExpectedActivityPeriod p_expectedActivityPeriod := *, - template ExpectedIdlePeriod p_expectedIdlePeriod := *, - template SourceOfUEActivityBehaviourInformation p_sourceOfUEActivityBehaviourInformation := *, - template ExpectedUEActivityBehaviour.iE_Extensions p_iE_Extensions := * - ) := { - expectedActivityPeriod := p_expectedActivityPeriod, - expectedIdlePeriod := p_expectedIdlePeriod, - sourceOfUEActivityBehaviourInformation := p_sourceOfUEActivityBehaviourInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_expectedUEActivityBehaviour - - template ExpectedUEBehaviour mw_expectedUEBehaviour( - template ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := *, - template ExpectedHOInterval p_expectedHOInterval := *, - template ExpectedUEMobility p_expectedUEMobility := *, - template ExpectedUEMovingTrajectory p_expectedUEMovingTrajectory:= *, - template ExpectedUEBehaviour.iE_Extensions p_iE_Extensions := * + template (present) NPN_Support mw_nPN_Support_sNPN( + template (present) NID p_sNPN := ? ) := { - expectedUEActivityBehaviour := p_expectedUEActivityBehaviour, - expectedHOInterval := p_expectedHOInterval, - expectedUEMobility := p_expectedUEMobility, - expectedUEMovingTrajectory := p_expectedUEMovingTrajectory, - iE_Extensions := p_iE_Extensions - } // End of template m_expectedUEBehaviour - - template (present) ExpectedUEMobility mw_expectedUEMobility(template (present) ExpectedUEMobility p_value := ?) := p_value; - - template (present) ExpectedUEMovingTrajectoryItem mw_expectedUEMovingTrajectoryItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template ExpectedUEMovingTrajectoryItem.timeStayedInCell p_timeStayedInCell := *, - template ExpectedUEMovingTrajectoryItem.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - timeStayedInCell := p_timeStayedInCell, - iE_Extensions := p_iE_Extensions - } // End of template mw_expectedUEMovingTrajectoryItem - - template Extended_AMFName mw_extended_AMFName( - template AMFNameVisibleString p_aMFNameVisibleString := *, - template AMFNameUTF8String p_aMFNameUTF8String := *, - template Extended_AMFName.iE_Extensions p_iE_Extensions := * - ) := { - aMFNameVisibleString := p_aMFNameVisibleString, - aMFNameUTF8String := p_aMFNameUTF8String, - iE_Extensions := p_iE_Extensions - } // End of template mw_extended_AMFName - - template Extended_RANNodeName mw_extended_RANNodeName( - template RANNodeNameVisibleString p_rANNodeNameVisibleString := *, - template RANNodeNameUTF8String p_rANNodeNameUTF8String := *, - template Extended_RANNodeName.iE_Extensions p_iE_Extensions := * - ) := { - rANNodeNameVisibleString := p_rANNodeNameVisibleString, - rANNodeNameUTF8String := p_rANNodeNameUTF8String, - iE_Extensions := p_iE_Extensions - } // End of template mw_extended_RANNodeName - - template (present) ExtendedRATRestrictionInformation mw_extendedRATRestrictionInformation( - template (present) ExtendedRATRestrictionInformation.primaryRATRestriction p_primaryRATRestriction := ?, - template (present) ExtendedRATRestrictionInformation.secondaryRATRestriction p_secondaryRATRestriction := ?, - template ExtendedRATRestrictionInformation.iE_Extensions p_iE_Extensions := * - ) := { - primaryRATRestriction := p_primaryRATRestriction, - secondaryRATRestriction := p_secondaryRATRestriction, - iE_Extensions := p_iE_Extensions - } // End of template mw_extendedRATRestrictionInformation - - template (present) EventTrigger mw_eventTrigger_outOfCoverage( - template (present) EventTrigger.outOfCoverage p_outOfCoverage := true_ - ) := { - outOfCoverage := p_outOfCoverage - } // End of template mw_eventTrigger_outOfCoverage - - template (present) EventTrigger mw_eventTrigger_eventL1LoggedMDTConfig( - template (present) EventL1LoggedMDTConfig p_eventL1LoggedMDTConfig := ? - ) := { - eventL1LoggedMDTConfig := p_eventL1LoggedMDTConfig - } // End of template mw_eventTrigger_eventL1LoggedMDTConfig - - template (present) EventTrigger mw_eventTrigger_choice_Extensions( - template (present) EventTrigger.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_eventTrigger_choice_Extensions - - template (present) EventL1LoggedMDTConfig mw_eventL1LoggedMDTConfig( - template (present) MeasurementThresholdL1LoggedMDT p_l1Threshold := ?, - template (present) Hysteresis p_hysteresis := ?, - template (present) TimeToTrigger p_timeToTrigger := ?, - template EventL1LoggedMDTConfig.iE_Extensions p_iE_Extensions := * - ) := { - l1Threshold := p_l1Threshold, - hysteresis := p_hysteresis, - timeToTrigger := p_timeToTrigger, - iE_Extensions := p_iE_Extensions - } // End of template mw_eventL1LoggedMDTConfig - - template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRP( - template (present) Threshold_RSRP p_threshold_RSRP := ? - ) := { - threshold_RSRP := p_threshold_RSRP - } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRP - - template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_threshold_RSRQ( - template (present) Threshold_RSRQ p_threshold_RSRQ := ? - ) := { - threshold_RSRQ := p_threshold_RSRQ - } // End of template mw_measurementThresholdL1LoggedMDT_threshold_RSRQ - - template (present) MeasurementThresholdL1LoggedMDT mw_measurementThresholdL1LoggedMDT_choice_Extensions( - template (present) MeasurementThresholdL1LoggedMDT.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_measurementThresholdL1LoggedMDT_choice_Extensions - - template (present) FailureIndication mw_failureIndication( - template (present) UERLFReportContainer p_uERLFReportContainer := ?, - template FailureIndication.iE_Extensions p_iE_Extensions := * - ) := { - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_failureIndication - - template FiveG_ProSeAuthorized mw_FiveG_ProSeAuthorized( - template FiveGProSeDirectDiscovery p_fiveGProSeDirectDiscovery := *, - template FiveGProSeDirectCommunication p_fiveGProSeDirectCommunication := *, - template FiveGProSeLayer2UEtoNetworkRelay p_fiveGProSeLayer2UEtoNetworkRelay := *, - template FiveGProSeLayer3UEtoNetworkRelay p_fiveGProSeLayer3UEtoNetworkRelay := *, - template FiveGProSeLayer2RemoteUE p_fiveGProSeLayer2RemoteUE := *, - template FiveG_ProSeAuthorized.iE_Extensions p_iE_Extensions := * - ) := { - fiveGProSeDirectDiscovery := p_fiveGProSeDirectDiscovery, - fiveGProSeDirectCommunication := p_fiveGProSeDirectCommunication, - fiveGProSeLayer2UEtoNetworkRelay := p_fiveGProSeLayer2UEtoNetworkRelay, - fiveGProSeLayer3UEtoNetworkRelay := p_fiveGProSeLayer3UEtoNetworkRelay, - fiveGProSeLayer2RemoteUE := p_fiveGProSeLayer2RemoteUE, - iE_Extensions := p_iE_Extensions - } // End of template mw_FiveG_ProSeAuthorized + sNPN := p_sNPN + } // End of template mw_nPN_Support_sNPN - template (present) FiveGProSeDirectDiscovery mw_fiveGProSeDirectDiscovery(template (present) FiveGProSeDirectDiscovery p_value := ?) := p_value; - - template (present) FiveGProSeDirectCommunication mw_fiveGProSeDirectCommunication(template (present) FiveGProSeDirectCommunication p_value := ?) := p_value; + template (present) NPN_Support mw_nPN_Support_choice_Extensions( + template (present) NPN_Support.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_nPN_Support_choice_Extensions - template (present) FiveGProSeLayer2UEtoNetworkRelay mw_fiveGProSeLayer2UEtoNetworkRelay(template (present) FiveGProSeLayer2UEtoNetworkRelay p_value := ?) := p_value; + template (present) NR_CGI mw_nR_CGI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) NRCellIdentity p_nRCellIdentity := ?, + template NR_CGI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + nRCellIdentity := p_nRCellIdentity, + iE_Extensions := p_iE_Extensions + } // End of template mw_nR_CGI + + template (present) NR_PagingeDRXInformation mw_NR_PagingeDRXInformation( + template (present) NR_Paging_eDRX_Cycle p_nR_paging_eDRX_Cycle := ?, + template NR_Paging_Time_Window p_nR_paging_Time_Window := *, + template NR_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * + ) := { + nR_paging_eDRX_Cycle := p_nR_paging_eDRX_Cycle, + nR_paging_Time_Window := p_nR_paging_Time_Window, + iE_Extensions := p_iE_Extensions + } // End of template mw_NR_PagingeDRXInformation - template (present) FiveGProSeLayer3UEtoNetworkRelay mw_fiveGProSeLayer3UEtoNetworkRelay(template (present) FiveGProSeLayer3UEtoNetworkRelay p_value := ?) := p_value; + template (present) NR_Paging_eDRX_Cycle mw_nR_Paging_eDRX_Cycle(template (present) NR_Paging_eDRX_Cycle p_value := ?) := p_value; - template (present) FiveGProSeLayer2RemoteUE mw_fiveGProSeLayer2RemoteUE(template (present) FiveGProSeLayer2RemoteUE p_value := ?) := p_value; + template (present) NR_Paging_Time_Window mw_nR_Paging_Time_Window(template (present) NR_Paging_Time_Window p_value := ?) := p_value; - template (present) FiveG_ProSePC5QoSParameters mw_fiveG_ProSePC5QoSParameters( - template (present) FiveGProSePC5QoSFlowList p_fiveGProSepc5QoSFlowList := ?, - template BitRate p_fiveGProSepc5LinkAggregateBitRates := *, - template FiveG_ProSePC5QoSParameters.iE_Extensions p_iE_Extensions := * - ) := { - fiveGProSepc5QoSFlowList := p_fiveGProSepc5QoSFlowList, - fiveGProSepc5LinkAggregateBitRates := p_fiveGProSepc5LinkAggregateBitRates, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveG_ProSePC5QoSParameters - - template (present) FiveGProSePC5QoSFlowItem mw_fiveGProSePC5QoSFlowItem( - template (present) FiveQI p_fiveGproSepQI := ?, - template FiveGProSePC5FlowBitRates p_fiveGproSepc5FlowBitRates := *, - template Range p_fiveGproSerange := *, - template FiveGProSePC5QoSFlowItem.iE_Extensions p_iE_Extensions := * + template (present) NRNTNTAIInformation mw_nRNTNTAIInformation( + template (present) PLMNIdentity p_servingPLMN := ?, + template (present) TACListInNRNTN p_tACListInNRNTN := ?, + template TAC p_uELocationDerivedTACInNRNTN := *, + template NRNTNTAIInformation.iE_Extensions p_iE_Extensions := * + ) := { + servingPLMN := p_servingPLMN, + tACListInNRNTN := p_tACListInNRNTN, + uELocationDerivedTACInNRNTN := p_uELocationDerivedTACInNRNTN, + iE_Extensions := p_iE_Extensions + } // End of template mw_nRNTNTAIInformation + + template (present) NRFrequencyBandItem mw_nRFrequencyBandItem( + template (present) NRFrequencyBand p_nr_frequency_band := ?, + template NRFrequencyBandItem.iE_Extension p_iE_Extension := * + ) := { + nr_frequency_band := p_nr_frequency_band, + iE_Extension := p_iE_Extension + } // End of template mw_nRFrequencyBandItem + + template (present) NRFrequencyInfo mw_nRFrequencyInfo( + template (present) NRARFCN p_nrARFCN := ?, + template (present) NRFrequencyBand_List p_frequencyBand_List, + template NRFrequencyInfo.iE_Extension p_iE_Extension := * + ) := { + nrARFCN := p_nrARFCN, + frequencyBand_List := p_frequencyBand_List, + iE_Extension := p_iE_Extension + } // End of template mw_nRFrequencyInfo + + template (present) NRV2XServicesAuthorized mw_nRV2XServicesAuthorized( + template VehicleUE p_vehicleUE := *, + template PedestrianUE p_pedestrianUE := *, + template NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * ) := { - fiveGproSepQI := p_fiveGproSepQI, - fiveGproSepc5FlowBitRates := p_fiveGproSepc5FlowBitRates, - fiveGproSerange := p_fiveGproSerange, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveGProSePC5QoSFlowItem - - template (present) FiveGProSePC5FlowBitRates mw_fiveGProSePC5FlowBitRates( - template (present) BitRate p_fiveGproSeguaranteedFlowBitRate := ?, - template (present) BitRate p_fiveGproSemaximumFlowBitRate := ?, - template FiveGProSePC5FlowBitRates.iE_Extensions p_iE_Extensions := * - ) := { - fiveGproSeguaranteedFlowBitRate := p_fiveGproSeguaranteedFlowBitRate, - fiveGproSemaximumFlowBitRate := p_fiveGproSemaximumFlowBitRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveGProSePC5FlowBitRates - - template (present) FiveG_S_TMSI mw_fiveG_S_TMSI( - template (present) AMFSetID p_aMFSetID := ?, - template (present) AMFPointer p_aMFPointer := ?, - template (present) FiveG_TMSI p_fiveG_TMSI := ?, - template FiveG_S_TMSI.iE_Extensions p_iE_Extensions := * - ) := { - aMFSetID := p_aMFSetID, - aMFPointer := p_aMFPointer, - fiveG_TMSI := p_fiveG_TMSI, - iE_Extensions := p_iE_Extensions - } // End of template mw_fiveG_S_TMSI - - template (present) ForbiddenAreaInformation_Item mw_forbiddenAreaInformation_Item( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) ForbiddenTACs p_forbiddenTACs := ?, - template ForbiddenAreaInformation_Item.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - forbiddenTACs := p_forbiddenTACs, - iE_Extensions := p_iE_Extensions - } // End of template mw_forbiddenAreaInformation_Item - - template (present) FromEUTRANtoNGRAN mw_fromEUTRANtoNGRAN( - template (present) IntersystemSONeNBID p_sourceeNBID := ?, - template (present) IntersystemSONNGRANnodeID p_targetNGRANnodeID := ?, - template FromEUTRANtoNGRAN.iE_Extensions p_iE_Extensions := * - ) := { - sourceeNBID := p_sourceeNBID, - targetNGRANnodeID := p_targetNGRANnodeID, - iE_Extensions := p_iE_Extensions - } // End of template mw_fromEUTRANtoNGRAN - - template (present) FromNGRANtoEUTRAN mw_fromNGRANtoEUTRAN( - template (present) IntersystemSONNGRANnodeID p_sourceNGRANnodeID := ?, - template (present) IntersystemSONeNBID p_targeteNBID := ?, - template FromNGRANtoEUTRAN.iE_Extensions p_iE_Extensions := * - ) := { - sourceNGRANnodeID := p_sourceNGRANnodeID, - targeteNBID := p_targeteNBID, - iE_Extensions := p_iE_Extensions - } // End of template mw_fromNGRANtoEUTRAN - - template (present) GBR_QosInformation mw_gBR_QosInformation( - template (present) BitRate p_maximumFlowBitRateDL := ?, - template (present) BitRate p_maximumFlowBitRateUL := ?, - template (present) BitRate p_guaranteedFlowBitRateDL := ?, - template (present) BitRate p_guaranteedFlowBitRateUL := ?, - template NotificationControl p_notificationControl := *, - template PacketLossRate p_maximumPacketLossRateDL := *, - template PacketLossRate p_maximumPacketLossRateUL := *, - template GBR_QosInformation.iE_Extensions p_iE_Extensions := * - ) := { - maximumFlowBitRateDL := p_maximumFlowBitRateDL, - maximumFlowBitRateUL := p_maximumFlowBitRateUL, - guaranteedFlowBitRateDL := p_guaranteedFlowBitRateDL, - guaranteedFlowBitRateUL := p_guaranteedFlowBitRateUL, - notificationControl := p_notificationControl, - maximumPacketLossRateDL := p_maximumPacketLossRateDL, - maximumPacketLossRateUL := p_maximumPacketLossRateUL, - iE_Extensions := p_iE_Extensions - } // End of template mw_gBR_QosInformation - - template (present) GBR_QosInformation.iE_Extensions mw_gBR_QosInformation_id_AlternativeQoSParaSetList( - template (present) AlternativeQoSParaSetList p_alternativeQoSParaSetList := ? - ) := { - { - id := id_AlternativeQoSParaSetList, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} - } - } // End of template mw_gBR_QosInformation_id_AlternativeQoSParaSetList + vehicleUE := p_vehicleUE, + pedestrianUE := p_pedestrianUE, + iE_Extensions := p_iE_Extensions + } // End of template mw_nRV2XServicesAuthorized - template (present) GlobalCable_ID_new mw_globalCable_ID_new( - template (present) GlobalCable_ID p_globalCable_ID := ?, - template (present) TAI p_tAI := ?, - template GlobalCable_ID_new.iE_Extensions p_iE_Extensions := * - ) := { - globalCable_ID := p_globalCable_ID, - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalCable_ID_new - - template (present) GlobalGNB_ID mw_ie_globalGnbId( - template (present) PLMNIdentity p_plmnId := ?, - template (present) bitstring p_gnbId := ?, - template GlobalGNB_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_plmnId,//'010001'O, - gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, - iE_Extensions := p_iE_Extensions - } // End of template mw_ie_globalGnbId - - template (present) GlobalN3IWF_ID mw_globalN3IWF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) N3IWF_ID p_n3IWF_ID := ?, - template GlobalN3IWF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - n3IWF_ID := p_n3IWF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalN3IWF_ID - - template (present) GlobalLine_ID mw_globalLine_ID( - template (present) GlobalLineIdentity p_globalLineIdentity := ?, - template LineType p_lineType := *, - template GlobalLine_ID.iE_Extensions p_iE_Extensions := * - ) := { - globalLineIdentity := p_globalLineIdentity, - lineType := p_lineType, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalLine_ID - - template (present) GlobalLine_ID.iE_Extensions mw_globalLine_ID_id_TAI(template TAI p_tAI := *) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template mw_globalLine_ID_id_TAI + template (present) VehicleUE mw_vehicleUE(template (present) VehicleUE p_value := ?) := p_value; - template (present) GlobalNgENB_ID mw_globalNgENB_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) NgENB_ID p_ngENB_ID := ?, - template GlobalNgENB_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - ngENB_ID := p_ngENB_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalNgENB_ID + template (present) PedestrianUE mw_pedestrianUE(template (present) PedestrianUE p_value := ?) := p_value; - template (present) GlobalRANNodeID mw_globalRANNodeID_globalGNB_ID( - template (present) GlobalGNB_ID p_globalGNB_ID := ? - ) := { - globalGNB_ID := p_globalGNB_ID - } // End of template mw_globalRANNodeID_globalGNB_ID + template (present) NRUESidelinkAggregateMaximumBitrate mw_nRUESidelinkAggregateMaximumBitrate( + template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, + template NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * + ) := { + uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_nRUESidelinkAggregateMaximumBitrate - template (present) GlobalRANNodeID mw_globalRANNodeID_globalNgENB_ID( - template (present) GlobalNgENB_ID p_globalNgENB_ID := ? - ) := { - globalNgENB_ID := p_globalNgENB_ID - } // End of template mw_globalRANNodeID_globalNgENB_ID + template (present) OnboardingSupport mw_onboardingSupport(template (present) OnboardingSupport p_value := true_) := p_value; - template (present) GlobalRANNodeID mw_globalRANNodeID_globalN3IWF_ID( - template (present) GlobalN3IWF_ID p_globalN3IWF_ID := ? - ) := { - globalN3IWF_ID := p_globalN3IWF_ID - } // End of template mw_globalRANNodeID_globalN3IWF_ID + template (present) OverloadAction mw_overloadAction(template (present) OverloadAction p_value := ?) := p_value; - template (present) GlobalRANNodeID mw_globalRANNodeID_choice_Extensions( - template (present) GlobalRANNodeID.choice_Extensions p_choice_Extensions := ? + template (present) OverloadResponse mw_overloadResponse_overloadAction( + template (present) OverloadAction p_overloadAction := ? ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_globalRANNodeID_choice_Extensions + overloadAction := p_overloadAction + } // End of template mw_overloadResponse_overloadAction - template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTNGF_ID( - template (present) GlobalTNGF_ID p_globalTNGF_ID := ? - ) := { - id := id_GlobalTNGF_ID, - criticality := reject, - value_ := { GlobalTNGF_ID := p_globalTNGF_ID } - } // End of template mw_globalRANNodeID_id_GlobalTNGF_ID - - template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalTWIF_ID( - template (present) GlobalTNGF_ID p_globalTWIF_ID := ? - ) := { - id := id_GlobalTWIF_ID, - criticality := reject, - value_ := { GlobalTNGF_ID := p_globalTWIF_ID } - } // End of template mw_globalRANNodeID_id_GlobalTWIF_ID + template (present) OverloadResponse mw_overloadResponse_choice_Extensions( + template (present) OverloadResponse.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_overloadResponse_choice_Extensions - template (present) GlobalRANNodeID.choice_Extensions mw_globalRANNodeID_id_GlobalW_AGF_ID( - template (present) GlobalW_AGF_ID p_globalW_AGF_ID := ? - ) := { - id := id_GlobalW_AGF_ID, - criticality := reject, - value_ := { GlobalW_AGF_ID := p_globalW_AGF_ID } - } // End of template mw_globalRANNodeID_id_GlobalW_AGF_ID - - template (present) GlobalTNGF_ID mw_globalTNGF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) TNGF_ID p_tNGF_ID := ?, - template GlobalTNGF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - tNGF_ID := p_tNGF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalTNGF_ID - - template (present) GlobalTWIF_ID mw_globalTWIF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) TWIF_ID p_tWIF_ID := ?, - template GlobalTWIF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - tWIF_ID := p_tWIF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_globalTWIF_ID - - template (present) GlobalW_AGF_ID mw_GlobalW_AGF_ID( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) W_AGF_ID p_w_AGF_ID := ?, - template GlobalW_AGF_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - w_AGF_ID := p_w_AGF_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_GlobalW_AGF_ID - - template (present) GNB_ID mw_gNB_ID_gNB_ID( - template (present) GNB_ID.gNB_ID p_gNB_ID := ? - ) := { - gNB_ID := p_gNB_ID - } // End of template mw_gNB_ID_gNB_ID - - template (present) GNB_ID mw_gNB_ID_choice_Extensions( - template (present) GNB_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_gNB_ID_choice_Extensions - - template (present) GTPTunnel mw_gTPTunnel( - in template (present) TransportLayerAddress p_tla := ?, - in template (present) GTP_TEID p_gtp_teid := ?, - in template GTPTunnel.iE_Extensions p_iE_Extensions := * - ):= { - transportLayerAddress := p_tla, - gTP_TEID := p_gtp_teid, - iE_Extensions := p_iE_Extensions - } // End of template mw_gTPTunnel - - template (present) GUAMI mw_gUAMI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) AMFRegionID p_aMFRegionID := ?, - template (present) AMFSetID p_aMFSetID := ?, - template (present) AMFPointer p_aMFPointer := ?, - template GUAMI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - aMFRegionID := p_aMFRegionID, - aMFSetID := p_aMFSetID, - aMFPointer := p_aMFPointer, - iE_Extensions := p_iE_Extensions - } // End of template mw_gUAMI - - template (present) GUAMIType mw_gUAMIType(template (present) GUAMIType p_val := ?) := p_val; - - template HandoverCommandTransfer mw_handoverCommandTransfer( - template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, - template QosFlowToBeForwardedList p_qosFlowToBeForwardedList := *, - template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, - template HandoverCommandTransfer.iE_Extensions p_iE_Extensions := * - ) := { - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - qosFlowToBeForwardedList := p_qosFlowToBeForwardedList, - dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverCommandTransfer - - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( - template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? - ) := { - { - id := id_AdditionalDLForwardingUPTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation - - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_ULForwardingUP_TNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation - - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalULForwardingUPTNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation - - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_DataForwardingResponseERABList( - template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? - ) := { - { - id := id_DataForwardingResponseERABList, - criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } - } - } // End of template mw_handoverCommandTransfer_id_DataForwardingResponseERABList - template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_QosFlowFailedToSetupList( - template (present) QosFlowListWithCause p_qosFlowListWithCause := ? - ) := { - { - id := id_QosFlowFailedToSetupList, - criticality := ignore, - extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template mwhandoverCommandTransfer_id_QosFlowFailedToSetupList - - template (present) HandoverFlag mw_handoverFlag(template (present) HandoverFlag p_val := handover_preparation) := p_val; - - template (present) HandoverPreparationUnsuccessfulTransfer mw_mandoverPreparationUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template HandoverPreparationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_mandoverPreparationUnsuccessfulTransfer - - template (present) HandoverRequestAcknowledgeTransfer mw_handoverRequestAcknowledgeTransfer( - template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, - template (present) QosFlowListWithDataForwarding p_qosFlowSetupResponseList := ?, - template UPTransportLayerInformation p_dLForwardingUP_TNLInformation := *, - template SecurityResult p_securityResult := *, - template QosFlowListWithCause p_qosFlowFailedToSetupList := *, - template DataForwardingResponseDRBList p_dataForwardingResponseDRBList := *, - template HandoverRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * - ) := { - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - dLForwardingUP_TNLInformation := p_dLForwardingUP_TNLInformation, - securityResult := p_securityResult, - qosFlowSetupResponseList := p_qosFlowSetupResponseList, - qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, - dataForwardingResponseDRBList := p_dataForwardingResponseDRBList, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverRequestAcknowledgeTransfer - - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( - template (present) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList := ? - ) := { - { - id := id_AdditionalDLUPTNLInformationForHOList, - criticality := reject, - extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList - - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_ULForwardingUP_TNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation + template (present) OverloadStartNSSAIItem mw_overloadStartNSSAIItem( + template (present) SliceOverloadList p_sliceOverloadList := ?, + template OverloadResponse p_sliceOverloadResponse := *, + template TrafficLoadReductionIndication p_sliceTrafficLoadReductionIndication := *, + template OverloadStartNSSAIItem.iE_Extensions p_iE_Extensions := * + ) := { + sliceOverloadList := p_sliceOverloadList, + sliceOverloadResponse := p_sliceOverloadResponse, + sliceTrafficLoadReductionIndication := p_sliceTrafficLoadReductionIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_overloadStartNSSAIItem + + template (present) PacketErrorRate mw_PacketErrorRate( + template (present) PacketErrorRate.pERScalar p_pERScalar := ?, + template (present) PacketErrorRate.pERExponent p_pERExponent := ?, + template PacketErrorRate.iE_Extensions p_iE_Extensions := * + ) := { + pERScalar := p_pERScalar, + pERExponent := p_pERExponent, + iE_Extensions := p_iE_Extensions + } // End of template mw_PacketErrorRate - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalULForwardingUPTNLInformation, - criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation + template (present) PagingAssisDataforCEcapabUE mw_pagingAssisDataforCEcapabUE( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) CoverageEnhancementLevel p_coverageEnhancementLevel := ?, + template PagingAssisDataforCEcapabUE.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + coverageEnhancementLevel := p_coverageEnhancementLevel, + iE_Extensions := p_iE_Extensions + } // End of template mw_pagingAssisDataforCEcapabUE + + template (present) PagingAttemptInformation mw_pagingAttemptInformation( + template (present) PagingAttemptCount p_pagingAttemptCount := ?, + template (present) IntendedNumberOfPagingAttempts p_intendedNumberOfPagingAttempts := ?, + template NextPagingAreaScope p_nextPagingAreaScope := *, + template PagingAttemptInformation.iE_Extensions p_iE_Extensions := * + ) := { + pagingAttemptCount := p_pagingAttemptCount, + intendedNumberOfPagingAttempts := p_intendedNumberOfPagingAttempts, + nextPagingAreaScope := p_nextPagingAreaScope, + iE_Extensions := p_iE_Extensions + } // End of template mw_pagingAttemptInformation - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( - template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? - ) := { - { - id := id_DataForwardingResponseERABList, - criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList - - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation + template (present) PagingCause mw_pagingCause(template (present) PagingCause p_value := voice) := p_value; - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( - template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? - ) := { - { - id := id_UsedRSNInformation, - criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation - - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ? - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID - - template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( - template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator + template (present) PagingCauseIndicationForVoiceService mw_pagingCauseIndicationForVoiceService(template (present) PagingCauseIndicationForVoiceService p_value := ?) := p_value; - template HandoverRequiredTransfer mw_handoverRequiredTransfer( - template DirectForwardingPathAvailability p_directForwardingPathAvailability := *, - template HandoverRequiredTransfer.iE_Extensions p_iE_Extensions := * - ) := { - directForwardingPathAvailability := p_directForwardingPathAvailability, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverRequiredTransfer + template (present) PagingDRX mw_pagingDRX(template (present) PagingDRX p_value := ?) := p_value; - template (present) HandoverResourceAllocationUnsuccessfulTransfer mw_handoverResourceAllocationUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template CriticalityDiagnostics p_criticalityDiagnostics := *, - template HandoverResourceAllocationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template mw_handoverResourceAllocationUnsuccessfulTransfer + template (present) PagingOrigin mw_pagingOrigin(template (present) PagingOrigin p_value := ?) := p_value; - template (present) HandoverType mw_handoverType(template (present) HandoverType p_value := ?) := p_value; + template (present) PagingPriority mw_pagingPriority(template (present) PagingPriority p_value := ?) := p_value; - template (present) HFCNode_ID_new mw_hFCNode_ID_new( - template (present) HFCNode_ID p_hFCNode_ID := ?, - template (present) TAI p_tAI := ?, - template HFCNode_ID_new.iE_Extensions p_iE_Extensions := * - ) := { - hFCNode_ID := p_hFCNode_ID, - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_hFCNode_ID_new - - template (present) HOReport mw_hOReport( - template (present) HOReport.handoverReportType p_handoverReportType := ?, - template (present) Cause p_handoverCause := ?, - template (present) NGRAN_CGI p_sourcecellCGI := ?, - template (present) NGRAN_CGI p_targetcellCGI := ?, - template NGRAN_CGI p_reestablishmentcellCGI := ?, - template Bit16 p_sourcecellC_RNTI := *, - template EUTRA_CGI p_targetcellinE_UTRAN := *, - template MobilityInformation p_mobilityInformation := *, - template UERLFReportContainer p_uERLFReportContainer := *, - template HOReport.iE_Extensions p_iE_Extensions := * - ) := { - handoverReportType := p_handoverReportType, - handoverCause := p_handoverCause, - sourcecellCGI := p_sourcecellCGI, - targetcellCGI := p_targetcellCGI, - reestablishmentcellCGI := p_reestablishmentcellCGI, - // The above IE shall be present if the Handover Report Type IE is set to the value "HO to wrong cell" - sourcecellC_RNTI := p_sourcecellC_RNTI, - targetcellinE_UTRAN := p_targetcellinE_UTRAN, - // The above IE shall be present if the Handover Report Type IE is set to the value "Inter System ping_pong" - mobilityInformation := p_mobilityInformation, - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_hOReport - - template (present) IAB_Authorized mw_iAB_Authorized(template (present) IAB_Authorized p_value := ?) := p_value; - - template (present) IAB_Supported mw_iAB_Supported(template (present) IAB_Supported p_value := true_) := p_value; - - template (present) IABNodeIndication mw_iABNodeIndication(template (present) IABNodeIndication p_value := true_) := p_value; - - template (present) IMSVoiceSupportIndicator mw_iMSVoiceSupportIndicator(template (present) IMSVoiceSupportIndicator p_value := ?) := p_value; - - template (present) InfoOnRecommendedCellsAndRANNodesForPaging mw_infoOnRecommendedCellsAndRANNodesForPaging( - template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, - template (present) RecommendedRANNodesForPaging p_recommendRANNodesForPaging := ?, - template InfoOnRecommendedCellsAndRANNodesForPaging.iE_Extensions p_iE_Extensions := * - ) := { - recommendedCellsForPaging := p_recommendedCellsForPaging, - recommendRANNodesForPaging := p_recommendRANNodesForPaging, - iE_Extensions := p_iE_Extensions - } // End of template mw_infoOnRecommendedCellsAndRANNodesForPaging - - template (present) IntegrityProtectionIndication mw_integrityProtectionIndication(template (present) IntegrityProtectionIndication p_value := ?) := p_value; - - template (present) IntegrityProtectionResult mw_integrityProtectionResult(template (present) IntegrityProtectionResult p_value := ?) := p_value; - - template (present) ImmediateMDTNr mw_immediateMDTNr( - template (present) MeasurementsToActivate p_measurementsToActivate := ?, - template M1Configuration p_m1Configuration := *, - template M4Configuration p_m4Configuration := *, - template M5Configuration p_m5Configuration := *, - template M6Configuration p_m6Configuration := *, - template M7Configuration p_m7Configuration := *, - template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, - template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, - template MDT_Location_Info p_mDT_Location_Info := *, - template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, - template ImmediateMDTNr.iE_Extensions p_iE_Extensions := * - ) := { - measurementsToActivate := p_measurementsToActivate, - m1Configuration := p_m1Configuration, - // The above IE shall be present if the Measurements to Activate IE has the first bit set to “1” - m4Configuration := p_m4Configuration, - // The above IE shall be present if the Measurements to Activate IE has the third bit set to “1” - m5Configuration := p_m5Configuration, - // The above IE shall be present if the Measurements to Activate IE has the fourth bit set to “1” - m6Configuration := p_m6Configuration, - // The above IE shall be present if the Measurements to Activate IE has the fifth bit set to “1” - m7Configuration := p_m7Configuration, - // The above IE shall be present if the Measurements to Activate IE has the sixth bit set to “1” - bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, - wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, - mDT_Location_Info := p_mDT_Location_Info, - sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, - iE_Extensions := p_iE_Extensions - } // End of template mw_immediateMDTNr - - template InterSystemFailureIndication mw_interSystemFailureIndication( - template UERLFReportContainer p_uERLFReportContainer := *, - template InterSystemFailureIndication.iE_Extensions p_iE_Extensions := * - ) := { - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_interSystemFailureIndication - - template (present) IntersystemSONConfigurationTransfer mw_intersystemSONConfigurationTransfer( - template (present) IntersystemSONTransferType p_transferType := ?, - template (present) IntersystemSONInformation p_intersystemSONInformation := ?, - template IntersystemSONConfigurationTransfer.iE_Extensions p_iE_Extensions := * - ) := { - transferType := p_transferType, - intersystemSONInformation := p_intersystemSONInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemSONConfigurationTransfer - - template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromEUTRANtoNGRAN( - template (present) FromEUTRANtoNGRAN p_fromEUTRANtoNGRAN := ? - ) := { - fromEUTRANtoNGRAN := p_fromEUTRANtoNGRAN - } // End of template mw_intersystemSONTransferType_fromEUTRANtoNGRAN - - template (present) IntersystemSONTransferType mw_intersystemSONTransferType_fromNGRANtoEUTRAN( - template (present) FromNGRANtoEUTRAN p_fromNGRANtoEUTRAN := ? - ) := { - fromNGRANtoEUTRAN := p_fromNGRANtoEUTRAN - } // End of template mw_intersystemSONTransferType_fromNGRANtoEUTRAN - - template (present) IntersystemSONTransferType mw_intersystemSONTransferType_choice_Extensions( - template (present) IntersystemSONTransferType.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONTransferType_choice_Extensions - - template (present) IntersystemSONeNBID mw_intersystemSONeNBID( - template (present) GlobalENB_ID p_globaleNBID := ?, - template (present) EPS_TAI p_selectedEPSTAI := ?, - template IntersystemSONeNBID.iE_Extensions p_iE_Extensions := * - ) := { - globaleNBID := p_globaleNBID, - selectedEPSTAI := p_selectedEPSTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemSONeNBID - - template (present) IntersystemSONNGRANnodeID mw_intersystemSONNGRANnodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template (present) TAI p_selectedTAI := ?, - template IntersystemSONNGRANnodeID.iE_Extensions p_iE_Extensions := * - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemSONNGRANnodeID - - template (present) IntersystemSONInformation mw_intersystemSONInformation_intersystemSONInformationReport( - in template (present) IntersystemSONInformationReport p_intersystemSONInformationReport := ? - ) := { - intersystemSONInformationReport := p_intersystemSONInformationReport - } // End of template mw_intersystemSONInformation_intersystemSONInformationReport - - template (present) IntersystemSONInformation mw_intersystemSONInformation_choice_Extensions( - template (present) IntersystemSONInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformation_choice_Extensions + template (present) PagingProbabilityInformation mw_pagingProbabilityInformation(template (present) PagingProbabilityInformation p_value := ?) := p_value; - template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationRequest( - template (present) IntersystemSONInformationRequest p_intersystemSONInformationRequest := ? - ) := { - id := id_IntersystemSONInformationRequest, - criticality := ignore, - value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } - } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationRequest - - template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationReply( - template (present) IntersystemSONInformationReply p_intersystemSONInformationReply := ? - ) := { - id := id_IntersystemSONInformationReply, - criticality := ignore, - value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } - } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationReply - - template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_nGRAN_CellActivation( - template (present) IntersystemCellActivationRequest p_nGRAN_CellActivation := ? - ) := { - nGRAN_CellActivation := p_nGRAN_CellActivation - } // End of template mw_intersystemSONInformationRequest_nGRAN_CellActivation - - template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_resourceStatus( - template (present) IntersystemResourceStatusRequest p_resourceStatus := ? - ) := { - resourceStatus := p_resourceStatus - } // End of template mw_intersystemSONInformationRequest_resourceStatus - - template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_choice_Extensions( - template (present) IntersystemSONInformationRequest.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformationRequest_choice_Extensions - - template (present) IntersystemCellActivationRequest mw_intersystemCellActivationRequest( - template (present) IntersystemCellActivationRequest.activationID p_activationID := ?, - template (present) CellsToActivateList p_cellsToActivateList := ?, - template IntersystemCellActivationRequest.iE_Extensions p_iE_Extensions := * + template PathSwitchRequestAcknowledgeTransfer mw_PathSwitchRequestAcknowledgeTransfer( + template UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := *, + template SecurityIndication p_securityIndication := *, + template PathSwitchRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * ) := { - activationID := p_activationID, - cellsToActivateList := p_cellsToActivateList, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemCellActivationRequest - - template (present) IntersystemResourceStatusRequest mw_intersystemResourceStatusRequest( - template (present) ReportingSystem p_reportingSystem := ?, - template (present) ReportCharacteristics p_reportCharacteristics := ?, - template (present) ReportType p_reportType := ?, - template IntersystemResourceStatusRequest.iE_Extensions p_iE_Extensions := * - ) := { - reportingSystem := p_reportingSystem, - reportCharacteristics := p_reportCharacteristics, - reportType := p_reportType, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemResourceStatusRequest - - template (present) ReportingSystem mw_reportingSystem_eUTRAN( - template (present) EUTRAN_ReportingSystemIEs p_eUTRAN := ? - ) := { - eUTRAN := p_eUTRAN - } // End of template mw_reportingSystem_eUTRAN - - template (present) ReportingSystem mw_reportingSystem_nGRAN( - template (present) NGRAN_ReportingSystemIEs p_nGRAN := ? - ) := { - nGRAN := p_nGRAN - } // End of template mw_reportingSystem_nGRAN + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + securityIndication := p_securityIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_PathSwitchRequestAcknowledgeTransfer - template (present) ReportingSystem mw_reportingSystem_choice_Extensions( - template (present) ReportingSystem.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_reportingSystem_choice_Extensions + template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { + { + id := id_AdditionalNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation - template (present) EUTRAN_ReportingSystemIEs mw_eUTRAN_ReportingSystemIEs( - template (present) EUTRAN_CellToReportList p_eUTRAN_CellToReportList := ?, - template EUTRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * - ) := { - eUTRAN_CellToReportList := p_eUTRAN_CellToReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_ReportingSystemIEs + template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation - template (present) NGRAN_ReportingSystemIEs mw_nGRAN_ReportingSystemIEs( - template (present) NGRAN_CellToReportList p_nGRAN_CellToReportList := ?, - template NGRAN_ReportingSystemIEs.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CellToReportList := p_nGRAN_CellToReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_ReportingSystemIEs + template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation - template (present) EUTRAN_CellToReportItem mw_eUTRAN_CellToReportItem( - template (present) EUTRA_CGI p_eCGI := ?, - template EUTRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * - ) := { - eCGI := p_eCGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_CellToReportItem + template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList( + template (present) QosFlowParametersList p_qosFlowParametersList := ? + ) := { + { + id := id_QosFlowParametersList, + criticality := ignore, + extensionValue := { QosFlowParametersList := p_qosFlowParametersList } + } + } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList + + template (present) PathSwitchRequestSetupFailedTransfer mw_pathSwitchRequestSetupFailedTransfer( + template (present) Cause p_cause := ?, + template PathSwitchRequestSetupFailedTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pathSwitchRequestSetupFailedTransfer + + template (present) PathSwitchRequestTransfer mw_pathSwitchRequestTransfer( + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template (present) QosFlowAcceptedList p_qosFlowAcceptedList := ?, + template DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := *, + template UserPlaneSecurityInformation p_userPlaneSecurityInformation := *, + template PathSwitchRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + dL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused, + userPlaneSecurityInformation := p_userPlaneSecurityInformation, + qosFlowAcceptedList := p_qosFlowAcceptedList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pathSwitchRequestTransfer + + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation + + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation + + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused( + template (present) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := ? + ) := { + { + id := id_RedundantDL_NGU_TNLInformationReused, + criticality := ignore, + extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } + } + } // End of template mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused - template (present) NGRAN_CellToReportItem mw_nGRAN_CellToReportItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template NGRAN_CellToReportItem.iE_Extensions p_iE_Extensions := * - ):= { - nGRAN_CGI := p_nGRAN_CGI, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_CellToReportItem + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation - template (present) ReportType mw_reportType_eventBasedReporting( - template (present) EventBasedReportingIEs p_eventBasedReporting := ? - ) := { - eventBasedReporting := p_eventBasedReporting - } // End of template mw_reportType_eventBasedReporting - - template (present) ReportType mw_reportType_periodicReporting( - template (present) PeriodicReportingIEs p_periodicReporting := ? - ) := { - periodicReporting := p_periodicReporting - } // End of template mw_reportType_periodicReporting - - template (present) ReportType mw_reportType_choice_Extensions( - template (present) ReportType.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_reportType_choice_Extensions - - template (present) NumberOfMeasurementReportingLevels mw_numberOfMeasurementReportingLevels(template (present) NumberOfMeasurementReportingLevels p_value := ?) := p_value; - - template (present) PeriodicReportingIEs mw_PeriodicReportingIEs( - template (present) ReportingPeriodicity p_reportingPeriodicity := ?, - template PeriodicReportingIEs.iE_Extensions p_iE_Extensions := * - ) := { - reportingPeriodicity := p_reportingPeriodicity, - iE_Extensions := p_iE_Extensions - } // End of template mw_PeriodicReportingIEs - - template (present) ReportingPeriodicity mw_reportingPeriodicity(template (present) ReportingPeriodicity p_value := ?) := p_value; - - template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_nGRAN_CellActivation( - template (present) IntersystemCellActivationReply p_nGRAN_CellActivation := ? - ) := { - nGRAN_CellActivation := p_nGRAN_CellActivation - } // End of template mw_intersystemSONInformationReply_nGRAN_CellActivation - - template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_resourceStatus( - template (present) IntersystemResourceStatusReply p_resourceStatus := ? - ) := { - resourceStatus := p_resourceStatus - } // End of template mw_intersystemSONInformationReply_resourceStatus - - template (present) IntersystemSONInformationReply mw_intersystemSONInformationReply_choice_Extensions( - template (present) IntersystemSONInformationReply.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformationReply_choice_Extensions - - template (present) IntersystemCellActivationReply mw_intersystemCellActivationReply( - template (present) ActivatedCellList p_activatedCellList := ?, - template (present) IntersystemCellActivationReply.activation_ID p_activation_ID := ?, - template IntersystemCellActivationReply.iE_Extensions p_iE_Extensions := * - ) := { - activatedCellList := p_activatedCellList, - activation_ID := p_activation_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemCellActivationReply - - template (present) IntersystemResourceStatusReply mw_intersystemResourceStatusReply( - template (present) ReportingSystem p_reportingsystem := ?, - template IntersystemResourceStatusReply.iE_Extensions p_iE_Extensions := * - ) := { - reportingsystem := p_reportingsystem, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemResourceStatusReply - - template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_hOReportInformation( - template (present) InterSystemHOReport p_hOReportInformation := ? - ) := { - hOReportInformation := p_hOReportInformation - } // End of template mw_intersystemSONInformationReport_hOReportInformation - - template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_failureIndicationInformation( - template (present) InterSystemFailureIndication p_failureIndicationInformation := ? - ) := { - failureIndicationInformation := p_failureIndicationInformation - } // End of template mw_intersystemSONInformationReport_failureIndicationInformation - - template (present) IntersystemSONInformationReport mw_intersystemSONInformationReport_choice_Extensions( - template (present) IntersystemSONInformationReport.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_intersystemSONInformationReport_choice_Extensions - - template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_EnergySavingIndication( - template (present) IntersystemCellStateIndication p_intersystemCellStateIndication := ? - ) := { - id := id_EnergySavingIndication, - criticality := ignore, - value_ := { IntersystemCellStateIndication := p_intersystemCellStateIndication } - } // End of template mw_intersystemSONInformationReport_id_EnergySavingIndication - - template (present) IntersystemSONInformationReport.choice_Extensions mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate( - template (present) IntersystemResourceStatusReport p_intersystemResourceStatusReport := ? - ) := { - id := id_IntersystemResourceStatusUpdate, - criticality := ignore, - value_ := { IntersystemResourceStatusReport := p_intersystemResourceStatusReport } - } // End of template mw_intersystemSONInformationReport_id_IntersystemResourceStatusUpdate - - template (present) NotificationCell_Item mw_notificationCell_Item( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template (present) NotificationCell_Item.notifyFlag p_notifyFlag := ?, - template NotificationCell_Item.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - notifyFlag := p_notifyFlag, - iE_Extensions := p_iE_Extensions - } // End of template mw_notificationCell_Item - - template (present) IntersystemResourceStatusReport mw_intersystemResourceStatusReport( - template (present) ResourceStatusReportingSystem p_reportingSystem := ?, - template IntersystemResourceStatusReport.iE_Extensions p_iE_Extensions := * - ) := { - reportingSystem := p_reportingSystem, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemResourceStatusReport - - template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_eUTRAN_ReportingStatus( - template (present) EUTRAN_ReportingStatusIEs p_eUTRAN_ReportingStatus := ? - ) := { - eUTRAN_ReportingStatus := p_eUTRAN_ReportingStatus - } // End of template mw_resourceStatusReportingSystem_eUTRAN_ReportingStatus - - template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystemt_nGRAN_ReportingStatus( - template (present) NGRAN_ReportingStatusIEs p_nGRAN_ReportingStatus := ? - ) := { - nGRAN_ReportingStatus := p_nGRAN_ReportingStatus - } // End of template mw_resourceStatusReportingSystem_nGRAN_ReportingStatus - - template (present) ResourceStatusReportingSystem mw_resourceStatusReportingSystem_choice_Extensions( - template (present) ResourceStatusReportingSystem.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_resourceStatusReportingSystem_choice_Extensions + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_UsedRSNInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template mw_pathSwitchRequestTransferr_id_UsedRSNInformation - template (present) EUTRAN_ReportingStatusIEs mw_eUTRAN_ReportingStatusIEs( - template (present) EUTRAN_CellReportList p_eUTRAN_CellReportList := ?, - template EUTRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * - ) := { - eUTRAN_CellReportList := p_eUTRAN_CellReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_ReportingStatusIEs - - template (present) EUTRAN_CellReportItem mw_eUTRAN_CellReportItem ( - template (present) EUTRA_CGI p_eCGI, - template (present) EUTRAN_CompositeAvailableCapacityGroup p_eUTRAN_CompositeAvailableCapacityGroup := ?, - template EUTRAN_NumberOfActiveUEs p_eUTRAN_NumberOfActiveUEs := *, - template NGRAN_NoofRRCConnections p_eUTRAN_NoofRRCConnections := *, - template EUTRAN_RadioResourceStatus p_eUTRAN_RadioResourceStatus := *, - template EUTRAN_CellReportItem.iE_Extensions p_iE_Extensions := * - ):= { - eCGI := p_eCGI, - eUTRAN_CompositeAvailableCapacityGroup := p_eUTRAN_CompositeAvailableCapacityGroup, - eUTRAN_NumberOfActiveUEs := p_eUTRAN_NumberOfActiveUEs, - eUTRAN_NoofRRCConnections := p_eUTRAN_NoofRRCConnections, - eUTRAN_RadioResourceStatus := p_eUTRAN_RadioResourceStatus, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_ReportingStatusIEs - - template (present) EUTRAN_CompositeAvailableCapacityGroup mw_EUTRAN_CompositeAvailableCapacityGroup( - template (present) CompositeAvailableCapacity p_dL_CompositeAvailableCapacity := ?, - template (present) CompositeAvailableCapacity p_uL_CompositeAvailableCapacity := ?, - template EUTRAN_CompositeAvailableCapacityGroup.iE_Extensions p_iE_Extensions := * - ) := { - dL_CompositeAvailableCapacity := p_dL_CompositeAvailableCapacity, - uL_CompositeAvailableCapacity := p_uL_CompositeAvailableCapacity, - iE_Extensions := p_iE_Extensions - } // End of template mw_EUTRAN_CompositeAvailableCapacityGroup - - template (present) CompositeAvailableCapacity mw_compositeAvailableCapacity( - template (present) CompositeAvailableCapacity.capacityValue p_capacityValue := ?, - template CompositeAvailableCapacity.cellCapacityClassValue p_cellCapacityClassValue := *, - template CompositeAvailableCapacity.iE_Extensions p_iE_Extensions := * - ) := { - cellCapacityClassValue := p_cellCapacityClassValue, - capacityValue := p_capacityValue, - iE_Extensions := p_iE_Extensions - } // End of template mw_compositeAvailableCapacity - - template (present) EUTRAN_RadioResourceStatus mw_eUTRAN_RadioResourceStatus( - template (present) EUTRAN_RadioResourceStatus.dL_GBR_PRB_usage p_dL_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.uL_GBR_PRB_usage p_uL_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.dL_non_GBR_PRB_usage p_dL_non_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.uL_non_GBR_PRB_usage p_uL_non_GBR_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.dL_Total_PRB_usage p_dL_Total_PRB_usage := ?, - template (present) EUTRAN_RadioResourceStatus.uL_Total_PRB_usage p_uL_Total_PRB_usage := ?, - template EUTRAN_RadioResourceStatus.dL_scheduling_PDCCH_CCE_usage p_dL_scheduling_PDCCH_CCE_usage := *, - template EUTRAN_RadioResourceStatus.uL_scheduling_PDCCH_CCE_usage p_uL_scheduling_PDCCH_CCE_usage := *, - template EUTRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * - ) := { - dL_GBR_PRB_usage := p_dL_GBR_PRB_usage, - uL_GBR_PRB_usage := p_uL_GBR_PRB_usage, - dL_non_GBR_PRB_usage := p_dL_non_GBR_PRB_usage, - uL_non_GBR_PRB_usage := p_uL_non_GBR_PRB_usage, - dL_Total_PRB_usage := p_dL_Total_PRB_usage, - uL_Total_PRB_usage := p_uL_Total_PRB_usage, - dL_scheduling_PDCCH_CCE_usage := p_dL_scheduling_PDCCH_CCE_usage, - uL_scheduling_PDCCH_CCE_usage := p_uL_scheduling_PDCCH_CCE_usage, - iE_Extensions := p_iE_Extensions - } // End of template mw_eUTRAN_RadioResourceStatus - - template (present) NGRAN_ReportingStatusIEs mw_nGRAN_ReportingStatusIEs( - template (present) NGRAN_CellReportList p_nGRAN_CellReportList := ?, - template NGRAN_ReportingStatusIEs.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CellReportList := p_nGRAN_CellReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_ReportingStatusIEs - - template (present) NGRAN_CellReportItem mw_nGRAN_CellReportItem( - template (present) NGRAN_CGI p_nGRAN_CGI, - template (present) EUTRAN_CompositeAvailableCapacityGroup p_nGRAN_CompositeAvailableCapacityGroup := ?, - template NGRAN_NumberOfActiveUEs p_nGRAN_NumberOfActiveUEs := *, - template NGRAN_NoofRRCConnections p_nGRAN_NoofRRCConnections := *, - template NGRAN_RadioResourceStatus p_nGRAN_RadioResourceStatus := *, - template NGRAN_CellReportItem.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - nGRAN_CompositeAvailableCapacityGroup := p_nGRAN_CompositeAvailableCapacityGroup, - nGRAN_NumberOfActiveUEs := p_nGRAN_NumberOfActiveUEs, - nGRAN_NoofRRCConnections := p_nGRAN_NoofRRCConnections, - nGRAN_RadioResourceStatus := p_nGRAN_RadioResourceStatus, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_CellReportItem - - template (present) NGRAN_RadioResourceStatus mw_nGRAN_RadioResourceStatus( - template (present) NGRAN_RadioResourceStatus.dL_GBR_PRB_usage_for_MIMO p_dL_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.uL_GBR_PRB_usage_for_MIMO p_uL_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.dL_non_GBR_PRB_usage_for_MIMO p_dL_non_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.uL_non_GBR_PRB_usage_for_MIMO p_uL_non_GBR_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.dL_Total_PRB_usage_for_MIMO p_dL_Total_PRB_usage_for_MIMO := ?, - template (present) NGRAN_RadioResourceStatus.uL_Total_PRB_usage_for_MIMO p_uL_Total_PRB_usage_for_MIMO := ?, - template NGRAN_RadioResourceStatus.iE_Extensions p_iE_Extensions := * - ) := { - dL_GBR_PRB_usage_for_MIMO := p_dL_GBR_PRB_usage_for_MIMO, - uL_GBR_PRB_usage_for_MIMO := p_uL_GBR_PRB_usage_for_MIMO, - dL_non_GBR_PRB_usage_for_MIMO := p_dL_non_GBR_PRB_usage_for_MIMO, - uL_non_GBR_PRB_usage_for_MIMO := p_uL_non_GBR_PRB_usage_for_MIMO, - dL_Total_PRB_usage_for_MIMO := p_dL_Total_PRB_usage_for_MIMO, - uL_Total_PRB_usage_for_MIMO := p_uL_Total_PRB_usage_for_MIMO, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_RadioResourceStatus - - template (present) InterSystemHOReport mw_interSystemHOReport( - template (present) InterSystemHandoverReportType p_handoverReportType := ?, - template InterSystemHOReport.iE_Extensions p_iE_Extensions := * - ) := { - handoverReportType := p_handoverReportType, - iE_Extensions := p_iE_Extensions - } // End of template mw_interSystemHOReport - - template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_tooearlyIntersystemHO( - template (present) TooearlyIntersystemHO p_tooearlyIntersystemHO := ? - ) := { - tooearlyIntersystemHO := p_tooearlyIntersystemHO - } // End of template mw_interSystemHandoverReportType_tooearlyIntersystemHO + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template mw_pathSwitchRequestTransferr_id_GlobalRANNodeID - template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_intersystemUnnecessaryHO( - template (present) IntersystemUnnecessaryHO p_intersystemUnnecessaryHO := ? - ) := { - intersystemUnnecessaryHO := p_intersystemUnnecessaryHO - } // End of template mw_interSystemHandoverReportType_intersystemUnnecessaryHO + template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template mw_pathSwitchRequestTransfer_id_MBS_SupportIndicator - template (present) InterSystemHandoverReportType mw_interSystemHandoverReportType_choice_Extensions( - template (present) InterSystemHandoverReportType.choice_Extensions p_choice_Extensions := ? + template (present) PathSwitchRequestUnsuccessfulTransfer mw_pathSwitchRequestUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template PathSwitchRequestUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_interSystemHandoverReportType_choice_Extensions - - template (present) IntersystemUnnecessaryHO mw_intersystemUnnecessaryHO( - template (present) NGRAN_CGI p_sourcecellID := ?, - template (present) EUTRA_CGI p_targetcellID := ?, - template (present) IntersystemUnnecessaryHO.earlyIRATHO p_earlyIRATHO := ?, - template (present) CandidateCellList p_candidateCellList := ?, - template IntersystemUnnecessaryHO.iE_Extensions p_iE_Extensions := * - ) := { - sourcecellID := p_sourcecellID, - targetcellID := p_targetcellID, - earlyIRATHO := p_earlyIRATHO, - candidateCellList := p_candidateCellList, - iE_Extensions := p_iE_Extensions - } // End of template mw_intersystemUnnecessaryHO - - template (present) LAI mw_lai( - template (present) PLMNIdentity p_pLMNidentity := ?, - template (present) LAC p_lAC := ?, - template LAI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNidentity := p_pLMNidentity, - lAC := p_lAC, - iE_Extensions := p_iE_Extensions - } // End of template mw_lai - - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_nGRANCell( - template (present) LastVisitedNGRANCellInformation p_nGRANCell := ? - ) := { - nGRANCell := p_nGRANCell - } // End of template mw_interSystemHandoverReportType_nGRANCell - - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_eUTRANCell( - template (present) LastVisitedEUTRANCellInformation p_eUTRANCell := ? - ) := { - eUTRANCell := p_eUTRANCell - } // End of template mw_interSystemHandoverReportType_eUTRANCell + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pathSwitchRequestUnsuccessfulTransfer + + template (present) PC5QoSParameters mw_pC5QoSParameters( + template (present) PC5QoSFlowList p_pc5QoSFlowList := ?, + template BitRate p_pc5LinkAggregateBitRates := *, + template PC5QoSParameters.iE_Extensions p_iE_Extensions := * + ) := { + pc5QoSFlowList := p_pc5QoSFlowList, + pc5LinkAggregateBitRates := p_pc5LinkAggregateBitRates, + iE_Extensions := p_iE_Extensions + } // End of template mw_pC5QoSParameters + + template (present) PC5QoSFlowItem mw_pC5QoSFlowItem( + template (present) FiveQI p_pQI := ?, + template PC5FlowBitRates p_pc5FlowBitRates := *, + template Range p_range := *, + template PC5QoSFlowItem.iE_Extensions p_iE_Extensions := * + ) := { + pQI := p_pQI, + pc5FlowBitRates := p_pc5FlowBitRates, + range := p_range, + iE_Extensions := p_iE_Extensions + } // End of template mw_pC5QoSFlowItem + + template (present) PC5FlowBitRates mw_pC5FlowBitRates( + template (present) BitRate p_guaranteedFlowBitRate := ?, + template (present) BitRate p_maximumFlowBitRate := ?, + template PC5FlowBitRates.iE_Extensions p_iE_Extensions := * + ) := { + guaranteedFlowBitRate := p_guaranteedFlowBitRate, + maximumFlowBitRate := p_maximumFlowBitRate, + iE_Extensions := p_iE_Extensions + } // End of template mw_pC5FlowBitRates - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_uTRANCell( - template (present) LastVisitedUTRANCellInformation p_uTRANCell := ? - ) := { - uTRANCell := p_uTRANCell - } // End of template mw_interSystemHandoverReportType_uTRANCell + template (present) PrivacyIndicator mw_privacyIndicator(template (present) PrivacyIndicator p_value := ?) := p_value; - template (present) LastVisitedCellInformation mw_interSystemHandoverReportType_gERANCell( - template (present) LastVisitedGERANCellInformation p_gERANCell := ? - ) := { - gERANCell := p_gERANCell - } // End of template mw_interSystemHandoverReportType_gERANCell - - template (present) LastVisitedCellInformation mw_lastVisitedCellInformation_choice_Extensions( - template (present) LastVisitedCellInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_lastVisitedCellInformation_choice_Extensions - - template (present) LastVisitedCellItem mw_lastVisitedCellItem( - template (present) LastVisitedCellInformation p_lastVisitedCellInformation := ?, - template LastVisitedCellItem.iE_Extensions p_iE_Extensions := * - ) := { - lastVisitedCellInformation := p_lastVisitedCellInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_lastVisitedCellItem - - template (present) LastVisitedNGRANCellInformation mw_lastVisitedNGRANCellInformation( - template (present) NGRAN_CGI p_globalCellID := ?, - template (present) CellType p_cellType := ?, - template (present) TimeUEStayedInCell p_timeUEStayedInCell := ?, - template TimeUEStayedInCellEnhancedGranularity p_timeUEStayedInCellEnhancedGranularity := *, - template Cause p_hOCauseValue := *, - template LastVisitedNGRANCellInformation.iE_Extensions p_iE_Extensions := * - ) := { - globalCellID := p_globalCellID, - cellType := p_cellType, - timeUEStayedInCell := p_timeUEStayedInCell, - timeUEStayedInCellEnhancedGranularity := p_timeUEStayedInCellEnhancedGranularity, - hOCauseValue := p_hOCauseValue, - iE_Extensions := p_iE_Extensions - } // End of template mw_lastVisitedNGRANCellInformation - - template (present) LastVisitedNGRANCellInformation.iE_Extensions mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( - template (present) LastVisitedPSCellList p_lastVisitedPSCellList := ? - ) := { - { - id := id_LastVisitedPSCellList, - criticality := ignore, - extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } - } - } // End of template mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList + template (present) PDUSessionAggregateMaximumBitRate mw_pDUSessionAggregateMaximumBitRate( + template (present) BitRate p_pDUSessionAggregateMaximumBitRateDL := ?, + template (present) BitRate p_pDUSessionAggregateMaximumBitRateUL := ?, + template PDUSessionAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionAggregateMaximumBitRateDL := p_pDUSessionAggregateMaximumBitRateDL, + pDUSessionAggregateMaximumBitRateUL := p_pDUSessionAggregateMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionAggregateMaximumBitRate - template (present) LastVisitedPSCellInformation mw_LastVisitedPSCellInformation( - template (present) NGRAN_CGI p_pSCellID := ?, - template (present) LastVisitedPSCellInformation.timeStay p_timeStay := ?, - template LastVisitedPSCellInformation.iE_Extensions p_iE_Extensions := * - ) := { - pSCellID := p_pSCellID, - timeStay := p_timeStay, - iE_Extensions := p_iE_Extensions - } // End of template mw_LastVisitedPSCellInformation + template (present) PDUSessionResourceAdmittedItem mw_pDUSessionResourceAdmittedItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceAdmittedItem.handoverRequestAcknowledgeTransfer p_handoverRequestAcknowledgeTransfer := ?, + template PDUSessionResourceAdmittedItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + handoverRequestAcknowledgeTransfer := p_handoverRequestAcknowledgeTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceAdmittedItem + + template (present) PDUSessionResourceFailedToModifyItemModCfm mw_pDUSessionResourceFailedToModifyItemModCfm( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToModifyItemModCfm.pDUSessionResourceModifyIndicationUnsuccessfulTransfer p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyIndicationUnsuccessfulTransfer := p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToModifyItemModCfm + + template (present) PDUSessionResourceFailedToModifyItemModRes mw_pDUSessionResourceFailedToModifyItemModRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToModifyItemModRes.pDUSessionResourceModifyUnsuccessfulTransfer p_pDUSessionResourceModifyUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToModifyItemModRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyUnsuccessfulTransfer := p_pDUSessionResourceModifyUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToModifyItemModRes - template (present) LineType mw_lineType(template (present) LineType p_value := pon) := p_value; + template (present) PDUSessionResourceFailedToResumeItemRESReq mw_pDUSessionResourceFailedToResumeItemRESReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) Cause p_cause := ?, + template PDUSessionResourceFailedToResumeItemRESReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToResumeItemRESReq - template (present) LocationReportingAdditionalInfo mw_locationReportingAdditionalInfo(template (present) LocationReportingAdditionalInfo p_value := includePSCell) := p_value; + template (present) PDUSessionResourceFailedToResumeItemRESRes mw_pDUSessionResourceFailedToResumeItemRESRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) Cause p_cause := ?, + template PDUSessionResourceFailedToResumeItemRESRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToResumeItemRESRes + + template (present) PDUSessionResourceFailedToSetupItemCxtFail mw_pDUSessionResourceFailedToSetupItemCxtFail( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemCxtFail.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToSetupItemCxtFail.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemCxtFail - template (present) LocationReportingRequestType mw_locationReportingRequestType( - template (present) EventType p_eventType := ?, - template (present) ReportArea p_reportArea := ?, - template AreaOfInterestList p_areaOfInterestList := *, - template LocationReportingReferenceID p_locationReportingReferenceIDToBeCancelled := *, - template LocationReportingRequestType.iE_Extensions p_iE_Extensions := * - ) := { - eventType := p_eventType, - reportArea := p_reportArea, - areaOfInterestList := p_areaOfInterestList, - locationReportingReferenceIDToBeCancelled := p_locationReportingReferenceIDToBeCancelled, - // The above IE shall be present if the event type is set to “stop reporting UE presence in the area of interest” - iE_Extensions := p_iE_Extensions - } // End of template mw_locationReportingRequestType - - template (present) LocationReportingRequestType.iE_Extensions mw_locationReportingRequestType_id_LocationReportingAdditionalInfo( - template (present) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo := ? - ) := { - { - id := id_LocationReportingAdditionalInfo, - criticality := ignore, - extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } - } - } // End of template mw_locationReportingRequestType_id_LocationReportingAdditionalInfo - - template (present) LoggedMDTNr mw_loggedMDTNr( - template (present) LoggingInterval p_loggingInterval := ?, - template (present) LoggingDuration p_loggingDuration := ?, - template (present) LoggedMDTTrigger p_loggedMDTTrigger := ?, - template BluetoothMeasurementConfiguration p_bluetoothMeasurementConfiguration := *, - template WLANMeasurementConfiguration p_wLANMeasurementConfiguration := *, - template SensorMeasurementConfiguration p_sensorMeasurementConfiguration := *, - template AreaScopeOfNeighCellsList p_areaScopeOfNeighCellsList := *, - template LoggedMDTNr.iE_Extensions p_iE_Extensions := * - ) := { - loggingInterval := p_loggingInterval, - loggingDuration := p_loggingDuration, - loggedMDTTrigger := p_loggedMDTTrigger, - bluetoothMeasurementConfiguration := p_bluetoothMeasurementConfiguration, - wLANMeasurementConfiguration := p_wLANMeasurementConfiguration, - sensorMeasurementConfiguration := p_sensorMeasurementConfiguration, - areaScopeOfNeighCellsList := p_areaScopeOfNeighCellsList, - iE_Extensions := p_iE_Extensions - } // End of template mw_loggedMDTNr - - template (present) LoggingInterval mw_loggingInterval(template (present) LoggingInterval p_value := ?) := p_value; - - template (present) LoggingDuration mw_loggingDuration(template (present) LoggingDuration p_value := ?) := p_value; - - template (present) Links_to_log mw_Links_to_log(template (present) Links_to_log p_value := ?) := p_value; - - template (present) LoggedMDTTrigger mw_loggedMDTTrigger_gERANCell( - template (present) EventTrigger p_eventTrigger := ? - ) := { - eventTrigger := p_eventTrigger - } // End of template mw_loggedMDTTrigger_gERANCell - - template (present) LoggedMDTTrigger mw_loggedMDTTrigger_choice_Extensions( - template (present) LoggedMDTTrigger.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_loggedMDTTrigger_choice_Extensions - - template (present) LTEM_Indication mw_lTEM_Indication(template (present) LTEM_Indication p_value := lte_m) := p_value; - - template LTEV2XServicesAuthorized mw_lTEV2XServicesAuthorized( - template VehicleUE p_vehicleUE := *, - template PedestrianUE p_pedestrianUE:= *, - template LTEV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * - ) := { - vehicleUE := p_vehicleUE, - pedestrianUE := p_pedestrianUE, - iE_Extensions := p_iE_Extensions - } // End of template mw_lTEV2XServicesAuthorized - - template (present) LTEUESidelinkAggregateMaximumBitrate mw_lTEUESidelinkAggregateMaximumBitrate( - template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, - template LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * - ) := { - uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_lTEUESidelinkAggregateMaximumBitrate + template (present) PDUSessionResourceFailedToSetupItemCxtRes mw_pDUSessionResourceFailedToSetupItemCxtRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemCxtRes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToSetupItemCxtRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemCxtRes - template (present) MaximumIntegrityProtectedDataRate mw_maximumIntegrityProtectedDataRate(template (present) MaximumIntegrityProtectedDataRate p_value := ?) := p_value; + template (present) PDUSessionResourceFailedToSetupItemHOAck mw_pDUSessionResourceFailedToSetupItemHOAck( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToSetupItemHOAck.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + handoverResourceAllocationUnsuccessfulTransfer := p_handoverResourceAllocationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemHOAck - template (present) MBS_DataForwardingResponseMRBItem mw_mBS_DataForwardingResponseMRBItem( - template (present) MRB_ID p_mRB_ID := ?, - template (present) UPTransportLayerInformation p_dL_Forwarding_UPTNLInformation := ?, - template MRB_ProgressInformation p_mRB_ProgressInformation := *, - template MBS_DataForwardingResponseMRBItem.iE_Extensions p_iE_Extensions := * - ) := { - mRB_ID := p_mRB_ID, - dL_Forwarding_UPTNLInformation := p_dL_Forwarding_UPTNLInformation, - mRB_ProgressInformation := p_mRB_ProgressInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DataForwardingResponseMRBItem - - template (present) MBS_MappingandDataForwardingRequestItem mw_mBS_MappingandDataForwardingRequestItem( - template (present) MRB_ID p_mRB_ID := ?, - template (present) MBS_QoSFlowList p_mBS_QoSFlowList := ?, - template MRB_ProgressInformation p_mRB_ProgressInformation := *, - template MBS_MappingandDataForwardingRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - mRB_ID := p_mRB_ID, - mBS_QoSFlowList := p_mBS_QoSFlowList, - mRB_ProgressInformation := p_mRB_ProgressInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_MappingandDataForwardingRequestItem - - template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length12( - template (present) MRB_ProgressInformation.pDCP_SN_Length12 p_pDCP_SN_Length12 := ? - ) := { - pDCP_SN_Length12 := p_pDCP_SN_Length12 - } // End of template mw_mRB_ProgressInformation_pDCP_SN_Length12 + template (present) PDUSessionResourceFailedToSetupItemPSReq mw_pDUSessionResourceFailedToSetupItemPSReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer := ?, + template PDUSessionResourceFailedToSetupItemPSReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestSetupFailedTransfer := p_pathSwitchRequestSetupFailedTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemPSReq - template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_pDCP_SN_Length18( - template (present) MRB_ProgressInformation.pDCP_SN_Length18 p_pDCP_SN_Length18 := ? - ) := { - pDCP_SN_Length18 := p_pDCP_SN_Length18 - } // End of template m_mRB_ProgressInformation_pDCP_SN_Length18 + template (present) PDUSessionResourceFailedToSetupItemSURes mw_pDUSessionResourceFailedToSetupItemSURes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, + template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceFailedToSetupItemSURes - template (present) MRB_ProgressInformation mw_mRB_ProgressInformation_choice_Extensions( - template (present) MRB_ProgressInformation.choice_Extensions p_choice_Extensions := ? + template (present) PDUSessionResourceHandoverItem mw_pDUSessionResourceHandoverItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceHandoverItem.handoverCommandTransfer p_handoverCommandTransfer := ?, + template PDUSessionResourceHandoverItem.iE_Extensions p_iE_Extensions := * ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mRB_ProgressInformation_choice_Extensions + pDUSessionID := p_pDUSessionID, + handoverCommandTransfer := p_handoverCommandTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceHandoverItem - template (present) MBS_QoSFlowsToBeSetupItem mw_mBS_QoSFlowsToBeSetupItem( - template (present)QosFlowIdentifier p_mBSqosFlowIdentifier := ?, - template (present)QosFlowLevelQosParameters p_mBSqosFlowLevelQosParameters := ?, - template MBS_QoSFlowsToBeSetupItem.iE_Extensions p_iE_Extensions := * - ) := { - mBSqosFlowIdentifier := p_mBSqosFlowIdentifier, - mBSqosFlowLevelQosParameters := p_mBSqosFlowLevelQosParameters, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_QoSFlowsToBeSetupItem + template (present) PDUSessionResourceInformationItem mw_pDUSessionResourceInformationItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) QosFlowInformationList p_qosFlowInformationList := ?, + template DRBsToQosFlowsMappingList p_dRBsToQosFlowsMappingList := *, + template PDUSessionResourceInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + qosFlowInformationList := p_qosFlowInformationList, + dRBsToQosFlowsMappingList := p_dRBsToQosFlowsMappingList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceInformationItem - template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationindependent( - template (present) MBS_ServiceAreaInformation p_locationindependent := ? - ) := { - locationindependent := p_locationindependent - } // End of template mw_mBS_ServiceArea_locationindependent + template (present) PDUSessionResourceItemCxtRelCpl mw_pDUSessionResourceItemCxtRelCpl( + template (present) PDUSessionID p_pDUSessionID := ?, + template PDUSessionResourceItemCxtRelCpl.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceItemCxtRelCpl - template (present) MBS_ServiceArea mw_mBS_ServiceArea_locationdependent( - template (present) MBS_ServiceAreaInformationList p_locationdependent := ? - ) := { - locationdependent := p_locationdependent - } // End of template mw_mBS_ServiceArea_locationdependent + template (present) PDUSessionResourceItemCxtRelCpl.iE_Extensions mw_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer( + template (present) PDUSessionResourceReleaseResponseTransfer_OCTET_STRING p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING := ? + ) := { + { + id := id_PDUSessionResourceReleaseResponseTransfer, + criticality := ignore, + extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } + } + } // End of template mw_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer - template (present) MBS_ServiceArea mw_mBS_ServiceArea_choice_Extensions( - template (present) MBS_ServiceArea.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mBS_ServiceArea_choice_Extensions + template (present) PDUSessionResourceItemCxtRelReq mw_pDUSessionResourceItemCxtRelReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template PDUSessionResourceItemCxtRelReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceItemCxtRelReq - template (present) MBS_ServiceAreaInformationItem mw_mBS_ServiceAreaInformationItem( - template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, - template (present) MBS_ServiceAreaInformation p_mBS_ServiceAreaInformation := ?, - template MBS_ServiceAreaInformationItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_AreaSessionID := p_mBS_AreaSessionID, - mBS_ServiceAreaInformation := p_mBS_ServiceAreaInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_ServiceAreaInformationItem - - template MBS_ServiceAreaInformation mw_mBS_ServiceAreaInformation( - template MBS_ServiceAreaCellList p_mBS_ServiceAreaCellList := *, - template MBS_ServiceAreaTAIList p_mBS_ServiceAreaTAIList := *, - template MBS_ServiceAreaInformation.iE_Extensions p_iE_Extensions := * - ) := { - mBS_ServiceAreaCellList := p_mBS_ServiceAreaCellList, - mBS_ServiceAreaTAIList := p_mBS_ServiceAreaTAIList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_ServiceAreaInformation - - template (present) MBS_SessionID mw_mBS_SessionID( - template (present) TMGI p_tMGI := ?, - template NID p_nID := *, - template MBS_SessionID.iE_Extensions p_iE_Extensions := * - ) := { - tMGI := p_tMGI, - nID := p_nID, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_SessionID - - template (present) MBSSessionFailedtoSetupItem mw_mBSSessionFailedtoSetupItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) Cause p_cause := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template MBSSessionFailedtoSetupItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionFailedtoSetupItem - - template (present) MBS_ActiveSessionInformation_SourcetoTargetItem mw_mBS_ActiveSessionInformation_SourcetoTargetItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template MBS_ServiceArea p_mBS_ServiceArea := *, - template MBS_MappingandDataForwardingRequestList p_mBS_MappingandDataForwardingRequestList := *, - template MBS_ActiveSessionInformation_SourcetoTargetItem.iE_Extensions p_iE_Extensions := * - ):= { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - mBS_ServiceArea := p_mBS_ServiceArea, - mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, - mBS_MappingandDataForwardingRequestList := p_mBS_MappingandDataForwardingRequestList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_ActiveSessionInformation_SourcetoTargetItem - - template (present) MBS_ActiveSessionInformation_TargettoSourceItem mw_mBS_ActiveSessionInformation_TargettoSourceItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_DataForwardingResponseMRBList p_mBS_DataForwardingResponseMRBList := *, - template MBS_ActiveSessionInformation_TargettoSourceItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_DataForwardingResponseMRBList := p_mBS_DataForwardingResponseMRBList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_ActiveSessionInformation_TargettoSourceItem - - template (present) MBSSessionSetupOrModFailureTransfer mw_mBSSessionSetupOrModFailureTransfer( - template (present) Cause p_cause := ?, - template CriticalityDiagnostics p_criticalityDiagnostics := *, - template MBSSessionSetupOrModFailureTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetupOrModFailureTransfer - - template (present) MBSSessionSetupResponseItem mw_mBSSessionSetupResponseItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template MBSSessionSetupResponseItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetupResponseItem - - template (present) MBSSessionSetupOrModRequestTransfer mw_mBSSessionSetupOrModRequestTransfer( - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs := ? - ) := { - protocolIEs := p_protocolIEs - } // End of template mw_mBSSessionSetupOrModRequestTransfer - - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( - template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? - ) := { - { - id := id_MBS_SessionTNLInfo5GC, - criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } - } - } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC + template (present) PDUSessionResourceItemHORqd mw_pDUSessionResourceItemHORqd( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceItemHORqd.handoverRequiredTransfer p_handoverRequiredTransfer := ?, + template PDUSessionResourceItemHORqd.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + handoverRequiredTransfer := p_handoverRequiredTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceItemHORqd + + template (present) PDUSessionResourceModifyConfirmTransfer mw_pDUSessionResourceModifyConfirmTransfer( + template (present) QosFlowModifyConfirmList p_qosFlowModifyConfirmList := ?, + template (present) UPTransportLayerInformation p_uLNGU_UP_TNLInformation := ?, + template UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := *, + template QosFlowListWithCause p_qosFlowFailedToModifyList := *, + template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowModifyConfirmList := p_qosFlowModifyConfirmList, + uLNGU_UP_TNLInformation := p_uLNGU_UP_TNLInformation, + additionalNG_UUPTNLInformation := p_additionalNG_UUPTNLInformation, + qosFlowFailedToModifyList := p_qosFlowFailedToModifyList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyConfirmTransfer + + template (present) PDUSessionResourceModifyConfirmTransfer.iE_Extensions mw_pDUSessionResourceModifyConfirmTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceModifyConfirmTransferr_id_RedundantUL_NGU_UP_TNLInformation - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( - template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? - ) := { - { - id := id_MBS_QoSFlowsToBeSetupModList, - criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } - } - } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + template (present) PDUSessionResourceModifyConfirmTransfer.iE_Extensions mw_pDUSessionResourceModifyConfirmTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template mw_pDUSessionResourceModifyConfirmTransferr_id_AdditionalRedundantNGU_UP_TNLInformation - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( - template (present) MBS_SessionFSAIDList p_mBS_SessionFSAIDList := ? - ) := { - { - id := id_MBS_SessionFSAIDList, - criticality := ignore, - value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } - } - } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList + template (present) PDUSessionResourceModifyIndicationUnsuccessfulTransfer mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template PDUSessionResourceModifyIndicationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer - template MBSSessionReleaseResponseTransfer mw_mBSSessionReleaseResponseTransfer( - template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, - template MBSSessionReleaseResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionReleaseResponseTransfer + template (present) PDUSessionResourceModifyRequestTransfer mw_pDUSessionResourceModifyRequestTransfer( + template PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { + protocolIEs := p_protocolIEs + } // End of template mw_pDUSessionResourceModifyRequestTransfer - template MBSSessionSetupOrModResponseTransfer mw_mBSSessionSetupOrModResponseTransfer( - template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, - template MBSSessionSetupOrModResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionTNLInfoNGRAN := p_mBS_SessionTNLInfoNGRAN, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetupOrModResponseTransfer + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( + template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? + ) := { + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate - template (present) MBS_SupportIndicator mw_mBS_SupportIndicator(template (present) MBS_SupportIndicator p_value := true_) := p_value; + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( + template (present) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList := ? + ) := { + { + id := id_UL_NGU_UP_TNLModifyList, + criticality := reject, + value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList - template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationindependent( - template (present) SharedNGU_MulticastTNLInformation p_locationindependent := ? - ) := { - locationindependent := p_locationindependent - } // End of template mw_mBS_SessionTNLInfo5GC_locationindependent + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( + template (present) NetworkInstance p_networkInstance := ? + ) := { + { + id := id_NetworkInstance, + criticality := reject, + value_ := { NetworkInstance := p_networkInstance } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance - template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_locationdependent( - template (present) MBS_SessionTNLInfo5GCList p_locationdependent := ? - ) := { - locationdependent := p_locationdependent - } // End of template mw_mBS_SessionTNLInfo5GC_locationdependent + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( + template (present) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList := ? + ) := { + { + id := id_QosFlowAddOrModifyRequestList, + criticality := reject, + value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList - template (present) MBS_SessionTNLInfo5GC mw_mBS_SessionTNLInfo5GC_choice_Extensions( - template (present) MBS_SessionTNLInfo5GC.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mBS_SessionTNLInfo5GC_choice_Extensions + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( + template (present) QosFlowListWithCause p_qosFlowListWithCause := ? + ) := { + { + id := id_QosFlowToReleaseList, + criticality := reject, + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalUL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation - template (present) MBS_SessionTNLInfo5GCItem mw_mBS_SessionTNLInfo5GCItem( - template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, - template (present) SharedNGU_MulticastTNLInformation p_sharedNGU_MulticastTNLInformation := ?, - template MBS_SessionTNLInfo5GCItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_SessionTNLInfo5GCItem + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? + ) := { + { + id := id_CommonNetworkInstance, + criticality := reject, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance - template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationindependent( - template (present) UPTransportLayerInformation p_locationindependent := ? - ) := { - locationindependent := p_locationindependent - } // End of template mw_mBS_SessionTNLInfoNGRAN_locationindependent + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation - template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_locationdependent( - template (present) MBS_SessionTNLInfoNGRANList p_locationdependent := ? - ) := { - locationdependent := p_locationdependent - } // End of template mw_mBS_SessionTNLInfoNGRAN_locationdependent + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? + ) := { + { + id := id_RedundantCommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance - template (present) MBS_SessionTNLInfoNGRAN mw_mBS_SessionTNLInfoNGRAN_choice_Extensions( - template (present) MBS_SessionTNLInfoNGRAN.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mBS_SessionTNLInfoNGRAN_choice_Extensions + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation - template (present) MBS_SessionTNLInfoNGRANItem mw_mBS_SessionTNLInfoNGRANItem( - template (present) MBS_AreaSessionID p_mBS_AreaSessionID := ?, - template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, - template MBS_SessionTNLInfoNGRANItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_SessionTNLInfoNGRANItem + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( + template (present) SecurityIndication p_securityIndication := ? + ) := { + { + id := id_SecurityIndication, + criticality := ignore, + value_ := { SecurityIndication := p_securityIndication } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication - template (present) MBS_DistributionReleaseRequestTransfer mw_mBS_DistributionReleaseRequestTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) Cause p_cause := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, - template MBS_DistributionReleaseRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DistributionReleaseRequestTransfer - - template (present) MBS_DistributionSetupRequestTransfer mw_mBS_DistributionSetupRequestTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template UPTransportLayerInformation p_sharedNGU_UnicastTNLInformation := *, - template MBS_DistributionSetupRequestTransfer.iE_Extensions p_iE_Extensions := * + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( + template (present) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList := ? + ) := { + { + id := id_MBSSessionSetuporModifyRequestList, + criticality := ignore, + value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList + + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( + template (present) MBSSessionToReleaseList p_mBSSessionToReleaseList := ? + ) := { + { + id := id_MBSSessionToReleaseList, + criticality := ignore, + value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } + } + } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList + + template PDUSessionResourceModifyResponseTransfer mw_pDUSessionResourceModifyResponseTransfer( + template UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := *, + template UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := *, + template QosFlowAddOrModifyResponseList p_qosFlowAddOrModifyResponseList := *, + template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + template QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := *, + template PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := * ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_UnicastTNLInformation := p_sharedNGU_UnicastTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DistributionSetupRequestTransfer - - template (present) MBS_DistributionSetupResponseTransfer mw_mBS_DistributionSetupResponseTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, - template (present) MBSSessionStatus p_mBSSessionStatus := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template MBS_SessionTNLInfo5GCItem p_sharedNGU_MulticastTNLInformation := *, - template MBS_ServiceArea p_mBS_ServiceArea := *, - template MBS_DistributionSetupResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - sharedNGU_MulticastTNLInformation := p_sharedNGU_MulticastTNLInformation, - mBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList, - mBSSessionStatus := p_mBSSessionStatus, - mBS_ServiceArea := p_mBS_ServiceArea, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DistributionSetupResponseTransfer - - template (present) MBS_DistributionSetupUnsuccessfulTransfer mw_mBS_DistributionSetupUnsuccessfulTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) Cause p_cause := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template CriticalityDiagnostics p_criticalityDiagnostics := *, - template MBS_DistributionSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBS_DistributionSetupUnsuccessfulTransfer - - template (present) MBSSessionSetupRequestItem mw_mBSSessionSetupRequestItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := *, - template MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := * - ):= { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - associatedMBSQosFlowSetupRequestList := p_associatedMBSQosFlowSetupRequestList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetupRequestItem - - template (present) MBSSessionSetuporModifyRequestItem mw_mBSSessionSetuporModifyRequestItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template AssociatedMBSQosFlowSetuporModifyRequestList p_associatedMBSQosFlowSetuporModifyRequestList := *, - template QosFlowListWithCause p_mBS_QosFlowToReleaseList := *, - template MBSSessionSetuporModifyRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - mBS_AreaSessionID := p_mBS_AreaSessionID, - associatedMBSQosFlowSetuporModifyRequestList := p_associatedMBSQosFlowSetuporModifyRequestList, - mBS_QosFlowToReleaseList := p_mBS_QosFlowToReleaseList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionSetuporModifyRequestItem - - template (present) MBSSessionToReleaseItem mw_mBSSessionToReleaseItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template (present) Cause p_cause := ?, - template MBSSessionToReleaseItem.iE_Extensions p_iE_Extensions := * - ):= { - mBS_SessionID := p_mBS_SessionID, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_mBSSessionToReleaseItem - - template (present) MBSSessionStatus mw_mBSSessionStatus(template (present) MBSSessionStatus p_value := ?) := p_value; - - template (present) MicoAllPLMN mw_micoAllPLMN(template (present) MicoAllPLMN p_value := true_) := p_value; - - template (present) MICOModeIndication mw_mICOModeIndication(template (present) MICOModeIndication p_value := true_) := p_value; - - template (present) MobilityRestrictionList mw_mobilityRestrictionList( - template (present) PLMNIdentity p_servingPLMN := ?, - template EquivalentPLMNs p_equivalentPLMNs := *, - template RATRestrictions p_rATRestrictions := *, - template ForbiddenAreaInformation p_forbiddenAreaInformation := *, - template ServiceAreaInformation p_serviceAreaInformation := *, - template MobilityRestrictionList.iE_Extensions p_iE_Extensions := * - ) := { - servingPLMN := p_servingPLMN, - equivalentPLMNs := p_equivalentPLMNs, - rATRestrictions := p_rATRestrictions, - forbiddenAreaInformation := p_forbiddenAreaInformation, - serviceAreaInformation := p_serviceAreaInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_mobilityRestrictionList - - template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( - template (present) PLMNIdentity p_pLMNIdentity := ? - ) := { - { - id := id_LastEUTRAN_PLMNIdentity, - criticality := ignore, - extensionValue := { PLMNIdentity := p_pLMNIdentity } - } - } // End of template mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + qosFlowAddOrModifyResponseList := p_qosFlowAddOrModifyResponseList, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + qosFlowFailedToAddOrModifyList := p_qosFlowFailedToAddOrModifyList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyResponseTransfer + + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { + { + id := id_AdditionalNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation - template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing( - template (present) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing := ? - ) := { - { - id := id_CNTypeRestrictionsForServing, - criticality := ignore, - extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } - } - } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing - - template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( - template (present) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent := ? - ) := { - { - id := id_CNTypeRestrictionsForEquivalent, - criticality := ignore, - extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } - } - } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation - template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_NPN_MobilityInformation( - template (present) NPN_MobilityInformation p_nPN_MobilityInformation := ? - ) := { - { - id := id_NPN_MobilityInformation, - criticality := reject, - extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } - } - } // End of template mw_mobilityRestrictionList_id_NPN_MobilityInformation + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation + + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_s_basedMDT( - template (present) NGRANTraceID p_s_basedMDT := ? - ) := { - s_basedMDT := p_s_basedMDT - } // End of template mw_mDT_AlignmentInfo_s_basedMDT + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( + template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? + ) := { + { + id := id_AdditionalRedundantNGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation - template (present) MDT_AlignmentInfo mw_mDT_AlignmentInfo_choice_Extensions( - template (present) MDT_AlignmentInfo.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mDT_AlignmentInfo_choice_Extensions + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation - template MDT_Configuration mw_mDT_Configuration( - template MDT_Configuration_NR p_mdt_Config_NR := *, - template MDT_Configuration_EUTRA p_mdt_Config_EUTRA := *, - template MDT_Configuration.iE_Extensions p_iE_Extensions := * - ) := { - mdt_Config_NR := p_mdt_Config_NR, - mdt_Config_EUTRA := p_mdt_Config_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_mDT_Configuration - - template (present) MDT_Configuration_NR mw_mDT_Configuration_NR( - template (present) MDT_Activation p_mdt_Activation := ?, - template (present) AreaScopeOfMDT_NR p_areaScopeOfMDT := ?, - template (present) MDTModeNr p_mDTModeNr := ?, - template MDTPLMNList p_signallingBasedMDTPLMNList := *, - template MDT_Configuration_NR.iE_Extensions p_iE_Extensions := * - ) := { - mdt_Activation := p_mdt_Activation, - areaScopeOfMDT := p_areaScopeOfMDT, - mDTModeNr := p_mDTModeNr, - signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mDT_Configuration_NR - - template (present) MDT_Configuration_EUTRA mw_mDT_Configuration_EUTRA( - template (present) MDT_Activation p_mdt_Activation := ?, - template (present) AreaScopeOfMDT_EUTRA p_areaScopeOfMDT := ?, - template (present) MDTModeEutra p_mDTMode := ?, - template MDTPLMNList p_signallingBasedMDTPLMNList := *, - template MDT_Configuration_EUTRA.iE_Extensions p_iE_Extensions := * - ) := { - mdt_Activation := p_mdt_Activation, - areaScopeOfMDT := p_areaScopeOfMDT, - mDTMode := p_mDTMode, - signallingBasedMDTPLMNList := p_signallingBasedMDTPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template mw_mDT_Configuration_EUTRA - - template (present) MDT_Activation mw_mDT_Activation(template (present) MDT_Activation p_value := ?) := p_value; - - template (present) MDTModeNr mw_mDTModeNro_immediateMDTNr( - template (present) ImmediateMDTNr p_immediateMDTNr := ? - ) := { - immediateMDTNr := p_immediateMDTNr - } // End of template mw_mDTModeNr_immediateMDTNr - - template (present) MDTModeNr mw_mDTModeNro_loggedMDTNr( - template (present) LoggedMDTNr p_loggedMDTNr := ? - ) := { - loggedMDTNr := p_loggedMDTNr - } // End of template mw_mDTModeNr_loggedMDTNr - - template (present) MDTModeNr mw_mDTModeNr_choice_Extensions( - template (present) MDTModeNr.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_mDTModeNr_choice_Extensions - - template (present) MulticastSessionActivationRequestTransfer mw_multicastSessionActivationRequestTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MulticastSessionActivationRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - iE_Extensions := p_iE_Extensions - } // End of template mw_multicastSessionActivationRequestTransfer - - template (present) MulticastSessionDeactivationRequestTransfer mw_multicastSessionDeactivationRequestTransfer( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MulticastSessionDeactivationRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - mBS_SessionID := p_mBS_SessionID, - iE_Extensions := p_iE_Extensions - } // End of template mw_multicastSessionDeactivationRequestTransfer - - template (present) MulticastSessionUpdateRequestTransfer mw_multicastSessionUpdateRequestTransfer( - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs p_protocolIEs := ? - ) := { - protocolIEs := p_protocolIEs - } // End of template mw_multicastSessionUpdateRequestTransfer - - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( - template (present) MBS_SessionID p_mBS_SessionID := ? - ) := { - { - id := id_MBS_SessionID, - criticality := reject, - value_ := { MBS_SessionID := p_mBS_SessionID } - } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( - template (present) MBS_ServiceArea p_mBS_ServiceArea := ? - ) := { - { - id := id_MBS_ServiceArea, - criticality := reject, - value_ := { MBS_ServiceArea := p_mBS_ServiceArea } - } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList( + template (present) MBSSessionSetupResponseList p_mBSSessionSetupResponseList := ? + ) := { + { + id := id_MBSSessionSetuporModifyResponseList, + criticality := ignore, + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( - template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? - ) := { - { - id := id_MBS_QoSFlowsToBeSetupModList, - criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } - } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList + template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList( + template (present) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList := ? + ) := { + { + id := id_MBSSessionFailedtoSetuporModifyList, + criticality := ignore, + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + } + } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( - template (present) QosFlowListWithCause p_qosFlowListWithCause := ? - ) := { - { - id := id_MBS_QoSFlowToReleaseList, - criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList + template (present) PDUSessionResourceModifyIndicationTransfer mw_pDUSessionResourceModifyIndicationTransfer( + template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyIndicationTransfer - template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( - template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? - ) := { - { - id := id_MBS_SessionTNLInfo5GC, - criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } - } - } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation - template (present) MulticastGroupPagingAreaItem mw_multicastGroupPagingAreaItem( - template (present) MulticastGroupPagingArea p_multicastGroupPagingArea := ?, - template UE_PagingList p_uE_PagingList := *, - template MulticastGroupPagingAreaItem.iE_Extensions p_iE_Extensions := * - ) := { - multicastGroupPagingArea := p_multicastGroupPagingArea, - uE_PagingList := p_uE_PagingList, - iE_Extensions := p_iE_Extensions - } // End of template mw_multicastGroupPagingAreaItem - - template (present) MulticastGroupPagingArea mw_multicastGroupPagingArea( - template (present) MBS_AreaTAIList p_mBS_AreaTAIList := ?, - template MulticastGroupPagingArea.iE_Extensions p_iE_Extensions := * - ) := { - mBS_AreaTAIList := p_mBS_AreaTAIList, - iE_Extensions := p_iE_Extensions - } // End of template mw_multicastGroupPagingArea - - template (present) UE_PagingItem mw_uE_PagingItem( - template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, - template PagingDRX p_pagingDRX := *, - template UE_PagingItem.iE_Extensions p_iE_Extensions := * - ) := { - uEIdentityIndexValue := p_uEIdentityIndexValue, - pagingDRX := p_pagingDRX, - iE_Extensions := p_iE_Extensions - } // End of template mw_uE_PagingItem - - template (present) M1Configuration mw_m1Configuration( - template (present) M1ReportingTrigger p_m1reportingTrigger := ?, - template M1ThresholdEventA2 p_m1thresholdEventA2 := *, - template M1PeriodicReporting p_m1periodicReporting := *, - template M1Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m1reportingTrigger := p_m1reportingTrigger, - m1thresholdEventA2 := p_m1thresholdEventA2, - // The above IE shall be present if the M1 Reporting Trigger IE is set to “A2event_triggered” or “A2event_triggered periodic” - m1periodicReporting := p_m1periodicReporting, - // The above IE shall be present if the M1 Reporting Trigger IE is set to “periodic” or “A2event_triggered periodic” - iE_Extensions := p_iE_Extensions - } // End of template mw_m1Configuration - - template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_IncludeBeamMeasurementsIndication( - template (present) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication := ? - ) := { - { - id := id_IncludeBeamMeasurementsIndication, - criticality := ignore, - extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } - } - } // End of template mw_m1Configuration_id_IncludeBeamMeasurementsIndication - - template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_BeamMeasurementsReportConfiguration( - template (present) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration := ? - ) := { - { - id := id_BeamMeasurementsReportConfiguration, - criticality := ignore, - extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } - } - } // End of template mw_m1Configuration_id_BeamMeasurementsReportConfiguration + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult( + template (present) SecurityResult p_securityResult := ? + ) := { + { + id := id_SecurityResult, + criticality := ignore, + extensionValue := { SecurityResult := p_securityResult } + } + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult + + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ? + ) := { + { + id := id_RedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + } + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation + + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - template (present) IncludeBeamMeasurementsIndication mw_includeBeamMeasurementsIndication(template (present) IncludeBeamMeasurementsIndication p_value := true_) := p_value; + template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID - template (present) M1ReportingTrigger mw_m1ReportingTrigger(template (present) M1ReportingTrigger p_value := ?) := p_value; + template (present) PDUSessionResourceModifyItemModCfm mw_pDUSessionResourceModifyItemModCfm( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceModifyItemModCfm.pDUSessionResourceModifyConfirmTransfer p_pDUSessionResourceModifyConfirmTransfer := ?, + template PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyConfirmTransfer := p_pDUSessionResourceModifyConfirmTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyItemModCfm - template (present) M1ThresholdEventA2 mw_m1ThresholdEventA2( - template (present) M1ThresholdType p_m1ThresholdType := ?, - template M1ThresholdEventA2.iE_Extensions p_iE_Extensions := * - ) := { - m1ThresholdType := p_m1ThresholdType, - iE_Extensions := p_iE_Extensions - } // End of template mw_m1ThresholdEventA2 + template (present) PDUSessionResourceModifyItemModInd mw_pDUSessionResourceModifyItemModInd( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceModifyItemModInd.pDUSessionResourceModifyIndicationTransfer p_pDUSessionResourceModifyIndicationTransfer := ?, + template PDUSessionResourceModifyItemModInd.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyIndicationTransfer := p_pDUSessionResourceModifyIndicationTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyItemModInd - template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRP( - template (present) Threshold_RSRP p_threshold_RSRP := ? - ) := { - threshold_RSRP := p_threshold_RSRP - } // End of template mw_m1ThresholdType_threshold_RSRP + template (present) PDUSessionResourceModifyItemModReq mw_pDUSessionResourceModifyItemModReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceModifyItemModReq.pDUSessionResourceModifyRequestTransfer p_pDUSessionResourceModifyRequestTransfer := ?, + template NAS_PDU p_nAS_PDU := *, + template PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + nAS_PDU := p_nAS_PDU, + pDUSessionResourceModifyRequestTransfer := p_pDUSessionResourceModifyRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyItemModReq + + template (present) PDUSessionResourceModifyItemModReq.iE_Extensions mw_pDUSessionResourceModifyItemModReq_id_S_NSSAI( + template (present) S_NSSAI p_s_nSSAI := ? + ) := { + { + id := id_S_NSSAI, + criticality := reject, + extensionValue := { S_NSSAI := p_s_nSSAI } + } + } // End of template mw_pDUSessionResourceModifyItemModReq_id_S_NSSAI - template (present) M1ThresholdType mw_m1ThresholdType_threshold_RSRQ( - template (present) Threshold_RSRQ p_threshold_RSRQ := ? - ) := { - threshold_RSRQ := p_threshold_RSRQ - } // End of template mw_m1ThresholdType_threshold_RSRQ + template (present) PDUSessionResourceModifyItemModReq.iE_Extensions mw_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour - template (present) M1ThresholdType mw_m1ThresholdType_threshold_SINR( - template (present) Threshold_SINR p_threshold_SINR := ? - ) := { - threshold_SINR := p_threshold_SINR - } // End of template mw_m1ThresholdType_threshold_SINR + template (present) PDUSessionResourceModifyItemModRes mw_pDUSessionResourceModifyItemModRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceModifyItemModRes.pDUSessionResourceModifyResponseTransfer p_pDUSessionResourceModifyResponseTransfer := ?, + template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * + ) := { - template (present) M1ThresholdType mw_m1ThresholdType_choice_Extensions( - template (present) M1ThresholdType.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_m1ThresholdType_choice_Extensions - - template (present) M1PeriodicReporting mw_m1PeriodicReporting( - template (present) ReportIntervalMDT p_reportInterval := ?, - template (present) ReportAmountMDT p_reportAmount := ?, - template M1PeriodicReporting.iE_Extensions p_iE_Extensions := * - ) := { - reportInterval := p_reportInterval, - reportAmount := p_reportAmount, - iE_Extensions := p_iE_Extensions - } // End of template mw_m1PeriodicReporting - - template (present) M1PeriodicReporting.iE_Extensions mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT( - template (present) ExtendedReportIntervalMDT p_extendedReportIntervalMDT := ? - ) := { - { - id := id_ExtendedReportIntervalMDT, - criticality := ignore, - extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } - } - } // End of template mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT - - template (present) M4Configuration mw_m4Configuration( - template (present) M4period p_m4period := ?, - template (present) Links_to_log p_m4_links_to_log := ?, - template M4Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m4period := p_m4period, - m4_links_to_log := p_m4_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template mw_m4Configuration - - template (present) M4Configuration.iE_Extensions mw_m4Configuration_id_M4ReportAmount( - template (present) M4ReportAmountMDT p_m4ReportAmountMDT := ? - ) := { - { - id := id_ExtendedReportIntervalMDT, - criticality := ignore, - extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } - } - } // End of template mw_m4Configuration_id_M4ReportAmount + pDUSessionID := p_pDUSessionID, + pDUSessionResourceModifyResponseTransfer := p_pDUSessionResourceModifyResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyItemModRes - template (present) M4ReportAmountMDT mw_m4ReportAmountMDT(template (present) M4ReportAmountMDT p_value := ?) := p_value; + template (present) PDUSessionResourceModifyUnsuccessfulTransfer mw_pDUSessionResourceModifyUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceModifyUnsuccessfulTransfer - template (present) M4period mw_m4period(template (present) M4period p_value := ?) := p_value; + template (present) PDUSessionResourceNotifyItem mw_pDUSessionResourceNotifyItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer, + template PDUSessionResourceNotifyItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceNotifyTransfer := p_pDUSessionResourceNotifyTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceNotifyItem - template (present) M5Configuration mw_m5Configuration( - template (present) M5period p_m5period := ?, - template (present) Links_to_log p_m5_links_to_log := ?, - template M5Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m5period := p_m5period, - m5_links_to_log := p_m5_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template mw_m5Configuration + template (present) PDUSessionResourceNotifyReleasedTransfer mw_pDUSessionResourceNotifyReleasedTransfer( + template (present) Cause p_cause := ?, + template PDUSessionResourceNotifyReleasedTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceNotifyReleasedTransfer - template (present) M5Configuration.iE_Extensions mw_m5Configuration_id_M5ReportAmount( - template (present) M5ReportAmountMDT p_m5ReportAmountMDT := ? - ) := { - { - id := id_M5ReportAmount, - criticality := ignore, - extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } - } - } // End of template mw_m5Configuration_id_M5ReportAmount + template (present) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation - template (present) M5ReportAmountMDT mw_m5ReportAmountMDT(template (present) M5ReportAmountMDT p_value := ?) := p_value; + template PDUSessionResourceNotifyTransfer mw_pDUSessionResourceNotifyTransfer( + template QosFlowNotifyList p_qosFlowNotifyList := *, + template QosFlowListWithCause p_qosFlowReleasedList := *, + template PDUSessionResourceNotifyTransfer.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowNotifyList := p_qosFlowNotifyList, + qosFlowReleasedList := p_qosFlowReleasedList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceNotifyTransfer - template (present) M5period mw_m5period(template (present) M5period p_value := ?) := p_value; + template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceNotifyTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation - template (present) M6Configuration mw_m6Configuration( - template (present) M6report_Interval p_m6report_Interval := ?, - template (present) Links_to_log p_m6_links_to_log := ?, - template M6Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m6report_Interval := p_m6report_Interval, - m6_links_to_log := p_m6_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template mw_m6Configuration + template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceNotifyTransfer_id_QosFlowFeedbackList( + template (present) QosFlowFeedbackList p_qosFlowFeedbackList := ? + ) := { + { + id := id_QosFlowFeedbackList, + criticality := ignore, + extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } + } + } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_QosFlowFeedbackList - template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_M6ReportAmount( - template (present) M6ReportAmountMDT p_m6ReportAmountMDT := ? - ) := { - { - id := id_M6ReportAmount, - criticality := ignore, - extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } - } - } // End of template mw_m6Configuration_id_M6ReportAmount + template (present) PDUSessionResourceReleaseCommandTransfer mw_pDUSessionResourceReleaseCommandTransfer( + template (present) Cause p_cause := ?, + template PDUSessionResourceReleaseCommandTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleaseCommandTransfer - template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( - template (present) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration := ? - ) := { - { - id := id_ExcessPacketDelayThresholdConfiguration, - criticality := ignore, - extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } - } - } // End of template mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration + template (present) PDUSessionResourceReleasedItemNot mw_pDUSessionResourceReleasedItemNot( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceReleasedItemNot.pDUSessionResourceNotifyReleasedTransfer p_pDUSessionResourceNotifyReleasedTransfer := ?, + template PDUSessionResourceReleasedItemNot.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceNotifyReleasedTransfer := p_pDUSessionResourceNotifyReleasedTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleasedItemNot - template (present) M6ReportAmountMDT mw_m6ReportAmountMDT(template (present) M6ReportAmountMDT p_value := ?) := p_value; + template (present) PDUSessionResourceReleasedItemPSAck mw_pDUSessionResourceReleasedItemPSAck( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceReleasedItemPSAck.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer := ?, + template PDUSessionResourceReleasedItemPSAck.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleasedItemPSAck + + template (present) PDUSessionResourceReleasedItemPSFail mw_pDUSessionResourceReleasedItemPSFail( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceReleasedItemPSFail.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer := ?, + template PDUSessionResourceReleasedItemPSFail.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleasedItemPSFail + + template (present) PDUSessionResourceReleasedItemRelRes mw_pDUSessionResourceReleasedItemRelRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceReleaseResponseTransfer := p_pDUSessionResourceReleaseResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleasedItemRelRes - template (present) M6report_Interval mw_m6report_Interval(template (present) M6report_Interval p_value := ?) := p_value; + template PDUSessionResourceReleaseResponseTransfer mw_pDUSessionResourceReleaseResponseTransfer( + template PDUSessionResourceReleaseResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceReleaseResponseTransfer - template (present) M7Configuration mw_m7Configuration( - template (present) M7period p_m7period := ?, - template (present) Links_to_log p_m7_links_to_log := ?, - template M7Configuration.iE_Extensions p_iE_Extensions := * - ) := { - m7period := p_m7period, - m7_links_to_log := p_m7_links_to_log, - iE_Extensions := p_iE_Extensions - } // End of template mw_m7Configuration + template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation( + template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? + ) := { + { + id := id_SecondaryRATUsageInformation, + criticality := ignore, + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + } + } // End of template mw_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation - template (present) M7Configuration.iE_Extensions mw_m7Configuration_id_M7ReportAmount( - template (present) M7ReportAmountMDT p_m7ReportAmountMDT := ? - ) := { - { - id := id_M7ReportAmount, - criticality := ignore, - extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } - } - } // End of template mw_m7Configuration_id_M7ReportAmount + template (present) PDUSessionResourceResumeItemRESReq mw_pDUSessionResourceResumeItemRESReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceResumeItemRESReq.uEContextResumeRequestTransfer p_uEContextResumeRequestTransfer := ?, + template PDUSessionResourceResumeItemRESReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + uEContextResumeRequestTransfer := p_uEContextResumeRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceResumeItemRESReq - template (present) M7ReportAmountMDT mw_m7ReportAmountMDT(template (present) M7ReportAmountMDT p_value := ?) := p_value; + template (present) PDUSessionResourceResumeItemRESRes mw_pDUSessionResourceResumeItemRESRes( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceResumeItemRESRes.uEContextResumeResponseTransfer p_uEContextResumeResponseTransfer := ?, + template PDUSessionResourceResumeItemRESRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + uEContextResumeResponseTransfer := p_uEContextResumeResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceResumeItemRESRes - template (present) MDT_Location_Info mw_mDT_Location_Info( - template (present) MDT_Location_Information p_mDT_Location_Information := ?, - template MDT_Location_Info.iE_Extensions p_iE_Extensions := * - ) := { - mDT_Location_Information := p_mDT_Location_Information, - iE_Extensions := p_iE_Extensions - } // End of template mw_mDT_Location_Info + template (present) PDUSessionResourceSecondaryRATUsageItem mw_pPDUSessionResourceSecondaryRATUsageItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceSecondaryRATUsageItem.secondaryRATDataUsageReportTransfer p_secondaryRATDataUsageReportTransfer := ?, + template PDUSessionResourceSecondaryRATUsageItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + secondaryRATDataUsageReportTransfer := p_secondaryRATDataUsageReportTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pPDUSessionResourceSecondaryRATUsageItem - template (present) N3IWF_ID mw_n3IWF_ID_n3IWF_ID( - template (present) N3IWF_ID.n3IWF_ID p_n3IWF_ID := ? - ) := { - n3IWF_ID := p_n3IWF_ID - } // End of template mw_n3IWF_ID_n3IWF_ID + template (present) PDUSessionResourceSetupItemCxtReq mw_pDUSessionResourceSetupItemCxtReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) S_NSSAI p_s_NSSAI := ?, + template (present) PDUSessionResourceSetupItemCxtReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer := ?, + template NAS_PDU p_nAS_PDU := *, + template PDUSessionResourceSetupItemCxtReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + nAS_PDU := p_nAS_PDU, + s_NSSAI := p_s_NSSAI, + pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemCxtReq + + template (present) PDUSessionResourceSetupItemCxtReq.iE_Extensions mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour - template (present) N3IWF_ID mw_n3IWF_ID_choice_Extensions( - template (present) N3IWF_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_n3IWF_ID_choice_Extensions + template (present) PDUSessionResourceSetupItemCxtRes mw_pDUSessionResourceSetupItemCxtRes( + template (present) PDUSessionID p_pDUSessionID, + template (present) PDUSessionResourceSetupItemCxtRes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + template PDUSessionResourceSetupItemCxtRes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemCxtRes - template (present) NB_IoT_DefaultPagingDRX mw_nB_IoT_DefaultPagingDRX(template (present) NB_IoT_DefaultPagingDRX p_value := ?) := p_value; + template (present) PDUSessionResourceSetupItemHOReq mw_pDUSessionResourceSetupItemHOReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) S_NSSAI p_s_NSSAI := ?, + template (present) PDUSessionResourceSetupItemHOReq.handoverRequestTransfer p_handoverRequestTransfer := ?, + template PDUSessionResourceSetupItemHOReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + s_NSSAI := p_s_NSSAI, + handoverRequestTransfer := p_handoverRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemHOReq + + template (present) PDUSessionResourceSetupItemHOReq.iE_Extensions mw_pDUSessionResourceSetupItemHOReq_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour - template (present) NB_IoT_PagingDRX mw_nB_IoT_PagingDRX(template (present) NB_IoT_PagingDRX p_value := ?) := p_value; + template (present) PDUSessionResourceSetupItemSUReq mw_pDUSessionResourceSetupItemSUReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) S_NSSAI p_s_NSSAI := ?, + template (present) PDUSessionResourceSetupItemSUReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer := ?, + template NAS_PDU p_pDUSessionNAS_PDU := *, + template PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionNAS_PDU := p_pDUSessionNAS_PDU, + s_NSSAI := p_s_NSSAI, + pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemSUReq + + template (present) PDUSessionResourceSetupItemSUReq.iE_Extensions mw_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour - template (present) NB_IoT_Paging_eDRXCycle mw_nB_IoT_Paging_eDRXCycle(template (present) NB_IoT_Paging_eDRXCycle p_value := ?) := p_value; + template (present) PDUSessionResourceSetupItemSURes mw_pDUSessionResourceSetupItemSURes( + template (present) PDUSessionID p_pDUSessionID, + template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupItemSURes - template (present) NB_IoT_Paging_TimeWindow mw_nB_IoT_Paging_TimeWindow(template (present) NB_IoT_Paging_TimeWindow p_value := ?) := p_value; + template (present) PDUSessionResourceSetupRequestTransfer mw_pDUSessionResourceSetupRequestTransfer( + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { + protocolIEs := p_protocolIEs + } // End of template mw_pDUSessionResourceSetupRequestTransfer - template (present) NB_IoT_Paging_eDRXInfo mw_nB_IoT_Paging_eDRXInfo( - template (present) NB_IoT_Paging_eDRXCycle p_nB_IoT_Paging_eDRXCycle := ?, - template NB_IoT_Paging_TimeWindow p_nB_IoT_Paging_TimeWindow := *, - template NB_IoT_Paging_eDRXInfo.iE_Extensions p_iE_Extensions := * - ) := { - nB_IoT_Paging_eDRXCycle := p_nB_IoT_Paging_eDRXCycle, - nB_IoT_Paging_TimeWindow := p_nB_IoT_Paging_TimeWindow, - iE_Extensions := p_iE_Extensions - } // End of template mw_nB_IoT_Paging_eDRXInfo + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( + template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? + ) := { + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate - template (present) NewSecurityContextInd mw_newSecurityContextInd(template (present) NewSecurityContextInd p_value := true_) := p_value; + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_UL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation - template (present) NextPagingAreaScope mw_nextPagingAreaScope(template (present) NextPagingAreaScope p_value := ?) := p_value; + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible( + template (present) DataForwardingNotPossible p_dataForwardingNotPossible := ? + ) := { + { + id := id_DataForwardingNotPossible, + criticality := reject, + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible - template (present) NGAPIESupportInformationRequestItem mw_nGAPIESupportInformationRequestItem( - template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, - template NGAPIESupportInformationRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGAPIESupportInformationRequestItem + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType( + template (present) PDUSessionType p_pDUSessionType := ? + ) := { + { + id := id_PDUSessionType, + criticality := reject, + value_ := { PDUSessionType := p_pDUSessionType } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType - template (present) NGAPIESupportInformationResponseItem mw_nGAPIESupportInformationResponseItem( - template (present) ProtocolIE_ID p_ngap_ProtocolIE_Id := ?, - template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIESupportInfo p_ngap_ProtocolIESupportInfo := ?, - template (present) NGAPIESupportInformationResponseItem.ngap_ProtocolIEPresenceInfo p_ngap_ProtocolIEPresenceInfo := ?, - template NGAPIESupportInformationResponseItem.iE_Extensions p_iE_Extensions := * - ) := { - ngap_ProtocolIE_Id := p_ngap_ProtocolIE_Id, - ngap_ProtocolIESupportInfo := p_ngap_ProtocolIESupportInfo, - ngap_ProtocolIEPresenceInfo := p_ngap_ProtocolIEPresenceInfo, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGAPIESupportInformationResponseItem - - template (present) NgENB_ID mw_ngENB_ID_macroNgENB_ID( - template (present) NgENB_ID.macroNgENB_ID p_macroNgENB_ID := ? - ) := { - macroNgENB_ID := p_macroNgENB_ID - } // End of template mw_ngENB_ID_macroNgENB_ID - - template (present) NgENB_ID mw_ngENB_ID_shortMacroNgENB_ID( - template (present) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID := ? - ) := { - shortMacroNgENB_ID := p_shortMacroNgENB_ID - } // End of template mw_ngENB_ID_shortMacroNgENB_ID - - template (present) NgENB_ID mw_ngENB_ID_longMacroNgENB_ID( - template (present) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID := ? - ) := { - longMacroNgENB_ID := p_longMacroNgENB_ID - } // End of template mw_ngENB_ID_longMacroNgENB_ID - - template (present) NgENB_ID mw_ngENB_ID_choice_Extensions( - template (present) NgENB_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_ngENB_ID_choice_Extensions - - template (present) NotifySourceNGRANNode mw_notifySourceNGRANNode(template (present) NotifySourceNGRANNode p_value := ?) := p_value; - - template (present) NGRAN_CGI mw_ngENB_ID_nR_CGI( - template (present) NR_CGI p_nR_CGI - ) := { - nR_CGI := p_nR_CGI - } // End of template mw_ngENB_ID_nR_CGI + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication( + template (present) SecurityIndication p_securityIndication := ? + ) := { + { + id := id_SecurityIndication, + criticality := reject, + value_ := { SecurityIndication := p_securityIndication } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication - template (present) NGRAN_CGI mw_ngENB_ID_eUTRA_CGI( - template (present) EUTRA_CGI p_eUTRA_CGI := ? - ) := { - eUTRA_CGI := p_eUTRA_CGI - } // End of template mw_ngENB_ID_eUTRA_CGI + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance( + template (present) NetworkInstance p_networkInstance := ? + ) := { + { + id := id_NetworkInstance, + criticality := reject, + value_ := { NetworkInstance := p_networkInstance } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance - template (present) NGRAN_CGI mw_nGRAN_CGI_choice_Extensions( - template (present) NGRAN_CGI.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nGRAN_CGI_choice_Extensions + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList( + template (present) QosFlowSetupRequestList p_qosFlowSetupRequestList := ? + ) := { + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList - template (present) NGRAN_TNLAssociationToRemoveItem mw_nGRAN_TNLAssociationToRemoveItem( - template (present) CPTransportLayerInformation p_tNLAssociationTransportLayerAddress := ?, - template CPTransportLayerInformation p_tNLAssociationTransportLayerAddressAMF := *, - template NGRAN_TNLAssociationToRemoveItem.iE_Extensions p_iE_Extensions := * - ) := { - tNLAssociationTransportLayerAddress := p_tNLAssociationTransportLayerAddress, - tNLAssociationTransportLayerAddressAMF := p_tNLAssociationTransportLayerAddressAMF, - iE_Extensions := p_iE_Extensions - } // End of template mw_nGRAN_TNLAssociationToRemoveItem - - template (present) NonDynamic5QIDescriptor mw_nonDynamic5QIDescriptor( - template (present) FiveQI p_fiveQI := ?, - template PriorityLevelQos p_priorityLevelQos := *, - template AveragingWindow p_averagingWindow := *, - template MaximumDataBurstVolume p_maximumDataBurstVolume := *, - template NonDynamic5QIDescriptor.iE_Extensions p_iE_Extensions := * - ) := { - fiveQI := p_fiveQI, - priorityLevelQos := p_priorityLevelQos, - averagingWindow := p_averagingWindow, - maximumDataBurstVolume := p_maximumDataBurstVolume, - iE_Extensions := p_iE_Extensions - } // End of template mw_nonDynamic5QIDescriptor - - template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_CNPacketDelayBudgetDL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL - - template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_CNPacketDelayBudgetUL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? + ) := { + { + id := id_CommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance - template (present) NotificationCause mw_notificationCause(template (present) NotificationCause p_value := ?) := p_value; + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability( + template (present) DirectForwardingPathAvailability p_directForwardingPathAvailability := ? + ) := { + { + id := id_DirectForwardingPathAvailability, + criticality := ignore, + value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability - template (present) NotificationControl mw_notificationControl(template (present) NotificationControl p_value := ?) := p_value; + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation - template (present) NPN_AccessInformation mw_nPN_AccessInformation_pNI_NPN_Access_Information( - template (present) CellCAGList p_pNI_NPN_Access_Information := ? - ) := { - pNI_NPN_Access_Information := p_pNI_NPN_Access_Information - } // End of template mw_nPN_AccessInformation_pNI_NPN_Access_Information + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? + ) := { + { + id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation - template (present) NPN_AccessInformation mw_nPN_AccessInformation_choice_Extensions( - template (present) NPN_AccessInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nPN_AccessInformation_choice_Extensions - - template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_sNPN_MobilityInformation( - template (present) SNPN_MobilityInformation p_sNPN_MobilityInformation := ? - ) := { - sNPN_MobilityInformation := p_sNPN_MobilityInformation - } // End of template mw_nPN_MobilityInformation_sNPN_MobilityInformation - - template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation( - template (present) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation := ? - ) := { - pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation - } // End of template mw_nPN_MobilityInformation_pNI_NPN_MobilityInformation - - template (present) NPN_MobilityInformation mw_nPN_MobilityInformation_choice_Extensions( - template (present) NPN_MobilityInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nPN_MobilityInformation_choice_Extensions + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstancen( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? + ) := { + { + id := id_RedundantCommonNetworkInstance, + criticality := ignore, + value_ := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstance - template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance( - template (present) Allowed_PNI_NPN_List p_pNI_NPN_PagingAssistance := ? - ) := { - pNI_NPN_PagingAssistance := p_pNI_NPN_PagingAssistance - } // End of template mw_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? + ) := { + { + id := id_RedundantPDUSessionInformation, + criticality := ignore, + value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation - template (present) NPN_PagingAssistanceInformation mw_nPN_PagingAssistanceInformation_choice_Extensions( - template (present) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions := ? + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList( + template (present) MBSSessionSetupRequestList p_mBSSessionSetupRequestList := ? + ) := { + { + id := id_MBSSessionSetupRequestList, + criticality := ignore, + value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList + + template (present) PDUSessionResourceSetupResponseTransfer mw_pDUSessionResourceSetupResponseTransfer( + template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + template SecurityResult p_securityResult := *, + template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nPN_PagingAssistanceInformation_choice_Extensions + dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, + additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, + securityResult := p_securityResult, + qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupResponseTransfer + + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ? + ) := { + { + id := id_RedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation + + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( + template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? + ) := { + { + id := id_AdditionalRedundantDLQosFlowPerTNLInformation, + criticality := ignore, + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - template (present) NPN_Support mw_nPN_Support_sNPN( - template (present) NID p_sNPN := ? - ) := { - sNPN := p_sNPN - } // End of template mw_nPN_Support_sNPN + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation( + template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? + ) := { + { + id := id_UsedRSNInformation, + criticality := ignore, + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation - template (present) NPN_Support mw_nPN_Support_choice_Extensions( - template (present) NPN_Support.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_nPN_Support_choice_Extensions + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + { + id := id_GlobalRANNodeID, + criticality := ignore, + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID - template (present) NR_CGI mw_nR_CGI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) NRCellIdentity p_nRCellIdentity := ?, - template NR_CGI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - nRCellIdentity := p_nRCellIdentity, - iE_Extensions := p_iE_Extensions - } // End of template mw_nR_CGI - - template (present) NR_PagingeDRXInformation mw_NR_PagingeDRXInformation( - template (present) NR_Paging_eDRX_Cycle p_nR_paging_eDRX_Cycle := ?, - template NR_Paging_Time_Window p_nR_paging_Time_Window := *, - template NR_PagingeDRXInformation.iE_Extensions p_iE_Extensions := * - ) := { - nR_paging_eDRX_Cycle := p_nR_paging_eDRX_Cycle, - nR_paging_Time_Window := p_nR_paging_Time_Window, - iE_Extensions := p_iE_Extensions - } // End of template mw_NR_PagingeDRXInformation - - template (present) NR_Paging_eDRX_Cycle mw_nR_Paging_eDRX_Cycle(template (present) NR_Paging_eDRX_Cycle p_value := ?) := p_value; - - template (present) NR_Paging_Time_Window mw_nR_Paging_Time_Window(template (present) NR_Paging_Time_Window p_value := ?) := p_value; - - template (present) NRNTNTAIInformation mw_nRNTNTAIInformation( - template (present) PLMNIdentity p_servingPLMN := ?, - template (present) TACListInNRNTN p_tACListInNRNTN := ?, - template TAC p_uELocationDerivedTACInNRNTN := *, - template NRNTNTAIInformation.iE_Extensions p_iE_Extensions := * - ) := { - servingPLMN := p_servingPLMN, - tACListInNRNTN := p_tACListInNRNTN, - uELocationDerivedTACInNRNTN := p_uELocationDerivedTACInNRNTN, - iE_Extensions := p_iE_Extensions - } // End of template mw_nRNTNTAIInformation - - template (present) NRFrequencyBandItem mw_nRFrequencyBandItem( - template (present) NRFrequencyBand p_nr_frequency_band := ?, - template NRFrequencyBandItem.iE_Extension p_iE_Extension := * - ) := { - nr_frequency_band := p_nr_frequency_band, - iE_Extension := p_iE_Extension - } // End of template mw_nRFrequencyBandItem - - template (present) NRFrequencyInfo mw_nRFrequencyInfo( - template (present) NRARFCN p_nrARFCN := ?, - template (present) NRFrequencyBand_List p_frequencyBand_List, - template NRFrequencyInfo.iE_Extension p_iE_Extension := * - ) := { - nrARFCN := p_nrARFCN, - frequencyBand_List := p_frequencyBand_List, - iE_Extension := p_iE_Extension - } // End of template mw_nRFrequencyInfo - - template (present) NRV2XServicesAuthorized mw_nRV2XServicesAuthorized( - template VehicleUE p_vehicleUE := *, - template PedestrianUE p_pedestrianUE := *, - template NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * - ) := { - vehicleUE := p_vehicleUE, - pedestrianUE := p_pedestrianUE, - iE_Extensions := p_iE_Extensions - } // End of template mw_nRV2XServicesAuthorized + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator( + template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? + ) := { + { + id := id_MBS_SupportIndicator, + criticality := ignore, + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator - template (present) VehicleUE mw_vehicleUE(template (present) VehicleUE p_value := ?) := p_value; + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList( + template (present) MBSSessionSetupResponseList p_mBSSessionSetupResponseList := ? + ) := { + { + id := id_MBSSessionSetupResponseList, + criticality := ignore, + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList - template (present) PedestrianUE mw_pedestrianUE(template (present) PedestrianUE p_value := ?) := p_value; + template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList( + template (present) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList := ? + ) := { + { + id := id_MBSSessionFailedtoSetupList, + criticality := ignore, + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + } + } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList - template (present) NRUESidelinkAggregateMaximumBitrate mw_nRUESidelinkAggregateMaximumBitrate( - template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, - template NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * - ) := { - uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_nRUESidelinkAggregateMaximumBitrate + template (present) PDUSessionResourceSetupUnsuccessfulTransfer mw_pDUSessionResourceSetupUnsuccessfulTransfer( + template (present) Cause p_cause := ?, + template CriticalityDiagnostics p_criticalityDiagnostics := *, + template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) := { + cause := p_cause, + criticalityDiagnostics := p_criticalityDiagnostics, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSetupUnsuccessfulTransfer - template (present) OnboardingSupport mw_onboardingSupport(template (present) OnboardingSupport p_value := true_) := p_value; + template (present) PDUSessionResourceSuspendItemSUSReq mw_pDUSessionResourceSuspendItemSUSReq( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceSuspendItemSUSReq.uEContextSuspendRequestTransfer p_uEContextSuspendRequestTransfer := ?, + template PDUSessionResourceSuspendItemSUSReq.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + uEContextSuspendRequestTransfer := p_uEContextSuspendRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSuspendItemSUSReq - template (present) OverloadAction mw_overloadAction(template (present) OverloadAction p_value := ?) := p_value; + template (present) PDUSessionResourceSwitchedItem mw_pDUSessionResourceSwitchedItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceSwitchedItem.pathSwitchRequestAcknowledgeTransfer p_pathSwitchRequestAcknowledgeTransfer := ?, + template PDUSessionResourceSwitchedItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestAcknowledgeTransfer := p_pathSwitchRequestAcknowledgeTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceSwitchedItem - template (present) OverloadResponse mw_overloadResponse_overloadAction( - template (present) OverloadAction p_overloadAction := ? - ) := { - overloadAction := p_overloadAction - } // End of template mw_overloadResponse_overloadAction + template (present) PDUSessionResourceSwitchedItem.iE_Extensions mw_pDUSessionResourceSwitchedItemw_id_PduSessionExpectedUEActivityBehaviour( + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceSwitchedItemw_id_PduSessionExpectedUEActivityBehaviour - template (present) OverloadResponse mw_overloadResponse_choice_Extensions( - template (present) OverloadResponse.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_overloadResponse_choice_Extensions + template (present) PDUSessionResourceToBeSwitchedDLItem mw_pDUSessionResourceToBeSwitchedDLItem( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceToBeSwitchedDLItem.pathSwitchRequestTransfer p_pathSwitchRequestTransfer := ?, + template PDUSessionResourceToBeSwitchedDLItem.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pathSwitchRequestTransfer := p_pathSwitchRequestTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceToBeSwitchedDLItem + + template (present) PDUSessionResourceToReleaseItemHOCmd mw_pDUSessionResourceToReleaseItemHOCmd( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceToReleaseItemHOCmd.handoverPreparationUnsuccessfulTransfer p_handoverPreparationUnsuccessfulTransfer := ?, + template PDUSessionResourceToReleaseItemHOCmd.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + handoverPreparationUnsuccessfulTransfer := p_handoverPreparationUnsuccessfulTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceToReleaseItemHOCmd + + template (present) PDUSessionResourceToReleaseItemRelCmd mw_pDUSessionResourceToReleaseItemRelCmd( + template (present) PDUSessionID p_pDUSessionID := ?, + template (present) PDUSessionResourceToReleaseItemRelCmd.pDUSessionResourceReleaseCommandTransfer p_pDUSessionResourceReleaseCommandTransfer := ?, + template PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := * + ) := { + pDUSessionID := p_pDUSessionID, + pDUSessionResourceReleaseCommandTransfer := p_pDUSessionResourceReleaseCommandTransfer, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionResourceToReleaseItemRelCmd + template (present) PDUSessionType mw_pDUSessionType(template (present) PDUSessionType p_value := ipv4) := p_value; - template (present) OverloadStartNSSAIItem mw_overloadStartNSSAIItem( - template (present) SliceOverloadList p_sliceOverloadList := ?, - template OverloadResponse p_sliceOverloadResponse := *, - template TrafficLoadReductionIndication p_sliceTrafficLoadReductionIndication := *, - template OverloadStartNSSAIItem.iE_Extensions p_iE_Extensions := * + template (present) PDUSessionUsageReport mw_pDUSessionUsageReport( + template (present) PDUSessionUsageReport.rATType p_rATType := ?, + template (present) VolumeTimedReportList p_pDUSessionTimedReportList := ?, + template PDUSessionUsageReport.iE_Extensions p_iE_Extensions := * ) := { - sliceOverloadList := p_sliceOverloadList, - sliceOverloadResponse := p_sliceOverloadResponse, - sliceTrafficLoadReductionIndication := p_sliceTrafficLoadReductionIndication, - iE_Extensions := p_iE_Extensions - } // End of template mw_overloadStartNSSAIItem - - template (present) PacketErrorRate mw_PacketErrorRate( - template (present) PacketErrorRate.pERScalar p_pERScalar := ?, - template (present) PacketErrorRate.pERExponent p_pERExponent := ?, - template PacketErrorRate.iE_Extensions p_iE_Extensions := * - ) := { - pERScalar := p_pERScalar, - pERExponent := p_pERExponent, - iE_Extensions := p_iE_Extensions - } // End of template mw_PacketErrorRate - - template (present) PagingAssisDataforCEcapabUE mw_pagingAssisDataforCEcapabUE( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) CoverageEnhancementLevel p_coverageEnhancementLevel := ?, - template PagingAssisDataforCEcapabUE.iE_Extensions p_iE_Extensions := * - ) := { - eUTRA_CGI := p_eUTRA_CGI, - coverageEnhancementLevel := p_coverageEnhancementLevel, - iE_Extensions := p_iE_Extensions - } // End of template mw_pagingAssisDataforCEcapabUE - - template (present) PagingAttemptInformation mw_pagingAttemptInformation( - template (present) PagingAttemptCount p_pagingAttemptCount := ?, - template (present) IntendedNumberOfPagingAttempts p_intendedNumberOfPagingAttempts := ?, - template NextPagingAreaScope p_nextPagingAreaScope := *, - template PagingAttemptInformation.iE_Extensions p_iE_Extensions := * - ) := { - pagingAttemptCount := p_pagingAttemptCount, - intendedNumberOfPagingAttempts := p_intendedNumberOfPagingAttempts, - nextPagingAreaScope := p_nextPagingAreaScope, - iE_Extensions := p_iE_Extensions - } // End of template mw_pagingAttemptInformation - - template (present) PagingCause mw_pagingCause(template (present) PagingCause p_value := voice) := p_value; - - template (present) PagingCauseIndicationForVoiceService mw_pagingCauseIndicationForVoiceService(template (present) PagingCauseIndicationForVoiceService p_value := ?) := p_value; + rATType := p_rATType, + pDUSessionTimedReportList := p_pDUSessionTimedReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pDUSessionUsageReport + + template (present) PEIPSassistanceInformation mw_pEIPSassistanceInformation( + template (present)CNsubgroupID p_cNsubgroupID := ?, + template PEIPSassistanceInformation.iE_Extensions p_iE_Extensions := * + ) := { + cNsubgroupID := p_cNsubgroupID, + iE_Extensions := p_iE_Extensions + } // End of template mw_pEIPSassistanceInformation - template (present) PagingDRX mw_pagingDRX(template (present) PagingDRX p_value := ?) := p_value; + template (present) PLMNAreaBasedQMC mw_pLMNAreaBasedQMC( + template (present) PLMNListforQMC p_plmnListforQMC := ?, + template PLMNAreaBasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + plmnListforQMC := p_plmnListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_pLMNAreaBasedQMC + + template (present) PLMNSupportItem mw_pLMNSupportItem( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) SliceSupportList p_sliceSupportList := ?, + template PLMNSupportItem.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + sliceSupportList := p_sliceSupportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_pLMNSupportItem - template (present) PagingOrigin mw_pagingOrigin(template (present) PagingOrigin p_value := ?) := p_value; + template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_NPN_Support( + template (present) NPN_Support p_nPN_Support := ? + ) := { + { + id := id_NPN_Support, + criticality := reject, + extensionValue := { NPN_Support := p_nPN_Support } + } + } // End of template mw_pLMNSupportItemw_id_NPN_Support - template (present) PagingPriority mw_pagingPriority(template (present) PagingPriority p_value := ?) := p_value; + template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_ExtendedSliceSupportList( + template (present) ExtendedSliceSupportList p_extendedSliceSupportList := ? + ) := { + { + id := id_ExtendedSliceSupportList, + criticality := reject, + extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } + } + } // End of template mw_pLMNSupportItemw_id_ExtendedSliceSupportList - template (present) PagingProbabilityInformation mw_pagingProbabilityInformation(template (present) PagingProbabilityInformation p_value := ?) := p_value; + template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_OnboardingSupport( + template (present) OnboardingSupport p_onboardingSupport := ? + ) := { + { + id := id_OnboardingSupport, + criticality := ignore, + extensionValue := { OnboardingSupport := p_onboardingSupport } + } + } // End of template mw_pLMNSupportItemw_id_OnboardingSupport - template PathSwitchRequestAcknowledgeTransfer mw_PathSwitchRequestAcknowledgeTransfer( - template UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := *, - template SecurityIndication p_securityIndication := *, - template PathSwitchRequestAcknowledgeTransfer.iE_Extensions p_iE_Extensions := * - ) := { - uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, - securityIndication := p_securityIndication, - iE_Extensions := p_iE_Extensions - } // End of template mw_PathSwitchRequestAcknowledgeTransfer - - template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation( - template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? - ) := { - { - id := id_AdditionalNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation - - template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation - - template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( - template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? - ) := { - { - id := id_AdditionalRedundantNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation - - template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList( - template (present) QosFlowParametersList p_qosFlowParametersList := ? - ) := { - { - id := id_QosFlowParametersList, - criticality := ignore, - extensionValue := { QosFlowParametersList := p_qosFlowParametersList } - } - } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList + template (present) PNI_NPN_MobilityInformation mw_pNI_NPN_MobilityInformation( + template (present) Allowed_PNI_NPN_List p_allowed_PNI_NPI_List := ?, + template PNI_NPN_MobilityInformation.iE_Extensions p_iE_Extensions := * + ) := { + allowed_PNI_NPI_List := p_allowed_PNI_NPI_List, + iE_Extensions := p_iE_Extensions + } // End of template mw_pNI_NPN_MobilityInformation - template (present) PathSwitchRequestSetupFailedTransfer mw_pathSwitchRequestSetupFailedTransfer( - template (present) Cause p_cause := ?, - template PathSwitchRequestSetupFailedTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_pathSwitchRequestSetupFailedTransfer - - template (present) PathSwitchRequestTransfer mw_pathSwitchRequestTransfer( - template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, - template (present) QosFlowAcceptedList p_qosFlowAcceptedList := ?, - template DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := *, - template UserPlaneSecurityInformation p_userPlaneSecurityInformation := *, - template PathSwitchRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - dL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused, - userPlaneSecurityInformation := p_userPlaneSecurityInformation, - qosFlowAcceptedList := p_qosFlowAcceptedList, - iE_Extensions := p_iE_Extensions - } // End of template mw_pathSwitchRequestTransfer - - template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation( - template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? - ) := { - { - id := id_AdditionalDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template mw_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation - - template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation - - template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused( - template (present) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := ? - ) := { - { - id := id_RedundantDL_NGU_TNLInformationReused, - criticality := ignore, - extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } - } - } // End of template mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused - - template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation( - template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? - ) := { - { - id := id_AdditionalRedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template mw_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation + template (present) Pre_emptionCapability mw_pre_emptionCapability(template (present) Pre_emptionCapability p_value := ?) := p_value; - template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_UsedRSNInformation( - template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? - ) := { - { - id := id_UsedRSNInformation, - criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template mw_pathSwitchRequestTransferr_id_UsedRSNInformation + template (present) Pre_emptionVulnerability mw_pre_emptionVulnerability(template (present) Pre_emptionVulnerability p_value := ?) := p_value; - template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_GlobalRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ? - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template mw_pathSwitchRequestTransferr_id_GlobalRANNodeID + template (present) PWSFailedCellIDList mw_pWSFailedCellIDList_nR_CGI_PWSFailedList( + template (present) NR_CGIList p_nR_CGI_PWSFailedList := ? + ) := { + nR_CGI_PWSFailedList := p_nR_CGI_PWSFailedList + } // End of template mw_pWSFailedCellIDList_nR_CGI_PWSFailedList - template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransfer_id_MBS_SupportIndicator( - template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template mw_pathSwitchRequestTransfer_id_MBS_SupportIndicator - - template (present) PathSwitchRequestUnsuccessfulTransfer mw_pathSwitchRequestUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template PathSwitchRequestUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_pathSwitchRequestUnsuccessfulTransfer - - template (present) PC5QoSParameters mw_pC5QoSParameters( - template (present) PC5QoSFlowList p_pc5QoSFlowList := ?, - template BitRate p_pc5LinkAggregateBitRates := *, - template PC5QoSParameters.iE_Extensions p_iE_Extensions := * - ) := { - pc5QoSFlowList := p_pc5QoSFlowList, - pc5LinkAggregateBitRates := p_pc5LinkAggregateBitRates, - iE_Extensions := p_iE_Extensions - } // End of template mw_pC5QoSParameters - - template (present) PC5QoSFlowItem mw_pC5QoSFlowItem( - template (present) FiveQI p_pQI := ?, - template PC5FlowBitRates p_pc5FlowBitRates := *, - template Range p_range := *, - template PC5QoSFlowItem.iE_Extensions p_iE_Extensions := * - ) := { - pQI := p_pQI, - pc5FlowBitRates := p_pc5FlowBitRates, - range := p_range, - iE_Extensions := p_iE_Extensions - } // End of template mw_pC5QoSFlowItem - - template (present) PC5FlowBitRates mw_pC5FlowBitRates( - template (present) BitRate p_guaranteedFlowBitRate := ?, - template (present) BitRate p_maximumFlowBitRate := ?, - template PC5FlowBitRates.iE_Extensions p_iE_Extensions := * - ) := { - guaranteedFlowBitRate := p_guaranteedFlowBitRate, - maximumFlowBitRate := p_maximumFlowBitRate, - iE_Extensions := p_iE_Extensions - } // End of template mw_pC5FlowBitRates - - template (present) PrivacyIndicator mw_privacyIndicator(template (present) PrivacyIndicator p_value := ?) := p_value; - - template (present) PDUSessionAggregateMaximumBitRate mw_pDUSessionAggregateMaximumBitRate( - template (present) BitRate p_pDUSessionAggregateMaximumBitRateDL := ?, - template (present) BitRate p_pDUSessionAggregateMaximumBitRateUL := ?, - template PDUSessionAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionAggregateMaximumBitRateDL := p_pDUSessionAggregateMaximumBitRateDL, - pDUSessionAggregateMaximumBitRateUL := p_pDUSessionAggregateMaximumBitRateUL, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionAggregateMaximumBitRate + template (present) PWSFailedCellIDList mw_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList( + template (present) EUTRA_CGIList p_eUTRA_CGI_PWSFailedList := ? + ) := { + eUTRA_CGI_PWSFailedList := p_eUTRA_CGI_PWSFailedList + } // End of template mw_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList - template (present) PDUSessionResourceAdmittedItem mw_pDUSessionResourceAdmittedItem( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceAdmittedItem.handoverRequestAcknowledgeTransfer p_handoverRequestAcknowledgeTransfer := ?, - template PDUSessionResourceAdmittedItem.iE_Extensions p_iE_Extensions := * + template (present) PWSFailedCellIDList mw_pWSFailedCellIDList_choice_Extensions( + template (present) PWSFailedCellIDList.choice_Extensions p_choice_Extensions := ? ) := { - pDUSessionID := p_pDUSessionID, - handoverRequestAcknowledgeTransfer := p_handoverRequestAcknowledgeTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceAdmittedItem + choice_Extensions := p_choice_Extensions + } // End of template mw_pWSFailedCellIDList_choice_Extensions - template (present) PDUSessionResourceFailedToModifyItemModCfm mw_pDUSessionResourceFailedToModifyItemModCfm( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceFailedToModifyItemModCfm.pDUSessionResourceModifyIndicationUnsuccessfulTransfer p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer := ?, - template PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyIndicationUnsuccessfulTransfer := p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceFailedToModifyItemModCfm + template (present) QMCConfigInfo mw_qMCConfigInfo( + template (present) UEAppLayerMeasInfoList p_uEAppLayerMeasInfoList := ?, + template QMCConfigInfo.iE_Extensions p_iE_Extensions := * + ) := { + uEAppLayerMeasInfoList := p_uEAppLayerMeasInfoList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qMCConfigInfo - template (present) PDUSessionResourceFailedToModifyItemModRes mw_pDUSessionResourceFailedToModifyItemModRes( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceFailedToModifyItemModRes.pDUSessionResourceModifyUnsuccessfulTransfer p_pDUSessionResourceModifyUnsuccessfulTransfer := ?, - template PDUSessionResourceFailedToModifyItemModRes.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyUnsuccessfulTransfer := p_pDUSessionResourceModifyUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceFailedToModifyItemModRes + template (present) QMCDeactivation mw_qMCDeactivation( + template (present) QoEReferenceList p_qoEReferenceList := ?, + template QMCDeactivation.iE_Extensions p_iE_Extensions := * + ) := { + qoEReferenceList := p_qoEReferenceList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qMCDeactivation - template (present) PDUSessionResourceFailedToResumeItemRESReq mw_pDUSessionResourceFailedToResumeItemRESReq( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) Cause p_cause := ?, - template PDUSessionResourceFailedToResumeItemRESReq.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceFailedToResumeItemRESReq + template (present) QosCharacteristics mw_qosCharacteristics_nonDynamic5QI( + template (present) NonDynamic5QIDescriptor p_nonDynamic5QI := ? + ) := { + nonDynamic5QI := p_nonDynamic5QI + } // End of template mw_qosCharacteristics_nonDynamic5QI - template (present) PDUSessionResourceFailedToResumeItemRESRes mw_pDUSessionResourceFailedToResumeItemRESRes( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) Cause p_cause := ?, - template PDUSessionResourceFailedToResumeItemRESRes.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceFailedToResumeItemRESRes + template (present) QosCharacteristics mw_qosCharacteristics_dynamic5QI( + template (present) Dynamic5QIDescriptor p_dynamic5QI := ? + ) := { + dynamic5QI := p_dynamic5QI + } // End of template mw_qosCharacteristics_dynamic5QI - template (present) PDUSessionResourceFailedToSetupItemCxtFail mw_pDUSessionResourceFailedToSetupItemCxtFail( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceFailedToSetupItemCxtFail.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, - template PDUSessionResourceFailedToSetupItemCxtFail.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceFailedToSetupItemCxtFail - - template (present) PDUSessionResourceFailedToSetupItemCxtRes mw_pDUSessionResourceFailedToSetupItemCxtRes( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceFailedToSetupItemCxtRes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, - template PDUSessionResourceFailedToSetupItemCxtRes.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceFailedToSetupItemCxtRes - - template (present) PDUSessionResourceFailedToSetupItemHOAck mw_pDUSessionResourceFailedToSetupItemHOAck( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer := ?, - template PDUSessionResourceFailedToSetupItemHOAck.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - handoverResourceAllocationUnsuccessfulTransfer := p_handoverResourceAllocationUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceFailedToSetupItemHOAck + template (present) QosCharacteristics mw_qosCharacteristics_choice_Extensions( + template (present) QosCharacteristics.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_qosCharacteristics_choice_Extensions - template (present) PDUSessionResourceFailedToSetupItemPSReq mw_pDUSessionResourceFailedToSetupItemPSReq( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer := ?, - template PDUSessionResourceFailedToSetupItemPSReq.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestSetupFailedTransfer := p_pathSwitchRequestSetupFailedTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceFailedToSetupItemPSReq + template (present) QosFlowAcceptedItem mw_qosFlowAcceptedItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowAcceptedItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template - template (present) PDUSessionResourceFailedToSetupItemSURes mw_pDUSessionResourceFailedToSetupItemSURes( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, - template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupUnsuccessfulTransfer := p_pDUSessionResourceSetupUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceFailedToSetupItemSURes + template (present) QosFlowAcceptedItem.iE_Extensions mw_pLMNSupportItemw_id_CurrentQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_pLMNSupportItemw_id_ExtendedSliceSupportList - template (present) PDUSessionResourceHandoverItem mw_pDUSessionResourceHandoverItem( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceHandoverItem.handoverCommandTransfer p_handoverCommandTransfer := ?, - template PDUSessionResourceHandoverItem.iE_Extensions p_iE_Extensions := * + template (present) QosFlowAddOrModifyRequestItem mw_qosFlowAddOrModifyRequestItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowLevelQosParameters p_qosFlowLevelQosParameters := *, + template E_RAB_ID p_e_RAB_ID := *, + template QosFlowAddOrModifyRequestItem.iE_Extensions p_iE_Extensions := * ) := { - pDUSessionID := p_pDUSessionID, - handoverCommandTransfer := p_handoverCommandTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceHandoverItem - - template (present) PDUSessionResourceInformationItem mw_pDUSessionResourceInformationItem( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) QosFlowInformationList p_qosFlowInformationList := ?, - template DRBsToQosFlowsMappingList p_dRBsToQosFlowsMappingList := *, - template PDUSessionResourceInformationItem.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - qosFlowInformationList := p_qosFlowInformationList, - dRBsToQosFlowsMappingList := p_dRBsToQosFlowsMappingList, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceInformationItem - - template (present) PDUSessionResourceItemCxtRelCpl mw_pDUSessionResourceItemCxtRelCpl( - template (present) PDUSessionID p_pDUSessionID := ?, - template PDUSessionResourceItemCxtRelCpl.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceItemCxtRelCpl - - template (present) PDUSessionResourceItemCxtRelCpl.iE_Extensions mw_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer( - template (present) PDUSessionResourceReleaseResponseTransfer_OCTET_STRING p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING := ? - ) := { - { - id := id_PDUSessionResourceReleaseResponseTransfer, - criticality := ignore, - extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } - } - } // End of template mw_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer - - template (present) PDUSessionResourceItemCxtRelReq mw_pDUSessionResourceItemCxtRelReq( - template (present) PDUSessionID p_pDUSessionID := ?, - template PDUSessionResourceItemCxtRelReq.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceItemCxtRelReq - - template (present) PDUSessionResourceItemHORqd mw_pDUSessionResourceItemHORqd( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceItemHORqd.handoverRequiredTransfer p_handoverRequiredTransfer := ?, - template PDUSessionResourceItemHORqd.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - handoverRequiredTransfer := p_handoverRequiredTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceItemHORqd - - template (present) PDUSessionResourceModifyConfirmTransfer mw_pDUSessionResourceModifyConfirmTransfer( - template (present) QosFlowModifyConfirmList p_qosFlowModifyConfirmList := ?, - template (present) UPTransportLayerInformation p_uLNGU_UP_TNLInformation := ?, - template UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := *, - template QosFlowListWithCause p_qosFlowFailedToModifyList := *, - template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowModifyConfirmList := p_qosFlowModifyConfirmList, - uLNGU_UP_TNLInformation := p_uLNGU_UP_TNLInformation, - additionalNG_UUPTNLInformation := p_additionalNG_UUPTNLInformation, - qosFlowFailedToModifyList := p_qosFlowFailedToModifyList, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceModifyConfirmTransfer - - template (present) PDUSessionResourceModifyConfirmTransfer.iE_Extensions mw_pDUSessionResourceModifyConfirmTransfer_id_RedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_pDUSessionResourceModifyConfirmTransferr_id_RedundantUL_NGU_UP_TNLInformation - - template (present) PDUSessionResourceModifyConfirmTransfer.iE_Extensions mw_pDUSessionResourceModifyConfirmTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( - template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? - ) := { - { - id := id_AdditionalRedundantNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template mw_pDUSessionResourceModifyConfirmTransferr_id_AdditionalRedundantNGU_UP_TNLInformation - - template (present) PDUSessionResourceModifyIndicationUnsuccessfulTransfer mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template PDUSessionResourceModifyIndicationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer - - template (present) PDUSessionResourceModifyRequestTransfer mw_pDUSessionResourceModifyRequestTransfer( - template PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs := ? - ) := { - protocolIEs := p_protocolIEs - } // End of template mw_pDUSessionResourceModifyRequestTransfer - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( - template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? - ) := { - { - id := id_PDUSessionAggregateMaximumBitRate, - criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, + e_RAB_ID := p_e_RAB_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowAddOrModifyRequestItem + + template (present) QosFlowAddOrModifyRequestItem.iE_Extensions mw_qosFlowAddOrModifyRequestItemw_id_TSCTrafficCharacteristics( + template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ? + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + } + } // End of template mw_qosFlowAddOrModifyRequestItemw_id_TSCTrafficCharacteristics - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( - template (present) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList := ? - ) := { - { - id := id_UL_NGU_UP_TNLModifyList, - criticality := reject, - value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList + template (present) QosFlowAddOrModifyRequestItem.iE_Extensions mw_qosFlowAddOrModifyRequestItemw_id_RedundantQosFlowIndicator( + template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? + ) := { + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template mw_qosFlowAddOrModifyRequestItemw_id_RedundantQosFlowIndicator - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( - template (present) NetworkInstance p_networkInstance := ? - ) := { - { - id := id_NetworkInstance, - criticality := reject, - value_ := { NetworkInstance := p_networkInstance } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance + template (present) QosFlowAddOrModifyResponseItem mw_qosFlowAddOrModifyResponseItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowAddOrModifyResponseItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowAddOrModifyResponseItem - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( - template (present) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList := ? - ) := { - { - id := id_QosFlowAddOrModifyRequestList, - criticality := reject, - value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList + template (present) QosFlowAddOrModifyResponseItem.iE_Extensions mw_qosFlowAddOrModifyResponseItemw_id_CurrentQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_qosFlowAddOrModifyResponseItemw_id_CurrentQoSParaSetIndex - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( - template (present) QosFlowListWithCause p_qosFlowListWithCause := ? - ) := { - { - id := id_QosFlowToReleaseList, - criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList + template (present) QosFlowFeedbackItem mw_qosFlowFeedbackItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template UpdateFeedback p_updateFeedback := *, + template ExtendedPacketDelayBudget p_cNpacketDelayBudgetDL := *, + template ExtendedPacketDelayBudget p_cNpacketDelayBudgetUL := *, + template QosFlowFeedbackItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + updateFeedback := p_updateFeedback, + cNpacketDelayBudgetDL := p_cNpacketDelayBudgetDL, + cNpacketDelayBudgetUL := p_cNpacketDelayBudgetUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowFeedbackItem + + template (present) QosFlowInformationItem mw_qosFlowInformationItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template DLForwarding p_dLForwarding := *, + template QosFlowInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dLForwarding := p_dLForwarding, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowInformationItem - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalUL_NGU_UP_TNLInformation, - criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation + template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_ULForwarding( + template (present) ULForwarding p_uLForwarding := ? + ) := { + { + id := id_ULForwarding, + criticality := ignore, + extensionValue := { ULForwarding := p_uLForwarding } + } + } // End of template mw_qosFlowInformationItemw_id_ULForwarding - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( - template (present) CommonNetworkInstance p_commonNetworkInstance := ? - ) := { - { - id := id_CommonNetworkInstance, - criticality := reject, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance + template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_SourceTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_qosFlowInformationItemw_id_SourceTNLAddrInfo - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation + template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_SourceNodeTNLAddrInfo( + template (present) TransportLayerAddress p_transportLayerAddress := ? + ) := { + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress } + } + } // End of template mw_qosFlowInformationItemw_id_SourceNodeTNLAddrInfo + + template (present) QosFlowLevelQosParameters mw_qosFlowLevelQosParameters( + template (present) QosCharacteristics p_qosCharacteristics := ?, + template (present) AllocationAndRetentionPriority p_allocationAndRetentionPriority := ?, + template GBR_QosInformation p_gBR_QosInformation := *, + template ReflectiveQosAttribute p_reflectiveQosAttribute := *, + template AdditionalQosFlowInformation p_additionalQosFlowInformation := *, + template QosFlowLevelQosParameters.iE_Extensions p_iE_Extensions := * + ) := { + qosCharacteristics := p_qosCharacteristics, + allocationAndRetentionPriority := p_allocationAndRetentionPriority, + gBR_QosInformation := p_gBR_QosInformation, + reflectiveQosAttribute := p_reflectiveQosAttribute, + additionalQosFlowInformation := p_additionalQosFlowInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowLevelQosParameters + + template (present) QosFlowLevelQosParameters.iE_Extensions mw_qosFlowLevelQosParameters_id_QosMonitoringRequest( + template (present) QosMonitoringRequest p_qosMonitoringRequest := ? + ) := { + { + id := id_QosMonitoringRequest, + criticality := ignore, + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + } + } // End of template mw_qosFlowLevelQosParameters_id_QosMonitoringRequest - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( - template (present) CommonNetworkInstance p_commonNetworkInstance := ? - ) := { - { - id := id_RedundantCommonNetworkInstance, - criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance + template (present) QosFlowLevelQosParameters.iE_Extensions mw_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency( + template (present) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency := ? + ) := { + { + id := id_QosMonitoringReportingFrequency, + criticality := ignore, + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + } + } // End of template mw_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation + template (present) QosMonitoringRequest mw_qosMonitoringRequest(template (present) QosMonitoringRequest p_value := ?) := p_value; - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( - template (present) SecurityIndication p_securityIndication := ? - ) := { - { - id := id_SecurityIndication, - criticality := ignore, - value_ := { SecurityIndication := p_securityIndication } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication + template (present) QosFlowWithCauseItem mw_qosFlowWithCauseItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template (present) Cause p_cause := ?, + template QosFlowWithCauseItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowWithCauseItem + + template (present) QosFlowModifyConfirmItem mw_qosFlowModifyConfirmItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowModifyConfirmItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowModifyConfirmItem + + template (present) QosFlowNotifyItem mw_qosFlowNotifyItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template (present) NotificationCause p_notificationCause := ?, + template QosFlowNotifyItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + notificationCause := p_notificationCause, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowNotifyItem - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( - template (present) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList := ? - ) := { - { - id := id_MBSSessionSetuporModifyRequestList, - criticality := ignore, - value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList + template (present) QosFlowNotifyItem.iE_Extensions mw_qosFlowNotifyItemw_id_CurrentQoSParaSetIndex( + template (present) AlternativeQoSParaSetNotifyIndex p_alternativeQoSParaSetNotifyIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } + } + } // End of template mw_qosFlowNotifyItemw_id_CurrentQoSParaSetIndex - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( - template (present) MBSSessionToReleaseList p_mBSSessionToReleaseList := ? - ) := { - { - id := id_MBSSessionToReleaseList, - criticality := ignore, - value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList - - template PDUSessionResourceModifyResponseTransfer mw_pDUSessionResourceModifyResponseTransfer( - template UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := *, - template UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := *, - template QosFlowAddOrModifyResponseList p_qosFlowAddOrModifyResponseList := *, - template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - template QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := *, - template PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, - qosFlowAddOrModifyResponseList := p_qosFlowAddOrModifyResponseList, - additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, - qosFlowFailedToAddOrModifyList := p_qosFlowFailedToAddOrModifyList, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceModifyResponseTransfer - - template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation( - template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? - ) := { - { - id := id_AdditionalNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation - - template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation - - template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation - - template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( - template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? - ) := { - { - id := id_AdditionalRedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - - template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( - template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? - ) := { - { - id := id_AdditionalRedundantNGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } - } - } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation - - template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation( - template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation + template (present) QosFlowParametersItem mw_qosFlowParametersItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template AlternativeQoSParaSetList p_alternativeQoSParaSetList := *, + template QosFlowParametersItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + alternativeQoSParaSetList := p_alternativeQoSParaSetList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowParametersItem - template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator( - template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator - - template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList( - template (present) MBSSessionSetupResponseList p_mBSSessionSetupResponseList := ? - ) := { - { - id := id_MBSSessionSetuporModifyResponseList, - criticality := ignore, - extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } - } - } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList - - template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList( - template (present) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList := ? - ) := { - { - id := id_MBSSessionFailedtoSetuporModifyList, - criticality := ignore, - extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } - } - } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList + template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_CNPacketDelayBudgetDL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? + ) := { + { + id := id_CNPacketDelayBudgetDL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_qosFlowParametersItemw_id_CNPacketDelayBudgetDL - template (present) PDUSessionResourceModifyIndicationTransfer mw_pDUSessionResourceModifyIndicationTransfer( - template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * + template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_CNPacketDelayBudgetUL( + template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? ) := { - dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, - additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceModifyIndicationTransfer - - template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation( - template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation + { + id := id_CNPacketDelayBudgetUL, + criticality := ignore, + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + } + } // End of template mw_qosFlowParametersItemw_id_CNPacketDelayBudgetUL - template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult( - template (present) SecurityResult p_securityResult := ? - ) := { - { - id := id_SecurityResult, - criticality := ignore, - extensionValue := { SecurityResult := p_securityResult } - } - } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult - - template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation( - template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ? - ) := { - { - id := id_RedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } - } - } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation - - template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( - template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? - ) := { - { - id := id_AdditionalRedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - - template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ? - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID + template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_BurstArrivalTimeDownlink( + template (present) BurstArrivalTime p_burstArrivalTime := ? + ) := { + { + id := id_BurstArrivalTimeDownlink, + criticality := ignore, + extensionValue := { BurstArrivalTime := p_burstArrivalTime } + } + } // End of template mw_qosFlowParametersItemw_id_BurstArrivalTimeDownlink + + template (present) QosFlowPerTNLInformation mw_qosFlowPerTNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ?, + template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, + template QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := * + ) := { + uPTransportLayerInformation := p_uPTransportLayerInformation, + associatedQosFlowList := p_associatedQosFlowList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowPerTNLInformation + + template (present) QosFlowPerTNLInformationItem mw_qosFlowPerTNLInformationItem( + template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ?, + template QosFlowPerTNLInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowPerTNLInformation := p_qosFlowPerTNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowPerTNLInformationItem - template (present) PDUSessionResourceModifyItemModCfm mw_pDUSessionResourceModifyItemModCfm( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceModifyItemModCfm.pDUSessionResourceModifyConfirmTransfer p_pDUSessionResourceModifyConfirmTransfer := ?, - template PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyConfirmTransfer := p_pDUSessionResourceModifyConfirmTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceModifyItemModCfm + template (present) QosFlowSetupRequestItem mw_qosFlowSetupRequestItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template (present) QosFlowLevelQosParameters p_qosFlowLevelQosParameters := ?, + template E_RAB_ID p_e_RAB_ID := *, + template QosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, + e_RAB_ID := p_e_RAB_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowSetupRequestItem + + template (present) QosFlowSetupRequestItem.iE_Extensions mw_qosFlowSetupRequestItemw_id_TSCTrafficCharacteristics( + template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ? + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + } + } // End of template mw_qosFlowSetupRequestItemw_id_TSCTrafficCharacteristics - template (present) PDUSessionResourceModifyItemModInd mw_pDUSessionResourceModifyItemModInd( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceModifyItemModInd.pDUSessionResourceModifyIndicationTransfer p_pDUSessionResourceModifyIndicationTransfer := ?, - template PDUSessionResourceModifyItemModInd.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyIndicationTransfer := p_pDUSessionResourceModifyIndicationTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceModifyItemModInd + template (present) QosFlowSetupRequestItem.iE_Extensions mw_qosFlowSetupRequestItemw_id_RedundantQosFlowIndicator( + template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? + ) := { + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template mw_qosFlowSetupRequestItemw_id_RedundantQosFlowIndicator - template (present) PDUSessionResourceModifyItemModReq mw_pDUSessionResourceModifyItemModReq( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceModifyItemModReq.pDUSessionResourceModifyRequestTransfer p_pDUSessionResourceModifyRequestTransfer := ?, - template NAS_PDU p_nAS_PDU := *, - template PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - nAS_PDU := p_nAS_PDU, - pDUSessionResourceModifyRequestTransfer := p_pDUSessionResourceModifyRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceModifyItemModReq - - template (present) PDUSessionResourceModifyItemModReq.iE_Extensions mw_pDUSessionResourceModifyItemModReq_id_S_NSSAI( - template (present) S_NSSAI p_s_nSSAI := ? - ) := { - { - id := id_S_NSSAI, - criticality := reject, - extensionValue := { S_NSSAI := p_s_nSSAI } - } - } // End of template mw_pDUSessionResourceModifyItemModReq_id_S_NSSAI - - template (present) PDUSessionResourceModifyItemModReq.iE_Extensions mw_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour( - template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template mw_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour + template (present) QosFlowItemWithDataForwarding mw_qosFlowItemWithDataForwarding( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template DataForwardingAccepted p_dataForwardingAccepted := *, + template QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + dataForwardingAccepted := p_dataForwardingAccepted, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowItemWithDataForwarding - template (present) PDUSessionResourceModifyItemModRes mw_pDUSessionResourceModifyItemModRes( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceModifyItemModRes.pDUSessionResourceModifyResponseTransfer p_pDUSessionResourceModifyResponseTransfer := ?, - template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * - ) := { + template (present) QosFlowItemWithDataForwarding.iE_Extensions mw_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( + template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? + ) := { + { + id := id_CurrentQoSParaSetIndex, + criticality := ignore, + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + } + } // End of template mw_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex - pDUSessionID := p_pDUSessionID, - pDUSessionResourceModifyResponseTransfer := p_pDUSessionResourceModifyResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceModifyItemModRes + template (present) QosFlowToBeForwardedItem mw_qosFlowToBeForwardedItem( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template QosFlowToBeForwardedItem.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + iE_Extensions := p_iE_Extensions + } // End of template mw_qosFlowToBeForwardedItem + + template (present) QoSFlowsUsageReport_Item mw_qoSFlowsUsageReport_Item( + template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, + template (present) QoSFlowsUsageReport_Item.rATType p_rATType := ?, + template (present) VolumeTimedReportList p_qoSFlowsTimedReportList := ?, + template QoSFlowsUsageReport_Item.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowIdentifier := p_qosFlowIdentifier, + rATType := p_rATType, + qoSFlowsTimedReportList := p_qoSFlowsTimedReportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_qoSFlowsUsageReport_Item - template (present) PDUSessionResourceModifyUnsuccessfulTransfer mw_pDUSessionResourceModifyUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template CriticalityDiagnostics p_criticalityDiagnostics := *, - template PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceModifyUnsuccessfulTransfer - template (present) PDUSessionResourceNotifyItem mw_pDUSessionResourceNotifyItem( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer, - template PDUSessionResourceNotifyItem.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceNotifyTransfer := p_pDUSessionResourceNotifyTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceNotifyItem + template (present) Range mw_range(template (present) Range p_value := ?) := p_value; - template (present) PDUSessionResourceNotifyReleasedTransfer mw_pDUSessionResourceNotifyReleasedTransfer( - template (present) Cause p_cause := ?, - template PDUSessionResourceNotifyReleasedTransfer.iE_Extensions p_iE_Extensions := * + template (present) RANStatusTransfer_TransparentContainer mw_rANStatusTransfer_TransparentContainer( + template (present) DRBsSubjectToStatusTransferList p_dRBsSubjectToStatusTransferList := ?, + template RANStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceNotifyReleasedTransfer - - template (present) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation( - template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation + dRBsSubjectToStatusTransferList := p_dRBsSubjectToStatusTransferList, + iE_Extensions := p_iE_Extensions + } // End of template mw_rANStatusTransfer_TransparentContainer - template PDUSessionResourceNotifyTransfer mw_pDUSessionResourceNotifyTransfer( - template QosFlowNotifyList p_qosFlowNotifyList := *, - template QosFlowListWithCause p_qosFlowReleasedList := *, - template PDUSessionResourceNotifyTransfer.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowNotifyList := p_qosFlowNotifyList, - qosFlowReleasedList := p_qosFlowReleasedList, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceNotifyTransfer - - template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceNotifyTransfer_id_SecondaryRATUsageInformation( - template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation - - template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceNotifyTransfer_id_QosFlowFeedbackList( - template (present) QosFlowFeedbackList p_qosFlowFeedbackList := ? - ) := { - { - id := id_QosFlowFeedbackList, - criticality := ignore, - extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } - } - } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_QosFlowFeedbackList + template (present) RAT_Information mw_rAT_Information(template (present) RAT_Information p_value := ?) := p_value; - template (present) PDUSessionResourceReleaseCommandTransfer mw_pDUSessionResourceReleaseCommandTransfer( - template (present) Cause p_cause := ?, - template PDUSessionResourceReleaseCommandTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceReleaseCommandTransfer - - template (present) PDUSessionResourceReleasedItemNot mw_pDUSessionResourceReleasedItemNot( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceReleasedItemNot.pDUSessionResourceNotifyReleasedTransfer p_pDUSessionResourceNotifyReleasedTransfer := ?, - template PDUSessionResourceReleasedItemNot.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceNotifyReleasedTransfer := p_pDUSessionResourceNotifyReleasedTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceReleasedItemNot - - template (present) PDUSessionResourceReleasedItemPSAck mw_pDUSessionResourceReleasedItemPSAck( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceReleasedItemPSAck.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer := ?, - template PDUSessionResourceReleasedItemPSAck.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceReleasedItemPSAck - - template (present) PDUSessionResourceReleasedItemPSFail mw_pDUSessionResourceReleasedItemPSFail( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceReleasedItemPSFail.pathSwitchRequestUnsuccessfulTransfer p_pathSwitchRequestUnsuccessfulTransfer := ?, - template PDUSessionResourceReleasedItemPSFail.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestUnsuccessfulTransfer := p_pathSwitchRequestUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceReleasedItemPSFail + template (present) RATRestrictions_Item mw_rATRestrictions_Item( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) RATRestrictionInformation p_rATRestrictionInformation := ?, + template RATRestrictions_Item.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + rATRestrictionInformation := p_rATRestrictionInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_rATRestrictions_Item - template (present) PDUSessionResourceReleasedItemRelRes mw_pDUSessionResourceReleasedItemRelRes( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, - template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceReleaseResponseTransfer := p_pDUSessionResourceReleaseResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceReleasedItemRelRes + template (present) RATRestrictions_Item.iE_Extensions mw_rATRestrictions_Item_id_ExtendedRATRestrictionInformation( + template (present) ExtendedRATRestrictionInformation p_extendedRATRestrictionInformation := ? + ) := { + { + id := id_ExtendedRATRestrictionInformation, + criticality := ignore, + extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } + } + } // End of template mw_rATRestrictions_Item_id_ExtendedRATRestrictionInformation - template PDUSessionResourceReleaseResponseTransfer mw_pDUSessionResourceReleaseResponseTransfer( - template PDUSessionResourceReleaseResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceReleaseResponseTransfer - - template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation( - template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? - ) := { - { - id := id_SecondaryRATUsageInformation, - criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } - } - } // End of template mw_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation + template (present) RecommendedCellsForPaging mw_recommendedCellsForPaging( + template (present) RecommendedCellList p_recommendedCellList := ?, + template RecommendedCellsForPaging.iE_Extensions p_iE_Extensions := * + ) := { + recommendedCellList := p_recommendedCellList, + iE_Extensions := p_iE_Extensions + } // End of template mw_recommendedCellsForPaging + + template (present) RecommendedCellItem mw_recommendedCellItem( + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template RecommendedCellItem.timeStayedInCell p_timeStayedInCell := *, + template RecommendedCellItem.iE_Extensions p_iE_Extensions := * + ) := { + nGRAN_CGI := p_nGRAN_CGI, + timeStayedInCell := p_timeStayedInCell, + iE_Extensions := p_iE_Extensions + } // End of template mw_recommendedCellItem + + template (present) RecommendedRANNodesForPaging mw_recommendedRANNodesForPaging( + template (present) RecommendedRANNodeList p_recommendedRANNodeList := ?, + template RecommendedRANNodesForPaging.iE_Extensions p_iE_Extensions := * + ) := { + recommendedRANNodeList := p_recommendedRANNodeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_recommendedRANNodesForPaging - template (present) PDUSessionResourceResumeItemRESReq mw_pDUSessionResourceResumeItemRESReq( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceResumeItemRESReq.uEContextResumeRequestTransfer p_uEContextResumeRequestTransfer := ?, - template PDUSessionResourceResumeItemRESReq.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - uEContextResumeRequestTransfer := p_uEContextResumeRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceResumeItemRESReq + template (present) RecommendedRANNodeItem mw_recommendedRANNodeItem( + template (present) AMFPagingTarget p_aMFPagingTarget := ?, + template RecommendedRANNodeItem.iE_Extensions p_iE_Extensions := * + ) := { + aMFPagingTarget := p_aMFPagingTarget, + iE_Extensions := p_iE_Extensions + } // End of template mw_recommendedRANNodeItem - template (present) PDUSessionResourceResumeItemRESRes mw_pDUSessionResourceResumeItemRESRes( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceResumeItemRESRes.uEContextResumeResponseTransfer p_uEContextResumeResponseTransfer := ?, - template PDUSessionResourceResumeItemRESRes.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - uEContextResumeResponseTransfer := p_uEContextResumeResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceResumeItemRESRes - - template (present) PDUSessionResourceSecondaryRATUsageItem mw_pPDUSessionResourceSecondaryRATUsageItem( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceSecondaryRATUsageItem.secondaryRATDataUsageReportTransfer p_secondaryRATDataUsageReportTransfer := ?, - template PDUSessionResourceSecondaryRATUsageItem.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - secondaryRATDataUsageReportTransfer := p_secondaryRATDataUsageReportTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pPDUSessionResourceSecondaryRATUsageItem - - template (present) PDUSessionResourceSetupItemCxtReq mw_pDUSessionResourceSetupItemCxtReq( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) S_NSSAI p_s_NSSAI := ?, - template (present) PDUSessionResourceSetupItemCxtReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer := ?, - template NAS_PDU p_nAS_PDU := *, - template PDUSessionResourceSetupItemCxtReq.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - nAS_PDU := p_nAS_PDU, - s_NSSAI := p_s_NSSAI, - pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceSetupItemCxtReq - - template (present) PDUSessionResourceSetupItemCxtReq.iE_Extensions mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour( - template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour + template (present) RedCapIndication mw_redCapIndication(template (present) RedCapIndication p_value := redcap) := p_value; - template (present) PDUSessionResourceSetupItemCxtRes mw_pDUSessionResourceSetupItemCxtRes( - template (present) PDUSessionID p_pDUSessionID, - template (present) PDUSessionResourceSetupItemCxtRes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, - template PDUSessionResourceSetupItemCxtRes.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceSetupItemCxtRes + template (present) RedirectionVoiceFallback mw_redirectionVoiceFallback(template (present) RedirectionVoiceFallback p_value := ?) := p_value; - template (present) PDUSessionResourceSetupItemHOReq mw_pDUSessionResourceSetupItemHOReq( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) S_NSSAI p_s_NSSAI := ?, - template (present) PDUSessionResourceSetupItemHOReq.handoverRequestTransfer p_handoverRequestTransfer := ?, - template PDUSessionResourceSetupItemHOReq.iE_Extensions p_iE_Extensions := * + template (present) RedundantPDUSessionInformation mw_redundantPDUSessionInformation( + template (present) RSN p_rSN := ?, + template RedundantPDUSessionInformation.iE_Extensions p_iE_Extensions := * ) := { - pDUSessionID := p_pDUSessionID, - s_NSSAI := p_s_NSSAI, - handoverRequestTransfer := p_handoverRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceSetupItemHOReq - - template (present) PDUSessionResourceSetupItemHOReq.iE_Extensions mw_pDUSessionResourceSetupItemHOReq_id_PduSessionExpectedUEActivityBehaviour( - template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour + rSN := p_rSN, + iE_Extensions := p_iE_Extensions + } // End of template mw_redundantPDUSessionInformation - template (present) PDUSessionResourceSetupItemSUReq mw_pDUSessionResourceSetupItemSUReq( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) S_NSSAI p_s_NSSAI := ?, - template (present) PDUSessionResourceSetupItemSUReq.pDUSessionResourceSetupRequestTransfer p_pDUSessionResourceSetupRequestTransfer := ?, - template NAS_PDU p_pDUSessionNAS_PDU := *, - template PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionNAS_PDU := p_pDUSessionNAS_PDU, - s_NSSAI := p_s_NSSAI, - pDUSessionResourceSetupRequestTransfer := p_pDUSessionResourceSetupRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceSetupItemSUReq - - template (present) PDUSessionResourceSetupItemSUReq.iE_Extensions mw_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour( - template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template mw_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour + template (present) RedundantPDUSessionInformation.iE_Extensions mw_redundantPDUSessionInformation_id_PDUSessionPairID( + template (present) PDUSessionPairID p_pDUSessionPairID := ? + ) := { + { + id := id_PDUSessionPairID, + criticality := ignore, + extensionValue := { PDUSessionPairID := p_pDUSessionPairID } + } + } // End of template m_redundantPDUSessionInformation_id_PDUSessionPairID - template (present) PDUSessionResourceSetupItemSURes mw_pDUSessionResourceSetupItemSURes( - template (present) PDUSessionID p_pDUSessionID, - template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, - template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceSetupResponseTransfer := p_pDUSessionResourceSetupResponseTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceSetupItemSURes + template (present) RedundantQosFlowIndicator mw_RedundantQosFlowIndicator(template (present) RedundantQosFlowIndicator p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer mw_pDUSessionResourceSetupRequestTransfer( - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs p_protocolIEs := ? - ) := { - protocolIEs := p_protocolIEs - } // End of template mw_pDUSessionResourceSetupRequestTransfer - - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( - template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? - ) := { - { - id := id_PDUSessionAggregateMaximumBitRate, - criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate + template (present) ReflectiveQosAttribute mw_reflectiveQosAttribute(template (present) ReflectiveQosAttribute p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_UL_NGU_UP_TNLInformation, - criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation + template (present) ReportArea mw_reportArea(template (present) ReportArea p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible( - template (present) DataForwardingNotPossible p_dataForwardingNotPossible := ? - ) := { - { - id := id_DataForwardingNotPossible, - criticality := reject, - value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible + template (present) ResetAll mw_resetAll(template (present) ResetAll p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType( - template (present) PDUSessionType p_pDUSessionType := ? - ) := { - { - id := id_PDUSessionType, - criticality := reject, - value_ := { PDUSessionType := p_pDUSessionType } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType + template (present) ReportAmountMDT mw_reportAmountMDT(template (present) ReportAmountMDT p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication( - template (present) SecurityIndication p_securityIndication := ? - ) := { - { - id := id_SecurityIndication, - criticality := reject, - value_ := { SecurityIndication := p_securityIndication } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication + template (present) ReportIntervalMDT mw_reportIntervalMDT(template (present) ReportIntervalMDT p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance( - template (present) NetworkInstance p_networkInstance := ? - ) := { - { - id := id_NetworkInstance, - criticality := reject, - value_ := { NetworkInstance := p_networkInstance } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance + template (present) ExtendedReportIntervalMDT mw_extendedReportIntervalMDT(template (present) ExtendedReportIntervalMDT p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList( - template (present) QosFlowSetupRequestList p_qosFlowSetupRequestList := ? - ) := { - { - id := id_QosFlowSetupRequestList, - criticality := reject, - value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList + template (present) ResetType mw_resetType_nG_Interface( + template (present) ResetAll p_nG_Interface := ? + ) := { + nG_Interface := p_nG_Interface + } // End of template mw_resetType_nG_Interface - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance( - template (present) CommonNetworkInstance p_commonNetworkInstance := ? - ) := { - { - id := id_CommonNetworkInstance, - criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance + template (present) ResetType mw_resetType_partOfNG_Interface( + template (present) UE_associatedLogicalNG_connectionList p_partOfNG_Interface := ? + ) := { + partOfNG_Interface := p_partOfNG_Interface + } // End of template mw_resetType_partOfNG_Interface - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability( - template (present) DirectForwardingPathAvailability p_directForwardingPathAvailability := ? - ) := { - { - id := id_DirectForwardingPathAvailability, - criticality := ignore, - value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability + template (present) ResetType mw_resetType_choice_Extensions( + template (present) ResetType.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_resetType_choice_Extensions - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation + template (present) RRCEstablishmentCause mw_rRCEstablishmentCause(template (present) RRCEstablishmentCause p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation + template (present) RRCInactiveTransitionReportRequest mw_rRCInactiveTransitionReportRequest(template (present) RRCInactiveTransitionReportRequest p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstancen( - template (present) CommonNetworkInstance p_commonNetworkInstance := ? - ) := { - { - id := id_RedundantCommonNetworkInstance, - criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstance + template (present) RRCState mw_rRCState(template (present) RRCState p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation( - template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? - ) := { - { - id := id_RedundantPDUSessionInformation, - criticality := ignore, - value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation + template (present) RSN mw_rSN(template (present) RSN p_value := ?) := p_value; - template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList( - template (present) MBSSessionSetupRequestList p_mBSSessionSetupRequestList := ? - ) := { - { - id := id_MBSSessionSetupRequestList, - criticality := ignore, - value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } - } - } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList - - template (present) PDUSessionResourceSetupResponseTransfer mw_pDUSessionResourceSetupResponseTransfer( - template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - template SecurityResult p_securityResult := *, - template QosFlowListWithCause p_qosFlowFailedToSetupList := *, - template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, - additionalDLQosFlowPerTNLInformation := p_additionalDLQosFlowPerTNLInformation, - securityResult := p_securityResult, - qosFlowFailedToSetupList := p_qosFlowFailedToSetupList, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceSetupResponseTransfer - - template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation( - template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ? - ) := { - { - id := id_RedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } - } - } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation - - template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( - template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? - ) := { - { - id := id_AdditionalRedundantDLQosFlowPerTNLInformation, - criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } - } - } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation - - template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation( - template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? - ) := { - { - id := id_UsedRSNInformation, - criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } - } - } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation - - template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ? - ) := { - { - id := id_GlobalRANNodeID, - criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } - } - } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID + template (present) RIMInformationTransfer mw_rIMInformationTransfer( + template (present) TargetRANNodeID_RIM p_targetRANNodeID_RIM := ?, + template (present) SourceRANNodeID p_sourceRANNodeID := ?, + template (present) RIMInformation p_rIMInformation := ?, + template RIMInformationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + targetRANNodeID_RIM := p_targetRANNodeID_RIM, + sourceRANNodeID := p_sourceRANNodeID, + rIMInformation := p_rIMInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_rIMInformationTransfer + + template (present) RIMInformation mw_rIMInformation( + template (present) GNBSetID p_targetgNBSetID := ?, + template (present) RIMInformation.rIM_RSDetection p_rIM_RSDetection := ?, + template RIMInformation.iE_Extensions p_iE_Extensions := * + ) := { + targetgNBSetID := p_targetgNBSetID, + rIM_RSDetection := p_rIM_RSDetection, + iE_Extensions := p_iE_Extensions + } // End of template mw_rIMInformation + + template ScheduledCommunicationTime mw_scheduledCommunicationTime( + template ScheduledCommunicationTime.dayofWeek p_dayofWeek := *, + template ScheduledCommunicationTime.timeofDayStart p_timeofDayStart := *, + template ScheduledCommunicationTime.timeofDayEnd p_timeofDayEnd := *, + template ScheduledCommunicationTime.iE_Extensions p_iE_Extensions := * + ) := { + dayofWeek := p_dayofWeek, + timeofDayStart := p_timeofDayStart, + timeofDayEnd := p_timeofDayEnd, + iE_Extensions := p_iE_Extensions + } // End of template mw_scheduledCommunicationTime + + template SecondaryRATUsageInformation mw_secondaryRATUsageInformation( + template PDUSessionUsageReport p_pDUSessionUsageReport := *, + template QoSFlowsUsageReportList p_qosFlowsUsageReportList := *, + template SecondaryRATUsageInformation.iE_Extension p_iE_Extensions := * + ) := { + pDUSessionUsageReport := p_pDUSessionUsageReport, + qosFlowsUsageReportList := p_qosFlowsUsageReportList, + iE_Extension := p_iE_Extensions + } // End of template mw_secondaryRATUsageInformation + + template SecondaryRATDataUsageReportTransfer mw_secondaryRATDataUsageReportTransfer( + template SecondaryRATUsageInformation p_secondaryRATUsageInformation := *, + template SecondaryRATDataUsageReportTransfer.iE_Extensions p_iE_Extensions := * + ) := { + secondaryRATUsageInformation := p_secondaryRATUsageInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_secondaryRATDataUsageReportTransfer + + template (present) SecurityContext mw_securityContext( + template (present) NextHopChainingCount p_nextHopChainingCount := ?, + template (present) SecurityKey p_nextHopNH := ?, + template SecurityContext.iE_Extensions p_iE_Extensions := * + ) := { + nextHopChainingCount := p_nextHopChainingCount, + nextHopNH := p_nextHopNH, + iE_Extensions := p_iE_Extensions + } // End of template mw_securityContext + + template (present) SecurityIndication mw_securityIndication( + template (present) IntegrityProtectionIndication p_integrityProtectionIndication := ?, + template (present) ConfidentialityProtectionIndication p_confidentialityProtectionIndication := ?, + template MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate_UL := *, + template SecurityIndication.iE_Extensions p_iE_Extensions := * + ) := { + integrityProtectionIndication := p_integrityProtectionIndication, + confidentialityProtectionIndication := p_confidentialityProtectionIndication, + maximumIntegrityProtectedDataRate_UL := p_maximumIntegrityProtectedDataRate_UL, + // The above IE shall be present if integrity protection is required or preferred + iE_Extensions := p_iE_Extensions + } // End of template mw_securityIndication + + template (present) SecurityIndication.iE_Extensions mw_securityIndication_id_MaximumIntegrityProtectedDataRate_DL( + template (present) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate := ? + ) := { + { + id := id_MaximumIntegrityProtectedDataRate_DL, + criticality := ignore, + extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } + } + } // End of template mw_securityIndication_id_MaximumIntegrityProtectedDataRate_DL - template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator( - template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? - ) := { - { - id := id_MBS_SupportIndicator, - criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } - } - } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator - - template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList( - template (present) MBSSessionSetupResponseList p_mBSSessionSetupResponseList := ? - ) := { - { - id := id_MBSSessionSetupResponseList, - criticality := ignore, - extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } - } - } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList - - template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList( - template (present) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList := ? - ) := { - { - id := id_MBSSessionFailedtoSetupList, - criticality := ignore, - extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } - } - } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList - - template (present) PDUSessionResourceSetupUnsuccessfulTransfer mw_pDUSessionResourceSetupUnsuccessfulTransfer( - template (present) Cause p_cause := ?, - template CriticalityDiagnostics p_criticalityDiagnostics := *, - template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - ) := { - cause := p_cause, - criticalityDiagnostics := p_criticalityDiagnostics, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceSetupUnsuccessfulTransfer - - template (present) PDUSessionResourceSuspendItemSUSReq mw_pDUSessionResourceSuspendItemSUSReq( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceSuspendItemSUSReq.uEContextSuspendRequestTransfer p_uEContextSuspendRequestTransfer := ?, - template PDUSessionResourceSuspendItemSUSReq.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - uEContextSuspendRequestTransfer := p_uEContextSuspendRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceSuspendItemSUSReq - - template (present) PDUSessionResourceSwitchedItem mw_pDUSessionResourceSwitchedItem( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceSwitchedItem.pathSwitchRequestAcknowledgeTransfer p_pathSwitchRequestAcknowledgeTransfer := ?, - template PDUSessionResourceSwitchedItem.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestAcknowledgeTransfer := p_pathSwitchRequestAcknowledgeTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceSwitchedItem + template (present) SecurityResult mw_securityResult( + template (present) IntegrityProtectionResult p_integrityProtectionResult := ?, + template (present) ConfidentialityProtectionResult p_confidentialityProtectionResult := ?, + template SecurityResult.iE_Extensions p_iE_Extensions := * + ) := { + integrityProtectionResult := p_integrityProtectionResult, + confidentialityProtectionResult := p_confidentialityProtectionResult, + iE_Extensions := p_iE_Extensions + } // End of template mw_securityResult + + template (present) SensorMeasurementConfiguration mw_sensorMeasurementConfiguration( + template (present) SensorMeasConfig p_sensorMeasConfig := ?, + template SensorMeasConfigNameList p_sensorMeasConfigNameList := *, + template SensorMeasurementConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + sensorMeasConfig := p_sensorMeasConfig, + sensorMeasConfigNameList := p_sensorMeasConfigNameList, + iE_Extensions := p_iE_Extensions + } // End of template mw_sensorMeasurementConfiguration + + template (present) SensorMeasConfigNameItem mw_sensorMeasConfigNameItem( + template (present) SensorNameConfig p_sensorNameConfig := ?, + template SensorMeasConfigNameItem.iE_Extensions p_iE_Extensions := * + ) := { + sensorNameConfig := p_sensorNameConfig, + iE_Extensions := p_iE_Extensions + } // End of template mw_sensorMeasConfigNameItem - template (present) PDUSessionResourceSwitchedItem.iE_Extensions mw_pDUSessionResourceSwitchedItemw_id_PduSessionExpectedUEActivityBehaviour( - template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? - ) := { - { - id := id_PduSessionExpectedUEActivityBehaviour, - criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } - } - } // End of template mw_pDUSessionResourceSwitchedItemw_id_PduSessionExpectedUEActivityBehaviour + template (present) SensorMeasConfig mw_sensorMeasConfig(template (present) SensorMeasConfig p_value := setup) := p_value; - template (present) PDUSessionResourceToBeSwitchedDLItem mw_pDUSessionResourceToBeSwitchedDLItem( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceToBeSwitchedDLItem.pathSwitchRequestTransfer p_pathSwitchRequestTransfer := ?, - template PDUSessionResourceToBeSwitchedDLItem.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pathSwitchRequestTransfer := p_pathSwitchRequestTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceToBeSwitchedDLItem + template (present) SensorNameConfig mw_sensorNameConfig_uncompensatedBarometricConfig( + template (present) SensorNameConfig.uncompensatedBarometricConfig p_uncompensatedBarometricConfig := true_ + ) := { + uncompensatedBarometricConfig := p_uncompensatedBarometricConfig + } // End of template mw_sensorNameConfig_uncompensatedBarometricConfig - template (present) PDUSessionResourceToReleaseItemHOCmd mw_pDUSessionResourceToReleaseItemHOCmd( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceToReleaseItemHOCmd.handoverPreparationUnsuccessfulTransfer p_handoverPreparationUnsuccessfulTransfer := ?, - template PDUSessionResourceToReleaseItemHOCmd.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - handoverPreparationUnsuccessfulTransfer := p_handoverPreparationUnsuccessfulTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceToReleaseItemHOCmd - - template (present) PDUSessionResourceToReleaseItemRelCmd mw_pDUSessionResourceToReleaseItemRelCmd( - template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceToReleaseItemRelCmd.pDUSessionResourceReleaseCommandTransfer p_pDUSessionResourceReleaseCommandTransfer := ?, - template PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := * - ) := { - pDUSessionID := p_pDUSessionID, - pDUSessionResourceReleaseCommandTransfer := p_pDUSessionResourceReleaseCommandTransfer, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionResourceToReleaseItemRelCmd - - template (present) PDUSessionType mw_pDUSessionType(template (present) PDUSessionType p_value := ipv4) := p_value; - - template (present) PDUSessionUsageReport mw_pDUSessionUsageReport( - template (present) PDUSessionUsageReport.rATType p_rATType := ?, - template (present) VolumeTimedReportList p_pDUSessionTimedReportList := ?, - template PDUSessionUsageReport.iE_Extensions p_iE_Extensions := * - ) := { - rATType := p_rATType, - pDUSessionTimedReportList := p_pDUSessionTimedReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_pDUSessionUsageReport - - template (present) PEIPSassistanceInformation mw_pEIPSassistanceInformation( - template (present)CNsubgroupID p_cNsubgroupID := ?, - template PEIPSassistanceInformation.iE_Extensions p_iE_Extensions := * + template (present) SensorNameConfig mw_sensorNameConfig_ueSpeedConfig( + template (present) SensorNameConfig.ueSpeedConfig p_ueSpeedConfig := true_ + ) := { + ueSpeedConfig := p_ueSpeedConfig + } // End of template mw_sensorNameConfig_ueSpeedConfig + + template (present) SensorNameConfig mw_sensorNameConfig_ueOrientationConfig( + template (present) SensorNameConfig.ueOrientationConfig p_ueOrientationConfig := true_ + ) := { + ueOrientationConfig := p_ueOrientationConfig + } // End of template mw_sensorNameConfig_ueOrientationConfig + + template (present) SensorNameConfig mw_sensorNameConfig_choice_Extensions( + template (present) SensorNameConfig.choice_Extensions p_choice_Extensions ) := { - cNsubgroupID := p_cNsubgroupID, - iE_Extensions := p_iE_Extensions - } // End of template mw_pEIPSassistanceInformation + choice_Extensions := p_choice_Extensions + } // End of template mw_sensorNameConfig_choice_Extensions - template (present) PLMNAreaBasedQMC mw_pLMNAreaBasedQMC( - template (present) PLMNListforQMC p_plmnListforQMC := ?, - template PLMNAreaBasedQMC.iE_Extensions p_iE_Extensions := * + template (present) ServedGUAMIItem mw_servedGUAMIItem( + template (present) GUAMI p_gUAMI := ?, + template AMFName p_backupAMFName := *, + template ServedGUAMIItem.iE_Extensions p_iE_Extensions := * ) := { - plmnListforQMC := p_plmnListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template mw_pLMNAreaBasedQMC - - template (present) PLMNSupportItem mw_pLMNSupportItem( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) SliceSupportList p_sliceSupportList := ?, - template PLMNSupportItem.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - sliceSupportList := p_sliceSupportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_pLMNSupportItem - - template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_NPN_Support( - template (present) NPN_Support p_nPN_Support := ? + gUAMI := p_gUAMI, + backupAMFName := p_backupAMFName, + iE_Extensions := p_iE_Extensions + } // End of template mw_servedGUAMIItem + + template (present) ServedGUAMIItem.iE_Extensions mw_servedGUAMIItemw_id_GUAMIType( + template (present) GUAMIType p_gUAMIType := ? ) := { - { - id := id_NPN_Support, - criticality := reject, - extensionValue := { NPN_Support := p_nPN_Support } - } - } // End of template mw_pLMNSupportItemw_id_NPN_Support - - template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_ExtendedSliceSupportList( - template (present) ExtendedSliceSupportList p_extendedSliceSupportList := ? - ) := { - { - id := id_ExtendedSliceSupportList, - criticality := reject, - extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } - } - } // End of template mw_pLMNSupportItemw_id_ExtendedSliceSupportList + { + id := id_GUAMIType, + criticality := ignore, + extensionValue := { GUAMIType := p_gUAMIType } + } + } // End of template mw_servedGUAMIItemw_id_GUAMIType - template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_OnboardingSupport( - template (present) OnboardingSupport p_onboardingSupport := ? - ) := { - { - id := id_OnboardingSupport, - criticality := ignore, - extensionValue := { OnboardingSupport := p_onboardingSupport } - } - } // End of template mw_pLMNSupportItemw_id_OnboardingSupport + template (present) ServiceAreaInformation_Item mw_serviceAreaInformation_Item( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template AllowedTACs p_allowedTACs := *, + template NotAllowedTACs p_notAllowedTACs := *, + template ServiceAreaInformation_Item.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + allowedTACs := p_allowedTACs, + notAllowedTACs := p_notAllowedTACs, + iE_Extensions := p_iE_Extensions + } // End of template mw_serviceAreaInformation_Item + + template (present) ServiceType mw_serviceType(template (present) ServiceType p_value := streaming) := p_value; + + template (present) SharedNGU_MulticastTNLInformation mw_sharedNGU_MulticastTNLInformation( + template (present) TransportLayerAddress p_iP_MulticastAddress := ?, + template (present) TransportLayerAddress p_iP_SourceAddress := ?, + template (present) GTP_TEID p_gTP_TEID := ?, + template SharedNGU_MulticastTNLInformation.iE_Extensions p_iE_Extensions := * + ) := { + iP_MulticastAddress := p_iP_MulticastAddress, + iP_SourceAddress := p_iP_SourceAddress, + gTP_TEID := p_gTP_TEID, + iE_Extensions := p_iE_Extensions + } // End of template mw_sharedNGU_MulticastTNLInformation + + template (present) SliceOverloadItem mw_sliceOverloadItem( + template (present) S_NSSAI p_s_NSSAI := ?, + template SliceOverloadItem.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_sliceOverloadItem - template (present) PNI_NPN_MobilityInformation mw_pNI_NPN_MobilityInformation( - template (present) Allowed_PNI_NPN_List p_allowed_PNI_NPI_List := ?, - template PNI_NPN_MobilityInformation.iE_Extensions p_iE_Extensions := * - ) := { - allowed_PNI_NPI_List := p_allowed_PNI_NPI_List, - iE_Extensions := p_iE_Extensions - } // End of template mw_pNI_NPN_MobilityInformation + template (present) SliceSupportItem mw_sliceSupportItem( + template (present) S_NSSAI p_s_NSSAI := ?, + template SliceSupportItem.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_sliceSupportItem - template (present) Pre_emptionCapability mw_pre_emptionCapability(template (present) Pre_emptionCapability p_value := ?) := p_value; + template (present) SliceSupportQMC_Item mw_sliceSupportQMC_Item( + template (present) S_NSSAI p_s_NSSAI := ?, + template SliceSupportQMC_Item.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_sliceSupportQMC_Item - template (present) Pre_emptionVulnerability mw_pre_emptionVulnerability(template (present) Pre_emptionVulnerability p_value := ?) := p_value; + template (present) SNPN_MobilityInformation mw_sNPN_MobilityInformation( + template (present) NID p_serving_NID := ?, + template SNPN_MobilityInformation.iE_Extensions p_iE_Extensions := * + ) := { + serving_NID := p_serving_NID, + iE_Extensions := p_iE_Extensions + } // End of template mw_sNPN_MobilityInformation + + template (present) S_NSSAI mw_s_NSSAI( + template (present) SST p_sST := ?, + template SD p_sD := *, + template S_NSSAI.iE_Extensions p_iE_Extensions := * + ) := { + sST := p_sST, + sD := p_sD, + iE_Extensions := p_iE_Extensions + } // End of template mw_s_NSSAI + + template (present) SONConfigurationTransfer mw_sONConfigurationTransfer( + template (present) TargetRANNodeID_SON p_targetRANNodeID_SON := ?, + template (present) SourceRANNodeID p_sourceRANNodeID := ?, + template (present) SONInformation p_sONInformation := ?, + template XnTNLConfigurationInfo p_xnTNLConfigurationInfo := *, + template SONConfigurationTransfer.iE_Extensions p_iE_Extensions := * + ) := { + targetRANNodeID_SON := p_targetRANNodeID_SON, + sourceRANNodeID := p_sourceRANNodeID, + sONInformation := p_sONInformation, + xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, + // The above IE shall be present if the SON Information IE contains the SON Information Request IE set to “Xn TNL Configuration Info” + iE_Extensions := p_iE_Extensions + } // End of template mw_sONConfigurationTransfer + + template (present) SONInformation mw_sONInformation_sONInformationRequest( + template (present) SONInformationRequest p_sONInformationRequest := ? + ) := { + sONInformationRequest := p_sONInformationRequest + } // End of template mw_sONInformation_sONInformationRequest - template (present) PWSFailedCellIDList mw_pWSFailedCellIDList_nR_CGI_PWSFailedList( - template (present) NR_CGIList p_nR_CGI_PWSFailedList := ? - ) := { - nR_CGI_PWSFailedList := p_nR_CGI_PWSFailedList - } // End of template mw_pWSFailedCellIDList_nR_CGI_PWSFailedList + template (present) SONInformation mw_sONInformation_sONInformationReply( + template (present) SONInformationReply p_sONInformationReply := ? + ) := { + sONInformationReply := p_sONInformationReply + } // End of template mw_sONInformation_sONInformationReply - template (present) PWSFailedCellIDList mw_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList( - template (present) EUTRA_CGIList p_eUTRA_CGI_PWSFailedList := ? - ) := { - eUTRA_CGI_PWSFailedList := p_eUTRA_CGI_PWSFailedList - } // End of template mw_pWSFailedCellIDList_eUTRA_CGI_PWSFailedList + template (present) SONInformation mw_sONInformation_choice_Extensions( + template (present) SONInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_sONInformation_choice_Extensions - template (present) PWSFailedCellIDList mw_pWSFailedCellIDList_choice_Extensions( - template (present) PWSFailedCellIDList.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_pWSFailedCellIDList_choice_Extensions - - template (present) QMCConfigInfo mw_qMCConfigInfo( - template (present) UEAppLayerMeasInfoList p_uEAppLayerMeasInfoList := ?, - template QMCConfigInfo.iE_Extensions p_iE_Extensions := * - ) := { - uEAppLayerMeasInfoList := p_uEAppLayerMeasInfoList, - iE_Extensions := p_iE_Extensions - } // End of template mw_qMCConfigInfo - - template (present) QMCDeactivation mw_qMCDeactivation( - template (present) QoEReferenceList p_qoEReferenceList := ?, - template QMCDeactivation.iE_Extensions p_iE_Extensions := * - ) := { - qoEReferenceList := p_qoEReferenceList, - iE_Extensions := p_iE_Extensions - } // End of template mw_qMCDeactivation - - template (present) QosCharacteristics mw_qosCharacteristics_nonDynamic5QI( - template (present) NonDynamic5QIDescriptor p_nonDynamic5QI := ? - ) := { - nonDynamic5QI := p_nonDynamic5QI - } // End of template mw_qosCharacteristics_nonDynamic5QI + template (present) SONInformation.choice_Extensions mw_sONInformatio_id_SONInformationReport( + template (present) SONInformationReport p_sONInformationReport := ? + ) := { + id := id_SONInformationReport, + criticality := ignore, + value_ := { SONInformationReport := p_sONInformationReport } + } // End of template mw_sONInformatio_id_SONInformationReport - template (present) QosCharacteristics mw_qosCharacteristics_dynamic5QI( - template (present) Dynamic5QIDescriptor p_dynamic5QI := ? - ) := { - dynamic5QI := p_dynamic5QI - } // End of template mw_qosCharacteristics_dynamic5QI + template SONInformationReply mw_sONInformationReply( + template XnTNLConfigurationInfo p_xnTNLConfigurationInfo := *, + template SONInformationReply.iE_Extensions p_iE_Extensions := * + ) := { + xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, + iE_Extensions := p_iE_Extensions + } // End of template mw_sONInformationReply - template (present) QosCharacteristics mw_qosCharacteristics_choice_Extensions( - template (present) QosCharacteristics.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_qosCharacteristics_choice_Extensions - - template (present) QosFlowAcceptedItem mw_qosFlowAcceptedItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template QosFlowAcceptedItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template - - template (present) QosFlowAcceptedItem.iE_Extensions mw_pLMNSupportItemw_id_CurrentQoSParaSetIndex( - template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template mw_pLMNSupportItemw_id_ExtendedSliceSupportList + template (present) SONInformationReport mw_sONInformationReport_failureIndicationInformation( + template (present) FailureIndication p_failureIndicationInformation := ? + ) := { + failureIndicationInformation := p_failureIndicationInformation + } // End of template mw_sONInformationReport_failureIndicationInformation - template (present) QosFlowAddOrModifyRequestItem mw_qosFlowAddOrModifyRequestItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template QosFlowLevelQosParameters p_qosFlowLevelQosParameters := *, - template E_RAB_ID p_e_RAB_ID := *, - template QosFlowAddOrModifyRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, - e_RAB_ID := p_e_RAB_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowAddOrModifyRequestItem - - template (present) QosFlowAddOrModifyRequestItem.iE_Extensions mw_qosFlowAddOrModifyRequestItemw_id_TSCTrafficCharacteristics( - template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ? - ) := { - { - id := id_TSCTrafficCharacteristics, - criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } - } - } // End of template mw_qosFlowAddOrModifyRequestItemw_id_TSCTrafficCharacteristics - - template (present) QosFlowAddOrModifyRequestItem.iE_Extensions mw_qosFlowAddOrModifyRequestItemw_id_RedundantQosFlowIndicator( - template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? - ) := { - { - id := id_RedundantQosFlowIndicator, - criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } - } - } // End of template mw_qosFlowAddOrModifyRequestItemw_id_RedundantQosFlowIndicator + template (present) SONInformationReport mw_sONInformationReport_hOReportInformation( + template (present) HOReport p_hOReportInformation := ? + ) := { + hOReportInformation := p_hOReportInformation + } // End of template mw_sONInformationReport_hOReportInformation - template (present) QosFlowAddOrModifyResponseItem mw_qosFlowAddOrModifyResponseItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template QosFlowAddOrModifyResponseItem.iE_Extensions p_iE_Extensions := * + template (present) SONInformationReport mw_sONInformationReport_choice_Extensions( + template (present) SONInformationReport.choice_Extensions p_choice_Extensions := ? ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowAddOrModifyResponseItem - - template (present) QosFlowAddOrModifyResponseItem.iE_Extensions mw_qosFlowAddOrModifyResponseItemw_id_CurrentQoSParaSetIndex( - template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template mw_qosFlowAddOrModifyResponseItemw_id_CurrentQoSParaSetIndex - - template (present) QosFlowFeedbackItem mw_qosFlowFeedbackItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template UpdateFeedback p_updateFeedback := *, - template ExtendedPacketDelayBudget p_cNpacketDelayBudgetDL := *, - template ExtendedPacketDelayBudget p_cNpacketDelayBudgetUL := *, - template QosFlowFeedbackItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - updateFeedback := p_updateFeedback, - cNpacketDelayBudgetDL := p_cNpacketDelayBudgetDL, - cNpacketDelayBudgetUL := p_cNpacketDelayBudgetUL, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowFeedbackItem - - template (present) QosFlowInformationItem mw_qosFlowInformationItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template DLForwarding p_dLForwarding := *, - template QosFlowInformationItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - dLForwarding := p_dLForwarding, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowInformationItem - - template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_ULForwarding( - template (present) ULForwarding p_uLForwarding := ? - ) := { - { - id := id_ULForwarding, - criticality := ignore, - extensionValue := { ULForwarding := p_uLForwarding } - } - } // End of template mw_qosFlowInformationItemw_id_ULForwarding - - template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_SourceTNLAddrInfo( - template (present) TransportLayerAddress p_transportLayerAddress := ? - ) := { - { - id := id_SourceTNLAddrInfo, - criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } - } - } // End of template mw_qosFlowInformationItemw_id_SourceTNLAddrInfo + choice_Extensions := p_choice_Extensions + } // End of template mw_sONInformationReport_choice_Extensions - template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_SourceNodeTNLAddrInfo( - template (present) TransportLayerAddress p_transportLayerAddress := ? + template (present) SONInformationReport.choice_Extensions mw_sONInformationReport_id_SONInformationReport( + template (present) SuccessfulHandoverReportList p_successfulHandoverReportList := ? ) := { - { - id := id_SourceNodeTNLAddrInfo, - criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } - } - } // End of template mw_qosFlowInformationItemw_id_SourceNodeTNLAddrInfo - - template (present) QosFlowLevelQosParameters mw_qosFlowLevelQosParameters( - template (present) QosCharacteristics p_qosCharacteristics := ?, - template (present) AllocationAndRetentionPriority p_allocationAndRetentionPriority := ?, - template GBR_QosInformation p_gBR_QosInformation := *, - template ReflectiveQosAttribute p_reflectiveQosAttribute := *, - template AdditionalQosFlowInformation p_additionalQosFlowInformation := *, - template QosFlowLevelQosParameters.iE_Extensions p_iE_Extensions := * - ) := { - qosCharacteristics := p_qosCharacteristics, - allocationAndRetentionPriority := p_allocationAndRetentionPriority, - gBR_QosInformation := p_gBR_QosInformation, - reflectiveQosAttribute := p_reflectiveQosAttribute, - additionalQosFlowInformation := p_additionalQosFlowInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowLevelQosParameters - - template (present) QosFlowLevelQosParameters.iE_Extensions mw_qosFlowLevelQosParameters_id_QosMonitoringRequest( - template (present) QosMonitoringRequest p_qosMonitoringRequest := ? - ) := { - { - id := id_QosMonitoringRequest, - criticality := ignore, - extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } - } - } // End of template mw_qosFlowLevelQosParameters_id_QosMonitoringRequest - - template (present) QosFlowLevelQosParameters.iE_Extensions mw_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency( - template (present) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency := ? - ) := { - { - id := id_QosMonitoringReportingFrequency, - criticality := ignore, - extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } - } - } // End of template mw_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency + id := id_SONInformationReport, + criticality := ignore, + value_ := { SuccessfulHandoverReportList := p_successfulHandoverReportList } + } // End of template mw_sONInformationReport_id_SONInformationReport - template (present) QosMonitoringRequest mw_qosMonitoringRequest(template (present) QosMonitoringRequest p_value := ?) := p_value; + template (present) SuccessfulHandoverReport_Item mw_successfulHandoverReport_Item( + template (present) octetstring p_successfulHOReportContainer := ?, + template SuccessfulHandoverReport_Item.iE_Extensions p_iE_Extensions := * + ) := { + successfulHOReportContainer := p_successfulHOReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_successfulHandoverReport_Item + + template (present) SONInformationRequest mw_sONInformationRequest(template (present) SONInformationRequest p_value := ?) := p_value; + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer( + template (present) NGRAN_CGI p_targetCell_ID := ?, + template (present) RRCContainer p_rRCContainer := ?, + template (present) UEHistoryInformation p_uEHistoryInformation := ?, + template PDUSessionResourceInformationList p_pDUSessionResourceInformationList := *, + template E_RABInformationList p_e_RABInformationList := *, + template IndexToRFSP p_indexToRFSP := *, + template SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := * + ):= { + rRCContainer := p_rRCContainer, + pDUSessionResourceInformationList := p_pDUSessionResourceInformationList, + e_RABInformationList := p_e_RABInformationList, + targetCell_ID := p_targetCell_ID, + indexToRFSP := p_indexToRFSP, + uEHistoryInformation := p_uEHistoryInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID( + template (present) SgNB_UE_X2AP_ID p_sgNB_UE_X2AP_ID := ? + ) := { + { + id := id_SgNB_UE_X2AP_ID, + criticality := ignore, + extensionValue := { SgNB_UE_X2AP_ID := p_sgNB_UE_X2AP_ID } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE( + template (present) UEHistoryInformationFromTheUE p_uEHistoryInformationFromTheUE := ? + ) := { + { + id := id_UEHistoryInformationFromTheUE, + criticality := ignore, + extensionValue := { UEHistoryInformationFromTheUE := p_uEHistoryInformationFromTheUE } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE - template (present) QosFlowWithCauseItem mw_qosFlowWithCauseItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template (present) Cause p_cause := ?, - template QosFlowWithCauseItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowWithCauseItem + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID( + template (present) SourceNodeID p_sourceNodeID := ? + ) := { + { + id := id_SourceNodeID, + criticality := ignore, + extensionValue := { SourceNodeID := p_sourceNodeID } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource( + template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ? + ) := { + { + id := id_UEContextReferenceAtSource, + criticality := ignore, + extensionValue := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource - template (present) QosFlowModifyConfirmItem mw_qosFlowModifyConfirmItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template QosFlowModifyConfirmItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowModifyConfirmItem - - template (present) QosFlowNotifyItem mw_qosFlowNotifyItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template (present) NotificationCause p_notificationCause := ?, - template QosFlowNotifyItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - notificationCause := p_notificationCause, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowNotifyItem - - template (present) QosFlowNotifyItem.iE_Extensions mw_qosFlowNotifyItemw_id_CurrentQoSParaSetIndex( - template (present) AlternativeQoSParaSetNotifyIndex p_alternativeQoSParaSetNotifyIndex := ? - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } - } - } // End of template mw_qosFlowNotifyItemw_id_CurrentQoSParaSetIndex - - template (present) QosFlowParametersItem mw_qosFlowParametersItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template AlternativeQoSParaSetList p_alternativeQoSParaSetList := *, - template QosFlowParametersItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - alternativeQoSParaSetList := p_alternativeQoSParaSetList, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowParametersItem - - template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_CNPacketDelayBudgetDL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_CNPacketDelayBudgetDL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_qosFlowParametersItemw_id_CNPacketDelayBudgetDL - - template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_CNPacketDelayBudgetUL( - template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? - ) := { - { - id := id_CNPacketDelayBudgetUL, - criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } - } - } // End of template mw_qosFlowParametersItemw_id_CNPacketDelayBudgetUL - - template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_BurstArrivalTimeDownlink( - template (present) BurstArrivalTime p_burstArrivalTime := ? - ) := { - { - id := id_BurstArrivalTimeDownlink, - criticality := ignore, - extensionValue := { BurstArrivalTime := p_burstArrivalTime } - } - } // End of template mw_qosFlowParametersItemw_id_BurstArrivalTimeDownlink + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList( + template (present) MBS_ActiveSessionInformation_SourcetoTargetList p_mBS_ActiveSessionInformation_SourcetoTargetListD := ? + ) := { + { + id := id_MBS_ActiveSessionInformation_SourcetoTargetList, + criticality := ignore, + extensionValue := { MBS_ActiveSessionInformation_SourcetoTargetList := p_mBS_ActiveSessionInformation_SourcetoTargetListD } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList - template (present) QosFlowPerTNLInformation mw_qosFlowPerTNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ?, - template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, - template QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := * - ) := { - uPTransportLayerInformation := p_uPTransportLayerInformation, - associatedQosFlowList := p_associatedQosFlowList, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowPerTNLInformation - - template (present) QosFlowPerTNLInformationItem mw_qosFlowPerTNLInformationItem( - template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ?, - template QosFlowPerTNLInformationItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowPerTNLInformation := p_qosFlowPerTNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowPerTNLInformationItem - - template (present) QosFlowSetupRequestItem mw_qosFlowSetupRequestItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template (present) QosFlowLevelQosParameters p_qosFlowLevelQosParameters := ?, - template E_RAB_ID p_e_RAB_ID := *, - template QosFlowSetupRequestItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - qosFlowLevelQosParameters := p_qosFlowLevelQosParameters, - e_RAB_ID := p_e_RAB_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowSetupRequestItem - - template (present) QosFlowSetupRequestItem.iE_Extensions mw_qosFlowSetupRequestItemw_id_TSCTrafficCharacteristics( - template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ? - ) := { - { - id := id_TSCTrafficCharacteristics, - criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } - } - } // End of template mw_qosFlowSetupRequestItemw_id_TSCTrafficCharacteristics - - template (present) QosFlowSetupRequestItem.iE_Extensions mw_qosFlowSetupRequestItemw_id_RedundantQosFlowIndicator( - template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? - ) := { - { - id := id_RedundantQosFlowIndicator, - criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } - } - } // End of template mw_qosFlowSetupRequestItemw_id_RedundantQosFlowIndicator + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo( + template (present) QMCConfigInfo p_qMCConfigInfo := ? + ) := { + { + id := id_QMCConfigInfo, + criticality := ignore, + extensionValue := { QMCConfigInfo := p_qMCConfigInfo } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo + + template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList( + template (present) NGAPIESupportInformationRequestList p_nGAPIESupportInformationRequestList := ? + ) := { + { + id := id_NGAPIESupportInformationRequestList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationRequestList := p_nGAPIESupportInformationRequestList } + } + } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList - template (present) QosFlowItemWithDataForwarding mw_qosFlowItemWithDataForwarding( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template DataForwardingAccepted p_dataForwardingAccepted := *, - template QosFlowItemWithDataForwarding.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - dataForwardingAccepted := p_dataForwardingAccepted, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowItemWithDataForwarding - - template (present) QosFlowItemWithDataForwarding.iE_Extensions mw_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( - template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? - ) := { - { - id := id_CurrentQoSParaSetIndex, - criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } - } - } // End of template mw_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex + template (present) SourceNodeID mw_sourceNodeID_sourceengNB_ID( + template (present) GlobalGNB_ID p_sourceengNB_ID := ? + ) := { + sourceengNB_ID := p_sourceengNB_ID + } // End of template mw_sourceNodeID_sourceengNB_ID - template (present) QosFlowToBeForwardedItem mw_qosFlowToBeForwardedItem( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template QosFlowToBeForwardedItem.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - iE_Extensions := p_iE_Extensions - } // End of template mw_qosFlowToBeForwardedItem + template (present) SourceNodeID mw_sourceNodeID_choice_Extensions( + template (present) SourceNodeID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_sourceNodeID_choice_Extensions - template (present) QoSFlowsUsageReport_Item mw_qoSFlowsUsageReport_Item( - template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, - template (present) QoSFlowsUsageReport_Item.rATType p_rATType := ?, - template (present) VolumeTimedReportList p_qoSFlowsTimedReportList := ?, - template QoSFlowsUsageReport_Item.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowIdentifier := p_qosFlowIdentifier, - rATType := p_rATType, - qoSFlowsTimedReportList := p_qoSFlowsTimedReportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_qoSFlowsUsageReport_Item + template (present) SourceOfUEActivityBehaviourInformation mw_sourceOfUEActivityBehaviourInformation(template (present) SourceOfUEActivityBehaviourInformation p_value := ?) := p_value; + + template (present) SourceRANNodeID mw_sourceRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template SourceRANNodeID.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_sourceRANNodeID + + // This IE includes a transparent container from the source RAN node to the target RAN node. + // The octets of the OCTET STRING are encoded according to the specifications of the target system. + + template SourceToTarget_AMFInformationReroute mw_sourceToTarget_AMFInformationReroute( + template ConfiguredNSSAI p_configuredNSSAI := *, + template RejectedNSSAIinPLMN p_rejectedNSSAIinPLMN := *, + template RejectedNSSAIinTA p_rejectedNSSAIinTA := *, + template SourceToTarget_AMFInformationReroute.iE_Extensions p_iE_Extensions := * + ) := { + configuredNSSAI := p_configuredNSSAI, + rejectedNSSAIinPLMN := p_rejectedNSSAIinPLMN, + rejectedNSSAIinTA := p_rejectedNSSAIinTA, + iE_Extensions := p_iE_Extensions + } // End of template mw_sourceToTarget_AMFInformationReroute + // This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF. + // The octets of the OCTET STRING are encoded according to the specifications of the Core network. - template (present) Range mw_range(template (present) Range p_value := ?) := p_value; + template (present) SRVCCOperationPossible mw_sRVCCOperationPossible(template (present) SRVCCOperationPossible p_value := ?) := p_value; - template (present) RANStatusTransfer_TransparentContainer mw_rANStatusTransfer_TransparentContainer( - template (present) DRBsSubjectToStatusTransferList p_dRBsSubjectToStatusTransferList := ?, - template RANStatusTransfer_TransparentContainer.iE_Extensions p_iE_Extensions := * + template (present) SupportedTAItem mw_supportedTAItem( + template (present) TAC p_tAC := ?, + template (present) BroadcastPLMNList p_broadcastPLMNList := ?, + template SupportedTAItem.iE_Extensions p_iE_Extensions := * + ) := { + tAC := p_tAC, + broadcastPLMNList := p_broadcastPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template mw_supportedTAItem + + template (present) SupportedTAItem.iE_Extensions mw_supportedTAItemw_id_ConfiguredTACIndication( + template (present) ConfiguredTACIndication p_configuredTACIndication := ? ) := { - dRBsSubjectToStatusTransferList := p_dRBsSubjectToStatusTransferList, - iE_Extensions := p_iE_Extensions - } // End of template mw_rANStatusTransfer_TransparentContainer + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + } + } // End of template mw_supportedTAItemw_id_ConfiguredTACIndication + + template (present) SupportedTAItem.iE_Extensions mw_supportedTAItemw_id_RAT_Information( + template (present) RAT_Information p_rAT_Information := ? + ) := { + { + id := id_RAT_Information, + criticality := reject, + extensionValue := { RAT_Information := p_rAT_Information } + } + } // End of template mw_supportedTAItemw_id_RAT_Information + + template (present) SuspendIndicator mw_suspendIndicator(template (present) SuspendIndicator p_value := true_) := p_value; + + template (present) Suspend_Request_Indication mw_suspend_Request_Indication(template (present) Suspend_Request_Indication p_value := suspend_requested) := p_value; - template (present) RAT_Information mw_rAT_Information(template (present) RAT_Information p_value := ?) := p_value; + template (present) Suspend_Response_Indication mw_suspend_Response_Indication(template (present) Suspend_Response_Indication p_value := suspend_indicated) := p_value; - template (present) RATRestrictions_Item mw_rATRestrictions_Item( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) RATRestrictionInformation p_rATRestrictionInformation := ?, - template RATRestrictions_Item.iE_Extensions p_iE_Extensions := * + template (present) TAI mw_tAI( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) TAC p_tAC := ?, + template TAI.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + tAC := p_tAC, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAI + + template (present) TAIBroadcastEUTRA_Item mw_tAIBroadcastEUTRA_Item( + template (present) TAI p_tAI := ?, + template (present) CompletedCellsInTAI_EUTRA p_completedCellsInTAI_EUTRA := ?, + template TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + completedCellsInTAI_EUTRA := p_completedCellsInTAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIBroadcastEUTRA_Item + + template (present) TAIBroadcastNR_Item mw_tAIBroadcastNR_Item( + template (present) TAI p_tAI := ?, + template (present) CompletedCellsInTAI_NR p_completedCellsInTAI_NR := ?, + template TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := * ) := { - pLMNIdentity := p_pLMNIdentity, - rATRestrictionInformation := p_rATRestrictionInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_rATRestrictions_Item - - template (present) RATRestrictions_Item.iE_Extensions mw_rATRestrictions_Item_id_ExtendedRATRestrictionInformation( - template (present) ExtendedRATRestrictionInformation p_extendedRATRestrictionInformation := ? - ) := { - { - id := id_ExtendedRATRestrictionInformation, - criticality := ignore, - extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } - } - } // End of template mw_rATRestrictions_Item_id_ExtendedRATRestrictionInformation + tAI := p_tAI, + completedCellsInTAI_NR := p_completedCellsInTAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIBroadcastNR_Item + + template (present) TAICancelledEUTRA_Item mw_tAICancelledEUTRA_Item( + template (present) TAI p_tAI := ?, + template (present) CancelledCellsInTAI_EUTRA p_cancelledCellsInTAI_EUTRA := ?, + template TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + cancelledCellsInTAI_EUTRA := p_cancelledCellsInTAI_EUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAICancelledEUTRA_Item - template (present) RecommendedCellsForPaging mw_recommendedCellsForPaging( - template (present) RecommendedCellList p_recommendedCellList := ?, - template RecommendedCellsForPaging.iE_Extensions p_iE_Extensions := * - ) := { - recommendedCellList := p_recommendedCellList, - iE_Extensions := p_iE_Extensions - } // End of template mw_recommendedCellsForPaging - - template (present) RecommendedCellItem mw_recommendedCellItem( - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template RecommendedCellItem.timeStayedInCell p_timeStayedInCell := *, - template RecommendedCellItem.iE_Extensions p_iE_Extensions := * - ) := { - nGRAN_CGI := p_nGRAN_CGI, - timeStayedInCell := p_timeStayedInCell, - iE_Extensions := p_iE_Extensions - } // End of template mw_recommendedCellItem - - template (present) RecommendedRANNodesForPaging mw_recommendedRANNodesForPaging( - template (present) RecommendedRANNodeList p_recommendedRANNodeList := ?, - template RecommendedRANNodesForPaging.iE_Extensions p_iE_Extensions := * - ) := { - recommendedRANNodeList := p_recommendedRANNodeList, - iE_Extensions := p_iE_Extensions - } // End of template mw_recommendedRANNodesForPaging + template (present) TAICancelledNR_Item mw_tAICancelledNR_Item( + template (present) TAI p_tAI := ?, + template (present) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR := ?, + template TAICancelledNR_Item.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + cancelledCellsInTAI_NR := p_cancelledCellsInTAI_NR, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAICancelledNR_Item + + template (present) TAIListForInactiveItem mw_tAIListForInactiveItem( + template (present) TAI p_tAI := ?, + template TAIListForInactiveItem.iE_Extensions p_iE_Extensions := * + ) := { + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIListForInactiveItem - template (present) RecommendedRANNodeItem mw_recommendedRANNodeItem( - template (present) AMFPagingTarget p_aMFPagingTarget := ?, - template RecommendedRANNodeItem.iE_Extensions p_iE_Extensions := * + template (present) TAIListForPagingItem mw_tAIListForPagingItem( + template (present) TAI p_tAI := ?, + template TAIListForPagingItem.iE_Extensions p_iE_Extensions := * ) := { - aMFPagingTarget := p_aMFPagingTarget, - iE_Extensions := p_iE_Extensions - } // End of template mw_recommendedRANNodeItem + tAI := p_tAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIListForPagingItem + + template (present) TAINSAGSupportItem mw_tAINSAGSupportItem( + template (present) NSAG_ID p_nSAG_ID := ?, + template (present) ExtendedSliceSupportList p_nSAGSliceSupportList := ?, + template TAINSAGSupportItem.iE_Extensions p_iE_Extensions := * + ) := { + nSAG_ID := p_nSAG_ID, + nSAGSliceSupportList := p_nSAGSliceSupportList, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAINSAGSupportItem + + template (present) TargeteNB_ID mw_targeteNB_ID( + template (present) GlobalNgENB_ID p_globalENB_ID := ?, + template (present) EPS_TAI p_selected_EPS_TAI := ?, + template TargeteNB_ID.iE_Extensions p_iE_Extensions := * + ) := { + globalENB_ID := p_globalENB_ID, + selected_EPS_TAI := p_selected_EPS_TAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targeteNB_ID + + template (present) TargetHomeENB_ID mw_targetHomeENB_ID( + template (present) PLMNIdentity p_pLMNidentity := ?, + template (present) TargetHomeENB_ID.homeENB_ID p_homeENB_ID := ?, + template (present) EPS_TAI p_selected_EPS_TAI := ?, + template TargetHomeENB_ID.iE_Extensions p_iE_Extensions := * + ) := { + pLMNidentity := p_pLMNidentity, + homeENB_ID := p_homeENB_ID, + selected_EPS_TAI := p_selected_EPS_TAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetHomeENB_ID + + template (present) TargetID mw_targetID_targetRANNodeID( + template (present) TargetRANNodeID p_targetRANNodeID := ? + ) := { + targetRANNodeID := p_targetRANNodeID + } // End of template mw_targetID_targetRANNodeID - template (present) RedCapIndication mw_redCapIndication(template (present) RedCapIndication p_value := redcap) := p_value; + template (present) TargetID mw_targetID_targeteNB_ID( + template (present) TargeteNB_ID p_targeteNB_ID := ? + ) := { + targeteNB_ID := p_targeteNB_ID + } // End of template mw_targetID_targeteNB_ID - template (present) RedirectionVoiceFallback mw_redirectionVoiceFallback(template (present) RedirectionVoiceFallback p_value := ?) := p_value; + template (present) TargetID mw_targetID_choice_Extensions( + template (present) TargetID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_targetID_choice_Extensions - template (present) RedundantPDUSessionInformation mw_redundantPDUSessionInformation( - template (present) RSN p_rSN := ?, - template RedundantPDUSessionInformation.iE_Extensions p_iE_Extensions := * - ) := { - rSN := p_rSN, - iE_Extensions := p_iE_Extensions - } // End of template mw_redundantPDUSessionInformation - - template (present) RedundantPDUSessionInformation.iE_Extensions mw_redundantPDUSessionInformation_id_PDUSessionPairID( - template (present) PDUSessionPairID p_pDUSessionPairID := ? - ) := { - { - id := id_PDUSessionPairID, - criticality := ignore, - extensionValue := { PDUSessionPairID := p_pDUSessionPairID } - } - } // End of template m_redundantPDUSessionInformation_id_PDUSessionPairID + template (present) TargetID.choice_Extensions mw_targetID_id_TargetRNC_ID( + template (present) TargetRNC_ID p_targetRNC_ID := ? + ) := { + id := id_TargetRNC_ID, + criticality := reject, + value_ := { TargetRNC_ID := p_targetRNC_ID } + } // End of template mw_sONInformationReport_id_SONInformationReport - template (present) RedundantQosFlowIndicator mw_RedundantQosFlowIndicator(template (present) RedundantQosFlowIndicator p_value := ?) := p_value; + template (present) TargetID.choice_Extensions mw_targetID_id_TargetHomeENB_ID( + template (present) TargetHomeENB_ID p_targetHomeENB_ID := ? + ) := { + id := id_TargetHomeENB_ID, + criticality := reject, + value_ := { TargetHomeENB_ID := p_targetHomeENB_ID } + } // End of template mw_sONInformationReport_id_TargetHomeENB_ID - template (present) ReflectiveQosAttribute mw_reflectiveQosAttribute(template (present) ReflectiveQosAttribute p_value := ?) := p_value; + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer( + template (present) RRCContainer p_rRCContainer := ?, + template TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := * + ) := { + rRCContainer := p_rRCContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer + + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList( + template (present) DAPSResponseInfoList p_dAPSResponseInfoList := ? + ) := { + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList + + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability( + template (present) DirectForwardingPathAvailability p_directForwardingPathAvailability := ? + ) := { + { + id := id_DirectForwardingPathAvailability, + criticality := ignore, + extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability - template (present) ReportArea mw_reportArea(template (present) ReportArea p_value := ?) := p_value; + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList( + template (present) MBS_ActiveSessionInformation_TargettoSourceList p_mBS_ActiveSessionInformation_TargettoSourceList := ? + ) := { + { + id := id_MBS_ActiveSessionInformation_TargettoSourceList, + criticality := ignore, + extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList + + template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList( + template (present) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList := ? + ) := { + { + id := id_NGAPIESupportInformationResponseList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList - template (present) ResetAll mw_resetAll(template (present) ResetAll p_value := ?) := p_value; + template TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer( + template Cell_CAGInformation p_cell_CAGInformation := *, + template TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions p_iE_Extensions := * + ) := { + cell_CAGInformation := p_cell_CAGInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer + + template (present) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList( + template (present) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList := ? + ) := { + { + id := id_NGAPIESupportInformationResponseList, + criticality := ignore, + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + } + } // End of template mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList - template (present) ReportAmountMDT mw_reportAmountMDT(template (present) ReportAmountMDT p_value := ?) := p_value; + template (present) TargetNSSAI_Item mw_targetNSSAI_Item( + template (present) S_NSSAI p_s_NSSAI := ?, + template TargetNSSAI_Item.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetNSSAI_Item + + template (present) TargetNSSAIInformation mw_targetNSSAIInformation( + template (present) TargetNSSAI p_targetNSSAI := ?, + template (present) IndexToRFSP p_indexToRFSP := ?, + template TargetNSSAIInformation.iE_Extensions p_iE_Extensions := * + ) := { + targetNSSAI := p_targetNSSAI, + indexToRFSP := p_indexToRFSP, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetNSSAIInformation + + template (present) TargetRANNodeID mw_targetRANNodeID( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template TargetRANNodeID.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetRANNodeID + + template (present) TargetRANNodeID_RIM mw_targetRANNodeID_RIM( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template TargetRANNodeID_RIM.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetRANNodeID_RIM + + template (present) TargetRANNodeID_SON mw_targetRANNodeID_SON( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAI p_selectedTAI := ?, + template TargetRANNodeID_SON.iE_Extensions p_iE_Extensions := * + ) := { + globalRANNodeID := p_globalRANNodeID, + selectedTAI := p_selectedTAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetRANNodeID_SON - template (present) ReportIntervalMDT mw_reportIntervalMDT(template (present) ReportIntervalMDT p_value := ?) := p_value; + template (present) TargetRANNodeID_SON.iE_Extensions mw_targetRANNodeID_SON_id_NR_CGI( + template (present) NR_CGI p_nR_CGI := ? + ) := { + { + id := id_NR_CGI, + criticality := ignore, + extensionValue := { NR_CGI := p_nR_CGI } + } + } // End of template mw_targetRANNodeID_SON_id_NR_CGI - template (present) ExtendedReportIntervalMDT mw_extendedReportIntervalMDT(template (present) ExtendedReportIntervalMDT p_value := ?) := p_value; + template (present) TargetRNC_ID mw_targetRNC_ID( + template (present) LAI p_lAI := ?, + template (present) RNC_ID p_rNC_ID := ?, + template ExtendedRNC_ID p_extendedRNC_ID := *, + template TargetRNC_ID.iE_Extensions p_iE_Extensions := * + ) := { + lAI := p_lAI, + rNC_ID := p_rNC_ID, + extendedRNC_ID := p_extendedRNC_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_targetRNC_ID + + template (present) TimerApproachForGUAMIRemoval mw_timerApproachForGUAMIRemoval(template (present) TimerApproachForGUAMIRemoval p_value := ?) := p_value; + + template (present) TimeSyncAssistanceInfo mw_timeSyncAssistanceInfo( + template (present) TimeSyncAssistanceInfo.timeDistributionIndication p_timeDistributionIndication := enabled, + template TimeSyncAssistanceInfo.uUTimeSyncErrorBudget p_uUTimeSyncErrorBudget := *, + template TimeSyncAssistanceInfo.iE_Extensions p_iE_Extensions := * + ) := { + timeDistributionIndication := p_timeDistributionIndication, + uUTimeSyncErrorBudget := p_uUTimeSyncErrorBudget, + // The above IE shall be present if the Time Distribution Indication IE is set to the value “enabled” + iE_Extensions := p_iE_Extensions + } // End of template mw_timeSyncAssistanceInfo - template (present) ResetType mw_resetType_nG_Interface( - template (present) ResetAll p_nG_Interface := ? - ) := { - nG_Interface := p_nG_Interface - } // End of template mw_resetType_nG_Interface + template (present) TimeToWait mw_timeToWait(template (present) TimeToWait p_value := ?) := p_value; - template (present) ResetType mw_resetType_partOfNG_Interface( - template (present) UE_associatedLogicalNG_connectionList p_partOfNG_Interface := ? - ) := { - partOfNG_Interface := p_partOfNG_Interface - } // End of template mw_resetType_partOfNG_Interface + template (present) TNGF_ID mw_tNGF_ID_tNGF_ID( + template (present) TNGF_ID.tNGF_ID p_tNGF_ID := ? + ) := { + tNGF_ID := p_tNGF_ID + } // End of template mw_tNGF_ID_tNGF_ID - template (present) ResetType mw_resetType_choice_Extensions( - template (present) ResetType.choice_Extensions p_choice_Extensions := ? + template (present) TNGF_ID mw_tNGF_ID_choice_Extensions( + template (present) TNGF_ID.choice_Extensions p_choice_Extensions := ? ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_resetType_choice_Extensions + choice_Extensions := p_choice_Extensions + } // End of template mw_tNGF_ID_choice_Extensions - template (present) RRCEstablishmentCause mw_rRCEstablishmentCause(template (present) RRCEstablishmentCause p_value := ?) := p_value; + template (present) TNLAssociationItem mw_tNLAssociationItem( + template (present) CPTransportLayerInformation p_tNLAssociationAddress := ?, + template (present) Cause p_cause := ?, + template TNLAssociationItem.iE_Extensions p_iE_Extensions := * + ) := { + tNLAssociationAddress := p_tNLAssociationAddress, + cause := p_cause, + iE_Extensions := p_iE_Extensions + } // End of template mw_tNLAssociationItem + + template (present) TNLAssociationUsage mw_TNLAssociationUsage(template (present) TNLAssociationUsage p_value := ?) := p_value; + + template (present) TooearlyIntersystemHO mw_tooearlyIntersystemHO( + template (present) EUTRA_CGI p_sourcecellID := ?, + template (present) NGRAN_CGI p_failurecellID := ?, + template UERLFReportContainer p_uERLFReportContainer := *, + template TooearlyIntersystemHO.iE_Extensions p_iE_Extensions := * + ) := { + sourcecellID := p_sourcecellID, + failurecellID := p_failurecellID, + uERLFReportContainer := p_uERLFReportContainer, + iE_Extensions := p_iE_Extensions + } // End of template mw_tooearlyIntersystemHO + + template (present) TraceActivation mw_traceActivation( + template (present) NGRANTraceID p_nGRANTraceID := ?, + template (present) InterfacesToTrace p_interfacesToTrace := ?, + template (present) TraceDepth p_traceDepth := ?, + template (present) TransportLayerAddress p_traceCollectionEntityIPAddress := ?, + template TraceActivation.iE_Extensions p_iE_Extensions := * + ) := { + nGRANTraceID := p_nGRANTraceID, + interfacesToTrace := p_interfacesToTrace, + traceDepth := p_traceDepth, + traceCollectionEntityIPAddress := p_traceCollectionEntityIPAddress, + iE_Extensions := p_iE_Extensions + } // End of template mw_traceActivation + + template (present) TraceActivation.iE_Extensions mw_traceActivation_id_MDTConfiguration( + template (present) MDT_Configuration p_mDT_Configuration := ? + ) := { + { + id := id_MDTConfiguration, + criticality := ignore, + extensionValue := { MDT_Configuration := p_mDT_Configuration } + } + } // End of template mw_traceActivation_id_MDTConfiguration - template (present) RRCInactiveTransitionReportRequest mw_rRCInactiveTransitionReportRequest(template (present) RRCInactiveTransitionReportRequest p_value := ?) := p_value; + template (present) TraceActivation.iE_Extensions mw_traceActivation_id_TraceCollectionEntityURI( + template (present) URI_address p_uRI_address := ? + ) := { + { + id := id_TraceCollectionEntityURI, + criticality := ignore, + extensionValue := { URI_address := p_uRI_address } + } + } // End of template mw_traceActivation_id_TraceCollectionEntityURI - template (present) RRCState mw_rRCState(template (present) RRCState p_value := ?) := p_value; + template (present) TraceDepth mw_traceDepth(template (present) TraceDepth p_value := ?) := p_value; - template (present) RSN mw_rSN(template (present) RSN p_value := ?) := p_value; + template (present) TypeOfError mw_typeOfError(template (present) TypeOfError p_value := ?) := p_value; - template (present) RIMInformationTransfer mw_rIMInformationTransfer( - template (present) TargetRANNodeID_RIM p_targetRANNodeID_RIM := ?, - template (present) SourceRANNodeID p_sourceRANNodeID := ?, - template (present) RIMInformation p_rIMInformation := ?, - template RIMInformationTransfer.iE_Extensions p_iE_Extensions := * - ) := { - targetRANNodeID_RIM := p_targetRANNodeID_RIM, - sourceRANNodeID := p_sourceRANNodeID, - rIMInformation := p_rIMInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_rIMInformationTransfer - - template (present) RIMInformation mw_rIMInformation( - template (present) GNBSetID p_targetgNBSetID := ?, - template (present) RIMInformation.rIM_RSDetection p_rIM_RSDetection := ?, - template RIMInformation.iE_Extensions p_iE_Extensions := * - ) := { - targetgNBSetID := p_targetgNBSetID, - rIM_RSDetection := p_rIM_RSDetection, - iE_Extensions := p_iE_Extensions - } // End of template mw_rIMInformation - - template ScheduledCommunicationTime mw_scheduledCommunicationTime( - template ScheduledCommunicationTime.dayofWeek p_dayofWeek := *, - template ScheduledCommunicationTime.timeofDayStart p_timeofDayStart := *, - template ScheduledCommunicationTime.timeofDayEnd p_timeofDayEnd := *, - template ScheduledCommunicationTime.iE_Extensions p_iE_Extensions := * - ) := { - dayofWeek := p_dayofWeek, - timeofDayStart := p_timeofDayStart, - timeofDayEnd := p_timeofDayEnd, - iE_Extensions := p_iE_Extensions - } // End of template mw_scheduledCommunicationTime - - template SecondaryRATUsageInformation mw_secondaryRATUsageInformation( - template PDUSessionUsageReport p_pDUSessionUsageReport := *, - template QoSFlowsUsageReportList p_qosFlowsUsageReportList := *, - template SecondaryRATUsageInformation.iE_Extension p_iE_Extensions := * - ) := { - pDUSessionUsageReport := p_pDUSessionUsageReport, - qosFlowsUsageReportList := p_qosFlowsUsageReportList, - iE_Extension := p_iE_Extensions - } // End of template mw_secondaryRATUsageInformation - - template SecondaryRATDataUsageReportTransfer mw_secondaryRATDataUsageReportTransfer( - template SecondaryRATUsageInformation p_secondaryRATUsageInformation := *, - template SecondaryRATDataUsageReportTransfer.iE_Extensions p_iE_Extensions := * - ) := { - secondaryRATUsageInformation := p_secondaryRATUsageInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_secondaryRATDataUsageReportTransfer - - template (present) SecurityContext mw_securityContext( - template (present) NextHopChainingCount p_nextHopChainingCount := ?, - template (present) SecurityKey p_nextHopNH := ?, - template SecurityContext.iE_Extensions p_iE_Extensions := * - ) := { - nextHopChainingCount := p_nextHopChainingCount, - nextHopNH := p_nextHopNH, - iE_Extensions := p_iE_Extensions - } // End of template mw_securityContext - - template (present) SecurityIndication mw_securityIndication( - template (present) IntegrityProtectionIndication p_integrityProtectionIndication := ?, - template (present) ConfidentialityProtectionIndication p_confidentialityProtectionIndication := ?, - template MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate_UL := *, - template SecurityIndication.iE_Extensions p_iE_Extensions := * - ) := { - integrityProtectionIndication := p_integrityProtectionIndication, - confidentialityProtectionIndication := p_confidentialityProtectionIndication, - maximumIntegrityProtectedDataRate_UL := p_maximumIntegrityProtectedDataRate_UL, - // The above IE shall be present if integrity protection is required or preferred - iE_Extensions := p_iE_Extensions - } // End of template mw_securityIndication - - template (present) SecurityIndication.iE_Extensions mw_securityIndication_id_MaximumIntegrityProtectedDataRate_DL( - template (present) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate := ? - ) := { - { - id := id_MaximumIntegrityProtectedDataRate_DL, - criticality := ignore, - extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } - } - } // End of template mw_securityIndication_id_MaximumIntegrityProtectedDataRate_DL + template (present) TAIBasedMDT mw_tAIBasedMDT( + template (present) TAIListforMDT p_tAIListforMDT := ?, + template TAIBasedMDT.iE_Extensions p_iE_Extensions := * + ) := { + tAIListforMDT := p_tAIListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIBasedMDT - template (present) SecurityResult mw_securityResult( - template (present) IntegrityProtectionResult p_integrityProtectionResult := ?, - template (present) ConfidentialityProtectionResult p_confidentialityProtectionResult := ?, - template SecurityResult.iE_Extensions p_iE_Extensions := * - ) := { - integrityProtectionResult := p_integrityProtectionResult, - confidentialityProtectionResult := p_confidentialityProtectionResult, - iE_Extensions := p_iE_Extensions - } // End of template mw_securityResult - - template (present) SensorMeasurementConfiguration mw_sensorMeasurementConfiguration( - template (present) SensorMeasConfig p_sensorMeasConfig := ?, - template SensorMeasConfigNameList p_sensorMeasConfigNameList := *, - template SensorMeasurementConfiguration.iE_Extensions p_iE_Extensions := * - ) := { - sensorMeasConfig := p_sensorMeasConfig, - sensorMeasConfigNameList := p_sensorMeasConfigNameList, - iE_Extensions := p_iE_Extensions - } // End of template mw_sensorMeasurementConfiguration - - template (present) SensorMeasConfigNameItem mw_sensorMeasConfigNameItem( - template (present) SensorNameConfig p_sensorNameConfig := ?, - template SensorMeasConfigNameItem.iE_Extensions p_iE_Extensions := * - ) := { - sensorNameConfig := p_sensorNameConfig, - iE_Extensions := p_iE_Extensions - } // End of template mw_sensorMeasConfigNameItem + template (present) TAIBasedQMC mw_tAIBasedQMC( + template (present) TAIListforQMC p_tAIListforQMC := ?, + template TAIBasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + tAIListforQMC := p_tAIListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_tAIBasedQMC - template (present) SensorMeasConfig mw_sensorMeasConfig(template (present) SensorMeasConfig p_value := setup) := p_value; + template (present) TABasedQMC mw_tABasedQMC( + template (present) TAListforQMC p_tAListforQMC := ?, + template TABasedQMC.iE_Extensions p_iE_Extensions := * + ) := { + tAListforQMC := p_tAListforQMC, + iE_Extensions := p_iE_Extensions + } // End of template mw_tABasedQMC - template (present) SensorNameConfig mw_sensorNameConfig_uncompensatedBarometricConfig( - template (present) SensorNameConfig.uncompensatedBarometricConfig p_uncompensatedBarometricConfig := true_ - ) := { - uncompensatedBarometricConfig := p_uncompensatedBarometricConfig - } // End of template mw_sensorNameConfig_uncompensatedBarometricConfig + template (present) TABasedMDT mw_tABasedMDT( + template (present) TAListforMDT p_tAListforMDT := ?, + template TABasedMDT.iE_Extensions p_iE_Extensions := * + ) := { + tAListforMDT := p_tAListforMDT, + iE_Extensions := p_iE_Extensions + } // End of template mw_tABasedMDT - template (present) SensorNameConfig mw_sensorNameConfig_ueSpeedConfig( - template (present) SensorNameConfig.ueSpeedConfig p_ueSpeedConfig := true_ - ) := { - ueSpeedConfig := p_ueSpeedConfig - } // End of template mw_sensorNameConfig_ueSpeedConfig + template (present) TimeToTrigger mw_timeToTrigger(template (present) TimeToTrigger p_value := ?) := p_value; - template (present) SensorNameConfig mw_sensorNameConfig_ueOrientationConfig( - template (present) SensorNameConfig.ueOrientationConfig p_ueOrientationConfig := true_ - ) := { - ueOrientationConfig := p_ueOrientationConfig - } // End of template mw_sensorNameConfig_ueOrientationConfig + template (present) TWIF_ID mw_tWIF_ID_tWIF_ID( + template (present) TWIF_ID.tWIF_ID p_tWIF_ID := ? + ) := { + tWIF_ID := p_tWIF_ID + } // End of template mw_tWIF_ID_tWIF_ID - template (present) SensorNameConfig mw_sensorNameConfig_choice_Extensions( - template (present) SensorNameConfig.choice_Extensions p_choice_Extensions - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_sensorNameConfig_choice_Extensions - - template (present) ServedGUAMIItem mw_servedGUAMIItem( - template (present) GUAMI p_gUAMI := ?, - template AMFName p_backupAMFName := *, - template ServedGUAMIItem.iE_Extensions p_iE_Extensions := * - ) := { - gUAMI := p_gUAMI, - backupAMFName := p_backupAMFName, - iE_Extensions := p_iE_Extensions - } // End of template mw_servedGUAMIItem - - template (present) ServedGUAMIItem.iE_Extensions mw_servedGUAMIItemw_id_GUAMIType( - template (present) GUAMIType p_gUAMIType := ? - ) := { - { - id := id_GUAMIType, - criticality := ignore, - extensionValue := { GUAMIType := p_gUAMIType } - } - } // End of template mw_servedGUAMIItemw_id_GUAMIType + template (present) TWIF_ID mw_tWIF_ID_choice_Extensions( + template (present) TWIF_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_tWIF_ID_choice_Extensions - template (present) ServiceAreaInformation_Item mw_serviceAreaInformation_Item( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template AllowedTACs p_allowedTACs := *, - template NotAllowedTACs p_notAllowedTACs := *, - template ServiceAreaInformation_Item.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - allowedTACs := p_allowedTACs, - notAllowedTACs := p_notAllowedTACs, - iE_Extensions := p_iE_Extensions - } // End of template mw_serviceAreaInformation_Item - - template (present) ServiceType mw_serviceType(template (present) ServiceType p_value := streaming) := p_value; - - template (present) SharedNGU_MulticastTNLInformation mw_sharedNGU_MulticastTNLInformation( - template (present) TransportLayerAddress p_iP_MulticastAddress := ?, - template (present) TransportLayerAddress p_iP_SourceAddress := ?, - template (present) GTP_TEID p_gTP_TEID := ?, - template SharedNGU_MulticastTNLInformation.iE_Extensions p_iE_Extensions := * - ) := { - iP_MulticastAddress := p_iP_MulticastAddress, - iP_SourceAddress := p_iP_SourceAddress, - gTP_TEID := p_gTP_TEID, - iE_Extensions := p_iE_Extensions - } // End of template mw_sharedNGU_MulticastTNLInformation - - template (present) SliceOverloadItem mw_sliceOverloadItem( - template (present) S_NSSAI p_s_NSSAI := ?, - template SliceOverloadItem.iE_Extensions p_iE_Extensions := * - ) := { - s_NSSAI := p_s_NSSAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_sliceOverloadItem - - template (present) SliceSupportItem mw_sliceSupportItem( - template (present) S_NSSAI p_s_NSSAI := ?, - template SliceSupportItem.iE_Extensions p_iE_Extensions := * - ) := { - s_NSSAI := p_s_NSSAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_sliceSupportItem + template (present) TSCAssistanceInformation mw_tSCAssistanceInformation( + template (present) Periodicity p_periodicity := ?, + template BurstArrivalTime p_burstArrivalTime := *, + template TSCAssistanceInformation.iE_Extensions p_iE_Extensions := * + ) := { + periodicity := p_periodicity, + burstArrivalTime := p_burstArrivalTime, + iE_Extensions := p_iE_Extensions + } // End of template mw_tSCAssistanceInformation - template (present) SliceSupportQMC_Item mw_sliceSupportQMC_Item( - template (present) S_NSSAI p_s_NSSAI := ?, - template SliceSupportQMC_Item.iE_Extensions p_iE_Extensions := * - ) := { - s_NSSAI := p_s_NSSAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_sliceSupportQMC_Item + template (present) TSCAssistanceInformation.iE_Extensions mw_tSCAssistanceInformation_id_SurvivalTime( + template (present) SurvivalTime p_survivalTime := ? + ) := { + { + id := id_SurvivalTime, + criticality := ignore, + extensionValue := { SurvivalTime := p_survivalTime } + } + } // End of template mw_tSCAssistanceInformation_id_SurvivalTime - template (present) SNPN_MobilityInformation mw_sNPN_MobilityInformation( - template (present) NID p_serving_NID := ?, - template SNPN_MobilityInformation.iE_Extensions p_iE_Extensions := * - ) := { - serving_NID := p_serving_NID, - iE_Extensions := p_iE_Extensions - } // End of template mw_sNPN_MobilityInformation - - template (present) S_NSSAI mw_s_NSSAI( - template (present) SST p_sST := ?, - template SD p_sD := *, - template S_NSSAI.iE_Extensions p_iE_Extensions := * - ) := { - sST := p_sST, - sD := p_sD, - iE_Extensions := p_iE_Extensions - } // End of template mw_s_NSSAI - - template (present) SONConfigurationTransfer mw_sONConfigurationTransfer( - template (present) TargetRANNodeID_SON p_targetRANNodeID_SON := ?, - template (present) SourceRANNodeID p_sourceRANNodeID := ?, - template (present) SONInformation p_sONInformation := ?, - template XnTNLConfigurationInfo p_xnTNLConfigurationInfo := *, - template SONConfigurationTransfer.iE_Extensions p_iE_Extensions := * + template TSCTrafficCharacteristics mw_tSCTrafficCharacteristics( + template TSCAssistanceInformation p_tSCAssistanceInformationDL := *, + template TSCAssistanceInformation p_tSCAssistanceInformationUL := *, + template TSCTrafficCharacteristics.iE_Extensions p_iE_Extensions := * + ) := { + tSCAssistanceInformationDL := p_tSCAssistanceInformationDL, + tSCAssistanceInformationUL := p_tSCAssistanceInformationUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_tSCTrafficCharacteristics + + template (present) UEAggregateMaximumBitRate mw_uEAggregateMaximumBitRate( + template (present) BitRate p_uEAggregateMaximumBitRateDL := ?, + template (present) BitRate p_uEAggregateMaximumBitRateUL := ?, + template UEAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := * + ) := { + uEAggregateMaximumBitRateDL := p_uEAggregateMaximumBitRateDL, + uEAggregateMaximumBitRateUL := p_uEAggregateMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEAggregateMaximumBitRate + + template (present) UEAppLayerMeasInfoItem mw_uEAppLayerMeasInfoItem( + template (present) UEAppLayerMeasConfigInfo p_uEAppLayerMeasConfigInfo := ?, + template UEAppLayerMeasInfoItem.iE_Extensions p_iE_Extensions := * ) := { - targetRANNodeID_SON := p_targetRANNodeID_SON, - sourceRANNodeID := p_sourceRANNodeID, - sONInformation := p_sONInformation, - xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, - // The above IE shall be present if the SON Information IE contains the SON Information Request IE set to “Xn TNL Configuration Info” - iE_Extensions := p_iE_Extensions - } // End of template mw_sONConfigurationTransfer - - template (present) SONInformation mw_sONInformation_sONInformationRequest( - template (present) SONInformationRequest p_sONInformationRequest := ? - ) := { - sONInformationRequest := p_sONInformationRequest - } // End of template mw_sONInformation_sONInformationRequest + uEAppLayerMeasConfigInfo := p_uEAppLayerMeasConfigInfo, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEAppLayerMeasInfoItem + + template (present) UEAppLayerMeasConfigInfo mw_uEAppLayerMeasConfigInfo( + template (present) QoEReference p_qoEReference := ?, + template (present) TransportLayerAddress p_measCollEntityIPAddress := ?, + template ServiceType p_serviceType, + template AreaScopeOfQMC p_areaScopeOfQMC := *, + template UEAppLayerMeasConfigInfo.qoEMeasurementStatus p_qoEMeasurementStatus := *, + template UEAppLayerMeasConfigInfo.containerForAppLayerMeasConfig p_containerForAppLayerMeasConfig := *, + template UEAppLayerMeasConfigInfo.measConfigAppLayerID p_measConfigAppLayerID := *, + template SliceSupportListQMC p_sliceSupportListQMC := *, + template MDT_AlignmentInfo p_mDT_AlignmentInfo := *, + template AvailableRANVisibleQoEMetrics p_availableRANVisibleQoEMetrics := *, + template UEAppLayerMeasConfigInfo.iE_Extensions p_iE_Extensions := * + ) := { + qoEReference := p_qoEReference, + serviceType := p_serviceType, + areaScopeOfQMC := p_areaScopeOfQMC, + measCollEntityIPAddress := p_measCollEntityIPAddress, + qoEMeasurementStatus := p_qoEMeasurementStatus, + containerForAppLayerMeasConfig := p_containerForAppLayerMeasConfig, + measConfigAppLayerID := p_measConfigAppLayerID, + sliceSupportListQMC := p_sliceSupportListQMC, + mDT_AlignmentInfo := p_mDT_AlignmentInfo, + availableRANVisibleQoEMetrics := p_availableRANVisibleQoEMetrics, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEAppLayerMeasConfigInfo + + template UE_associatedLogicalNG_connectionItem mw_uE_associatedLogicalNG_connectionItem( + template AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := *, + template RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := *, + template UE_associatedLogicalNG_connectionItem.iE_Extensions p_iE_Extensions := * + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, + rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_uE_associatedLogicalNG_connectionItem - template (present) SONInformation mw_sONInformation_sONInformationReply( - template (present) SONInformationReply p_sONInformationReply := ? - ) := { - sONInformationReply := p_sONInformationReply - } // End of template mw_sONInformation_sONInformationReply + template (present) UECapabilityInfoRequest mw_uECapabilityInfoRequest(template (present) UECapabilityInfoRequest p_value := requested) := p_value; - template (present) SONInformation mw_sONInformation_choice_Extensions( - template (present) SONInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_sONInformation_choice_Extensions - - template (present) SONInformation.choice_Extensions mw_sONInformatio_id_SONInformationReport( - template (present) SONInformationReport p_sONInformationReport := ? - ) := { - id := id_SONInformationReport, - criticality := ignore, - value_ := { SONInformationReport := p_sONInformationReport } - } // End of template mw_sONInformatio_id_SONInformationReport - - template SONInformationReply mw_sONInformationReply( - template XnTNLConfigurationInfo p_xnTNLConfigurationInfo := *, - template SONInformationReply.iE_Extensions p_iE_Extensions := * - ) := { - xnTNLConfigurationInfo := p_xnTNLConfigurationInfo, - iE_Extensions := p_iE_Extensions - } // End of template mw_sONInformationReply - - template (present) SONInformationReport mw_sONInformationReport_failureIndicationInformation( - template (present) FailureIndication p_failureIndicationInformation := ? - ) := { - failureIndicationInformation := p_failureIndicationInformation - } // End of template mw_sONInformationReport_failureIndicationInformation - - template (present) SONInformationReport mw_sONInformationReport_hOReportInformation( - template (present) HOReport p_hOReportInformation := ? - ) := { - hOReportInformation := p_hOReportInformation - } // End of template mw_sONInformationReport_hOReportInformation + template (present) UEContextRequest mw_uEContextRequest(template (present) UEContextRequest p_value := requested) := p_value; - template (present) SONInformationReport mw_sONInformationReport_choice_Extensions( - template (present) SONInformationReport.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_sONInformationReport_choice_Extensions - - template (present) SONInformationReport.choice_Extensions mw_sONInformationReport_id_SONInformationReport( - template (present) SuccessfulHandoverReportList p_successfulHandoverReportList := ? - ) := { - id := id_SONInformationReport, - criticality := ignore, - value_ := { SuccessfulHandoverReportList := p_successfulHandoverReportList } - } // End of template mw_sONInformationReport_id_SONInformationReport - - template (present) SuccessfulHandoverReport_Item mw_successfulHandoverReport_Item( - template (present) octetstring p_successfulHOReportContainer := ?, - template SuccessfulHandoverReport_Item.iE_Extensions p_iE_Extensions := * - ) := { - successfulHOReportContainer := p_successfulHOReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_successfulHandoverReport_Item - - template (present) SONInformationRequest mw_sONInformationRequest(template (present) SONInformationRequest p_value := ?) := p_value; - - template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer( - template (present) NGRAN_CGI p_targetCell_ID := ?, - template (present) RRCContainer p_rRCContainer := ?, - template (present) UEHistoryInformation p_uEHistoryInformation := ?, - template PDUSessionResourceInformationList p_pDUSessionResourceInformationList := *, - template E_RABInformationList p_e_RABInformationList := *, - template IndexToRFSP p_indexToRFSP := *, - template SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := * - ):= { - rRCContainer := p_rRCContainer, - pDUSessionResourceInformationList := p_pDUSessionResourceInformationList, - e_RABInformationList := p_e_RABInformationList, - targetCell_ID := p_targetCell_ID, - indexToRFSP := p_indexToRFSP, - uEHistoryInformation := p_uEHistoryInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer - - template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID( - template (present) SgNB_UE_X2AP_ID p_sgNB_UE_X2AP_ID := ? - ) := { - { - id := id_SgNB_UE_X2AP_ID, - criticality := ignore, - extensionValue := { SgNB_UE_X2AP_ID := p_sgNB_UE_X2AP_ID } - } - } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID - - template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE( - template (present) UEHistoryInformationFromTheUE p_uEHistoryInformationFromTheUE := ? - ) := { - { - id := id_UEHistoryInformationFromTheUE, - criticality := ignore, - extensionValue := { UEHistoryInformationFromTheUE := p_uEHistoryInformationFromTheUE } - } - } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE - - template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID( - template (present) SourceNodeID p_sourceNodeID := ? - ) := { - { - id := id_SourceNodeID, - criticality := ignore, - extensionValue := { SourceNodeID := p_sourceNodeID } - } - } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID + template UEContextResumeRequestTransfer mw_uEContextResumeRequestTransfer( + template QosFlowListWithCause p_qosFlowFailedToResumeList := *, + template UEContextResumeRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEContextResumeRequestTransfer - template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource( - template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ? - ) := { - { - id := id_UEContextReferenceAtSource, - criticality := ignore, - extensionValue := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } - } - } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource - - template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList( - template (present) MBS_ActiveSessionInformation_SourcetoTargetList p_mBS_ActiveSessionInformation_SourcetoTargetListD := ? - ) := { - { - id := id_MBS_ActiveSessionInformation_SourcetoTargetList, - criticality := ignore, - extensionValue := { MBS_ActiveSessionInformation_SourcetoTargetList := p_mBS_ActiveSessionInformation_SourcetoTargetListD } - } - } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList - - template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo( - template (present) QMCConfigInfo p_qMCConfigInfo := ? - ) := { - { - id := id_QMCConfigInfo, - criticality := ignore, - extensionValue := { QMCConfigInfo := p_qMCConfigInfo } - } - } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo - - template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList( - template (present) NGAPIESupportInformationRequestList p_nGAPIESupportInformationRequestList := ? - ) := { - { - id := id_NGAPIESupportInformationRequestList, - criticality := ignore, - extensionValue := { NGAPIESupportInformationRequestList := p_nGAPIESupportInformationRequestList } - } - } // End of template mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList - - template (present) SourceNodeID mw_sourceNodeID_sourceengNB_ID( - template (present) GlobalGNB_ID p_sourceengNB_ID := ? - ) := { - sourceengNB_ID := p_sourceengNB_ID - } // End of template mw_sourceNodeID_sourceengNB_ID - - template (present) SourceNodeID mw_sourceNodeID_choice_Extensions( - template (present) SourceNodeID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_sourceNodeID_choice_Extensions - - template (present) SourceOfUEActivityBehaviourInformation mw_sourceOfUEActivityBehaviourInformation(template (present) SourceOfUEActivityBehaviourInformation p_value := ?) := p_value; - - template (present) SourceRANNodeID mw_sourceRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template (present) TAI p_selectedTAI := ?, - template SourceRANNodeID.iE_Extensions p_iE_Extensions := * - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_sourceRANNodeID - - // This IE includes a transparent container from the source RAN node to the target RAN node. - // The octets of the OCTET STRING are encoded according to the specifications of the target system. - - template SourceToTarget_AMFInformationReroute mw_sourceToTarget_AMFInformationReroute( - template ConfiguredNSSAI p_configuredNSSAI := *, - template RejectedNSSAIinPLMN p_rejectedNSSAIinPLMN := *, - template RejectedNSSAIinTA p_rejectedNSSAIinTA := *, - template SourceToTarget_AMFInformationReroute.iE_Extensions p_iE_Extensions := * - ) := { - configuredNSSAI := p_configuredNSSAI, - rejectedNSSAIinPLMN := p_rejectedNSSAIinPLMN, - rejectedNSSAIinTA := p_rejectedNSSAIinTA, - iE_Extensions := p_iE_Extensions - } // End of template mw_sourceToTarget_AMFInformationReroute - - // This IE includes information from the source Core node to the target Core node for reroute information provide by NSSF. - // The octets of the OCTET STRING are encoded according to the specifications of the Core network. - - template (present) SRVCCOperationPossible mw_sRVCCOperationPossible(template (present) SRVCCOperationPossible p_value := ?) := p_value; - - template (present) SupportedTAItem mw_supportedTAItem( - template (present) TAC p_tAC := ?, - template (present) BroadcastPLMNList p_broadcastPLMNList := ?, - template SupportedTAItem.iE_Extensions p_iE_Extensions := * - ) := { - tAC := p_tAC, - broadcastPLMNList := p_broadcastPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template mw_supportedTAItem - - template (present) SupportedTAItem.iE_Extensions mw_supportedTAItemw_id_ConfiguredTACIndication( - template (present) ConfiguredTACIndication p_configuredTACIndication := ? - ) := { - { - id := id_ConfiguredTACIndication, - criticality := ignore, - extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } - } - } // End of template mw_supportedTAItemw_id_ConfiguredTACIndication + template UEContextResumeResponseTransfer mw_uEContextResumeResponseTransfer( + template QosFlowListWithCause p_qosFlowFailedToResumeList := *, + template UEContextResumeResponseTransfer.iE_Extensions p_iE_Extensions := * + ) := { + qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEContextResumeResponseTransfer - template (present) SupportedTAItem.iE_Extensions mw_supportedTAItemw_id_RAT_Information( - template (present) RAT_Information p_rAT_Information := ? + template UEContextSuspendRequestTransfer mw_uEContextSuspendRequestTransfer( + template SuspendIndicator p_suspendIndicator := *, + template UEContextSuspendRequestTransfer.iE_Extensions p_iE_Extensions := * + ) := { + suspendIndicator := p_suspendIndicator, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEContextSuspendRequestTransfer + + template UE_DifferentiationInfo mw_uE_DifferentiationInfo( + template UE_DifferentiationInfo.periodicCommunicationIndicator p_periodicCommunicationIndicator := *, + template UE_DifferentiationInfo.periodicTime p_periodicTime := *, + template UE_DifferentiationInfo.scheduledCommunicationTime p_scheduledCommunicationTime := *, + template UE_DifferentiationInfo.stationaryIndication p_stationaryIndication := *, + template UE_DifferentiationInfo.trafficProfile p_trafficProfile := *, + template UE_DifferentiationInfo.batteryIndication p_batteryIndication := *, + template UE_DifferentiationInfo.iE_Extensions p_iE_Extensions := * + ) := { + periodicCommunicationIndicator := p_periodicCommunicationIndicator, + periodicTime := p_periodicTime, + scheduledCommunicationTime := p_scheduledCommunicationTime, + stationaryIndication := p_stationaryIndication, + trafficProfile := p_trafficProfile, + batteryIndication := p_batteryIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_uE_DifferentiationInfo + + template (present) UEHistoryInformationFromTheUE mw_uEHistoryInformationFromTheUE_nR( + template (present) NRMobilityHistoryReport p_nR := ? ) := { - { - id := id_RAT_Information, - criticality := reject, - extensionValue := { RAT_Information := p_rAT_Information } - } - } // End of template mw_supportedTAItemw_id_RAT_Information - - template (present) SuspendIndicator mw_suspendIndicator(template (present) SuspendIndicator p_value := true_) := p_value; + nR := p_nR + } // End of template mw_uEHistoryInformationFromTheUE_nR - template (present) Suspend_Request_Indication mw_suspend_Request_Indication(template (present) Suspend_Request_Indication p_value := suspend_requested) := p_value; - - template (present) Suspend_Response_Indication mw_suspend_Response_Indication(template (present) Suspend_Response_Indication p_value := suspend_indicated) := p_value; + template (present) UEHistoryInformationFromTheUE mw_uEHistoryInformationFromTheUE_choice_Extensions( + template (present) UEHistoryInformationFromTheUE.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uEHistoryInformationFromTheUE_choice_Extensions - template (present) TAI mw_tAI( - template (present) PLMNIdentity p_pLMNIdentity := ?, - template (present) TAC p_tAC := ?, - template TAI.iE_Extensions p_iE_Extensions := * - ) := { - pLMNIdentity := p_pLMNIdentity, - tAC := p_tAC, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAI + template (present) UEIdentityIndexValue mw_uEIdentityIndexValue_indexLength10( + template (present) UEIdentityIndexValue.indexLength10 p_indexLength10 := ? + ) := { + indexLength10 := p_indexLength10 + } // End of template mw_uEIdentityIndexValue_indexLength10 - template (present) TAIBroadcastEUTRA_Item mw_tAIBroadcastEUTRA_Item( - template (present) TAI p_tAI := ?, - template (present) CompletedCellsInTAI_EUTRA p_completedCellsInTAI_EUTRA := ?, - template TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - tAI := p_tAI, - completedCellsInTAI_EUTRA := p_completedCellsInTAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAIBroadcastEUTRA_Item - - template (present) TAIBroadcastNR_Item mw_tAIBroadcastNR_Item( - template (present) TAI p_tAI := ?, - template (present) CompletedCellsInTAI_NR p_completedCellsInTAI_NR := ?, - template TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - tAI := p_tAI, - completedCellsInTAI_NR := p_completedCellsInTAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAIBroadcastNR_Item - - template (present) TAICancelledEUTRA_Item mw_tAICancelledEUTRA_Item( - template (present) TAI p_tAI := ?, - template (present) CancelledCellsInTAI_EUTRA p_cancelledCellsInTAI_EUTRA := ?, - template TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * - ) := { - tAI := p_tAI, - cancelledCellsInTAI_EUTRA := p_cancelledCellsInTAI_EUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAICancelledEUTRA_Item - - template (present) TAICancelledNR_Item mw_tAICancelledNR_Item( - template (present) TAI p_tAI := ?, - template (present) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR := ?, - template TAICancelledNR_Item.iE_Extensions p_iE_Extensions := * - ) := { - tAI := p_tAI, - cancelledCellsInTAI_NR := p_cancelledCellsInTAI_NR, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAICancelledNR_Item - - template (present) TAIListForInactiveItem mw_tAIListForInactiveItem( - template (present) TAI p_tAI := ?, - template TAIListForInactiveItem.iE_Extensions p_iE_Extensions := * - ) := { - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAIListForInactiveItem + template (present) UEIdentityIndexValue mw_uEIdentityIndexValue_choice_Extensions( + template (present) UEIdentityIndexValue.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uEIdentityIndexValue_choice_Extensions - template (present) TAIListForPagingItem mw_tAIListForPagingItem( - template (present) TAI p_tAI := ?, - template TAIListForPagingItem.iE_Extensions p_iE_Extensions := * + template (present) UE_NGAP_IDs mw_uE_NGAP_IDs_uE_NGAP_ID_pair( + template (present) UE_NGAP_ID_pair p_uE_NGAP_ID_pair := ? ) := { - tAI := p_tAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAIListForPagingItem - - template (present) TAINSAGSupportItem mw_tAINSAGSupportItem( - template (present) NSAG_ID p_nSAG_ID := ?, - template (present) ExtendedSliceSupportList p_nSAGSliceSupportList := ?, - template TAINSAGSupportItem.iE_Extensions p_iE_Extensions := * - ) := { - nSAG_ID := p_nSAG_ID, - nSAGSliceSupportList := p_nSAGSliceSupportList, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAINSAGSupportItem - - template (present) TargeteNB_ID mw_targeteNB_ID( - template (present) GlobalNgENB_ID p_globalENB_ID := ?, - template (present) EPS_TAI p_selected_EPS_TAI := ?, - template TargeteNB_ID.iE_Extensions p_iE_Extensions := * - ) := { - globalENB_ID := p_globalENB_ID, - selected_EPS_TAI := p_selected_EPS_TAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_targeteNB_ID - - template (present) TargetHomeENB_ID mw_targetHomeENB_ID( - template (present) PLMNIdentity p_pLMNidentity := ?, - template (present) TargetHomeENB_ID.homeENB_ID p_homeENB_ID := ?, - template (present) EPS_TAI p_selected_EPS_TAI := ?, - template TargetHomeENB_ID.iE_Extensions p_iE_Extensions := * - ) := { - pLMNidentity := p_pLMNidentity, - homeENB_ID := p_homeENB_ID, - selected_EPS_TAI := p_selected_EPS_TAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_targetHomeENB_ID - - template (present) TargetID mw_targetID_targetRANNodeID( - template (present) TargetRANNodeID p_targetRANNodeID := ? - ) := { - targetRANNodeID := p_targetRANNodeID - } // End of template mw_targetID_targetRANNodeID - - template (present) TargetID mw_targetID_targeteNB_ID( - template (present) TargeteNB_ID p_targeteNB_ID := ? - ) := { - targeteNB_ID := p_targeteNB_ID - } // End of template mw_targetID_targeteNB_ID - - template (present) TargetID mw_targetID_choice_Extensions( - template (present) TargetID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_targetID_choice_Extensions - - template (present) TargetID.choice_Extensions mw_targetID_id_TargetRNC_ID( - template (present) TargetRNC_ID p_targetRNC_ID := ? - ) := { - id := id_TargetRNC_ID, - criticality := reject, - value_ := { TargetRNC_ID := p_targetRNC_ID } - } // End of template mw_sONInformationReport_id_SONInformationReport - - template (present) TargetID.choice_Extensions mw_targetID_id_TargetHomeENB_ID( - template (present) TargetHomeENB_ID p_targetHomeENB_ID := ? - ) := { - id := id_TargetHomeENB_ID, - criticality := reject, - value_ := { TargetHomeENB_ID := p_targetHomeENB_ID } - } // End of template mw_sONInformationReport_id_TargetHomeENB_ID - - template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer( - template (present) RRCContainer p_rRCContainer := ?, - template TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions p_iE_Extensions := * - ) := { - rRCContainer := p_rRCContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer - - template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList( - template (present) DAPSResponseInfoList p_dAPSResponseInfoList := ? - ) := { - { - id := id_ConfiguredTACIndication, - criticality := ignore, - extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } - } - } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList - - template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability( - template (present) DirectForwardingPathAvailability p_directForwardingPathAvailability := ? - ) := { - { - id := id_DirectForwardingPathAvailability, - criticality := ignore, - extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } - } - } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability - - template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList( - template (present) MBS_ActiveSessionInformation_TargettoSourceList p_mBS_ActiveSessionInformation_TargettoSourceList := ? - ) := { - { - id := id_MBS_ActiveSessionInformation_TargettoSourceList, - criticality := ignore, - extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } - } - } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList - - template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList( - template (present) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList := ? - ) := { - { - id := id_NGAPIESupportInformationResponseList, - criticality := ignore, - extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } - } - } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList + uE_NGAP_ID_pair := p_uE_NGAP_ID_pair + } // End of template mw_uE_NGAP_IDs_uE_NGAP_ID_pair - template TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer( - template Cell_CAGInformation p_cell_CAGInformation := *, - template TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions p_iE_Extensions := * - ) := { - cell_CAGInformation := p_cell_CAGInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer - - template (present) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList( - template (present) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList := ? - ) := { - { - id := id_NGAPIESupportInformationResponseList, - criticality := ignore, - extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } - } - } // End of template mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList + template (present) UE_NGAP_IDs mw_uE_NGAP_IDs_aMF_UE_NGAP_ID( + template (present) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := ? + ) := { + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID + } // End of template mw_uE_NGAP_IDs_aMF_UE_NGAP_ID - template (present) TargetNSSAI_Item mw_targetNSSAI_Item( - template (present) S_NSSAI p_s_NSSAI := ?, - template TargetNSSAI_Item.iE_Extensions p_iE_Extensions := * - ) := { - s_NSSAI := p_s_NSSAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_targetNSSAI_Item - - template (present) TargetNSSAIInformation mw_targetNSSAIInformation( - template (present) TargetNSSAI p_targetNSSAI := ?, - template (present) IndexToRFSP p_indexToRFSP := ?, - template TargetNSSAIInformation.iE_Extensions p_iE_Extensions := * + template (present) UE_NGAP_IDs mw_uE_NGAP_IDs_choice_Extensions( + template (present) UE_NGAP_IDs.choice_Extensions p_choice_Extensions := ? ) := { - targetNSSAI := p_targetNSSAI, - indexToRFSP := p_indexToRFSP, - iE_Extensions := p_iE_Extensions - } // End of template mw_targetNSSAIInformation - - template (present) TargetRANNodeID mw_targetRANNodeID( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template (present) TAI p_selectedTAI := ?, - template TargetRANNodeID.iE_Extensions p_iE_Extensions := * - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_targetRANNodeID - - template (present) TargetRANNodeID_RIM mw_targetRANNodeID_RIM( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template (present) TAI p_selectedTAI := ?, - template TargetRANNodeID_RIM.iE_Extensions p_iE_Extensions := * - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_targetRANNodeID_RIM - - template (present) TargetRANNodeID_SON mw_targetRANNodeID_SON( - template (present) GlobalRANNodeID p_globalRANNodeID := ?, - template (present) TAI p_selectedTAI := ?, - template TargetRANNodeID_SON.iE_Extensions p_iE_Extensions := * - ) := { - globalRANNodeID := p_globalRANNodeID, - selectedTAI := p_selectedTAI, - iE_Extensions := p_iE_Extensions - } // End of template mw_targetRANNodeID_SON - - template (present) TargetRANNodeID_SON.iE_Extensions mw_targetRANNodeID_SON_id_NR_CGI( - template (present) NR_CGI p_nR_CGI := ? - ) := { - { - id := id_NR_CGI, - criticality := ignore, - extensionValue := { NR_CGI := p_nR_CGI } - } - } // End of template mw_targetRANNodeID_SON_id_NR_CGI + choice_Extensions := p_choice_Extensions + } // End of template mw_uE_NGAP_IDs_choice_Extensions - template (present) TargetRNC_ID mw_targetRNC_ID( - template (present) LAI p_lAI := ?, - template (present) RNC_ID p_rNC_ID := ?, - template ExtendedRNC_ID p_extendedRNC_ID := *, - template TargetRNC_ID.iE_Extensions p_iE_Extensions := * - ) := { - lAI := p_lAI, - rNC_ID := p_rNC_ID, - extendedRNC_ID := p_extendedRNC_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_targetRNC_ID - - template (present) TimerApproachForGUAMIRemoval mw_timerApproachForGUAMIRemoval(template (present) TimerApproachForGUAMIRemoval p_value := ?) := p_value; - - template (present) TimeSyncAssistanceInfo mw_timeSyncAssistanceInfo( - template (present) TimeSyncAssistanceInfo.timeDistributionIndication p_timeDistributionIndication := enabled, - template TimeSyncAssistanceInfo.uUTimeSyncErrorBudget p_uUTimeSyncErrorBudget := *, - template TimeSyncAssistanceInfo.iE_Extensions p_iE_Extensions := * - ) := { - timeDistributionIndication := p_timeDistributionIndication, - uUTimeSyncErrorBudget := p_uUTimeSyncErrorBudget, - // The above IE shall be present if the Time Distribution Indication IE is set to the value “enabled” - iE_Extensions := p_iE_Extensions - } // End of template mw_timeSyncAssistanceInfo - - template (present) TimeToWait mw_timeToWait(template (present) TimeToWait p_value := ?) := p_value; - - template (present) TNGF_ID mw_tNGF_ID_tNGF_ID( - template (present) TNGF_ID.tNGF_ID p_tNGF_ID := ? - ) := { - tNGF_ID := p_tNGF_ID - } // End of template mw_tNGF_ID_tNGF_ID - - template (present) TNGF_ID mw_tNGF_ID_choice_Extensions( - template (present) TNGF_ID.choice_Extensions p_choice_Extensions := ? + template (present) UE_NGAP_ID_pair mw_uE_NGAP_ID_pair( + template (present) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := ?, + template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ?, + template UE_NGAP_ID_pair.iE_Extensions p_iE_Extensions := * ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_tNGF_ID_choice_Extensions + aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, + rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, + iE_Extensions := p_iE_Extensions + } // End of template mw_uE_NGAP_ID_pair - template (present) TNLAssociationItem mw_tNLAssociationItem( - template (present) CPTransportLayerInformation p_tNLAssociationAddress := ?, - template (present) Cause p_cause := ?, - template TNLAssociationItem.iE_Extensions p_iE_Extensions := * - ) := { - tNLAssociationAddress := p_tNLAssociationAddress, - cause := p_cause, - iE_Extensions := p_iE_Extensions - } // End of template mw_tNLAssociationItem - - template (present) TNLAssociationUsage mw_TNLAssociationUsage(template (present) TNLAssociationUsage p_value := ?) := p_value; - - template (present) TooearlyIntersystemHO mw_tooearlyIntersystemHO( - template (present) EUTRA_CGI p_sourcecellID := ?, - template (present) NGRAN_CGI p_failurecellID := ?, - template UERLFReportContainer p_uERLFReportContainer := *, - template TooearlyIntersystemHO.iE_Extensions p_iE_Extensions := * - ) := { - sourcecellID := p_sourcecellID, - failurecellID := p_failurecellID, - uERLFReportContainer := p_uERLFReportContainer, - iE_Extensions := p_iE_Extensions - } // End of template mw_tooearlyIntersystemHO - - template (present) TraceActivation mw_traceActivation( - template (present) NGRANTraceID p_nGRANTraceID := ?, - template (present) InterfacesToTrace p_interfacesToTrace := ?, - template (present) TraceDepth p_traceDepth := ?, - template (present) TransportLayerAddress p_traceCollectionEntityIPAddress := ?, - template TraceActivation.iE_Extensions p_iE_Extensions := * - ) := { - nGRANTraceID := p_nGRANTraceID, - interfacesToTrace := p_interfacesToTrace, - traceDepth := p_traceDepth, - traceCollectionEntityIPAddress := p_traceCollectionEntityIPAddress, - iE_Extensions := p_iE_Extensions - } // End of template mw_traceActivation - - template (present) TraceActivation.iE_Extensions mw_traceActivation_id_MDTConfiguration( - template (present) MDT_Configuration p_mDT_Configuration := ? - ) := { - { - id := id_MDTConfiguration, - criticality := ignore, - extensionValue := { MDT_Configuration := p_mDT_Configuration } - } - } // End of template mw_traceActivation_id_MDTConfiguration + template (present) UEPagingIdentity mw_uEPagingIdentity_fiveG_S_TMSI( + template (present) FiveG_S_TMSI p_fiveG_S_TMSI := ? + ) := { + fiveG_S_TMSI := p_fiveG_S_TMSI + } // End of template mw_uEPagingIdentity_fiveG_S_TMSI - template (present) TraceActivation.iE_Extensions mw_traceActivation_id_TraceCollectionEntityURI( - template (present) URI_address p_uRI_address := ? - ) := { - { - id := id_TraceCollectionEntityURI, - criticality := ignore, - extensionValue := { URI_address := p_uRI_address } - } - } // End of template mw_traceActivation_id_TraceCollectionEntityURI - - template (present) TraceDepth mw_traceDepth(template (present) TraceDepth p_value := ?) := p_value; - - template (present) TypeOfError mw_typeOfError(template (present) TypeOfError p_value := ?) := p_value; - - template (present) TAIBasedMDT mw_tAIBasedMDT( - template (present) TAIListforMDT p_tAIListforMDT := ?, - template TAIBasedMDT.iE_Extensions p_iE_Extensions := * - ) := { - tAIListforMDT := p_tAIListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAIBasedMDT - - template (present) TAIBasedQMC mw_tAIBasedQMC( - template (present) TAIListforQMC p_tAIListforQMC := ?, - template TAIBasedQMC.iE_Extensions p_iE_Extensions := * - ) := { - tAIListforQMC := p_tAIListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template mw_tAIBasedQMC - - template (present) TABasedQMC mw_tABasedQMC( - template (present) TAListforQMC p_tAListforQMC := ?, - template TABasedQMC.iE_Extensions p_iE_Extensions := * - ) := { - tAListforQMC := p_tAListforQMC, - iE_Extensions := p_iE_Extensions - } // End of template mw_tABasedQMC + template (present) UEPagingIdentity mw_uEPagingIdentity_choice_Extensions( + template (present) UEPagingIdentity.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uEPagingIdentity_choice_Extensions - template (present) TABasedMDT mw_tABasedMDT( - template (present) TAListforMDT p_tAListforMDT := ?, - template TABasedMDT.iE_Extensions p_iE_Extensions := * - ) := { - tAListforMDT := p_tAListforMDT, - iE_Extensions := p_iE_Extensions - } // End of template mw_tABasedMDT + template (present) UEPresence mw_uEPresence(template (present) UEPresence p_value := in_) := p_value; + + template (present) UEPresenceInAreaOfInterestItem mw_uEPresenceInAreaOfInterestItem( + template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, + template (present) UEPresence p_uEPresence := ?, + template UEPresenceInAreaOfInterestItem.iE_Extensions p_iE_Extensions := * + ) := { + locationReportingReferenceID := p_locationReportingReferenceID, + uEPresence := p_uEPresence, + iE_Extensions := p_iE_Extensions + } // End of template mw_uEPresenceInAreaOfInterestItem + + template UERadioCapabilityForPaging mw_uERadioCapabilityForPaging( + template UERadioCapabilityForPagingOfNR p_uERadioCapabilityForPagingOfNR := *, + template UERadioCapabilityForPagingOfEUTRA p_uERadioCapabilityForPagingOfEUTRA := *, + template UERadioCapabilityForPaging.iE_Extensions p_iE_Extensions := * + ) := { + uERadioCapabilityForPagingOfNR := p_uERadioCapabilityForPagingOfNR, + uERadioCapabilityForPagingOfEUTRA := p_uERadioCapabilityForPagingOfEUTRA, + iE_Extensions := p_iE_Extensions + } // End of template mw_uERadioCapabilityForPaging - template (present) TimeToTrigger mw_timeToTrigger(template (present) TimeToTrigger p_value := ?) := p_value; + template (present) UERadioCapabilityForPaging.iE_Extensions mw_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT( + template (present) UERadioCapabilityForPagingOfNB_IoT p_uERadioCapabilityForPagingOfNB_IoT := ? + ) := { + { + id := id_UERadioCapabilityForPagingOfNB_IoT, + criticality := ignore, + extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } + } + } // End of template mw_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT - template (present) TWIF_ID mw_tWIF_ID_tWIF_ID( - template (present) TWIF_ID.tWIF_ID p_tWIF_ID := ? - ) := { - tWIF_ID := p_tWIF_ID - } // End of template mw_tWIF_ID_tWIF_ID + template (present) UERetentionInformation mw_uERetentionInformation(template (present) UERetentionInformation p_value := ues_retained):= p_value; - template (present) TWIF_ID mw_tWIF_ID_choice_Extensions( - template (present) TWIF_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_tWIF_ID_choice_Extensions + template (present) UERLFReportContainer mw_uERLFReportContainer_nR( + template (present) NRUERLFReportContainer p_nR := ? + ) := { + nR := p_nR + } // End of template mw_uERLFReportContainer_nR - template (present) TSCAssistanceInformation mw_tSCAssistanceInformation( - template (present) Periodicity p_periodicity := ?, - template BurstArrivalTime p_burstArrivalTime := *, - template TSCAssistanceInformation.iE_Extensions p_iE_Extensions := * + template (present) UERLFReportContainer mw_uERLFReportContainer_lTE( + template (present) LTEUERLFReportContainer p_lTE := ? ) := { - periodicity := p_periodicity, - burstArrivalTime := p_burstArrivalTime, - iE_Extensions := p_iE_Extensions - } // End of template mw_tSCAssistanceInformation - - template (present) TSCAssistanceInformation.iE_Extensions mw_tSCAssistanceInformation_id_SurvivalTime( - template (present) SurvivalTime p_survivalTime := ? - ) := { - { - id := id_SurvivalTime, - criticality := ignore, - extensionValue := { SurvivalTime := p_survivalTime } - } - } // End of template mw_tSCAssistanceInformation_id_SurvivalTime + lTE := p_lTE + } // End of template mw_uERLFReportContainer_lTE - template TSCTrafficCharacteristics mw_tSCTrafficCharacteristics( - template TSCAssistanceInformation p_tSCAssistanceInformationDL := *, - template TSCAssistanceInformation p_tSCAssistanceInformationUL := *, - template TSCTrafficCharacteristics.iE_Extensions p_iE_Extensions := * - ) := { - tSCAssistanceInformationDL := p_tSCAssistanceInformationDL, - tSCAssistanceInformationUL := p_tSCAssistanceInformationUL, - iE_Extensions := p_iE_Extensions - } // End of template mw_tSCTrafficCharacteristics - - template (present) UEAggregateMaximumBitRate mw_uEAggregateMaximumBitRate( - template (present) BitRate p_uEAggregateMaximumBitRateDL := ?, - template (present) BitRate p_uEAggregateMaximumBitRateUL := ?, - template UEAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := * - ) := { - uEAggregateMaximumBitRateDL := p_uEAggregateMaximumBitRateDL, - uEAggregateMaximumBitRateUL := p_uEAggregateMaximumBitRateUL, - iE_Extensions := p_iE_Extensions - } // End of template mw_uEAggregateMaximumBitRate - - template (present) UEAppLayerMeasInfoItem mw_uEAppLayerMeasInfoItem( - template (present) UEAppLayerMeasConfigInfo p_uEAppLayerMeasConfigInfo := ?, - template UEAppLayerMeasInfoItem.iE_Extensions p_iE_Extensions := * - ) := { - uEAppLayerMeasConfigInfo := p_uEAppLayerMeasConfigInfo, - iE_Extensions := p_iE_Extensions - } // End of template mw_uEAppLayerMeasInfoItem - - template (present) UEAppLayerMeasConfigInfo mw_uEAppLayerMeasConfigInfo( - template (present) QoEReference p_qoEReference := ?, - template (present) TransportLayerAddress p_measCollEntityIPAddress := ?, - template ServiceType p_serviceType, - template AreaScopeOfQMC p_areaScopeOfQMC := *, - template UEAppLayerMeasConfigInfo.qoEMeasurementStatus p_qoEMeasurementStatus := *, - template UEAppLayerMeasConfigInfo.containerForAppLayerMeasConfig p_containerForAppLayerMeasConfig := *, - template UEAppLayerMeasConfigInfo.measConfigAppLayerID p_measConfigAppLayerID := *, - template SliceSupportListQMC p_sliceSupportListQMC := *, - template MDT_AlignmentInfo p_mDT_AlignmentInfo := *, - template AvailableRANVisibleQoEMetrics p_availableRANVisibleQoEMetrics := *, - template UEAppLayerMeasConfigInfo.iE_Extensions p_iE_Extensions := * + template (present) UERLFReportContainer mw_uERLFReportContainer_choice_Extensions( + template (present) UERLFReportContainer.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_uERLFReportContainer_choice_Extensions + + template (present) UESecurityCapabilities mw_uESecurityCapabilities( + template (present) NRencryptionAlgorithms p_nRencryptionAlgorithms := ?, + template (present) NRintegrityProtectionAlgorithms p_nRintegrityProtectionAlgorithms := ?, + template (present) EUTRAencryptionAlgorithms p_eUTRAencryptionAlgorithms := ?, + template (present) EUTRAintegrityProtectionAlgorithms p_eUTRAintegrityProtectionAlgorithms := ?, + template UESecurityCapabilities.iE_Extensions p_iE_Extensions := * ) := { - qoEReference := p_qoEReference, - serviceType := p_serviceType, - areaScopeOfQMC := p_areaScopeOfQMC, - measCollEntityIPAddress := p_measCollEntityIPAddress, - qoEMeasurementStatus := p_qoEMeasurementStatus, - containerForAppLayerMeasConfig := p_containerForAppLayerMeasConfig, - measConfigAppLayerID := p_measConfigAppLayerID, - sliceSupportListQMC := p_sliceSupportListQMC, - mDT_AlignmentInfo := p_mDT_AlignmentInfo, - availableRANVisibleQoEMetrics := p_availableRANVisibleQoEMetrics, - iE_Extensions := p_iE_Extensions - } // End of template mw_uEAppLayerMeasConfigInfo - - template UE_associatedLogicalNG_connectionItem mw_uE_associatedLogicalNG_connectionItem( - template AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := *, - template RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := *, - template UE_associatedLogicalNG_connectionItem.iE_Extensions p_iE_Extensions := * - ) := { - aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, - rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_uE_associatedLogicalNG_connectionItem + nRencryptionAlgorithms := p_nRencryptionAlgorithms, + nRintegrityProtectionAlgorithms := p_nRintegrityProtectionAlgorithms, + eUTRAencryptionAlgorithms := p_eUTRAencryptionAlgorithms, + eUTRAintegrityProtectionAlgorithms := p_eUTRAintegrityProtectionAlgorithms, + iE_Extensions := p_iE_Extensions + } // End of template mw_uESecurityCapabilities + + template (present) UESliceMaximumBitRateItem mw_uESliceMaximumBitRateItem( + template (present) S_NSSAI p_s_NSSAI := ?, + template (present) BitRate p_uESliceMaximumBitRateDL := ?, + template (present) BitRate p_uESliceMaximumBitRateUL := ?, + template UESliceMaximumBitRateItem.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + uESliceMaximumBitRateDL := p_uESliceMaximumBitRateDL, + uESliceMaximumBitRateUL := p_uESliceMaximumBitRateUL, + iE_Extensions := p_iE_Extensions + } // End of template mw_uESliceMaximumBitRateItem + + template (present) UE_UP_CIoT_Support mw_uE_UP_CIoT_Support(template (present) UE_UP_CIoT_Support p_value := supported) := p_value; + + template (present) UL_CP_SecurityInformation mw_UL_CP_SecurityInformation( + template (present) UL_NAS_MAC p_ul_NAS_MAC := ?, + template (present) UL_NAS_Count p_ul_NAS_Count := ?, + template UL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * + ) := { + ul_NAS_MAC := p_ul_NAS_MAC, + ul_NAS_Count := p_ul_NAS_Count, + iE_Extensions := p_iE_Extensions + } // End of template + + template (present) UL_NGU_UP_TNLModifyItem mw_uL_NGU_UP_TNLModifyItem( + template (present) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := ?, + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template UL_NGU_UP_TNLModifyItem.iE_Extensions p_iE_Extensions := * + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_uL_NGU_UP_TNLModifyItem - template (present) UECapabilityInfoRequest mw_uECapabilityInfoRequest(template (present) UECapabilityInfoRequest p_value := requested) := p_value; + template (present) UL_NGU_UP_TNLModifyItem.iE_Extensions mw_uL_NGU_UP_TNLModifyItemw_id_RedundantUL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_uL_NGU_UP_TNLModifyItemw_id_RedundantUL_NGU_UP_TNLInformation - template (present) UEContextRequest mw_uEContextRequest(template (present) UEContextRequest p_value := requested) := p_value; + template (present) UL_NGU_UP_TNLModifyItem.iE_Extensions mw_uL_NGU_UP_TNLModifyItemw_id_RedundantDL_NGU_UP_TNLInformation( + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_uL_NGU_UP_TNLModifyItemw_id_RedundantDL_NGU_UP_TNLInformation - template UEContextResumeRequestTransfer mw_uEContextResumeRequestTransfer( - template QosFlowListWithCause p_qosFlowFailedToResumeList := *, - template UEContextResumeRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, - iE_Extensions := p_iE_Extensions - } // End of template mw_uEContextResumeRequestTransfer + template (present) UnavailableGUAMIItem mw_unavailableGUAMIItem( + template (present) GUAMI p_gUAMI := ?, + template TimerApproachForGUAMIRemoval p_timerApproachForGUAMIRemoval := *, + template AMFName p_backupAMFName := *, + template UnavailableGUAMIItem.iE_Extensions p_iE_Extensions := * + ) := { + gUAMI := p_gUAMI, + timerApproachForGUAMIRemoval := p_timerApproachForGUAMIRemoval, + backupAMFName := p_backupAMFName, + iE_Extensions := p_iE_Extensions + } // End of template mw_unavailableGUAMIItem - template UEContextResumeResponseTransfer mw_uEContextResumeResponseTransfer( - template QosFlowListWithCause p_qosFlowFailedToResumeList := *, - template UEContextResumeResponseTransfer.iE_Extensions p_iE_Extensions := * - ) := { - qosFlowFailedToResumeList := p_qosFlowFailedToResumeList, - iE_Extensions := p_iE_Extensions - } // End of template mw_uEContextResumeResponseTransfer + template (present) ULForwarding mw_uLForwarding(template (present) ULForwarding p_value := ul_forwarding_proposed) := p_value; - template UEContextSuspendRequestTransfer mw_uEContextSuspendRequestTransfer( - template SuspendIndicator p_suspendIndicator := *, - template UEContextSuspendRequestTransfer.iE_Extensions p_iE_Extensions := * - ) := { - suspendIndicator := p_suspendIndicator, - iE_Extensions := p_iE_Extensions - } // End of template mw_uEContextSuspendRequestTransfer - - template UE_DifferentiationInfo mw_uE_DifferentiationInfo( - template UE_DifferentiationInfo.periodicCommunicationIndicator p_periodicCommunicationIndicator := *, - template UE_DifferentiationInfo.periodicTime p_periodicTime := *, - template UE_DifferentiationInfo.scheduledCommunicationTime p_scheduledCommunicationTime := *, - template UE_DifferentiationInfo.stationaryIndication p_stationaryIndication := *, - template UE_DifferentiationInfo.trafficProfile p_trafficProfile := *, - template UE_DifferentiationInfo.batteryIndication p_batteryIndication := *, - template UE_DifferentiationInfo.iE_Extensions p_iE_Extensions := * - ) := { - periodicCommunicationIndicator := p_periodicCommunicationIndicator, - periodicTime := p_periodicTime, - scheduledCommunicationTime := p_scheduledCommunicationTime, - stationaryIndication := p_stationaryIndication, - trafficProfile := p_trafficProfile, - batteryIndication := p_batteryIndication, - iE_Extensions := p_iE_Extensions - } // End of template mw_uE_DifferentiationInfo - - template (present) UEHistoryInformationFromTheUE mw_uEHistoryInformationFromTheUE_nR( - template (present) NRMobilityHistoryReport p_nR := ? - ) := { - nR := p_nR - } // End of template mw_uEHistoryInformationFromTheUE_nR + template (present) UPTransportLayerInformation mw_uPTransportLayerInformation_gTPTunnel( + template (present) GTPTunnel p_gTPTunnel := ? + ) := { + gTPTunnel := p_gTPTunnel + } // End of template mw_uPTransportLayerInformation_gTPTunnel - template (present) UEHistoryInformationFromTheUE mw_uEHistoryInformationFromTheUE_choice_Extensions( - template (present) UEHistoryInformationFromTheUE.choice_Extensions p_choice_Extensions := ? + template (present) UPTransportLayerInformation mw_uPTransportLayerInformation_choice_Extensions( + template (present) UPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_uEHistoryInformationFromTheUE_choice_Extensions - - template (present) UEIdentityIndexValue mw_uEIdentityIndexValue_indexLength10( - template (present) UEIdentityIndexValue.indexLength10 p_indexLength10 := ? - ) := { - indexLength10 := p_indexLength10 - } // End of template mw_uEIdentityIndexValue_indexLength10 - - template (present) UEIdentityIndexValue mw_uEIdentityIndexValue_choice_Extensions( - template (present) UEIdentityIndexValue.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_uEIdentityIndexValue_choice_Extensions - - template (present) UE_NGAP_IDs mw_uE_NGAP_IDs_uE_NGAP_ID_pair( - template (present) UE_NGAP_ID_pair p_uE_NGAP_ID_pair := ? - ) := { - uE_NGAP_ID_pair := p_uE_NGAP_ID_pair - } // End of template mw_uE_NGAP_IDs_uE_NGAP_ID_pair - - template (present) UE_NGAP_IDs mw_uE_NGAP_IDs_aMF_UE_NGAP_ID( - template (present) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := ? - ) := { - aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID - } // End of template mw_uE_NGAP_IDs_aMF_UE_NGAP_ID - - template (present) UE_NGAP_IDs mw_uE_NGAP_IDs_choice_Extensions( - template (present) UE_NGAP_IDs.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_uE_NGAP_IDs_choice_Extensions - - template (present) UE_NGAP_ID_pair mw_uE_NGAP_ID_pair( - template (present) AMF_UE_NGAP_ID p_aMF_UE_NGAP_ID := ?, - template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ?, - template UE_NGAP_ID_pair.iE_Extensions p_iE_Extensions := * - ) := { - aMF_UE_NGAP_ID := p_aMF_UE_NGAP_ID, - rAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID, - iE_Extensions := p_iE_Extensions - } // End of template mw_uE_NGAP_ID_pair - - template (present) UEPagingIdentity mw_uEPagingIdentity_fiveG_S_TMSI( - template (present) FiveG_S_TMSI p_fiveG_S_TMSI := ? - ) := { - fiveG_S_TMSI := p_fiveG_S_TMSI - } // End of template mw_uEPagingIdentity_fiveG_S_TMSI + choice_Extensions := p_choice_Extensions + } // End of template mw_uPTransportLayerInformation_choice_Extensions - template (present) UEPagingIdentity mw_uEPagingIdentity_choice_Extensions( - template (present) UEPagingIdentity.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_uEPagingIdentity_choice_Extensions - - template (present) UEPresence mw_uEPresence(template (present) UEPresence p_value := in_) := p_value; + template (present) UPTransportLayerInformationItem mw_uPTransportLayerInformationItem( + template (present) UPTransportLayerInformation p_nGU_UP_TNLInformation := ?, + template UPTransportLayerInformationItem.iE_Extensions p_iE_Extensions := * + ) := { + nGU_UP_TNLInformation := p_nGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_uPTransportLayerInformationItem - template (present) UEPresenceInAreaOfInterestItem mw_uEPresenceInAreaOfInterestItem( - template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, - template (present) UEPresence p_uEPresence := ?, - template UEPresenceInAreaOfInterestItem.iE_Extensions p_iE_Extensions := * - ) := { - locationReportingReferenceID := p_locationReportingReferenceID, - uEPresence := p_uEPresence, - iE_Extensions := p_iE_Extensions - } // End of template mw_uEPresenceInAreaOfInterestItem - - template UERadioCapabilityForPaging mw_uERadioCapabilityForPaging( - template UERadioCapabilityForPagingOfNR p_uERadioCapabilityForPagingOfNR := *, - template UERadioCapabilityForPagingOfEUTRA p_uERadioCapabilityForPagingOfEUTRA := *, - template UERadioCapabilityForPaging.iE_Extensions p_iE_Extensions := * - ) := { - uERadioCapabilityForPagingOfNR := p_uERadioCapabilityForPagingOfNR, - uERadioCapabilityForPagingOfEUTRA := p_uERadioCapabilityForPagingOfEUTRA, - iE_Extensions := p_iE_Extensions - } // End of template mw_uERadioCapabilityForPaging - - template (present) UERadioCapabilityForPaging.iE_Extensions mw_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT( - template (present) UERadioCapabilityForPagingOfNB_IoT p_uERadioCapabilityForPagingOfNB_IoT := ? + template (present) UPTransportLayerInformationItem.iE_Extensions mw_uPTransportLayerInformationItemw_id_CommonNetworkInstance( + template (present) CommonNetworkInstance p_commonNetworkInstance := ? ) := { - { - id := id_UERadioCapabilityForPagingOfNB_IoT, - criticality := ignore, - extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } - } - } // End of template mw_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT + { + id := id_CommonNetworkInstance, + criticality := ignore, + extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } + } + } // End of template mw_uPTransportLayerInformationItemw_id_CommonNetworkInstance - template (present) UERetentionInformation mw_uERetentionInformation(template (present) UERetentionInformation p_value := ues_retained):= p_value; + template (present) UPTransportLayerInformationPairItem mw_uPTransportLayerInformationPairItem( + template (present) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := ?, + template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, + template UPTransportLayerInformationPairItem.iE_Extensions p_iE_Extensions := * + ) := { + uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, + dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_uPTransportLayerInformationPairItem - template (present) UERLFReportContainer mw_uERLFReportContainer_nR( - template (present) NRUERLFReportContainer p_nR := ? - ) := { - nR := p_nR - } // End of template mw_uERLFReportContainer_nR + template (present) UserLocationInformation mw_uPTransportLayerInformation_userLocationInformationEUTRA( + template (present) UserLocationInformationEUTRA p_userLocationInformationEUTRA := ? + ) := { + userLocationInformationEUTRA := p_userLocationInformationEUTRA + } // End of template mw_uPTransportLayerInformation_userLocationInformationEUTRA - template (present) UERLFReportContainer mw_uERLFReportContainer_lTE( - template (present) LTEUERLFReportContainer p_lTE := ? - ) := { - lTE := p_lTE - } // End of template mw_uERLFReportContainer_lTE + template (present) UserLocationInformation mw_uPTransportLayerInformation_userLocationInformationNR( + template (present) UserLocationInformationNR p_userLocationInformationNR := ? + ) := { + userLocationInformationNR := p_userLocationInformationNR + } // End of template mw_uPTransportLayerInformation_userLocationInformationNR - template (present) UERLFReportContainer mw_uERLFReportContainer_choice_Extensions( - template (present) UERLFReportContainer.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_uERLFReportContainer_choice_Extensions - - template (present) UESecurityCapabilities mw_uESecurityCapabilities( - template (present) NRencryptionAlgorithms p_nRencryptionAlgorithms := ?, - template (present) NRintegrityProtectionAlgorithms p_nRintegrityProtectionAlgorithms := ?, - template (present) EUTRAencryptionAlgorithms p_eUTRAencryptionAlgorithms := ?, - template (present) EUTRAintegrityProtectionAlgorithms p_eUTRAintegrityProtectionAlgorithms := ?, - template UESecurityCapabilities.iE_Extensions p_iE_Extensions := * - ) := { - nRencryptionAlgorithms := p_nRencryptionAlgorithms, - nRintegrityProtectionAlgorithms := p_nRintegrityProtectionAlgorithms, - eUTRAencryptionAlgorithms := p_eUTRAencryptionAlgorithms, - eUTRAintegrityProtectionAlgorithms := p_eUTRAintegrityProtectionAlgorithms, - iE_Extensions := p_iE_Extensions - } // End of template mw_uESecurityCapabilities - - template (present) UESliceMaximumBitRateItem mw_uESliceMaximumBitRateItem( - template (present) S_NSSAI p_s_NSSAI := ?, - template (present) BitRate p_uESliceMaximumBitRateDL := ?, - template (present) BitRate p_uESliceMaximumBitRateUL := ?, - template UESliceMaximumBitRateItem.iE_Extensions p_iE_Extensions := * - ) := { - s_NSSAI := p_s_NSSAI, - uESliceMaximumBitRateDL := p_uESliceMaximumBitRateDL, - uESliceMaximumBitRateUL := p_uESliceMaximumBitRateUL, - iE_Extensions := p_iE_Extensions - } // End of template mw_uESliceMaximumBitRateItem - - template (present) UE_UP_CIoT_Support mw_uE_UP_CIoT_Support(template (present) UE_UP_CIoT_Support p_value := supported) := p_value; - - template (present) UL_CP_SecurityInformation mw_UL_CP_SecurityInformation( - template (present) UL_NAS_MAC p_ul_NAS_MAC := ?, - template (present) UL_NAS_Count p_ul_NAS_Count := ?, - template UL_CP_SecurityInformation.iE_Extensions p_iE_Extensions := * - ) := { - ul_NAS_MAC := p_ul_NAS_MAC, - ul_NAS_Count := p_ul_NAS_Count, - iE_Extensions := p_iE_Extensions - } // End of template - - template (present) UL_NGU_UP_TNLModifyItem mw_uL_NGU_UP_TNLModifyItem( - template (present) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := ?, - template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, - template UL_NGU_UP_TNLModifyItem.iE_Extensions p_iE_Extensions := * - ) := { - uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_uL_NGU_UP_TNLModifyItem - - template (present) UL_NGU_UP_TNLModifyItem.iE_Extensions mw_uL_NGU_UP_TNLModifyItemw_id_RedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_uL_NGU_UP_TNLModifyItemw_id_RedundantUL_NGU_UP_TNLInformation - - template (present) UL_NGU_UP_TNLModifyItem.iE_Extensions mw_uL_NGU_UP_TNLModifyItemw_id_RedundantDL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantDL_NGU_UP_TNLInformation, - criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_uL_NGU_UP_TNLModifyItemw_id_RedundantDL_NGU_UP_TNLInformation + template (present) UserLocationInformation mw_uPTransportLayerInformation_userLocationInformationN3IWF( + template (present) UserLocationInformationN3IWF p_userLocationInformationN3IWF := ? + ) := { + userLocationInformationN3IWF := p_userLocationInformationN3IWF + } // End of template mw_uPTransportLayerInformation_userLocationInformationN3IWF - template (present) UnavailableGUAMIItem mw_unavailableGUAMIItem( - template (present) GUAMI p_gUAMI := ?, - template TimerApproachForGUAMIRemoval p_timerApproachForGUAMIRemoval := *, - template AMFName p_backupAMFName := *, - template UnavailableGUAMIItem.iE_Extensions p_iE_Extensions := * - ) := { - gUAMI := p_gUAMI, - timerApproachForGUAMIRemoval := p_timerApproachForGUAMIRemoval, - backupAMFName := p_backupAMFName, - iE_Extensions := p_iE_Extensions - } // End of template mw_unavailableGUAMIItem + template (present) UserLocationInformation mw_userLocationInformation_choice_Extensions( + template (present) UserLocationInformation.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_userLocationInformation_choice_Extensions - template (present) ULForwarding mw_uLForwarding(template (present) ULForwarding p_value := ul_forwarding_proposed) := p_value; + template (present) UserLocationInformation.choice_Extensions mw_userLocationInformation_id_UserLocationInformationTNGF( + template (present) UserLocationInformationTNGF p_userLocationInformationTNGF := ? + ) := { + id := id_UserLocationInformationTNGF, + criticality := ignore, + value_ := { UserLocationInformationTNGF := p_userLocationInformationTNGF } + } // End of template mw_userLocationInformation_id_UserLocationInformationTNGF - template (present) UPTransportLayerInformation mw_uPTransportLayerInformation_gTPTunnel( - template (present) GTPTunnel p_gTPTunnel := ? - ) := { - gTPTunnel := p_gTPTunnel - } // End of template mw_uPTransportLayerInformation_gTPTunnel + template (present) UserLocationInformation.choice_Extensions mw_userLocationInformation_id_UserLocationInformationTWIF( + template (present) UserLocationInformationTWIF p_userLocationInformationTWIF := ? + ) := { + id := id_UserLocationInformationTWIF, + criticality := ignore, + value_ := { UserLocationInformationTWIF := p_userLocationInformationTWIF } + } // End of template mw_userLocationInformation_id_UserLocationInformationTWIF - template (present) UPTransportLayerInformation mw_uPTransportLayerInformation_choice_Extensions( - template (present) UPTransportLayerInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_uPTransportLayerInformation_choice_Extensions + template (present) UserLocationInformation.choice_Extensions mw_userLocationInformation_id_UserLocationInformationW_AGF( + template (present) UserLocationInformationW_AGF p_userLocationInformationW_AGF := ? + ) := { + id := id_UserLocationInformationW_AGF, + criticality := ignore, + value_ := { UserLocationInformationW_AGF := p_userLocationInformationW_AGF } + } // End of template mw_userLocationInformation_id_UserLocationInformationW_AGF - template (present) UPTransportLayerInformationItem mw_uPTransportLayerInformationItem( - template (present) UPTransportLayerInformation p_nGU_UP_TNLInformation := ?, - template UPTransportLayerInformationItem.iE_Extensions p_iE_Extensions := * - ) := { - nGU_UP_TNLInformation := p_nGU_UP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_uPTransportLayerInformationItem - - template (present) UPTransportLayerInformationItem.iE_Extensions mw_uPTransportLayerInformationItemw_id_CommonNetworkInstance( - template (present) CommonNetworkInstance p_commonNetworkInstance := ? - ) := { - { - id := id_CommonNetworkInstance, - criticality := ignore, - extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template mw_uPTransportLayerInformationItemw_id_CommonNetworkInstance - - template (present) UPTransportLayerInformationPairItem mw_uPTransportLayerInformationPairItem( - template (present) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := ?, - template (present) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := ?, - template UPTransportLayerInformationPairItem.iE_Extensions p_iE_Extensions := * - ) := { - uL_NGU_UP_TNLInformation := p_uL_NGU_UP_TNLInformation, - dL_NGU_UP_TNLInformation := p_dL_NGU_UP_TNLInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_uPTransportLayerInformationPairItem - - template (present) UserLocationInformation mw_uPTransportLayerInformation_userLocationInformationEUTRA( - template (present) UserLocationInformationEUTRA p_userLocationInformationEUTRA := ? - ) := { - userLocationInformationEUTRA := p_userLocationInformationEUTRA - } // End of template mw_uPTransportLayerInformation_userLocationInformationEUTRA - - template (present) UserLocationInformation mw_uPTransportLayerInformation_userLocationInformationNR( - template (present) UserLocationInformationNR p_userLocationInformationNR := ? - ) := { - userLocationInformationNR := p_userLocationInformationNR - } // End of template mw_uPTransportLayerInformation_userLocationInformationNR + template (present) UserLocationInformationEUTRA mw_userLocationInformationEUTRA( + template (present) EUTRA_CGI p_eUTRA_CGI := ?, + template (present) TAI p_tAI := ?, + template TimeStamp p_timeStamp := *, + template UserLocationInformationEUTRA.iE_Extensions p_iE_Extensions := * + ) := { + eUTRA_CGI := p_eUTRA_CGI, + tAI := p_tAI, + timeStamp := p_timeStamp, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationEUTRA + + template (present) UserLocationInformationEUTRA.iE_Extensions mw_userLocationInformationEUTRA_id_PSCellInformation( + template (present) NGRAN_CGI p_nGRAN_CGI := ? + ) := { + { + id := id_PSCellInformation, + criticality := ignore, + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + } + } // End of template mw_userLocationInformationEUTRA_id_PSCellInformation - template (present) UserLocationInformation mw_uPTransportLayerInformation_userLocationInformationN3IWF( - template (present) UserLocationInformationN3IWF p_userLocationInformationN3IWF := ? - ) := { - userLocationInformationN3IWF := p_userLocationInformationN3IWF - } // End of template mw_uPTransportLayerInformation_userLocationInformationN3IWF + template (present) UserLocationInformationN3IWF mw_userLocationInformationN3IWF( + template (present) TransportLayerAddress p_iPAddress := ?, + template (present) PortNumber p_portNumber := ?, + template UserLocationInformationN3IWF.iE_Extensions p_iE_Extensions := * + ) := { + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationN3IWF - template (present) UserLocationInformation mw_userLocationInformation_choice_Extensions( - template (present) UserLocationInformation.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_userLocationInformation_choice_Extensions - - template (present) UserLocationInformation.choice_Extensions mw_userLocationInformation_id_UserLocationInformationTNGF( - template (present) UserLocationInformationTNGF p_userLocationInformationTNGF := ? - ) := { - id := id_UserLocationInformationTNGF, - criticality := ignore, - value_ := { UserLocationInformationTNGF := p_userLocationInformationTNGF } - } // End of template mw_userLocationInformation_id_UserLocationInformationTNGF - - template (present) UserLocationInformation.choice_Extensions mw_userLocationInformation_id_UserLocationInformationTWIF( - template (present) UserLocationInformationTWIF p_userLocationInformationTWIF := ? - ) := { - id := id_UserLocationInformationTWIF, - criticality := ignore, - value_ := { UserLocationInformationTWIF := p_userLocationInformationTWIF } - } // End of template mw_userLocationInformation_id_UserLocationInformationTWIF - - template (present) UserLocationInformation.choice_Extensions mw_userLocationInformation_id_UserLocationInformationW_AGF( - template (present) UserLocationInformationW_AGF p_userLocationInformationW_AGF := ? - ) := { - id := id_UserLocationInformationW_AGF, - criticality := ignore, - value_ := { UserLocationInformationW_AGF := p_userLocationInformationW_AGF } - } // End of template mw_userLocationInformation_id_UserLocationInformationW_AGF - - template (present) UserLocationInformationEUTRA mw_userLocationInformationEUTRA( - template (present) EUTRA_CGI p_eUTRA_CGI := ?, - template (present) TAI p_tAI := ?, - template TimeStamp p_timeStamp := *, - template UserLocationInformationEUTRA.iE_Extensions p_iE_Extensions := * + template (present) UserLocationInformationN3IWF.iE_Extensions mw_userLocationInformationN3IWF_id_TAI( + template (present) TAI p_tAI := ? + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template mw_userLocationInformationN3IWF_id_TAI + + template (present) UserLocationInformationTNGF mw_userLocationInformationTNGF( + template (present) TNAP_ID p_tNAP_ID := ?, + template (present) TransportLayerAddress p_iPAddress := ?, + template (present) PortNumber p_portNumber := ?, + template UserLocationInformationTNGF.iE_Extensions p_iE_Extensions := * ) := { - eUTRA_CGI := p_eUTRA_CGI, - tAI := p_tAI, - timeStamp := p_timeStamp, - iE_Extensions := p_iE_Extensions - } // End of template mw_userLocationInformationEUTRA - - template (present) UserLocationInformationEUTRA.iE_Extensions mw_userLocationInformationEUTRA_id_PSCellInformation( - template (present) NGRAN_CGI p_nGRAN_CGI := ? - ) := { - { - id := id_PSCellInformation, - criticality := ignore, - extensionValue := { NGRAN_CGI := p_nGRAN_CGI } - } - } // End of template mw_userLocationInformationEUTRA_id_PSCellInformation + tNAP_ID := p_tNAP_ID, + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationTNGF + + template (present) UserLocationInformationTNGF.iE_Extensions mw_userLocationInformationTNGF_id_TAI( + template (present) TAI p_tAI := ? + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template mw_userLocationInformationTNGF_id_TAI - template (present) UserLocationInformationN3IWF mw_userLocationInformationN3IWF( + template (present) UserLocationInformationTWIF mw_userLocationInformationTWIF( + template (present) TWAP_ID p_tWAP_ID := ?, template (present) TransportLayerAddress p_iPAddress := ?, template (present) PortNumber p_portNumber := ?, - template UserLocationInformationN3IWF.iE_Extensions p_iE_Extensions := * + template UserLocationInformationTWIF.iE_Extensions p_iE_Extensions := * ) := { - iPAddress := p_iPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template mw_userLocationInformationN3IWF - - template (present) UserLocationInformationN3IWF.iE_Extensions mw_userLocationInformationN3IWF_id_TAI( - template (present) TAI p_tAI := ? - ) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template mw_userLocationInformationN3IWF_id_TAI + tWAP_ID := p_tWAP_ID, + iPAddress := p_iPAddress, + portNumber := p_portNumber, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationTWIF + + template (present) UserLocationInformationTWIF.iE_Extensions mw_userLocationInformationTWIF_id_TAI( + template (present) TAI p_tAI := ? + ) := { + { + id := id_TAI, + criticality := ignore, + extensionValue := { TAI := p_tAI } + } + } // End of template mw_userLocationInformationTWIF_id_TAI - template (present) UserLocationInformationTNGF mw_userLocationInformationTNGF( - template (present) TNAP_ID p_tNAP_ID := ?, - template (present) TransportLayerAddress p_iPAddress := ?, - template (present) PortNumber p_portNumber := ?, - template UserLocationInformationTNGF.iE_Extensions p_iE_Extensions := * - ) := { - tNAP_ID := p_tNAP_ID, - iPAddress := p_iPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template mw_userLocationInformationTNGF - - template (present) UserLocationInformationTNGF.iE_Extensions mw_userLocationInformationTNGF_id_TAI( - template (present) TAI p_tAI := ? - ) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template mw_userLocationInformationTNGF_id_TAI + template (present) UserLocationInformationW_AGF mw_userLocationInformationW_AGF_globalLine_ID( + template (present) GlobalLine_ID p_globalLine_ID := ? + ) := { + globalLine_ID := p_globalLine_ID + } // End of template mw_userLocationInformationW_AGF_globalLine_ID - template (present) UserLocationInformationTWIF mw_userLocationInformationTWIF( - template (present) TWAP_ID p_tWAP_ID := ?, - template (present) TransportLayerAddress p_iPAddress := ?, - template (present) PortNumber p_portNumber := ?, - template UserLocationInformationTWIF.iE_Extensions p_iE_Extensions := * - ) := { - tWAP_ID := p_tWAP_ID, - iPAddress := p_iPAddress, - portNumber := p_portNumber, - iE_Extensions := p_iE_Extensions - } // End of template mw_userLocationInformationTWIF - - template (present) UserLocationInformationTWIF.iE_Extensions mw_userLocationInformationTWIF_id_TAI( - template (present) TAI p_tAI := ? - ) := { - { - id := id_TAI, - criticality := ignore, - extensionValue := { TAI := p_tAI } - } - } // End of template mw_userLocationInformationTWIF_id_TAI - - template (present) UserLocationInformationW_AGF mw_userLocationInformationW_AGF_globalLine_ID( - template (present) GlobalLine_ID p_globalLine_ID := ? - ) := { - globalLine_ID := p_globalLine_ID - } // End of template mw_userLocationInformationW_AGF_globalLine_ID - - template (present) UserLocationInformationW_AGF mw_userLocationInformationW_AGF_hFCNode_ID( - template (present) HFCNode_ID p_hFCNode_ID := ? - ) := { - hFCNode_ID := p_hFCNode_ID - } // End of template mw_userLocationInformationW_AGF_hFCNode_ID - - template (present) UserLocationInformationW_AGF mw_userLocationInformationW_AGF_choice_Extensions( - template (present) UserLocationInformationW_AGF.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_userLocationInformationW_AGF_choice_Extensions - - template (present) UserLocationInformationW_AGF.choice_Extensions mw_userLocationInformationW_AGF_id_GlobalCable_ID( - template (present) GlobalCable_ID p_globalCable_ID := ? - ) := { - id := id_GlobalCable_ID, - criticality := ignore, - value_ := { GlobalCable_ID := p_globalCable_ID } - } // End of template mw_userLocationInformationW_AGF_id_GlobalCable_ID + template (present) UserLocationInformationW_AGF mw_userLocationInformationW_AGF_hFCNode_ID( + template (present) HFCNode_ID p_hFCNode_ID := ? + ) := { + hFCNode_ID := p_hFCNode_ID + } // End of template mw_userLocationInformationW_AGF_hFCNode_ID - template (present) UserLocationInformationW_AGF.choice_Extensions mw_userLocationInformationW_AGF_id_HFCNode_ID_new( - template (present) HFCNode_ID_new p_hFCNode_ID_new := ? - ) := { - id := id_HFCNode_ID_new, - criticality := ignore, - value_ := { HFCNode_ID_new := p_hFCNode_ID_new } - } // End of template mw_userLocationInformationW_AGF_id_HFCNode_ID_new + template (present) UserLocationInformationW_AGF mw_userLocationInformationW_AGF_choice_Extensions( + template (present) UserLocationInformationW_AGF.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_userLocationInformationW_AGF_choice_Extensions - template (present) UserLocationInformationW_AGF.choice_Extensions mw_userLocationInformationW_AGF_id_GlobalCable_ID_new( - template (present) GlobalCable_ID_new p_globalCable_ID_new := ? + template (present) UserLocationInformationW_AGF.choice_Extensions mw_userLocationInformationW_AGF_id_GlobalCable_ID( + template (present) GlobalCable_ID p_globalCable_ID := ? ) := { - id := id_GlobalCable_ID_new, - criticality := ignore, - value_ := { GlobalCable_ID_new := p_globalCable_ID_new } - } // End of template mw_userLocationInformationW_AGF_id_GlobalCable_ID_new - - template (present) UserLocationInformationNR mw_userLocationInformationNR( - template (present) NR_CGI p_nR_CGI := ?, - template (present) TAI p_tAI := ?, - template TimeStamp p_timeStamp := *, - template UserLocationInformationNR.iE_Extensions p_iE_Extensions := * - ) := { - nR_CGI := p_nR_CGI, - tAI := p_tAI, - timeStamp := p_timeStamp, - iE_Extensions := p_iE_Extensions - } // End of template mw_userLocationInformationNR - - template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_PSCellInformation( - template (present) NGRAN_CGI p_nGRAN_CGI := ? - ) := { - { - id := id_PSCellInformation, - criticality := ignore, - extensionValue := { NGRAN_CGI := p_nGRAN_CGI } - } - } // End of template mw_userLocationInformationNR_id_PSCellInformation - - template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_NID( - template (present) NID p_nID := ? - ) := { - { - id := id_NID, - criticality := reject, - extensionValue := { NID := p_nID } - } - } // End of template mw_userLocationInformationNR_id_NID + id := id_GlobalCable_ID, + criticality := ignore, + value_ := { GlobalCable_ID := p_globalCable_ID } + } // End of template mw_userLocationInformationW_AGF_id_GlobalCable_ID - template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_NRNTNTAIInformation( - template (present) NRNTNTAIInformation p_nRNTNTAIInformation := ? - ) := { - { - id := id_NRNTNTAIInformation, - criticality := ignore, - extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } - } - } // End of template mw_userLocationInformationNR_id_NRNTNTAIInformation + template (present) UserLocationInformationW_AGF.choice_Extensions mw_userLocationInformationW_AGF_id_HFCNode_ID_new( + template (present) HFCNode_ID_new p_hFCNode_ID_new := ? + ) := { + id := id_HFCNode_ID_new, + criticality := ignore, + value_ := { HFCNode_ID_new := p_hFCNode_ID_new } + } // End of template mw_userLocationInformationW_AGF_id_HFCNode_ID_new - template (present) UserPlaneSecurityInformation mw_userPlaneSecurityInformation( - template (present) SecurityResult p_securityResult := ?, - template (present) SecurityIndication p_securityIndication := ?, - template UserPlaneSecurityInformation.iE_Extensions p_iE_Extensions := * - ) := { - securityResult := p_securityResult, - securityIndication := p_securityIndication, - iE_Extensions := p_iE_Extensions - } // End of template mw_userPlaneSecurityInformation - - template (present) VolumeTimedReport_Item mw_volumeTimedReport_Item( - template (present) VolumeTimedReport_Item.startTimeStamp p_startTimeStamp := ?, - template (present) VolumeTimedReport_Item.endTimeStamp p_endTimeStamp := ?, - template (present) VolumeTimedReport_Item.usageCountUL p_usageCountUL := ?, - template (present) VolumeTimedReport_Item.usageCountDL p_usageCountDL := ?, - template VolumeTimedReport_Item.iE_Extensions p_iE_Extensions := * - ) := { - startTimeStamp := p_startTimeStamp, - endTimeStamp := p_endTimeStamp, - usageCountUL := p_usageCountUL, - usageCountDL := p_usageCountDL, - iE_Extensions := p_iE_Extensions - } // End of template mw_volumeTimedReport_Item - - template (present) W_AGF_ID mw_w_AGF_ID_w_AGF_ID( - template (present) W_AGF_ID.w_AGF_ID p_w_AGF_ID := ? - ) := { - w_AGF_ID := p_w_AGF_ID - } // End of template mw_w_AGF_ID_w_AGF_ID - - template (present) W_AGF_ID mw_w_AGF_ID_choice_Extensions( - template (present) W_AGF_ID.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_w_AGF_ID_choice_Extensions - - template (present) WarningAreaList mw_warningAreaList_eUTRA_CGIListForWarning( - template (present) EUTRA_CGIListForWarning p_eUTRA_CGIListForWarning := ? - ) := { - eUTRA_CGIListForWarning := p_eUTRA_CGIListForWarning - } // End of template mw_warningAreaList_eUTRA_CGIListForWarning + template (present) UserLocationInformationW_AGF.choice_Extensions mw_userLocationInformationW_AGF_id_GlobalCable_ID_new( + template (present) GlobalCable_ID_new p_globalCable_ID_new := ? + ) := { + id := id_GlobalCable_ID_new, + criticality := ignore, + value_ := { GlobalCable_ID_new := p_globalCable_ID_new } + } // End of template mw_userLocationInformationW_AGF_id_GlobalCable_ID_new + + template (present) UserLocationInformationNR mw_userLocationInformationNR( + template (present) NR_CGI p_nR_CGI := ?, + template (present) TAI p_tAI := ?, + template TimeStamp p_timeStamp := *, + template UserLocationInformationNR.iE_Extensions p_iE_Extensions := * + ) := { + nR_CGI := p_nR_CGI, + tAI := p_tAI, + timeStamp := p_timeStamp, + iE_Extensions := p_iE_Extensions + } // End of template mw_userLocationInformationNR + + template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_PSCellInformation( + template (present) NGRAN_CGI p_nGRAN_CGI := ? + ) := { + { + id := id_PSCellInformation, + criticality := ignore, + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + } + } // End of template mw_userLocationInformationNR_id_PSCellInformation - template (present) WarningAreaList mw_warningAreaList_nR_CGIListForWarning( - template (present) NR_CGIListForWarning p_nR_CGIListForWarning := ? - ) := { - nR_CGIListForWarning := p_nR_CGIListForWarning - } // End of template mw_warningAreaList_nR_CGIListForWarning + template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_NID( + template (present) NID p_nID := ? + ) := { + { + id := id_NID, + criticality := reject, + extensionValue := { NID := p_nID } + } + } // End of template mw_userLocationInformationNR_id_NID + + template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_NRNTNTAIInformation( + template (present) NRNTNTAIInformation p_nRNTNTAIInformation := ? + ) := { + { + id := id_NRNTNTAIInformation, + criticality := ignore, + extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } + } + } // End of template mw_userLocationInformationNR_id_NRNTNTAIInformation - template (present) WarningAreaList mw_warningAreaList_tAIListForWarning( - template (present) TAIListForWarning p_tAIListForWarning := ? + template (present) UserPlaneSecurityInformation mw_userPlaneSecurityInformation( + template (present) SecurityResult p_securityResult := ?, + template (present) SecurityIndication p_securityIndication := ?, + template UserPlaneSecurityInformation.iE_Extensions p_iE_Extensions := * + ) := { + securityResult := p_securityResult, + securityIndication := p_securityIndication, + iE_Extensions := p_iE_Extensions + } // End of template mw_userPlaneSecurityInformation + + template (present) VolumeTimedReport_Item mw_volumeTimedReport_Item( + template (present) VolumeTimedReport_Item.startTimeStamp p_startTimeStamp := ?, + template (present) VolumeTimedReport_Item.endTimeStamp p_endTimeStamp := ?, + template (present) VolumeTimedReport_Item.usageCountUL p_usageCountUL := ?, + template (present) VolumeTimedReport_Item.usageCountDL p_usageCountDL := ?, + template VolumeTimedReport_Item.iE_Extensions p_iE_Extensions := * ) := { - tAIListForWarning := p_tAIListForWarning - } // End of template mw_warningAreaList_tAIListForWarning + startTimeStamp := p_startTimeStamp, + endTimeStamp := p_endTimeStamp, + usageCountUL := p_usageCountUL, + usageCountDL := p_usageCountDL, + iE_Extensions := p_iE_Extensions + } // End of template mw_volumeTimedReport_Item + + template (present) W_AGF_ID mw_w_AGF_ID_w_AGF_ID( + template (present) W_AGF_ID.w_AGF_ID p_w_AGF_ID := ? + ) := { + w_AGF_ID := p_w_AGF_ID + } // End of template mw_w_AGF_ID_w_AGF_ID - template (present) WarningAreaList mw_warningAreaList_emergencyAreaIDList( - template (present) EmergencyAreaIDList p_emergencyAreaIDList := ? - ) := { - emergencyAreaIDList := p_emergencyAreaIDList - } // End of template mw_warningAreaList_emergencyAreaIDList + template (present) W_AGF_ID mw_w_AGF_ID_choice_Extensions( + template (present) W_AGF_ID.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_w_AGF_ID_choice_Extensions - template (present) WarningAreaList mw_warningAreaList_choice_Extensions( - template (present) WarningAreaList.choice_Extensions p_choice_Extensions := ? - ) := { - choice_Extensions := p_choice_Extensions - } // End of template mw_warningAreaList_choice_Extensions - - template (present) WLANMeasurementConfiguration mw_wLANMeasurementConfiguration( - template (present) WLANMeasConfig p_wlanMeasConfig := ?, - template WLANMeasConfigNameList p_wlanMeasConfigNameList := *, - template WLANMeasurementConfiguration.wlan_rssi p_wlan_rssi := *, - template WLANMeasurementConfiguration.wlan_rtt p_wlan_rtt := *, - template WLANMeasurementConfiguration.iE_Extensions p_iE_Extensions := * + template (present) WarningAreaList mw_warningAreaList_eUTRA_CGIListForWarning( + template (present) EUTRA_CGIListForWarning p_eUTRA_CGIListForWarning := ? ) := { - wlanMeasConfig := p_wlanMeasConfig, - wlanMeasConfigNameList := p_wlanMeasConfigNameList, - wlan_rssi := p_wlan_rssi, - wlan_rtt := p_wlan_rtt, - iE_Extensions := p_iE_Extensions - } // End of template mw_wLANMeasurementConfiguration - - template (present) WLANMeasConfigNameItem mw_wLANMeasConfigNameItem( - template (present) WLANName p_wLANName := ?, - template WLANMeasConfigNameItem.iE_Extensions p_iE_Extensions := * - ) := { - wLANName := p_wLANName, - iE_Extensions := p_iE_Extensions - } // End of template mw_wLANMeasConfigNameItem + eUTRA_CGIListForWarning := p_eUTRA_CGIListForWarning + } // End of template mw_warningAreaList_eUTRA_CGIListForWarning - template (present) WLANMeasConfig mw_wLANMeasConfig(template (present) WLANMeasConfig p_value := ?) := p_value; + template (present) WarningAreaList mw_warningAreaList_nR_CGIListForWarning( + template (present) NR_CGIListForWarning p_nR_CGIListForWarning := ? + ) := { + nR_CGIListForWarning := p_nR_CGIListForWarning + } // End of template mw_warningAreaList_nR_CGIListForWarning - template (present) WUS_Assistance_Information mw_wUS_Assistance_Information( - template (present) PagingProbabilityInformation p_pagingProbabilityInformation := ?, - template WUS_Assistance_Information.iE_Extensions p_iE_Extensions := * + template (present) WarningAreaList mw_warningAreaList_tAIListForWarning( + template (present) TAIListForWarning p_tAIListForWarning := ? ) := { - pagingProbabilityInformation := p_pagingProbabilityInformation, - iE_Extensions := p_iE_Extensions - } // End of template mw_wUS_Assistance_Information - - template (present) XnExtTLA_Item mw_xnExtTLA_Item( - template TransportLayerAddress p_iPsecTLA := *, - template XnGTP_TLAs p_gTP_TLAs := *, - template XnExtTLA_Item.iE_Extensions p_iE_Extensions := * - ) := { - iPsecTLA := p_iPsecTLA, - gTP_TLAs := p_gTP_TLAs, - iE_Extensions := p_iE_Extensions - } // End of template mw_xnExtTLA_Item - - template (present) XnExtTLA_Item.iE_Extensions mw_xnExtTLA_Item_id_SCTP_TLAs( - template (present) SCTP_TLAs p_sCTP_TLAs := ? - ) := { - { - id := id_SCTP_TLAs, - criticality := ignore, - extensionValue := { SCTP_TLAs := p_sCTP_TLAs } - } - } // End of template mw_xnExtTLA_Item_id_SCTP_TLAs + tAIListForWarning := p_tAIListForWarning + } // End of template mw_warningAreaList_tAIListForWarning - template (present) XnTNLConfigurationInfo mw_xnTNLConfigurationInfo( - template (present) XnTLAs p_xnTransportLayerAddresses := ?, - template XnExtTLAs p_xnExtendedTransportLayerAddresses := *, - template XnTNLConfigurationInfo.iE_Extensions p_iE_Extensions := * - ) := { - xnTransportLayerAddresses := p_xnTransportLayerAddresses, - xnExtendedTransportLayerAddresses := p_xnExtendedTransportLayerAddresses, - iE_Extensions := p_iE_Extensions - } // End of template mw_xnTNLConfigurationInfo + template (present) WarningAreaList mw_warningAreaList_emergencyAreaIDList( + template (present) EmergencyAreaIDList p_emergencyAreaIDList := ? + ) := { + emergencyAreaIDList := p_emergencyAreaIDList + } // End of template mw_warningAreaList_emergencyAreaIDList + + template (present) WarningAreaList mw_warningAreaList_choice_Extensions( + template (present) WarningAreaList.choice_Extensions p_choice_Extensions := ? + ) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_warningAreaList_choice_Extensions + + template (present) WLANMeasurementConfiguration mw_wLANMeasurementConfiguration( + template (present) WLANMeasConfig p_wlanMeasConfig := ?, + template WLANMeasConfigNameList p_wlanMeasConfigNameList := *, + template WLANMeasurementConfiguration.wlan_rssi p_wlan_rssi := *, + template WLANMeasurementConfiguration.wlan_rtt p_wlan_rtt := *, + template WLANMeasurementConfiguration.iE_Extensions p_iE_Extensions := * + ) := { + wlanMeasConfig := p_wlanMeasConfig, + wlanMeasConfigNameList := p_wlanMeasConfigNameList, + wlan_rssi := p_wlan_rssi, + wlan_rtt := p_wlan_rtt, + iE_Extensions := p_iE_Extensions + } // End of template mw_wLANMeasurementConfiguration + + template (present) WLANMeasConfigNameItem mw_wLANMeasConfigNameItem( + template (present) WLANName p_wLANName := ?, + template WLANMeasConfigNameItem.iE_Extensions p_iE_Extensions := * + ) := { + wLANName := p_wLANName, + iE_Extensions := p_iE_Extensions + } // End of template mw_wLANMeasConfigNameItem + + template (present) WLANMeasConfig mw_wLANMeasConfig(template (present) WLANMeasConfig p_value := ?) := p_value; + + template (present) WUS_Assistance_Information mw_wUS_Assistance_Information( + template (present) PagingProbabilityInformation p_pagingProbabilityInformation := ?, + template WUS_Assistance_Information.iE_Extensions p_iE_Extensions := * + ) := { + pagingProbabilityInformation := p_pagingProbabilityInformation, + iE_Extensions := p_iE_Extensions + } // End of template mw_wUS_Assistance_Information + + template (present) XnExtTLA_Item mw_xnExtTLA_Item( + template TransportLayerAddress p_iPsecTLA := *, + template XnGTP_TLAs p_gTP_TLAs := *, + template XnExtTLA_Item.iE_Extensions p_iE_Extensions := * + ) := { + iPsecTLA := p_iPsecTLA, + gTP_TLAs := p_gTP_TLAs, + iE_Extensions := p_iE_Extensions + } // End of template mw_xnExtTLA_Item + + template (present) XnExtTLA_Item.iE_Extensions mw_xnExtTLA_Item_id_SCTP_TLAs( + template (present) SCTP_TLAs p_sCTP_TLAs := ? + ) := { + { + id := id_SCTP_TLAs, + criticality := ignore, + extensionValue := { SCTP_TLAs := p_sCTP_TLAs } + } + } // End of template mw_xnExtTLA_Item_id_SCTP_TLAs + + template (present) XnTNLConfigurationInfo mw_xnTNLConfigurationInfo( + template (present) XnTLAs p_xnTransportLayerAddresses := ?, + template XnExtTLAs p_xnExtendedTransportLayerAddresses := *, + template XnTNLConfigurationInfo.iE_Extensions p_iE_Extensions := * + ) := { + xnTransportLayerAddresses := p_xnTransportLayerAddresses, + xnExtendedTransportLayerAddresses := p_xnExtendedTransportLayerAddresses, + iE_Extensions := p_iE_Extensions + } // End of template mw_xnTNLConfigurationInfo - } // End of group receive + } // End of group receive - //} // End of group Information_elements + } // End of group Information_elements - } // End of group g_NGAP + // FIXME Parenthesis issue } // End of group g_NGAP group Functions_For_Templates{ } // End of group functionsForTemplates -- GitLab From 158037cd634274f75d4f9cec11ba24b0131d9695 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 21 Mar 2024 12:24:57 +0100 Subject: [PATCH 171/365] Terminate group Paging --- titan-test-system-framework | 2 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 73 +++++++++++++++++++++++-- 2 files changed, 69 insertions(+), 6 deletions(-) diff --git a/titan-test-system-framework b/titan-test-system-framework index 7d4fc33..6959b8b 160000 --- a/titan-test-system-framework +++ b/titan-test-system-framework @@ -1 +1 @@ -Subproject commit 7d4fc3323e831d6d07fcf8cd2cf2c5303384a6c6 +Subproject commit 6959b8be419f3755de6f888e24bfdc8de07383a7 diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index f9c7c5f..992133b 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3792,15 +3792,78 @@ module LibNGAP_Templates { } // End of group UE_Mobility_Management_Messages - //9.2.4 + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.4 Paging Messages + */ group Paging_Messages{ + //9.2.4.1 - group PAGING{ + group PAGING { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.4.1 PAGING + */ + template (value) InitiatingMessage m_n2_Paging( + in template (value) UEPagingIdentity p_uEPagingIdentity, + in template (value) TAIListForPaging p_tAIListForPaging + ) := { + procedureCode := id_Paging, + criticality := reject, + value_ := { + Paging := { + protocolIEs := { + { + id := id_UEPagingIdentity, + criticality := ignore, + value_ := { UEPagingIdentity := p_uEPagingIdentity } + }, + { + id := id_TAIListForPaging, + criticality := ignore, + value_ := { TAIListForPaging := p_tAIListForPaging } + } + } + } + } + } // End of template m_n2_Paging + + } // End of group Send + group Receive { - } - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.4.1 PAGING + */ + template (present) InitiatingMessage mw_n2_Paging( + template (present) UEPagingIdentity p_uEPagingIdentity := ?, + template (present) TAIListForPaging p_tAIListForPaging := ? + ) := { + procedureCode := id_Paging, + criticality := reject, + value_ := { + Paging := { + protocolIEs := { + { + id := id_UEPagingIdentity, + criticality := ignore, + value_ := { UEPagingIdentity := p_uEPagingIdentity } + }, + { + id := id_TAIListForPaging, + criticality := ignore, + value_ := { TAIListForPaging := p_tAIListForPaging } + } + } + } + } + } // End of template mw_n2_Paging + + } // End of group Receive + + } // End of group PAGING + } // End of group Paging_Messages group NAS_Transport_Messages{ -- GitLab From 540de26aa4f24359ed37ad3414cafcc8dce4bca1 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 21 Mar 2024 13:43:51 +0100 Subject: [PATCH 172/365] update tc function with template --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 494d82c..be53f97 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -66,7 +66,7 @@ module NGAP_TCFunctions { group PDU_Session_Resource_Setup{ /** - * @desc Testcase function for TC_NGAP_gNB_or_aMF_functionName_01 + * @desc Testcase function for TC_NGAP_gNB_PDU_01 */ function f_TC_NGAP_GNB_PDU_01() runs on aMFNGAPComponent { // Local variables @@ -110,7 +110,23 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceSetupResponse( -, -, - ? //TODO replace with template + //? //TODO replace with template + { + (mw_pDUSessionResourceSetupItemSURes( + ?,//template (present) PDUSessionID p_pDUSessionID, + //mw_pDUSessionResourceSetupResponseTransfer( + // ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + // *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + // *,//template SecurityResult p_securityResult := *, + // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + // ), In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer + ?,//template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) + + ) + } ) ) ); @@ -123,7 +139,7 @@ module NGAP_TCFunctions { f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - } // End of function f_TC_NGAP_gNB_or_aMF_functionName_01 + } // End of function f_TC_NGAP_gNB_PDU_01 -- GitLab From 187aa447fa0cdaa731fbe71b806df5b98d56a9c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Thu, 21 Mar 2024 13:46:42 +0100 Subject: [PATCH 173/365] add refrences, sub-fields and error corrections --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 198 +++++++++++++++++-------- 1 file changed, 135 insertions(+), 63 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index a212a41..3667622 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -315,12 +315,27 @@ Package TP_AMF { PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST + ;, PDU_Session_Resource_Setup_Request_Transfer ; ;, - Allowed_NSSAI, - UE_Security_Capabilities, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, Security_Key ; to the GNB entity @@ -343,7 +358,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE." Reference - "ETSI TS 138 413 [1], Clauses 8.3.3" + "ETSI TS 138 413 [1], Clauses 8.3.3 and 9.2.2.5" Config Id CFG_AMF_01 @@ -427,7 +442,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2" + "ETSI TS 138 413 [1], Clauses 8.3.4.2 and 9.2.2.7" Config Id CFG_AMF_01 @@ -469,7 +484,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a CONNECTION ESTABLISHMENT INDICATION that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.3.6.2" + "ETSI TS 138 413 [1], Clauses 8.3.6.2 and 9.2.2.11" Config Id CFG_AMF_01 @@ -510,7 +525,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a AMF CP RELOCATION INDICATION that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.3.7.2" + "ETSI TS 138 413 [1], Clauses 8.3.7.2 and 9.2.2.12" Config Id CFG_AMF_01 @@ -553,9 +568,9 @@ Package TP_AMF { Test objective "Verify that the IUT can successfully request UE information from the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.3.9.2", - "ETSI TS 138 413 [1], Clauses 8.3.10.2" - + "ETSI TS 138 413 [1], Clauses 8.3.9.2, 8.3.10.2, 9.2.2.14 and 9.2.2.15" + + Config Id CFG_AMF_01 PICS Selection PICS_A2/2 and PICS_A4/2_9 and PICS_A4/2_10 @@ -606,7 +621,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2" + "ETSI TS 138 413 [1], Clauses 8.3.11.2, 9.2.2.16 and 9.2.2.17" Config Id CFG_AMF_01 @@ -626,7 +641,8 @@ Package TP_AMF { PDU_Session_Resource_Suspend_List containing PDU_Session_Resource_Suspend_Item containing PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Suspend_Request_Transfer + UE_Context_Suspend_Request_Transfer containing + Suspend_Indicator; ; ; ; @@ -651,7 +667,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.3" + "ETSI TS 138 413 [1], Clauses 8.3.11.3, 9.2.2.16 and 9.2.2.18" Config Id CFG_AMF_01 @@ -672,7 +688,8 @@ Package TP_AMF { PDU_Session_Resource_Suspend_List containing PDU_Session_Resource_Suspend_Item containing PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Suspend_Request_Transfer + UE_Context_Suspend_Request_Transfer containing + Suspend_Indicator; ; ; ; @@ -703,7 +720,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.12.3" + "ETSI TS 138 413 [1], Clauses 8.3.12.3, 9.2.2.19 and 9.2.2.20" Config Id CFG_AMF_01 @@ -724,7 +741,8 @@ Package TP_AMF { PDU_Session_Resource_Resume_List containing PDU_Session_Resource_Resume_Item containing PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Resume_Request_Transfer + UE_Context_Suspend_Request_Transfer containing + Suspend_Indicator; ; ; ; @@ -737,7 +755,8 @@ Package TP_AMF { PDU_Session_Resource_Resume_List containing PDU_Session_Resource_Resume_Item containing PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Resume_Response_Transfer + UE_Context_Suspend_Request_Transfer containing + Suspend_Indicator; ; ; ; @@ -812,7 +831,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER COMMAND with successfully handover." Reference - "ETSI TS 138 413 [1], Clauses 8.4.1.2" + "ETSI TS 138 413 [1], Clauses 8.4.1.2, 9.2.3.1 and 9.2.3.2" Config Id CFG_AMF_01 @@ -828,7 +847,7 @@ Package TP_AMF { the IUT entity receives a HANDOVER_REQUIRED containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Handover_Typ, + Handover_Typ, Cause, Target_ID, PDU_Session_Resource_List containing @@ -866,7 +885,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER PREPARATION FAILURE because the UE is not longer available." Reference - "ETSI TS 138 413 [1], Clauses 8.4.1.3" + "ETSI TS 138 413 [1], Clauses 8.4.1.3, 9.2.3.1 and 9.2.3.3" Config Id CFG_AMF_01 @@ -922,7 +941,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully sends a HANDOVER REQUEST message that contains mandatory IEs to the GNB." Reference - "ETSI TS 138 413 [1], Clauses 8.4.2.2" + "ETSI TS 138 413 [1], Clauses 8.4.2.2 and 9.2.3.4" Config Id CFG_AMF_01 @@ -944,15 +963,29 @@ Package TP_AMF { Handover_Typ, Cause, UE_Aggregate_Maximum_Bit_Rate, - UE_Security_Capabilitues + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, PDU_Session_Setup_Resource_List containing PDU_Session_Setup_Resource_Item containing PDU_SessionId, - S_NSSAI, + S_NSSAI containing + SST;, Handover_Request_Transfer ; ;, - Allowed_NSSAI, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, Source_to_Target_Transparent_Container, GUAMI containing PLMN_Identity, @@ -980,7 +1013,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and answers with PATH SWITCH REQUEST ACKNOWLEDGE to acknowledge the path switch." Reference - "ETSI TS 138 413 [1], Clauses 8.4.4.2" + "ETSI TS 138 413 [1], Clauses 8.4.4.2, 9.2.3.8 and 9.2.3.9" Config Id CFG_AMF_01 @@ -998,7 +1031,12 @@ Package TP_AMF { RAN_UE_NGAP_ID, Source_AMF_UE_NGAP_ID, User_Location_Information, - UE_Security_Capabilities, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, PDU_Session_Resources_to_be_Switched_in_Downlink_List containing PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing PDU_SessionId, @@ -1012,7 +1050,10 @@ Package TP_AMF { the IUT entity sends a PATH_SWITCH_REQUEST_ACKNOWLEDGE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Security_Context + Security_Context containing + Next_Hop_Chaining_Count, + Next_Hop_NH + ;, PDU_Session_Resource_Switched_List containing PDU_Session_Resource_Switched_Item containing PDU_SessionId, @@ -1033,7 +1074,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with same ID and answers with PATH SWITCH REQUEST FAILURE." Reference - "ETSI TS 138 413 [1], Clauses 8.4.4.4" + "ETSI TS 138 413 [1], Clauses 8.4.4.4, 9.2.3.8 and 9.2.3.10" Config Id CFG_AMF_01 @@ -1051,7 +1092,12 @@ Package TP_AMF { RAN_UE_NGAP_ID, Source_AMF_UE_NGAP_ID, User_Location_Information, - UE_Security_Capabilities, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, PDU_Session_Resources_to_be_Switched_in_Downlink_List containing PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing PDU_SessionId, @@ -1072,10 +1118,12 @@ Package TP_AMF { PDU_Session_Resource_Released_List containing PDU_Session_Resource_Released_Item containing PDU_SessionId, - Path_Switch_Request_Unsuccessful_Transfer + Path_Switch_Request_Unsuccessful_Transfer containing + Cause ; ; ; + ; to the GNB entity } } @@ -1095,7 +1143,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a HANDOVER CANCEL message that contains mandatory IEs and answers with HANDOVER CANCEL ACKNOWLEDGE to confirm that the ongoing handover was cancelled." Reference - "ETSI TS 138 413 [1], Clauses 8.4.5.2" + "ETSI TS 138 413 [1], Clauses 8.4.5.2, 9.2.3.11 and 9.2.3.12" Config Id CFG_AMF_01 @@ -1179,7 +1227,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully sends a DOWNLINK RAN STATUS TRANSFER message that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.4.6.2" + "ETSI TS 138 413 [1], Clauses 8.4.6.2 and 9.2.3.14" Config Id CFG_AMF_01 @@ -1220,7 +1268,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully sends a DOWNLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.4.9.2" + "ETSI TS 138 413 [1], Clauses 8.4.10.2 and 9.2.3.17" Config Id CFG_AMF_01 @@ -1266,7 +1314,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.5.1.2 and 9.2.4.1" - + Config Id CFG_AMF_01 PICS Selection PICS_A2/2 and PICS_A4/4_1 @@ -1284,7 +1332,11 @@ Package TP_AMF { the IUT entity sends a PAGING containing UE_Paging_Identity containing 5G_S_TMSI containing - 5G_S_TMSI + 5G_S_TMSI containing + AMF_Set_ID, + AMF_Pointer, + 5G_TMSI + ; ; ; ; @@ -1310,7 +1362,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send an DOWNLINK NAS TRANSPORT message to carry NAS information over the NG interface." Reference - "ETSI TS 138 413 [1], Clauses 8.6.2.2 and 9.2.5.2", + "ETSI TS 138 413 [1], Clauses 8.6.2.2, 9.2.5.1 and 9.2.5.2", "ETSI TS 123 502 [6], Clause 4.24.1" Config Id CFG_AMF_01 @@ -1329,7 +1381,7 @@ Package TP_AMF { RAN_UE_NGAP_ID, NAS_PDU, User_Location_Information, - RRC_Establishmnet_Cause + RRC_Establishmnet_Cause ; from the GNB entity } @@ -1382,6 +1434,7 @@ Package TP_AMF { then { the IUT entity sends an REROUTE_NAS_REQUEST containing RAN_UE_NGAP_ID, + NGAP_Message, // Contains the INITIAL UE MESSAGE NAS_PDU, AMF_Set_ID ; @@ -1717,7 +1770,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." Reference - "ETSI TS 138 413 [1], Clauses 8.7.2.2" + "ETSI TS 138 413 [1], Clauses 8.7.2.2, 9.2.6.4 and 9.2.6.5" Config Id CFG_AMF_01 @@ -1738,7 +1791,11 @@ Package TP_AMF { Broadcast_PLMN_List containing Broadcast_PLMN_Item containing PLMN_Identity, - TAI_Slice_Support_List + TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; ; ; ; @@ -1761,7 +1818,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." Reference - "ETSI TS 138 413 [1], Clauses 8.7.2.2" + "ETSI TS 138 413 [1], Clauses 8.7.2.2 and 9.2.6.4 and 9.2.6.6" Config Id CFG_AMF_01 @@ -1781,7 +1838,11 @@ Package TP_AMF { Broadcast_PLMN_List containing Broadcast_PLMN_Item containing PLMN_Identity, - TAI_Slice_Support_List + TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; ; ; ; @@ -1811,7 +1872,7 @@ Package TP_AMF { Test objective "Verify that the IUT can send a AMF CONFIGURATION UPDATE message to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.7.3.2" + "ETSI TS 138 413 [1], Clauses 8.7.3.2 and 9.2.6.7" Config Id CFG_AMF_01 @@ -1843,20 +1904,13 @@ Package TP_AMF { PLMN_Support_List containing PLMN_Support_Item containing PLMN_Identity, - Slice_Support_List - ; - ;, - AMF_TNL_Association_to_Add_List containing - AMF_TNL_Association_to_Add_item containing - AMF_TNL_Association_Address, - TNL_Address_Weight_Factor - ; - ;, - AMF_TNL_Association_to_Update_List containing - AMF_TNL_Association_to_Update_Item containing - AMF_TNL_Association_Address + Slice_Support_List containing + S_NSSAI containing + SST + ; + ; ; - ; + ; ; to the GNB entity } @@ -1879,7 +1933,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." Reference - "ETSI TS 138 413 [1], Clauses 8.7.4.2.2" + "ETSI TS 138 413 [1], Clauses 8.7.4.2.2, 9.2.6.11 and 9.2.6.12" Config Id CFG_AMF_01 @@ -1924,7 +1978,7 @@ Package TP_AMF { Test objective "Verify that the AMF can send a ERROR INDICATION to the GNB when a error occurs." Reference - "ETSI TS 138 413 [1], Clauses 8.7.5.2" + "ETSI TS 138 413 [1], Clauses 8.7.5.2 and 9.2.6.13" Config Id CFG_AMF_01 @@ -1950,12 +2004,26 @@ Package TP_AMF { PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST;, PDU_Session_Resource_Setup_Request_Transfer ; ;, - Allowed_NSSAI, - UE_Security_Capabilities, // Implementation Node: use a not supported security key + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, + UE_Security_Capabilities containing // Implementation Node: use a not supported security key + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, Security_Key ; from the GNB entity @@ -1980,7 +2048,7 @@ Package TP_AMF { Test objective "Verify that the AMF can send a AMF STATUS INDICATION to the GNB when a error occurs." Reference - "ETSI TS 138 413 [1], Clauses 8.7.6.2" + "ETSI TS 138 413 [1], Clauses 8.7.6.2 and 9.2.6.10" Config Id CFG_AMF_01 @@ -2044,7 +2112,11 @@ Package TP_AMF { the IUT entity sends a OVERLOAD_START containing Overload_Start_NSSAI_List containing Overload_Start_NSSAI_Item containing - Slice_Overload_List + Slice_Overload_List containing + S_NSSAI containing + SST + ; + ; ; ; ; @@ -2066,7 +2138,7 @@ Package TP_AMF { Test objective "Verify that the AMF can send a OVERLOAD STOP to the GNB." Reference - "ETSI TS 138 413 [1], Clauses 8.7.8.2" + "ETSI TS 138 413 [1], Clauses 8.7.8.2 and 9.2.6.15" Config Id CFG_AMF_01 -- GitLab From 4fe9c1fd49463a790e8fc5edcee2567746052ed9 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 21 Mar 2024 13:49:16 +0100 Subject: [PATCH 174/365] add TP for intra-system handover --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 130 ++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index f02b9e1..4cc55cd 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1877,6 +1877,136 @@ Package TP_GNB { } // end TP TP_NGAP_GNB_MMP_11 + // The TP cover intra-system handover (e.g. from 4G to 5G). + Test Purpose { + + TP Id TP_NGAP_GNB_MMP_12 + + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message for an intra-system handover and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/3_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a HANDOVER_REQUEST containing + AMF_UE_NGAP_ID, + Handover_Typ, + Cause, + UE_Aggregate_Maximum_Bit_Rate, + UE_Security_Capabilities, + Security_Context, + PDU_Session_Resource_Setup_List containing + PDU_Session_Resource_Setup_Item containing + PDU_SessionId indicating value PX_PDU_ID, + S_NSSAI, + Handover_Request_Transfer containing + DL_NG_U_UP_TNL_Information containing + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + PDU_Session_Type, + QoS_Flow_Setup_Request_List containing + QoS_Flow_Setup_Request_Item containing + QoS_Flow_Identifier, + QoS_Flow_Level_QoS_Parameter + ; + ;, + Direct_Forwarding_Path_Availability indicating value "direct path available" + ; + ; + ;, + Allowed_NSSAI, + Source_to_Target_Transparent_Container containing + RRC_Container, + PDU_Session_Resource_Information_List containing + PDU_Session_Resource_Information_Item containing + PDU_Session_ID indicating value PX_PDU_ID, + QoS_Flow_Information_List containing + QoS_Flow_Information_Item containing + QoS_Flow_Identifier, + DL_Forwarding indicating value "DL forwarding proposed", + UL_Forwarding indicating value "UL forwarding proposed" + ; + ; + ; + ;, + Target_Cell_ID containing + CHOICE_NG_RAN_CGI containing // other choice E-UTRA could be another case + NR containing + NR_CGI + ; + ; + ;, + UE_History_Information containing + CHOICE_UE_History_Information_from_UE containing // other choice E-UTRA could be another case + NR containing + NR_Mobility_History_Report + ; + ; + ; + ;, + GUAMI + ; + from the AMF entity + } + then { + the IUT entity sends a HANDOVER_REQUEST_ACKNOWLEDGE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Admitted_List containing + PDU_Session_Resource_Admitted_Item containing + PDU_SessionId indicating value PX_PDU_ID, + Handover_Request_Acknowledge_Transfer containing + DL_NG_U_UP_TNL_Information containing + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + DL_Forwarding_UP_TNL_Information containing // because of DL_Forwarding indicating value "DL forwarding proposed" + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ;, + QoS_Flow_Setup_Response_List containing + QoS_Flow_Item_with_Data_Forwarding containing + QoS_Flow_Identifier + ; + ;, + UL_Forwarding_UP_TNL_Information containing // because of UL_Forwarding indicating value "UL forwarding proposed" + CHOICE_UP_Transport_Layer_Information containing + GTP_tunnel containing + Endpoint_IP_Address + ; + ; + ; + ; + ;, + Target_to_Source_Transparent_Container + ; + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_MMP_12 + } // End Group "Handover Resource Allocation" Group "Handover Notification" -- GitLab From a19e7d6cb6e9fbbf9dd13a1c316e15165e9702ef Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 21 Mar 2024 13:57:37 +0100 Subject: [PATCH 175/365] fix copy paste error --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 2 +- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 3667622..44336b1 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -2189,7 +2189,7 @@ Package TP_AMF { the IUT entity indicate the initiation "of a Downlink RAN Configuration Transfer" } then { - the IUT entity sends an NAS_NON_DELIVERY_INDICATION containing + the IUT entity sends an DOWNLINK_RAN_CONFIGURATION_TRANSFER containing SON_Configuration_Transfer containing Target_RAN_Node_ID containing Global_RAN_Node_ID, diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 4cc55cd..f0a96aa 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1736,10 +1736,6 @@ Package TP_GNB { ;, UE_Radio_Capability_ID, Extended_Connected_Time - - - - ; from the AMF entity } -- GitLab From 631e06bbdd8b89eb931a7aca8beb9442773eb3bd Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 21 Mar 2024 14:09:04 +0100 Subject: [PATCH 176/365] Terminate group NAS_Transport_Messages --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 8 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 637 +++++++++++++++++++----- 2 files changed, 506 insertions(+), 139 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 8cccb7e..ce7b1a4 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -226,10 +226,15 @@ module LibNGAP_Pixits { modulepar CauseProtocol PX_xxx_2 := unspecified; - modulepar CauseNas PX_xxx_3 := unspecified; + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseNas PX_CAUSE_NAS_NON_DELIVERY_INDICATION := unspecified; modulepar CauseMisc PX_xxx_4 := unspecified; + /** * @desc To indicate the RRC state of the UE * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.92 RRC State @@ -335,7 +340,6 @@ module LibNGAP_Pixits { - /** * @desc eNB Identity. * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 992133b..f04f2aa 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3797,7 +3797,6 @@ module LibNGAP_Templates { */ group Paging_Messages{ - //9.2.4.1 group PAGING { group Send { @@ -3866,163 +3865,527 @@ module LibNGAP_Templates { } // End of group Paging_Messages - group NAS_Transport_Messages{ + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5 NAS Transport Messages + */ + group NAS_Transport_Messages { - group INITIAL_UE_MESSAGE{ + group INITIAL_UE_MESSAGE { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.1 INITIAL UE MESSAGE + */ template (value) InitiatingMessage m_n2_initialUeMessage( - in template (value) RAN_UE_NGAP_ID p_RANUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) NAS_PDU p_nasPdu, - in template (value) UserLocationInformation p_UeLocInf, - in template (value) RRCEstablishmentCause p_rrcEstCause - ) := { + in template (value) RAN_UE_NGAP_ID p_RANUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) NAS_PDU p_nasPdu, + in template (value) UserLocationInformation p_UeLocInf, + in template (value) RRCEstablishmentCause p_rrcEstCause := PX_RRC_ESTABLISHMENT_CAUSE + ) := { procedureCode := id_InitialUEMessage, criticality := reject, value_ := { - InitialUEMessage := { - protocolIEs := { - { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := {RAN_UE_NGAP_ID:=p_RANUeNgapID} - //presence := NGAP_CommonDataTypes.mandatory - }, - { - id := id_NAS_PDU, - criticality := reject, - value_ := {NAS_PDU:=p_nasPdu} - //presence := NGAP_CommonDataTypes.mandatory - }, - { - id := id_UserLocationInformation, - criticality := reject, - value_ := {UserLocationInformation:=p_UeLocInf} - //presence := NGAP_CommonDataTypes.mandatory - }, - { - id := id_RRCEstablishmentCause, - criticality := ignore, - value_ := {RRCEstablishmentCause:=p_rrcEstCause} - //presence := NGAP_CommonDataTypes.mandatory - }//, - /*{ - id := NGAP_Constants.id_FiveG_S_TMSI, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.FiveG_S_TMSI", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_AMFSetID, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.AMFSetID", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_UEContextRequest, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.UEContextRequest", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_AllowedNSSAI, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.AllowedNSSAI", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_SourceToTarget_AMFInformationReroute, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.SourceToTarget_AMFInformationReroute", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_SelectedPLMNIdentity, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.PLMNIdentity", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_IABNodeIndication, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.IABNodeIndication", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_CEmodeBSupport_Indicator, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.CEmodeBSupport_Indicator", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_LTEM_Indication, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.LTEM_Indication", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_EDT_Session, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.EDT_Session", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_AuthenticatedIndication, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.AuthenticatedIndication", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_NPN_AccessInformation, - criticality := NGAP_CommonDataTypes.reject, - Value := "NGAP_IEs.NPN_AccessInformation", - presence := NGAP_CommonDataTypes.optional_ - }, - { - id := NGAP_Constants.id_RedCapIndication, - criticality := NGAP_CommonDataTypes.ignore, - Value := "NGAP_IEs.RedCapIndication", - presence := NGAP_CommonDataTypes.optional_ - }*/ - } - } - } - } // End of template m_n2_initialUeMessage + InitialUEMessage := { + protocolIEs := { + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_RANUeNgapID } + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := { NAS_PDU := p_nasPdu } + }, + { + id := id_UserLocationInformation, + criticality := reject, + value_ := { UserLocationInformation := p_UeLocInf } + }, + { + id := id_RRCEstablishmentCause, + criticality := ignore, + value_ := { RRCEstablishmentCause := p_rrcEstCause } + }//, + /*{ + id := NGAP_Constants.id_FiveG_S_TMSI, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.FiveG_S_TMSI", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AMFSetID, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.AMFSetID", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_UEContextRequest, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.UEContextRequest", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AllowedNSSAI, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.AllowedNSSAI", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_SourceToTarget_AMFInformationReroute, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.SourceToTarget_AMFInformationReroute", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_SelectedPLMNIdentity, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.PLMNIdentity", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_IABNodeIndication, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.IABNodeIndication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_CEmodeBSupport_Indicator, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.CEmodeBSupport_Indicator", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_LTEM_Indication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.LTEM_Indication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_EDT_Session, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.EDT_Session", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_AuthenticatedIndication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.AuthenticatedIndication", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_NPN_AccessInformation, + criticality := NGAP_CommonDataTypes.reject, + Value := "NGAP_IEs.NPN_AccessInformation", + presence := NGAP_CommonDataTypes.optional_ + }, + { + id := NGAP_Constants.id_RedCapIndication, + criticality := NGAP_CommonDataTypes.ignore, + Value := "NGAP_IEs.RedCapIndication", + presence := NGAP_CommonDataTypes.optional_ + }*/ + } + } + } + } // End of template m_n2_initialUeMessage + } // End of group Send group Receive { - } - } - //9.2.5.2 - group DOWNLINK_NAS_TRANSPORT{ + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.1 INITIAL UE MESSAGE + */ + template (present) InitiatingMessage mw_n2_initialUeMessage( + template (present) RAN_UE_NGAP_ID p_RANUeNgapID := ?, + template (present) NAS_PDU p_nasPdu := ?, + template (present) UserLocationInformation p_UeLocInf := ?, + template (present) RRCEstablishmentCause p_rrcEstCause := ? + ) := { + procedureCode := id_InitialUEMessage, + criticality := reject, + value_ := { + InitialUEMessage := { + protocolIEs := { + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_RANUeNgapID } + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := { NAS_PDU := p_nasPdu } + }, + { + id := id_UserLocationInformation, + criticality := reject, + value_ := { UserLocationInformation := p_UeLocInf } + }, + { + id := id_RRCEstablishmentCause, + criticality := ignore, + value_ := { RRCEstablishmentCause := p_rrcEstCause } + } + } + } + } + } // End of template mw_n2_initialUeMessage + + } // End of group Receive + + } // End of group INITIAL_UE_MESSAGE + + group DOWNLINK_NAS_TRANSPORT { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.2 DOWNLINK NAS TRANSPORT + */ + template (value) InitiatingMessage m_n2_DownlinkNASTransport( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) NAS_PDU p_nasPdu + ) := { + procedureCode := id_DownlinkNASTransport, + criticality := reject, + value_ := { + DownlinkNASTransport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := { NAS_PDU := p_nasPdu } + } + } + } + } + } // End of template m_n2_DownlinkNASTransport + + } // End of group Send + group Receive { - } - } - //9.2.5.3 - group UPLINK_NAS_TRANSPORT{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.2 DOWNLINK NAS TRANSPORT + */ + template (present) InitiatingMessage mw_n2_DownlinkNASTransport( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) NAS_PDU p_nasPdu := ? + ) := { + procedureCode := id_DownlinkNASTransport, + criticality := reject, + value_ := { + DownlinkNASTransport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := { NAS_PDU := p_nasPdu } + } + } + } + } + } // End of template mw_n2_DownlinkNASTransport + + } // End of group Receive + + } // End of group DOWNLINK_NAS_TRANSPORT + + group UPLINK_NAS_TRANSPORT { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.2 DOWNLINK NAS TRANSPORT + */ + template (value) InitiatingMessage m_n2_UplinkNASTransport( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) NAS_PDU p_nasPdu, + in template (value) UserLocationInformation p_userLocationInformation + ) := { + procedureCode := id_UplinkNASTransport, + criticality := reject, + value_ := { + UplinkNASTransport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := { NAS_PDU := p_nasPdu } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template m_n2_UplinkNASTransport + + } // End of group Send + group Receive { - } - } - //9.2.5.4 - group NAS_NON_DELIVERY_INDICATION{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.2 DOWNLINK NAS TRANSPORT + */ + template (present) InitiatingMessage mw_n2_UplinkNASTransport( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) NAS_PDU p_nasPdu := ?, + template (present) UserLocationInformation p_userLocationInformation := ? + ) := { + procedureCode := id_UplinkNASTransport, + criticality := reject, + value_ := { + UplinkNASTransport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := { NAS_PDU := p_nasPdu } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template mw_n2_UplinkNASTransport + + } // End of group Receive + + } // End of group UPLINK_NAS_TRANSPORT + + group NAS_NON_DELIVERY_INDICATION { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.4 NAS NON DELIVERY INDICATION + */ + template (value) InitiatingMessage m_n2_NASNonDeliveryIndication( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) NAS_PDU p_nasPdu, + in template (value) Cause p_cause := m_cause_nas(PX_CAUSE_NAS_NON_DELIVERY_INDICATION) + ) := { + procedureCode := id_NASNonDeliveryIndication, + criticality := reject, + value_ := { + NASNonDeliveryIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := { NAS_PDU := p_nasPdu } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_NASNonDeliveryIndication + + } // End of group Send + group Receive { - } - } - //9.2.5.5 + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.4 NAS NON DELIVERY INDICATION + */ + template (present) InitiatingMessage mw_n2_NASNonDeliveryIndication( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) NAS_PDU p_nasPdu := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_NASNonDeliveryIndication, + criticality := reject, + value_ := { + NASNonDeliveryIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NAS_PDU, + criticality := reject, + value_ := { NAS_PDU := p_nasPdu } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_NASNonDeliveryIndication + + } // End of group Receive + + } // End of group NAS_NON_DELIVERY_INDICATION + group REROUTE_NAS_REQUEST{ + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.5 REROUTE NAS REQUEST + */ + template (value) InitiatingMessage m_n2_RerouteNASRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) octetstring p_nGAPMessage, + in template (value) AMFSetID p_aMFSetID := PX_AMF_SET_ID + ) := { + procedureCode := id_RerouteNASRequest, + criticality := reject, + value_ := { + RerouteNASRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NGAP_Message, + criticality := reject, + value_ := { nGAP_Message := p_nGAPMessage } + }, + { + id := id_AMFSetID, + criticality := ignore, + value_ := { AMFSetID := p_aMFSetID } + } + } + } + } + } // End of template m_n2_RerouteNASRequest + + } // End of group Send + group Receive { - } - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.5.5 REROUTE NAS REQUEST + */ + template (present) InitiatingMessage mw_n2_RerouteNASRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) octetstring p_nGAPMessage := ?, + template (present) AMFSetID p_aMFSetID := ? + ) := { + procedureCode := id_RerouteNASRequest, + criticality := reject, + value_ := { + RerouteNASRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NGAP_Message, + criticality := reject, + value_ := { nGAP_Message := p_nGAPMessage } + }, + { + id := id_AMFSetID, + criticality := ignore, + value_ := { AMFSetID := p_aMFSetID } + } + } + } + } + } // End of template mw_n2_RerouteNASRequest + + } // End of group Receive + + } // End of group REROUTE_NAS_REQUEST + } // End of group NAS_Transport_Messages //9.2.6 -- GitLab From 3f055d85da11ffebc1e89c899bb4b91479fda739 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 21 Mar 2024 15:29:51 +0100 Subject: [PATCH 177/365] Starting group Interface_Management_Messages --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 24 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 508 +++++++++++++++++------- 2 files changed, 393 insertions(+), 139 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index ce7b1a4..2e22d13 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -218,6 +218,11 @@ module LibNGAP_Pixits { */ modulepar CauseRadioNetwork PX_CAUSE_HANDOVER_CANCEL := unspecified; + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_NG_SETUP_FAILURE := unspecified; @@ -326,15 +331,28 @@ module LibNGAP_Pixits { modulepar NRintegrityProtectionAlgorithms PX_NR_INTEGRITY_PROTECTION_ALGORITHMS; /** - * @desc Contains the DRB ID. + * @desc Contains the DRB ID * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.53 DRB ID */ modulepar DRB_ID PX_DRB_ID := 1; + /** + * @desc To indicate the Paging DRX as defined in TS 38.304 and TS 36.304 + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.90 Paging DRX + */ + modulepar PagingDRX PX_PAGING_DRX := v32 + /** + * @desc To uniquely identify the AMF + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.3.21 AMF Name + */ + modulepar AMFName PX_AMF_NAME := "amarisoft.amf.5gc.mnc001.mcc001.3gppnetwork.org"; - - + /** + * @desc Human readable name of the NG-RAN node + * @see ETSI TS 138 413 V16.12.0 (2023-05) + */ + modulepar RANNodeName PX_RAN_NODE_NAME := "gnb0012345"; diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index f04f2aa..14b38cb 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -4388,202 +4388,430 @@ module LibNGAP_Templates { } // End of group NAS_Transport_Messages - //9.2.6 + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6 Interface Management Messages + */ group Interface_Management_Messages{ - //9.2.6.1 - group NG_SETUP_REQUEST{ + + group NG_SETUP_REQUEST { + group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.1 NG SETUP REQUEST + */ template (value) InitiatingMessage m_n2_NGSetupRequest( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) SupportedTAList p_supportedTAs, - in template (value) PagingDRX p_pagingDRX - ) := { + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) SupportedTAList p_supportedTAs, + in template (value) PagingDRX p_pagingDRX := PX_PAGING_DRX + ) := { procedureCode := id_NGSetup, criticality := reject, value_ := { - NGSetupRequest := { - protocolIEs := { - { - id := id_GlobalRANNodeID, - criticality := reject, - value_ := { GlobalRANNodeID := p_globalRANNodeID } - }, - { - id := id_SupportedTAList, - criticality := reject, - value_ := { SupportedTAList := p_supportedTAs } - - }, - { - id := id_DefaultPagingDRX, - criticality := ignore, - value_ := { PagingDRX := p_pagingDRX - } + NGSetupRequest := { + protocolIEs := { + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + }, + { + id := id_SupportedTAList, + criticality := reject, + value_ := { SupportedTAList := p_supportedTAs } + }, + { + id := id_DefaultPagingDRX, + criticality := ignore, + value_ := { PagingDRX := p_pagingDRX } + } + } + } } - } - } } // End of template m_n2_NGSetupRequest - } - } + } // End of group Send + group Receive { - } - } - //9.2.6.2 - group NG_SETUP_RESPONSE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.1 NG SETUP REQUEST + */ + template (present) InitiatingMessage mw_n2_NGSetupRequest( + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) SupportedTAList p_supportedTAs := ?, + template (present) PagingDRX p_pagingDRX := ? + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupRequest := { + protocolIEs := { + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + }, + { + id := id_SupportedTAList, + criticality := reject, + value_ := { SupportedTAList := p_supportedTAs } + }, + { + id := id_DefaultPagingDRX, + criticality := ignore, + value_ := { PagingDRX := p_pagingDRX } + } + } + } + } + } // End of template mw_n2_NGSetupRequest + + } // End of group Receive + + } // End of group NG_SETUP_REQUEST + + group NG_SETUP_RESPONSE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.2 NG SETUP RESPONSE + */ + template (value) SuccessfulOutcome m_n2_NGSetupResponse( + in template (value) AMFName p_amfName := PX_AMF_NAME, + in template (value) ServedGUAMIList p_servedGUAMIList, + in template (value) RelativeAMFCapacity p_relativeAmfCap, + in template (value) PLMNSupportList p_plmnSuppList + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupResponse := { + protocolIEs := { + { + id := id_AMFName, + criticality := reject, + value_ := { AMFName := p_amfName } + }, + { + id := id_ServedGUAMIList, + criticality := reject, + value_ := { ServedGUAMIList := p_servedGUAMIList } + }, + { + id := id_RelativeAMFCapacity, + criticality := ignore, + value_ := { RelativeAMFCapacity := p_relativeAmfCap } + }, + { + id := id_PLMNSupportList, + criticality := ignore, + value_ := { PLMNSupportList := p_plmnSuppList } + } + } + } + } + } // End of template m_n2_NGSetupResponse + + } // End of group Send + group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.2 NG SETUP RESPONSE + */ template (present) SuccessfulOutcome mw_n2_NGSetupResponse( - in template (present) AMFName p_amfName := ?, - in template (present) ServedGUAMIList p_servedGUAMIList := ?, - in template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, - in template (present) PLMNSupportList p_plmnSuppList := ? - ) := { + template (present) AMFName p_amfName := ?, + template (present) ServedGUAMIList p_servedGUAMIList := ?, + template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + template (present) PLMNSupportList p_plmnSuppList := ? + ) := { procedureCode := id_NGSetup, - criticality := ?, + criticality := reject, value_ := { - NGSetupResponse := { - protocolIEs := { - { - id := id_AMFName, - criticality := reject, - value_ := { AMFName := p_amfName } - }, - { - id := id_ServedGUAMIList, - criticality := reject, - value_ := { ServedGUAMIList := p_servedGUAMIList } - - }, - { - id := id_RelativeAMFCapacity, - criticality := ignore, - value_ := { RelativeAMFCapacity := p_relativeAmfCap } - }, - { - id := id_PLMNSupportList, - criticality := ignore, - value_ := { PLMNSupportList := p_plmnSuppList } - } - } - } - } - }//end of template mw_n2_NGSetupResponse + NGSetupResponse := { + protocolIEs := { + { + id := id_AMFName, + criticality := reject, + value_ := { AMFName := p_amfName } + }, + { + id := id_ServedGUAMIList, + criticality := reject, + value_ := { ServedGUAMIList := p_servedGUAMIList } + }, + { + id := id_RelativeAMFCapacity, + criticality := ignore, + value_ := { RelativeAMFCapacity := p_relativeAmfCap } + }, + { + id := id_PLMNSupportList, + criticality := ignore, + value_ := { PLMNSupportList := p_plmnSuppList } + } + } + } + } + } // End of template mw_n2_NGSetupResponse + + } // End of group Receive + + } // End of group NG_SETUP_RESPONSE + + group NG_SETUP_FAILURE { - } - } - //9.2.6.3 - group NG_SETUP_FAILURE{ group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.3 NG SETUP FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_NGSetupFailure( + in template (value) Cause p_cause := m_cause_radioNetwork(PX_NG_SETUP_FAILURE) + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupFailure := { + protocolIEs := { + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_NGSetupFailure + + } // End of group Send + group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.3 NG SETUP FAILURE + */ template (present) UnsuccessfulOutcome mw_n2_NGSetupFailure( - in template (present) Cause p_cause := ? - ) := { + template (present) Cause p_cause := ? + ) := { procedureCode := id_NGSetup, - criticality := ?, + criticality := reject, value_ := { - NGSetupFailure := { - protocolIEs := { - { - id := id_Cause, - criticality := ?, - value_ := { Cause := p_cause } - } - } - } - } - }//end of template mw_n2_NGSetupFailure - } - } - //9.2.6.4 - group RAN_CONFIGURATION_UPDATE{ + NGSetupFailure := { + protocolIEs := { + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_NGSetupFailure + + } // End of group Receive + + } // End of group NG_SETUP_FAILURE + + group RAN_CONFIGURATION_UPDATE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.4 RAN CONFIGURATION UPDATE + */ + template (value) InitiatingMessage m_n2_RANConfigurationUpdate( + in template (value) RANNodeName p_rANNodeName := PX_RAN_NODE_NAME + ) := { + procedureCode := id_RANConfigurationUpdate, + criticality := reject, + value_ := { + RANConfigurationUpdate := { + protocolIEs := { + { + id := id_RANNodeName, + criticality := ignore, + value_ := { RANNodeName := p_rANNodeName } + } + } + } + } + } // End of template m_n2_RANConfigurationUpdate + + } // End of group Send + group Receive { - } - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.4 RAN CONFIGURATION UPDATE + */ + template (present) InitiatingMessage mw_n2_RANConfigurationUpdate( + template (present) RANNodeName p_rANNodeName := ? + ) := { + procedureCode := id_RANConfigurationUpdate, + criticality := reject, + value_ := { + RANConfigurationUpdate := { + protocolIEs := { + { + id := id_RANNodeName, + criticality := ignore, + value_ := { RANNodeName := p_rANNodeName } + } + } + } + } + } // End of template mw_n2_RANConfigurationUpdate + + } // End of group Receive + + } // End of group RAN_CONFIGURATION_UPDATE + //9.2.6.5 - group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE{ + group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE { + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE + //9.2.6.6 - group RAN_CONFIGURATION_UPDATE_FAILURE{ + group RAN_CONFIGURATION_UPDATE_FAILURE { + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + } // End of group RAN_CONFIGURATION_UPDATE_FAILURE + //9.2.6.7 - group AMF_CONFIGURATION_UPDATE{ + group AMF_CONFIGURATION_UPDATE { + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group AMF_CONFIGURATION_UPDATE + //9.2.6.8 - group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE{ + group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE { + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE + //9.2.6.9 - group AMF_CONFIGURATION_UPDATE_FAILURE{ + group AMF_CONFIGURATION_UPDATE_FAILURE { + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group AMF_CONFIGURATION_UPDATE_FAILURE + //9.2.6.10 - group AMF_STATUS_INDICATION{ + group AMF_STATUS_INDICATION { + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group AMF_STATUS_INDICATION + //9.2.6.11 group NG_RESET{ + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group NG_RESET + //9.2.6.12 - group NG_RESET_ACKNOWLEDGE{ + group NG_RESET_ACKNOWLEDGE { + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group NG_RESET_ACKNOWLEDGE + //9.2.6.13 - group ERROR_INDICATION{ + group ERROR_INDICATION { + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group ERROR_INDICATION + //9.2.6.14 - group OVERLOAD_START{ + group OVERLOAD_START { + group Send { - } + + } // End of group Send + + group Receive { - } - } + + } // End of group Receive + + } // End of group OVERLOAD_START + //9.2.6.15 - group OVERLOAD_STOP{ + group OVERLOAD_STOP { + group Send { - } + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group OVERLOAD_STOP + } // End of group Interface_Management_Messages //9.2.7 @@ -12798,9 +13026,13 @@ module LibNGAP_Templates { } // End of template mw_cause_ext template (present) CauseMisc mw_causeMisc(template (present) CauseMisc p_value := ?) := p_value; + template (present) CauseNas mw_causeNas(template (present) CauseNas p_value := ?) := p_value; + template (present) CauseProtocol mw_causeProtocol(template (present) CauseProtocol p_value := ?) := p_value; + template (present) CauseRadioNetwork mww_causeRadioNetwork(template (present) CauseRadioNetwork p_value := ?) := p_value; + template (present) CauseTransport mw_causeTransport(template (present) CauseTransport p_value := ?) := p_value; template (present) Cell_CAGInformation mw_cell_CAGInformation( @@ -12878,6 +13110,7 @@ module LibNGAP_Templates { } // End of template mw_cellType template (present) CEmodeBSupport_Indicator mw_cEmodeBSupport_Indicator(template (present) CEmodeBSupport_Indicator p_value := ?) := p_value; + template (present) CEmodeBrestricted mw_cEmodeBrestricted(template (present) CEmodeBrestricted p_value := ?) := p_value; template CNAssistedRANTuning mw_cNAssistedRANTuning( @@ -12933,8 +13166,11 @@ module LibNGAP_Templates { } // End of template mw_completedCellsInTAI_NR_Item template (present) ConcurrentWarningMessageInd mw_concurrentWarningMessageInd(template (present) ConcurrentWarningMessageInd p_value := true_) := p_value; + template (present) ConfidentialityProtectionIndication mw_confidentialityProtectionIndication(template (present) ConfidentialityProtectionIndication p_value := ?) := p_value; + template (present) ConfidentialityProtectionResult mw_confidentialityProtectionResult(template (present) ConfidentialityProtectionResult p_value := ?) := p_value; + template (present) ConfiguredTACIndication mw_configuredTACIndication(template (present) ConfiguredTACIndication p_value := true_) := p_value; template (present) CoreNetworkAssistanceInformationForInactive mw_coreNetworkAssistanceInformationForInactive( -- GitLab From 3fa70b7c2d0d27183dad7bd5354c8a5abefc4c68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Thu, 21 Mar 2024 15:51:12 +0100 Subject: [PATCH 178/365] add references, sub-fields and error corrections --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 5 +- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 489 ++++++++++++++++++------- 2 files changed, 360 insertions(+), 134 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 44336b1..ae0115e 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -962,7 +962,10 @@ Package TP_AMF { RAN_UE_NGAP_ID, Handover_Typ, Cause, - UE_Aggregate_Maximum_Bit_Rate, + UE_Aggregate_Maximum_Bit_Rate containing + UE_Aggregate_Maximum_Bit_Rate_Downlink, + UE_Aggregate_Maximum_Bit_Rate_Uplink + ;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index f0a96aa..f6f7ccd 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -540,10 +540,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_01 - Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains optional PDU Session Resource Setup Request List field mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2" + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" Config Id CFG_GNB_01 @@ -606,6 +606,65 @@ Package TP_GNB { } // end TP_NGAP_GNB_CMP_01 + Test Purpose { + + TP Id TP_NGAP_GNB_CMP_17 + + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/2_1 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ;, + + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, + Security_Key + ; + from the AMF entity + } + then { + the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_CMP_17 + Test Purpose { TP Id TP_NGAP_GNB_CMP_12 @@ -638,12 +697,28 @@ Package TP_GNB { PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST + ; + , PDU_Session_Resource_Setup_Request_Transfer ; ;, - Allowed_NSSAI, - UE_Security_Capabilities, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, Security_Key, Trace_Activation containing NG_RAN_Trace_ID, @@ -700,12 +775,27 @@ Package TP_GNB { PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST + ;, PDU_Session_Resource_Setup_Request_Transfer ; ;, - Allowed_NSSAI, - UE_Security_Capabilities, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, Security_Key, Mobility_Restriction_List containing Serving_PLMN @@ -759,12 +849,27 @@ Package TP_GNB { PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST + ;, PDU_Session_Resource_Setup_Request_Transfer ; ;, - Allowed_NSSAI, - UE_Security_Capabilities, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, Security_Key, UE_Radio_Capability, Index_to_RAT_Frequency_Selection_Priority, @@ -785,8 +890,7 @@ Package TP_GNB { UE Differentiation Information containing Periodic_Communication_Indicator, Periodic_Time; - , - + , NR_UE_Sidelink_Aggregate_Maximum_Bit_Rate, LTE_UE_Sidelink_Aggregate_Maximum_Bit_Rate, UE_Radio_Capability_ID @@ -812,9 +916,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_02 Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." + Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2" + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" Config Id CFG_GNB_01 @@ -840,12 +945,27 @@ Package TP_GNB { PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST + ;, PDU_Session_Resource_Setup_Request_Transfer ; ;, - Allowed_NSSAI, - UE_Security_Capabilities, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, Security_Key ; from the AMF entity @@ -877,7 +997,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully requests the AMF to release the UE-associated logical NG-connection." Reference - "ETSI TS 138 413 [1], Clauses 8.3.2.2" + "ETSI TS 138 413 [1], Clauses 8.3.2.2 and 9.2.2.4" Config Id CFG_GNB_01 @@ -896,12 +1016,7 @@ Package TP_GNB { then { the IUT entity sends a UE_CONTEXT_RELEASE_REQUEST containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - PDU_Session_Resource_List containing - PDS_Session_Resource_Item containing - PDU_Session_ID indicating value PX_PDU_ID - ; - ;, + RAN_UE_NGAP_ID, Cause ; to the AMF entity @@ -924,7 +1039,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.3" + "ETSI TS 138 413 [1], Clauses 8.3.3, 9.2.2.6 and 9.2.2.5" Config Id CFG_GNB_01 @@ -951,13 +1066,7 @@ Package TP_GNB { then { the IUT entity sends a UE_CONTEXT_RELEASE_COMPLETE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_List containing - PDU_Session_Resource_Item containing - PDU_SessionId indicating value PX_PDU_ID, - PDU_Session_Resource_Release_Response_Transfer - ; - ; + RAN_UE_NGAP_ID ; to the AMF entity } @@ -972,7 +1081,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND where both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE are not available and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.3" + "ETSI TS 138 413 [1], Clauses 8.3.3, 9.2.2.6 and 9.2.2.5" Config Id CFG_GNB_01 @@ -1025,7 +1134,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE because the UE is no longer available." Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.3" + "ETSI TS 138 413 [1], Clauses 8.3.4.3, 9.2.2.7 and 9.2.2.9" Config Id CFG_GNB_01 @@ -1063,7 +1172,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2" + "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" Config Id CFG_GNB_01 @@ -1101,7 +1210,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains optional fields Security Key and Security Capabilities and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2" + "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" Config Id CFG_GNB_01 @@ -1146,7 +1255,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains different optional fields and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2" + "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" Config Id CFG_GNB_01 @@ -1219,7 +1328,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a RRC INACTIVE TRANSITION REPORT that contains mandatory IEs" Reference - "ETSI TS 138 413 [1], Clauses 8.3.5" + "ETSI TS 138 413 [1], Clauses 8.3.5 and 9.2.2.10" Config Id CFG_GNB_01 @@ -1262,7 +1371,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a RAN CP Relocation Indication that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.3.8.2" + "ETSI TS 138 413 [1], Clauses 8.3.8.2 and 9.2.2.13" Config Id CFG_GNB_01 @@ -1281,11 +1390,24 @@ Package TP_GNB { then { the IUT entity sends a RAN_CP_RELOCATION_INDICATION containing RAN_UE_NGAP_ID, - 5G_S_TMSI, - E_ULTRA_CGI, - TAI, - UL_CP_Security_Information + 5G_S_TMSI containing + AMF_Set_ID, + AMF_Pointer, + 5G_TMSI + ;, + E_ULTRA_CGI containing + PLMN_Identity, + E_UTRA_Cell_Identity + ;, + TAI containing + PLMN_Identity, + TAC + ;, + UL_CP_Security_Information containing + UL_NAS_MAC, + UL_NAS_Count ; + ; to the AMF entity } @@ -1307,7 +1429,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a UE CONTEXT SUSPEND REQUEST contains mandatory IEs" Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2" + "ETSI TS 138 413 [1], Clauses 8.3.11.2 and 9.2.2.16" Config Id CFG_GNB_01 @@ -1326,13 +1448,7 @@ Package TP_GNB { then { the IUT entity sends a UE_CONTEXT_SUSPEND_REQUEST containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Suspend_List containing - PDU_Session_Resource_Suspend_Item containing - PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Suspend_Request_Transfer - ; - ; + RAN_UE_NGAP_ID ; to the AMF entity } @@ -1354,7 +1470,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a UE CONTEXT RESUME REQUEST contains mandatory IEs" Reference - "ETSI TS 138 413 [1], Clauses 8.3.12.2" + "ETSI TS 138 413 [1], Clauses 8.3.12.2 and 9.2.2.19" Config Id CFG_GNB_01 @@ -1374,13 +1490,7 @@ Package TP_GNB { the IUT entity sends a UE_CONTEXT_RESUME_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - RRC_Resume_Cause, - PDU_Session_Resource_Resume_List containing - PDU_Session_Resource_Suspend_Item containing - PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Resume_Request_Transfer - ; - ; + RRC_Resume_Cause ; to the AMF entity } @@ -1473,15 +1583,24 @@ Package TP_GNB { AMF_UE_NGAP_ID, Handover_Typ, Cause, - UE_Aggregate_Maximum_Bit_Rate, - UE_Security_Capabilities, - Security_Context, + UE_Aggregate_Maximum_Bit_Rate, // 9.3.1.58 + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, + Security_Context containing + Next_Hop_Chaining_Count, + Next_Hop_NH + ;, PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST;, Handover_Request_Transfer containing - DL_NG_U_UP_TNL_Information containing + DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing Endpoint_IP_Address @@ -1498,9 +1617,22 @@ Package TP_GNB { ; ; ;, - Allowed_NSSAI, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, Source_to_Target_Transparent_Container, - GUAMI + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; ; from the AMF entity } @@ -1559,13 +1691,25 @@ Package TP_GNB { AMF_UE_NGAP_ID, Handover_Typ, Cause, - UE_Aggregate_Maximum_Bit_Rate, - UE_Security_Capabilities, - Security_Context, + UE_Aggregate_Maximum_Bit_Rate containing + UE_Aggregate_Maximum_Bit_Rate_Downlink, + UE_Aggregate_Maximum_Bit_Rate_Uplink + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, + Security_Context containing + Next_Hop_Chaining_Count, + Next_Hop_NH + ;, PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST;, Handover_Request_Transfer containing DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing @@ -1584,9 +1728,22 @@ Package TP_GNB { ; ; ;, - Allowed_NSSAI, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, Source_to_Target_Transparent_Container, - GUAMI + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; ; from the AMF entity } @@ -1665,7 +1822,8 @@ Package TP_GNB { PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST;, Handover_Request_Transfer containing DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing @@ -1794,13 +1952,25 @@ Package TP_GNB { AMF_UE_NGAP_ID, Handover_Typ, Cause, - UE_Aggregate_Maximum_Bit_Rate, - UE_Security_Capabilities, - Security_Context, + UE_Aggregate_Maximum_Bit_Rate containing + UE_Aggregate_Maximum_Bit_Rate_Downlink, + UE_Aggregate_Maximum_Bit_Rate_Uplink + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, + Security_Context containing + Next_Hop_Chaining_Count, + Next_Hop_NH + ;, PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST;, Handover_Request_Transfer containing DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing @@ -1825,9 +1995,22 @@ Package TP_GNB { ; ; ;, - Allowed_NSSAI, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, Source_to_Target_Transparent_Container, - GUAMI + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; ; from the AMF entity } @@ -1898,13 +2081,25 @@ Package TP_GNB { AMF_UE_NGAP_ID, Handover_Typ, Cause, - UE_Aggregate_Maximum_Bit_Rate, - UE_Security_Capabilities, - Security_Context, + UE_Aggregate_Maximum_Bit_Rate containing + UE_Aggregate_Maximum_Bit_Rate_Downlink, + UE_Aggregate_Maximum_Bit_Rate_Uplink + ;, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, + Security_Context containing + Next_Hop_Chaining_Count, + Next_Hop_NH + ;, PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, + S_NSSAI containing + SST;, Handover_Request_Transfer containing DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing @@ -1924,7 +2119,15 @@ Package TP_GNB { ; ; ;, - Allowed_NSSAI, + Allowed_NSSAI containing + Allowed_NSSAI_List containing + Allowed_NSSAI_Item containing + S_NSSAI containing + SST + ; + ; + ; + ;, Source_to_Target_Transparent_Container containing RRC_Container, PDU_Session_Resource_Information_List containing @@ -1954,7 +2157,12 @@ Package TP_GNB { ; ; ;, - GUAMI + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; ; from the AMF entity } @@ -2079,7 +2287,12 @@ Package TP_GNB { RAN_UE_NGAP_ID, Source_AMF_UE_NGAP_ID, User_Location_Information, - UE_Security_Capabilities, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, PDU_Session_Resources_to_be_Switched_in_Downlink_List containing PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -2290,7 +2503,7 @@ Package TP_GNB { ensure that { when { the IUT entity receives an RRC_UL_MESSAGE - from the UE entity + from the UE entity } then { the IUT entity sends an UPLINK_NAS_TRANSPORT containing @@ -2363,7 +2576,7 @@ Package TP_GNB { Test objective "Verify that the GNB node successfully sends a NG SETUP REQEST message to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.7.1.2" + "ETSI TS 138 413 [1], Clauses 8.7.1.2 and 9.2.6.1" Config Id CFG_GNB_01 @@ -2383,13 +2596,17 @@ Package TP_GNB { Global_RAN_Node_ID, Supported_TA_List containing Supported_TA_Item containing - TAC, - Broadcast_PLMN_List containing - Broadcast_PLMN_Item containing - PLMN_Identity, - TAI_Slice_Support_List + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; ; - ; + ; ; ;, Default_Paging_DRX @@ -2413,7 +2630,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a RAN CONFIGURATION UPDATE message to the AMF." Reference - "ETSI TS 138 413 [1], Clauses 8.7.2.2" + "ETSI TS 138 413 [1], Clauses 8.7.2.2 and 9.2.6.4" Config Id CFG_GNB_01 @@ -2432,16 +2649,20 @@ Package TP_GNB { the IUT entity sends a RAN_CONFIGURATION_UPDATE containing Supported_TA_List containing Supported_TA_Item containing - TAC, - Broadcast_PLMN_List containing - Broadcast_PLMN_Item containing - PLMN_Identity, - TAI_Slice_Support_List - ; - ; - ; - ; - ; + TAC, + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; + ; + ; + ; + ; to the AMF entity } @@ -2454,11 +2675,7 @@ Package TP_GNB { Group "AMF Configuration Update" { import all from Ngap_Common; - - - - - + Test Purpose { TP Id TP_NGAP_GNB_IMP_03 @@ -2466,7 +2683,7 @@ Package TP_GNB { Test objective "Verify that the GNB node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." Reference - "ETSI TS 138 413 [1], Clauses 8.7.3.2" + "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.8" Config Id CFG_GNB_01 @@ -2484,14 +2701,23 @@ Package TP_GNB { the IUT entity receives a AMF_CONFIGURATION_UPDATE containing Served_GUAMI_List containing Served_GUAMI_Item containing - GUAMI + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; ; ;, PLMN_Support_List containing PLMN_Support_Item containing PLMN_Identity, - Slice_Support_List - ; + Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; ;, AMF_TNL_Association_to_Add_List containing AMF_TNL_Association_to_Add_item containing @@ -2528,7 +2754,7 @@ Package TP_GNB { Test objective "Verify that the GNB node can send a AMF CONFIGURATION UPDATE FAILURE." Reference - "ETSI TS 138 413 [1], Clauses 8.7.3.2" + "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.9" Config Id CFG_GNB_01 @@ -2546,13 +2772,22 @@ Package TP_GNB { the IUT entity receives a AMF_CONFIGURATION_UPDATE containing Served_GUAMI_List containing Served_GUAMI_Item containing - GUAMI + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; ; ;, PLMN_Support_List containing PLMN_Support_Item containing PLMN_Identity, // Implementation Note: Incorrect PLMN ID: The PLMN ID in the message does not match the PLMN ID of the GNB. - Slice_Support_List + Slice_Support_List containing + S_NSSAI containing + SST + ; + ; ; ;, AMF_TNL_Association_to_Add_List containing @@ -2591,7 +2826,7 @@ Package TP_GNB { Test objective "Verify that the GNB node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." Reference - "ETSI TS 138 413 [1], Clauses 8.7.4.2.1" + "ETSI TS 138 413 [1], Clauses 8.7.4.2.1, 9.2.6.11 and 9.2.6.12" Config Id CFG_GNB_01 @@ -2636,7 +2871,7 @@ Package TP_GNB { Test objective "Verify that the GNB can send a ERROR INDICATION to the AMF when a error occurs." Reference - "ETSI TS 138 413 [1], Clauses 8.7.5.2" + "ETSI TS 138 413 [1], Clauses 8.7.5.2 and 9.2.6.13" Config Id CFG_GNB_01 @@ -2687,20 +2922,8 @@ Package TP_GNB { the IUT entity indicate the initiation "of a Uplink RAN Configuration Transfer" } then { - the IUT entity sends an NAS_NON_DELIVERY_INDICATION containing - SON_Configuration_Transfer containing - Target_RAN_Node_ID containing - Global_RAN_Node_ID, - Selected_TAI - ;, - Source_RAN_Node_ID containing - Global_RAN_Node_ID, - Selected_TAI - ;, - SON_Information - ; - ; - to the AMF entity + the IUT entity sends an NAS_NON_DELIVERY_INDICATION + to the AMF entity } } -- GitLab From 388b28fcd92c848705d7532311be25dbb0446bdc Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 21 Mar 2024 16:05:17 +0100 Subject: [PATCH 179/365] add missing IE to PAGING message --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index ae0115e..4ca3e2f 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1341,13 +1341,21 @@ Package TP_AMF { 5G_TMSI ; ; + ;, + TAI_List_for_Paging containing + TAI_List_for_Paging_Item containing + TAI containing + PLMN_Identity, + TAC + ; + ; ; ; to the GNB entity } } - } // end TP_NGAP_GNB_PAG_01 + } // end TP_NGAP_GNB_PAG_01 } // end "Paging" } // end "8.5 Paging Procedures" -- GitLab From f72bae7a31233cf08b29c3bd31f1727b37532aff Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 22 Mar 2024 10:17:35 +0100 Subject: [PATCH 180/365] Finalyze group Interface_Management_Messages --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 10 + ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 519 ++++++++++++++++++++++-- 2 files changed, 504 insertions(+), 25 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 2e22d13..61a4acb 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -224,7 +224,17 @@ module LibNGAP_Pixits { */ modulepar CauseRadioNetwork PX_NG_SETUP_FAILURE := unspecified; + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_RAN_CONFIGURATION_UPDATE_FAILURE := unspecified; + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_AMF_CONFIGURATION_UPDATE_FAILURE := unspecified; modulepar CauseTransport PX_xxx_1 := unspecified; diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 14b38cb..84ebca9 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3795,7 +3795,7 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.4 Paging Messages */ - group Paging_Messages{ + group Paging_Messages { group PAGING { @@ -4391,7 +4391,7 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6 Interface Management Messages */ - group Interface_Management_Messages{ + group Interface_Management_Messages { group NG_SETUP_REQUEST { @@ -4669,145 +4669,614 @@ module LibNGAP_Templates { } // End of group RAN_CONFIGURATION_UPDATE - //9.2.6.5 group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE { group Send { - } // End of group Send + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.5 RAN CONFIGURATION UPDATE ACKNOWLEDGE + */ + template (value) SuccessfulOutcome m_n2_RANConfigurationUpdateAcknowledge := { + procedureCode := id_RANConfigurationUpdate, + criticality := reject, + value_ := { + RANConfigurationUpdateAcknowledge := { + protocolIEs := { } + } + } + } // End of template m_n2_RANConfigurationUpdateAcknowledge + + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.5 RAN CONFIGURATION UPDATE ACKNOWLEDGE + */ + template SuccessfulOutcome mw_n2_RANConfigurationUpdateAcknowledge := { + procedureCode := id_RANConfigurationUpdate, + criticality := reject, + value_ := { + RANConfigurationUpdateAcknowledge := { + protocolIEs := ? + } + } + } // End of template mw_n2_RANConfigurationUpdateAcknowledge + } // End of group Receive } // End of group RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE - //9.2.6.6 group RAN_CONFIGURATION_UPDATE_FAILURE { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.6 RAN CONFIGURATION UPDATE FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_RANConfigurationUpdateFailure( + in template (value) Cause p_cause := m_cause_radioNetwork(PX_RAN_CONFIGURATION_UPDATE_FAILURE) + ) := { + procedureCode := id_RANConfigurationUpdate, + criticality := reject, + value_ := { + RANConfigurationUpdateFailure := { + protocolIEs := { + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_RANConfigurationUpdateFailure + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.6 RAN CONFIGURATION UPDATE FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_RANConfigurationUpdateFailure( + template (present) Cause p_cause := ? + ) := { + procedureCode := id_RANConfigurationUpdate, + criticality := reject, + value_ := { + RANConfigurationUpdateFailure := { + protocolIEs := { + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_RANConfigurationUpdateFailure + } // End of group Receive + } // End of group RAN_CONFIGURATION_UPDATE_FAILURE - //9.2.6.7 group AMF_CONFIGURATION_UPDATE { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.7 AMF CONFIGURATION UPDATE + */ + template (value) InitiatingMessage m_n2_AMFConfigurationUpdate( + in template (value) AMFName p_aMFName := PX_AMF_NAME + ) := { + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdate := { + protocolIEs := { + { + id := id_AMFName, + criticality := ignore, + value_ := { AMFName := p_aMFName } + } + } + } + } + } // End of template m_n2_AMFConfigurationUpdate + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.7 AMF CONFIGURATION UPDATE + */ + template (present) InitiatingMessage mw_n2_AMFConfigurationUpdate( + template (present) AMFName p_aMFName := ? + ) := { + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdate := { + protocolIEs := { + { + id := id_AMFName, + criticality := ignore, + value_ := { AMFName := p_aMFName } + } + } + } + } + } // End of template mw_n2_AMFConfigurationUpdate + } // End of group Receive } // End of group AMF_CONFIGURATION_UPDATE - //9.2.6.8 group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.8 AMF CONFIGURATION UPDATE ACKNOWLEDGE + */ + template (value) SuccessfulOutcome m_n2_AMFConfigurationUpdateAcknowledge := { + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdateAcknowledge := { + protocolIEs := { } + } + } + } // End of template m_n2_AMFConfigurationUpdateAcknowledge + + template (value) SuccessfulOutcome m_n2_AMFConfigurationUpdateAcknowledge_aMF_TNLAssociationSetupList( + in template (value) AMF_TNLAssociationSetupList p_aMF_TNLAssociationSetupList + ) := { + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdateAcknowledge := { + protocolIEs := { + { + id := id_AMF_TNLAssociationSetupList, + criticality := ignore, + value_ := { AMF_TNLAssociationSetupList := p_aMF_TNLAssociationSetupList } + } + } + } + } + } // End of template m_n2_AMFConfigurationUpdateAcknowledge_aMF_TNLAssociationSetupList + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.8 AMF CONFIGURATION UPDATE ACKNOWLEDGE + */ + template SuccessfulOutcome mw_n2_AMFConfigurationUpdateAcknowledge := { + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdateAcknowledge := { + protocolIEs := { } + } + } + } // End of template mw_n2_AMFConfigurationUpdateAcknowledge + + template (present) SuccessfulOutcome mw_n2_AMFConfigurationUpdateAcknowledge_aMF_TNLAssociationSetupList( + template (present) AMF_TNLAssociationSetupList p_aMF_TNLAssociationSetupList := ? + ) := { + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdateAcknowledge := { + protocolIEs := { + { + id := id_AMF_TNLAssociationSetupList, + criticality := ignore, + value_ := { AMF_TNLAssociationSetupList := p_aMF_TNLAssociationSetupList } + } + } + } + } + } // End of template mw_n2_AMFConfigurationUpdateAcknowledge_aMF_TNLAssociationSetupList + } // End of group Receive } // End of group AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE - //9.2.6.9 group AMF_CONFIGURATION_UPDATE_FAILURE { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.9 AMF CONFIGURATION UPDATE FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_AMFConfigurationUpdateFailure( + in template (value) Cause p_cause := m_cause_radioNetwork(PX_AMF_CONFIGURATION_UPDATE_FAILURE) + ) := { + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdateFailure := { + protocolIEs := { + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_AMFConfigurationUpdateFailure + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.9 AMF CONFIGURATION UPDATE FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_AMFConfigurationUpdateFailure( + template (present) Cause p_cause := ? + ) := { + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdateFailure := { + protocolIEs := { + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_AMFConfigurationUpdateFailure + } // End of group Receive } // End of group AMF_CONFIGURATION_UPDATE_FAILURE - //9.2.6.10 group AMF_STATUS_INDICATION { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.10 AMF STATUS INDICATION + */ + template (value) InitiatingMessage m_n2_AMFStatusIndication( + in template (value) UnavailableGUAMIList p_unavailableGUAMIList + ) := { + procedureCode := id_AMFStatusIndication, + criticality := reject, + value_ := { + AMFStatusIndication := { + protocolIEs := { + { + id := id_UnavailableGUAMIList, + criticality := reject, + value_ := { UnavailableGUAMIList := p_unavailableGUAMIList } + } + } + } + } + } // End of template m_n2_AMFStatusIndication + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.10 AMF STATUS INDICATION + */ + template (present) InitiatingMessage mw_n2_AMFStatusIndication( + template (present) UnavailableGUAMIList p_unavailableGUAMIList := ? + ) := { + procedureCode := id_AMFStatusIndication, + criticality := reject, + value_ := { + AMFStatusIndication := { + protocolIEs := { + { + id := id_UnavailableGUAMIList, + criticality := reject, + value_ := { UnavailableGUAMIList := p_unavailableGUAMIList } + } + } + } + } + } // End of template mw_n2_AMFStatusIndication + } // End of group Receive } // End of group AMF_STATUS_INDICATION - //9.2.6.11 - group NG_RESET{ + group NG_RESET { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.11 NG RESET + */ + template (value) InitiatingMessage m_n2_NGReset( + in template (value) Cause p_cause, + in template (value) ResetType p_resetType + ) := { + procedureCode := id_NGReset, + criticality := reject, + value_ := { + NGReset := { + protocolIEs := { + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_ResetType, + criticality := reject, + value_ := { ResetType := p_resetType } + } + } + } + } + } // End of template m_n2_NGReset + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.11 NG RESET + */ + template (present) InitiatingMessage mw_n2_NGReset( + template (present) Cause p_cause := ?, + template (present) ResetType p_resetType := ? + ) := { + procedureCode := id_NGReset, + criticality := reject, + value_ := { + NGReset := { + protocolIEs := { + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_ResetType, + criticality := reject, + value_ := { ResetType := p_resetType } + } + } + } + } + } // End of template mw_n2_NGReset + } // End of group Receive } // End of group NG_RESET - //9.2.6.12 group NG_RESET_ACKNOWLEDGE { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.12 NG RESET ACKNOWLEDGE + */ + template (value) SuccessfulOutcome m_n2_NGResetAcknowledge := { + procedureCode := id_NGReset, + criticality := reject, + value_ := { + NGResetAcknowledge := { + protocolIEs := { } + } + } + } // End of template m_n2_NGResetAcknowledge + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.12 NG RESET ACKNOWLEDGE + */ + template (present) SuccessfulOutcome mw_n2_NGResetAcknowledge := { + procedureCode := id_NGReset, + criticality := reject, + value_ := { + NGResetAcknowledge := { + protocolIEs := { } + } + } + } // End of template mw_n2_NGResetAcknowledge + } // End of group Receive } // End of group NG_RESET_ACKNOWLEDGE - //9.2.6.13 group ERROR_INDICATION { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.13 ERROR INDICATION + */ + template (value) InitiatingMessage m_n2_ErrorIndication := { + procedureCode := id_ErrorIndication, + criticality := reject, + value_ := { + ErrorIndication := { + protocolIEs := { } + } + } + } // End of template m_n2_ErrorIndication + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.13 ERROR INDICATION + */ + template (value) InitiatingMessage m_n2_ErrorIndication_ids( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) Cause p_cause + ) := { + procedureCode := id_ErrorIndication, + criticality := reject, + value_ := { + ErrorIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_ErrorIndication_ids + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.13 ERROR INDICATION + */ + template (present) InitiatingMessage mw_n2_ErrorIndication := { + procedureCode := id_ErrorIndication, + criticality := reject, + value_ := { + ErrorIndication := { + protocolIEs := { } + } + } + } // End of template mw_n2_ErrorIndication + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.13 ERROR INDICATION + */ + template (present) InitiatingMessage mw_n2_ErrorIndication_ids( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_ErrorIndication, + criticality := reject, + value_ := { + ErrorIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_ErrorIndication_ids + } // End of group Receive } // End of group ERROR_INDICATION - //9.2.6.14 group OVERLOAD_START { group Send { - } // End of group Send + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.14 OVERLOAD START + */ + template (value) InitiatingMessage m_n2_OverloadStart := { + procedureCode := id_OverloadStart, + criticality := reject, + value_ := { + OverloadStart := { + protocolIEs := { } + } + } + } // End of template m_n2_OverloadStart + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.14 OVERLOAD START + */ + template (present) InitiatingMessage mw_n2_OverloadStart := { + procedureCode := id_OverloadStart, + criticality := reject, + value_ := { + OverloadStart := { + protocolIEs := { } + } + } + } // End of template mw_n2_OverloadStart + } // End of group Receive } // End of group OVERLOAD_START - //9.2.6.15 group OVERLOAD_STOP { group Send { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.15 OVERLOAD STOP + */ + template (value) InitiatingMessage m_n2_OverloadStop := { + procedureCode := id_OverloadStop, + criticality := reject, + value_ := { + OverloadStop := { + protocolIEs := { } + } + } + } // End of template m_n2_OverloadStop + } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.15 OVERLOAD STOP + */ + template (present) InitiatingMessage mw_n2_OverloadStop := { + procedureCode := id_OverloadStop, + criticality := reject, + value_ := { + OverloadStop := { + protocolIEs := { } + } + } + } // End of template mw_n2_OverloadStop + } // End of group Receive } // End of group OVERLOAD_STOP @@ -4815,7 +5284,7 @@ module LibNGAP_Templates { } // End of group Interface_Management_Messages //9.2.7 - group Configuration_Transfer_Messages{ + group Configuration_Transfer_Messages { //9.2.7.1 group UPLINK_RAN_CONFIGURATION_TRANSFER{ group Send { @@ -4833,7 +5302,7 @@ module LibNGAP_Templates { } // End of group Configuration_Transfer_Messages //9.2.8 - group Warning_Message_Transmission_Messages{ + group Warning_Message_Transmission_Messages { //9.2.8.1 group WRITE_REPLACE_WARNING_REQUEST{ group Send { @@ -4879,7 +5348,7 @@ module LibNGAP_Templates { } // End of group Warning_Message_Transmission_Messages //9.2.9 - group NRPPa_Transport_Messages{ + group NRPPa_Transport_Messages { //9.2.9.1 group DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ group Send { @@ -4911,7 +5380,7 @@ module LibNGAP_Templates { } // End of group NRPPa_Transport_Messages //9.2.10 - group Trace_Messages{ + group Trace_Messages { //9.2.10.1 group TRACE_START{ group Send { @@ -4943,7 +5412,7 @@ module LibNGAP_Templates { } // End of group Trace_Messages //9.2.11 - group Location_Reporting_Messages{ + group Location_Reporting_Messages { //9.2.11.1 group LOCATION_REPORTING_CONTROL{ group Send { @@ -4968,7 +5437,7 @@ module LibNGAP_Templates { } // End of group Location_Reporting_Messages //9.2.12 - group UE_TNLA_Binding_Messages{ + group UE_TNLA_Binding_Messages { //9.2.12.1 group UE_TNLA_BINDING_RELEASE_REQUEST{ group Send { @@ -4979,7 +5448,7 @@ module LibNGAP_Templates { } // End of group UE_TNLA_Binding_Messages //9.2.13 - group UE_Radio_Capability_Management_Messages{ + group UE_Radio_Capability_Management_Messages { //9.2.13.1 group UE_RADIO_CAPABILITY_INFO_INDICATION{ group Send { @@ -5018,7 +5487,7 @@ module LibNGAP_Templates { } // End of group UE_Radio_Capability_Management_Messages //9.2.14 - group Data_Usage_Reporting_Messages{ + group Data_Usage_Reporting_Messages { //9.2.14.1 group SECONDARY_RAT_DATA_USAGE_REPORT{ group Send { @@ -5029,7 +5498,7 @@ module LibNGAP_Templates { } // End of group Data_Usage_Reporting_Messages //9.2.15 - group RIM_Information_Transfer_Messages{ + group RIM_Information_Transfer_Messages { //9.2.15.1 group UPLINK_RIM_INFORMATION_TRANSFER{ group Send { -- GitLab From 4983f03ab4b8392a134f5cdeee5af26766826d12 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 22 Mar 2024 10:33:53 +0100 Subject: [PATCH 181/365] Finalyze group Configuration_Transfer_Messages --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 74 +++++++++++++++++++++---- 1 file changed, 63 insertions(+), 11 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 84ebca9..cb4d8a1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -5283,22 +5283,74 @@ module LibNGAP_Templates { } // End of group Interface_Management_Messages - //9.2.7 + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.7 Configuration Transfer Messages + */ group Configuration_Transfer_Messages { - //9.2.7.1 - group UPLINK_RAN_CONFIGURATION_TRANSFER{ + + group UPLINK_RAN_CONFIGURATION_TRANSFER { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.7.1 UPLINK RAN CONFIGURATION TRANSFER + */ + template (value) InitiatingMessage m_n2_UplinkRANConfigurationTransfer := { + procedureCode := id_UplinkRANConfigurationTransfer, + criticality := reject, + value_ := { + UplinkRANConfigurationTransfer := { + protocolIEs := { } + } + } + } // End of template m_n2_UplinkRANConfigurationTransfer + + } // End of group Send + group Receive { - } - } - //9.2.7.2 - group DOWNLINK_RAN_CONFIGURATION_TRANSFER{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.7.1 UPLINK RAN CONFIGURATION TRANSFER + */ + template (present) InitiatingMessage mw_n2_UplinkRANConfigurationTransfer := { + procedureCode := id_UplinkRANConfigurationTransfer, + criticality := reject, + value_ := { + UplinkRANConfigurationTransfer := { + protocolIEs := { } + } + } + } // End of template mw_n2_UplinkRANConfigurationTransfer + + } // End of group Receive + + } // End of group UPLINK_RAN_CONFIGURATION_TRANSFER + + group DOWNLINK_RAN_CONFIGURATION_TRANSFER { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.7.2 DOWNLINK RAN CONFIGURATION TRANSFER + */ + template (value) InitiatingMessage m_n2_DownlinkRANConfigurationTransfer := { + procedureCode := id_DownlinkRANConfigurationTransfer, + criticality := reject, + value_ := { + DownlinkRANConfigurationTransfer := { + protocolIEs := { } + } + } + } // End of template m_n2_DownlinkRANConfigurationTransfer + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group DOWNLINK_RAN_CONFIGURATION_TRANSFER + } // End of group Configuration_Transfer_Messages //9.2.8 -- GitLab From f2964154847485eb4991a406eee5d96a0fd16068 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 22 Mar 2024 10:35:48 +0100 Subject: [PATCH 182/365] extend Downlink RAN (Early) Status Transfer message IE --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 50 +++++++++++++++++++++++--- 1 file changed, 45 insertions(+), 5 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 4ca3e2f..b9671d6 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1230,7 +1230,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully sends a DOWNLINK RAN STATUS TRANSFER message that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.4.6.2 and 9.2.3.14" + "ETSI TS 138 413 [1], Clauses 8.4.6.2" Config Id CFG_AMF_01 @@ -1250,8 +1250,30 @@ Package TP_AMF { the IUT entity sends a DOWNLINK_RAN_STATUS_TRANSFER containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - RAN_Status_Transfer_Transparent_Container - ; + RAN_Status_Transfer_Transparent_Container containing + DRBs_Subject_To_Status_Transfer_List containing + DRBs_Subject_To_Status_Transfer_Item containing + DRB_ID, + CHOICE_UL_DRB_Status containing + 12_bits containing // use 18_bits IE instead if the PDCP-SN is 18 bits long + UL_COUNT_Value containing + PDCP_SN_Length_12, + HFN_for_PDCP_SN_Length_12 + ; + ; + ;, + CHOICE_DL_DRB_Status containing + 12_bits containing // use 18_bits IE instead if the PDCP-SN is 18 bits long + DL_COUNT_Value containing + PDCP_SN_Length_12, + HFN_for_PDCP_SN_Length_12 + ; + ; + ; + ; + ; + ; + ; to the GNB entity } } @@ -1271,7 +1293,7 @@ Package TP_AMF { Test objective "Verify that the AMF node successfully sends a DOWNLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." Reference - "ETSI TS 138 413 [1], Clauses 8.4.10.2 and 9.2.3.17" + "ETSI TS 138 413 [1], Clauses 8.4.9.2" Config Id CFG_AMF_01 @@ -1291,8 +1313,26 @@ Package TP_AMF { the IUT entity sends a DOWNLINK_RAN_EARLY_STATUS_TRANSFER containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Early_Status_Transfer_Transparent_Container + Early_Status_Transfer_Transparent_Container containing + CHOICE_Procedure_Stage containing + First_DL_COUNT containing + DRBs_Subject_To_Early_Status_Transfer_List containing + DRBs_Subject_To_Early_Status_Transfer_Item containing + DRB_ID, + CHOICE_First_DL_COUNT containing + 12_bits containing // use 18_bits IE instead if the PDCP-SN is 18 bits long + FIRST_DL_COUNT_Value containing + PDCP_SN_Length_12, + HFN_for_PDCP_SN_Length_12 + ; + ; + ; + ; + ; + ; + ; ; + ; to the GNB entity } } -- GitLab From f3a4c4d8b5bfb7f6b0d039d1195b8ac094ecb568 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 22 Mar 2024 12:12:43 +0100 Subject: [PATCH 183/365] Starting group Warning_Message_Transmission_Messages --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 20 ++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 453 ++++++++++++++++++++++-- 2 files changed, 442 insertions(+), 31 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 61a4acb..9e76453 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -364,9 +364,29 @@ module LibNGAP_Pixits { */ modulepar RANNodeName PX_RAN_NODE_NAME := "gnb0012345"; + /** + * @desc To identify the warning message + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.35 Message Identifier + */ + modulepar MessageIdentifier PX_MESSAGE_IDENTIFIER := '0000000000000000'B; + /** + * @desc To identifies a particular message from the source and type indicated by the Message Identifier and is altered every time the message with a given Message Identifier is changed + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.36 Serial Number + */ + modulepar SerialNumber PX_SERIAL_NUMBER := '0000000000000000'B; + /** + * @desc To indicate the periodicity of the warning message to be broadcast + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.49 Repetition Period + */ + modulepar RepetitionPeriod PX_REPETITION_PERIOD := 3; + /** + * @desc To indicate the number of times a message is to be broadcast + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.38 Number of Broadcasts Requested + */ + modulepar NumberOfBroadcastsRequested PX_NUMBER_OF_BROADCASTS_REQUESTED := 4; /** * @desc eNB Identity. diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index cb4d8a1..0d8a7d1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -5347,56 +5347,447 @@ module LibNGAP_Templates { group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.7.2 DOWNLINK RAN CONFIGURATION TRANSFER + */ + template (present) InitiatingMessage mw_n2_DownlinkRANConfigurationTransfer := { + procedureCode := id_DownlinkRANConfigurationTransfer, + criticality := reject, + value_ := { + DownlinkRANConfigurationTransfer := { + protocolIEs := { } + } + } + } // End of template mw_n2_DownlinkRANConfigurationTransfer + } // End of group Receive } // End of group DOWNLINK_RAN_CONFIGURATION_TRANSFER } // End of group Configuration_Transfer_Messages - //9.2.8 + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8 Warning Message Transmission Messages + */ group Warning_Message_Transmission_Messages { - //9.2.8.1 - group WRITE_REPLACE_WARNING_REQUEST{ + + group WRITE_REPLACE_WARNING_REQUEST { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.1 WRITE-REPLACE WARNING REQUEST + */ + template (value) InitiatingMessage m_n2_WriteReplaceWarningRequest( + in template (value) MessageIdentifier p_messageIdentifier := PX_MESSAGE_IDENTIFIER, + in template (value) SerialNumber p_serialNumber := PX_SERIAL_NUMBER, + in template (value) RepetitionPeriod p_repetitionPeriod := PX_REPETITION_PERIOD, + in template (value) NumberOfBroadcastsRequested p_numberOfBroadcastsRequested := PX_NUMBER_OF_BROADCASTS_REQUESTED + ) := { + procedureCode := id_WriteReplaceWarning, + criticality := reject, + value_ := { + WriteReplaceWarningRequest := { + protocolIEs := { + { + id := id_MessageIdentifier, + criticality := reject, + value_ := { MessageIdentifier := p_messageIdentifier } + }, + { + id := id_SerialNumber, + criticality := reject, + value_ := { SerialNumber := p_serialNumber } + }, + { + id := id_RepetitionPeriod, + criticality := reject, + value_ := { RepetitionPeriod := p_repetitionPeriod } + }, + { + id := id_NumberOfBroadcastsRequested, + criticality := reject, + value_ := { NumberOfBroadcastsRequested := p_numberOfBroadcastsRequested } + } + } + } + } + } // End of template m_n2_WriteReplaceWarningRequest + + } // End of group Send + group Receive { - } - } - //9.2.8.2 - group WRITE_REPLACE_WARNING_RESPONSE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.1 WRITE-REPLACE WARNING REQUEST + */ + template (present) InitiatingMessage mw_n2_WriteReplaceWarningRequest( + template (present) MessageIdentifier p_messageIdentifier :=?, + template (present) SerialNumber p_serialNumber := ?, + template (present) RepetitionPeriod p_repetitionPeriod := ?, + template (present) NumberOfBroadcastsRequested p_numberOfBroadcastsRequested := ? + ) := { + procedureCode := id_WriteReplaceWarning, + criticality := reject, + value_ := { + WriteReplaceWarningRequest := { + protocolIEs := { + { + id := id_MessageIdentifier, + criticality := reject, + value_ := { MessageIdentifier := p_messageIdentifier } + }, + { + id := id_SerialNumber, + criticality := reject, + value_ := { SerialNumber := p_serialNumber } + }, + { + id := id_RepetitionPeriod, + criticality := reject, + value_ := { RepetitionPeriod := p_repetitionPeriod } + }, + { + id := id_NumberOfBroadcastsRequested, + criticality := reject, + value_ := { NumberOfBroadcastsRequested := p_numberOfBroadcastsRequested } + } + } + } + } + } // End of template mw_n2_WriteReplaceWarningRequest + + } // End of group Receive + + } // End of group WRITE_REPLACE_WARNING_REQUEST + + group WRITE_REPLACE_WARNING_RESPONSE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.2 WRITE-REPLACE WARNING RESPONSE + */ + template (value) SuccessfulOutcome m_n2_WriteReplaceWarningResponse( + in template (value) MessageIdentifier p_messageIdentifier := PX_MESSAGE_IDENTIFIER, + in template (value) SerialNumber p_serialNumber := PX_SERIAL_NUMBER + ) := { + procedureCode := id_WriteReplaceWarning, + criticality := reject, + value_ := { + WriteReplaceWarningResponse := { + protocolIEs := { + { + id := id_MessageIdentifier, + criticality := reject, + value_ := { MessageIdentifier := p_messageIdentifier } + }, + { + id := id_SerialNumber, + criticality := reject, + value_ := { SerialNumber := p_serialNumber } + } + } + } + } + } // End of template m_n2_WriteReplaceWarningResponse + + } // End of group Send + group Receive { - } - } - //9.2.8.3 - group PWS_CANCEL_REQUEST{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.2 WRITE-REPLACE WARNING RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_WriteReplaceWarningResponse( + template (present) MessageIdentifier p_messageIdentifier := ?, + template (present) SerialNumber p_serialNumber := ? + ) := { + procedureCode := id_WriteReplaceWarning, + criticality := reject, + value_ := { + WriteReplaceWarningResponse := { + protocolIEs := { + { + id := id_MessageIdentifier, + criticality := reject, + value_ := { MessageIdentifier := p_messageIdentifier } + }, + { + id := id_SerialNumber, + criticality := reject, + value_ := { SerialNumber := p_serialNumber } + } + } + } + } + } // End of template mw_n2_WriteReplaceWarningResponse + + } // End of group Receive + + } // End of group WRITE_REPLACE_WARNING_RESPONSE + + group PWS_CANCEL_REQUEST { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.3 PWS CANCEL REQUEST + */ + template (value) InitiatingMessage m_n2_PWSCancelRequest( + in template (value) MessageIdentifier p_messageIdentifier := PX_MESSAGE_IDENTIFIER, + in template (value) SerialNumber p_serialNumber := PX_SERIAL_NUMBER + ) := { + procedureCode := id_PWSCancel, + criticality := reject, + value_ := { + PWSCancelRequest := { + protocolIEs := { + { + id := id_MessageIdentifier, + criticality := reject, + value_ := { MessageIdentifier := p_messageIdentifier } + }, + { + id := id_SerialNumber, + criticality := reject, + value_ := { SerialNumber := p_serialNumber } + } + } + } + } + } // End of template m_n2_PWSCancelRequest + + } // End of group Send + group Receive { - } - } - //9.2.8.4 - group PWS_CANCEL_RESPONSE{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.3 PWS CANCEL REQUEST + */ + template (present) InitiatingMessage mw_n2_PWSCancelRequest( + template (present) MessageIdentifier p_messageIdentifier := ?, + template (present) SerialNumber p_serialNumber := ? + ) := { + procedureCode := id_PWSCancel, + criticality := reject, + value_ := { + PWSCancelRequest := { + protocolIEs := { + { + id := id_MessageIdentifier, + criticality := reject, + value_ := { MessageIdentifier := p_messageIdentifier } + }, + { + id := id_SerialNumber, + criticality := reject, + value_ := { SerialNumber := p_serialNumber } + } + } + } + } + } // End of template mw_n2_PWSCancelRequest + + } // End of group Receive + + } // End of group PWS_CANCEL_REQUEST + + group PWS_CANCEL_RESPONSE { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.4 PWS CANCEL RESPONSE + */ + template (value) SuccessfulOutcome m_n2_PWSCancelResponse( + in template (value) MessageIdentifier p_messageIdentifier := PX_MESSAGE_IDENTIFIER, + in template (value) SerialNumber p_serialNumber := PX_SERIAL_NUMBER + ) := { + procedureCode := id_PWSCancel, + criticality := reject, + value_ := { + PWSCancelResponse := { + protocolIEs := { + { + id := id_MessageIdentifier, + criticality := reject, + value_ := { MessageIdentifier := p_messageIdentifier } + }, + { + id := id_SerialNumber, + criticality := reject, + value_ := { SerialNumber := p_serialNumber } + } + } + } + } + } // End of template m_n2_PWSCancelResponse + + } // End of group Send + group Receive { - } - } - //9.2.8.5 - group PWS_RESTART_INDICATION{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.4 PWS CANCEL RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_PWSCancelResponse( + template (present) MessageIdentifier p_messageIdentifier := ?, + template (present) SerialNumber p_serialNumber := ? + ) := { + procedureCode := id_PWSCancel, + criticality := reject, + value_ := { + PWSCancelResponse := { + protocolIEs := { + { + id := id_MessageIdentifier, + criticality := reject, + value_ := { MessageIdentifier := p_messageIdentifier } + }, + { + id := id_SerialNumber, + criticality := reject, + value_ := { SerialNumber := p_serialNumber } + } + } + } + } + } // End of template mw_n2_PWSCancelResponse + + } // End of group Receive + + } // End of group PWS_CANCEL_RESPONSE + + group PWS_RESTART_INDICATION { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.5 PWS RESTART INDICATION + */ + template (value) InitiatingMessage m_n2_PWSRestartIndication( + in template (value) CellIDListForRestart p_cellIDListForRestart, + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAIListForRestart p_tAIListForRestart, + in template (value) EmergencyAreaIDListForRestart p_emergencyAreaIDListForRestart + ) := { + procedureCode := id_PWSRestartIndication, + criticality := ignore, + value_ := { + PWSRestartIndication := { + protocolIEs := { + { + id := id_CellIDListForRestart, + criticality := reject, + value_ := { CellIDListForRestart := p_cellIDListForRestart } + }, + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + }, + { + id := id_TAIListForRestart, + criticality := reject, + value_ := { TAIListForRestart := p_tAIListForRestart } + }, + { + id := id_EmergencyAreaIDListForRestart, + criticality := reject, + value_ := { EmergencyAreaIDListForRestart := p_emergencyAreaIDListForRestart } + } + } + } + } + } // End of template m_n2_PWSRestartIndication + + } // End of group Send + group Receive { - } - } - //9.2.8.6 - group PWS_FAILURE_INDICATION{ + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.5 PWS RESTART INDICATION + */ + template (present) InitiatingMessage mw_n2_PWSRestartIndication( + template (present) CellIDListForRestart p_cellIDListForRestart := ?, + template (present) GlobalRANNodeID p_globalRANNodeID := ?, + template (present) TAIListForRestart p_tAIListForRestart := ?, + template (present) EmergencyAreaIDListForRestart p_emergencyAreaIDListForRestart := ? + ) := { + procedureCode := id_PWSRestartIndication, + criticality := ignore, + value_ := { + PWSRestartIndication := { + protocolIEs := { + { + id := id_CellIDListForRestart, + criticality := reject, + value_ := { CellIDListForRestart := p_cellIDListForRestart } + }, + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + }, + { + id := id_TAIListForRestart, + criticality := reject, + value_ := { TAIListForRestart := p_tAIListForRestart } + }, + { + id := id_EmergencyAreaIDListForRestart, + criticality := reject, + value_ := { EmergencyAreaIDListForRestart := p_emergencyAreaIDListForRestart } + } + } + } + } + } // End of template mw_n2_PWSRestartIndication + + } // End of group Receive + + } // End of group PWS_RESTART_INDICATION + + group PWS_FAILURE_INDICATION { + group Send { - } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.5 PWS RESTART INDICATION + */ + /*template (value) UnsuccessfulOutcome m_n2_PWSFailureIndication( + in template (value) PWSFailedCellList p_pWSFailedCellList, + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { + procedureCode := id_PWSRestartIndication, + criticality := ignore, + value_ := { + PWSFailureIndication := { + protocolIEs := { + { + id := id_PWSFailedCellList, + criticality := reject, + value_ := { PWSFailedCellList := p_pWSFailedCellList } + }, + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + } + } + } + } + }*/ // End of template m_n2_PWSFailureIndication + + } // End of group Send + group Receive { - } - } + + } // End of group Receive + + } // End of group PWS_FAILURE_INDICATION + } // End of group Warning_Message_Transmission_Messages //9.2.9 -- GitLab From bf2a382868b2687ea3ae460c05e3afe5a7391c0f Mon Sep 17 00:00:00 2001 From: pintar Date: Mon, 25 Mar 2024 11:09:23 +0100 Subject: [PATCH 184/365] Renumbering, PICS updated in GNB_PDU, alignments,... --- test_purposes/Ngap_Common.tplan2 | 4 +- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 1130 +++++++++++------------- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 884 +++++++++--------- 3 files changed, 965 insertions(+), 1053 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 9494583..153b094 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -22,7 +22,9 @@ Package Ngap_Common { Domain { pics: - NONE - - PICS_A2/1 //gNB + - PICS_A2/1 //NG RAN + - PICS_A2/1_1 //gNB + - PICS_A2/1_2 //ng-eNB - PICS_A2/2 //AMF - PICS_A3/1_1 //gNB - PDU session management procedure - PDU SESSION RESOURCE SETUP REQUEST - PICS_A3/1_2 //gNB - PDU session management procedure - PDU SESSION RESOURCE RELEASE COMMAND diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index b9671d6..8416013 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -54,10 +54,10 @@ Package TP_AMF { PDU_Session_Resource_Setup_Request_Transfer; ; to the GNB entity - } - } + } + } - } // end TP_NGAP_AMF_PDU_01 + } // end TP_NGAP_AMF_PDU_01 Test Purpose { @@ -95,10 +95,9 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - } // end TP_NGAP_AMF_PDU_02 + } + } + } // end TP_NGAP_AMF_PDU_02 Test Purpose { @@ -145,10 +144,9 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - } // end TP_NGAP_AMF_PDU_03 + } + } + } // end TP_NGAP_AMF_PDU_03 Test Purpose { @@ -210,7 +208,6 @@ Package TP_AMF { to the GNB entity } } - } // end TP_NGAP_AMF_PDU_04 Test Purpose { @@ -268,7 +265,6 @@ Package TP_AMF { to the GNB entity } } - } // end TP_NGAP_AMF_PDU_05 } // end Group 8.2 PDU Session Management Procedures @@ -340,12 +336,10 @@ Package TP_AMF { ; to the GNB entity } - } - } // end TP_NGAP_AMF_CMP_01 - } + } // end Group "Initial Context Setup" Group "UE Context Release (AMF initiated)" { @@ -353,7 +347,7 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_CMP_08 + TP Id TP_NGAP_AMF_CMP_02 Test objective "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE." @@ -384,15 +378,13 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - - } // end TP_NGAP_AMF_CMP_08 + } + } + } // end TP_NGAP_AMF_CMP_02 Test Purpose { - TP Id TP_NGAP_AMF_CMP_11 + TP Id TP_NGAP_AMF_CMP_03 Test objective "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND where both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE are not available." @@ -422,11 +414,9 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - - } // end TP_NGAP_AMF_CMP_11 + } + } + } // end TP_NGAP_AMF_CMP_03 } // End Group "UE Context Release (AMF initiated)" @@ -437,39 +427,36 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_CMP_02 - - Test objective "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2 and 9.2.2.7" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A2/2 and PICS_A4/2_4 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate a PDU UE context modification procedure - } - then { - the IUT entity sends a UE_CONTEXT_MODIFICATION_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - to the GNB entity - } - - } - - - } // end TP TP_NGAP_AMF_CMP_02 + TP Id TP_NGAP_AMF_CMP_04 + + Test objective "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.2 and 9.2.2.7" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/2_4 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PDU UE context modification procedure + } + then { + the IUT entity sends a UE_CONTEXT_MODIFICATION_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the GNB entity + } + } + } // end TP TP_NGAP_AMF_CMP_04 } // End Group UE Context Modification @@ -479,37 +466,35 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_CMP_09 - - Test objective "Verify that the IUT can send a CONNECTION ESTABLISHMENT INDICATION that contains mandatory IEs." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.6.2 and 9.2.2.11" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A2/2 and PICS_A4/2_6 - - Initial conditions with { - the UE entity isRegisteredTo the AMF - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate a PDU UE context modification procedure - } - then { - the IUT entity sends a CONNECTION_ESTABLISHMENT_INDICATION containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - to the GNB entity - } - - } - - } // End TP TP_NGAP_AMF_CMP_09 + TP Id TP_NGAP_AMF_CMP_05 + + Test objective "Verify that the IUT can send a CONNECTION ESTABLISHMENT INDICATION that contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.6.2 and 9.2.2.11" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/2_6 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a PDU UE context modification procedure + } + then { + the IUT entity sends a CONNECTION_ESTABLISHMENT_INDICATION containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the GNB entity + } + } + } // End TP TP_NGAP_AMF_CMP_05 } // End Group "Connection Establishment Indication" @@ -520,38 +505,36 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_CMP_10 - - Test objective "Verify that the IUT can send a AMF CP RELOCATION INDICATION that contains mandatory IEs." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.7.2 and 9.2.2.12" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A2/2 and PICS_A4/2_7 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate a AMF CP relocation indication procedure - } - then { - the IUT entity sends a AMF_CP_RELOCATION_INDICATION containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - to the GNB entity - } - - } - - } // End TP TP_NGAP_AMF_CMP_10 + TP Id TP_NGAP_AMF_CMP_06 + + Test objective "Verify that the IUT can send a AMF CP RELOCATION INDICATION that contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.7.2 and 9.2.2.12" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/2_7 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a AMF CP relocation indication procedure + } + then { + the IUT entity sends a AMF_CP_RELOCATION_INDICATION containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the GNB entity + } + } + } // End TP TP_NGAP_AMF_CMP_06 } // End Group "AMF CP Relocation Indication" @@ -562,152 +545,149 @@ Package TP_AMF { Test Purpose { - // This TP applies only if the NG-RAN node is an ng-eNB - TP Id TP_NGAP_AMF_CMP_12 - - Test objective "Verify that the IUT can successfully request UE information from the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.9.2, 8.3.10.2, 9.2.2.14 and 9.2.2.15" - - - Config Id CFG_AMF_01 - - PICS Selection PICS_A2/2 and PICS_A4/2_9 and PICS_A4/2_10 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a RETRIEVE_UE_INFORMATION containing - 5G_S_TMSI containing - AMF_Set_ID, - AMF_Pointer, - 5G_TMSI - ; - ; - from the GNB entity - } - then { - the IUT entity sends a UE_INFORMATION_TRANSFER containing - 5G_S_TMSI containing - AMF_Set_ID, - AMF_Pointer, - 5G_TMSI - ; - ; - to the GNB entity - } - - } - - } // End TP TP_NGAP_GNB_CMP_12 + // This TP applies only if the NG-RAN node is an ng-eNB + TP Id TP_NGAP_AMF_CMP_07 + + Test objective "Verify that the IUT can successfully request UE information from the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.9.2, 8.3.10.2, 9.2.2.14 and 9.2.2.15" + + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/2_9 and PICS_A4/2_10 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a RETRIEVE_UE_INFORMATION containing + 5G_S_TMSI containing + AMF_Set_ID, + AMF_Pointer, + 5G_TMSI + ; + ; + from the GNB entity + } + then { + the IUT entity sends a UE_INFORMATION_TRANSFER containing + 5G_S_TMSI containing + AMF_Set_ID, + AMF_Pointer, + 5G_TMSI + ; + ; + to the GNB entity + } + } + } // End TP TP_NGAP_GNB_CMP_07 } // End Group "Retrieve UE information" Group "UE Context Suspend" - { - import all from Ngap_Common; - - Test Purpose { - - // This TP applies only if the NG-RAN node is an ng-eNB - TP Id TP_NGAP_AMF_CMP_05 - - Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2, 9.2.2.16 and 9.2.2.17" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A2/2 and PICS_A4/2_11 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Suspend_List containing - PDU_Session_Resource_Suspend_Item containing - PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Suspend_Request_Transfer containing - Suspend_Indicator; - ; - ; - ; - from the GNB entity - } - then { - the IUT entity sends a UE_CONTEXT_SUSPEND_RESPONSE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_CMP_05 - - Test Purpose { - - // This TP applies only if the NG-RAN node is an ng-eNB - TP Id TP_NGAP_AMF_CMP_06 - - Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.3, 9.2.2.16 and 9.2.2.18" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A2/2 and PICS_A4/2_11 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext and - the UE entity hasPendingDataTransmission - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Suspend_List containing - PDU_Session_Resource_Suspend_Item containing - PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Suspend_Request_Transfer containing - Suspend_Indicator; - ; - ; - ; - from the GNB entity - } - then { - the IUT entity sends a UE_CONTEXT_SUSPEND_FAILURE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - Cause - ; - to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_CMP_06 - - }// end Group UE Context Suspend + { + import all from Ngap_Common; + + Test Purpose { + + // This TP applies only if the NG-RAN node is an ng-eNB + TP Id TP_NGAP_AMF_CMP_08 + + Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2, 9.2.2.16 and 9.2.2.17" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/2_11 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Suspend_List containing + PDU_Session_Resource_Suspend_Item containing + PDU_SessionId indicating value PX_PDU_ID, + UE_Context_Suspend_Request_Transfer containing + Suspend_Indicator; + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a UE_CONTEXT_SUSPEND_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the GNB entity + } + } + + } // end TP TP_NGAP_AMF_CMP_08 + + Test Purpose { + + // This TP applies only if the NG-RAN node is an ng-eNB + TP Id TP_NGAP_AMF_CMP_09 + + Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.3, 9.2.2.16 and 9.2.2.18" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/2_11 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext and + the UE entity hasPendingDataTransmission + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a UE_CONTEXT_SUSPEND_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Suspend_List containing + PDU_Session_Resource_Suspend_Item containing + PDU_SessionId indicating value PX_PDU_ID, + UE_Context_Suspend_Request_Transfer containing + Suspend_Indicator; + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a UE_CONTEXT_SUSPEND_FAILURE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause + ; + to the GNB entity + } + } + } // end TP TP_NGAP_AMF_CMP_09 + + }// end Group UE Context Suspend Group "UE Context Resume" { @@ -715,7 +695,7 @@ Package TP_AMF { Test Purpose { // This TP applies only if the NG-RAN node is an ng-eNB - TP Id TP_NGAP_AMF_CMP_07 + TP Id TP_NGAP_AMF_CMP_10 Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." @@ -761,15 +741,15 @@ Package TP_AMF { ; ; to the GNB entity - } - } + } + } - } // end TP TP_NGAP_AMF_CMP_07 + } // end TP TP_NGAP_AMF_CMP_10 Test Purpose { // This TP applies only if the NG-RAN node is an ng-eNB - TP Id TP_NGAP_AMF_CMP_13 + TP Id TP_NGAP_AMF_CMP_11 Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME FAILURE with failing to resume UE context." @@ -808,10 +788,9 @@ Package TP_AMF { Cause ; to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_CMP_13 + } + } + } // end TP TP_NGAP_AMF_CMP_11 } // end Group "UE Context Resume" @@ -873,12 +852,12 @@ Package TP_AMF { ; ; to the GNB entity - } - } + } + } - } // end TP TP_NGAP_AMF_MMP_01 + } // end TP TP_NGAP_AMF_MMP_01 - Test Purpose { + Test Purpose { TP Id TP_NGAP_AMF_MMP_02 @@ -921,12 +900,9 @@ Package TP_AMF { Cause ; to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_MMP_02 - - + } + } + } // end TP TP_NGAP_AMF_MMP_02 } // End Group "Handover Preparation" @@ -1065,73 +1041,72 @@ Package TP_AMF { ; ; to the GNB entity - } - } + } + } - } // End TP_NGAP_AMF_MMP_04 + } // End TP_NGAP_AMF_MMP_04 - Test Purpose { - - TP Id TP_NGAP_AMF_MMP_05 - - Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with same ID and answers with PATH SWITCH REQUEST FAILURE." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.4.4, 9.2.3.8 and 9.2.3.10" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A2/2 and PICS_A4/3_4 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a PATH_SWITCH_REQUEST containing - RAN_UE_NGAP_ID, - Source_AMF_UE_NGAP_ID, - User_Location_Information, - UE_Security_Capabilities containing - NR_Encryption_Algorithms, - NR_Integrity_Protection_Algorithms, - E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, - PDU_Session_Resources_to_be_Switched_in_Downlink_List containing - PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing - PDU_SessionId, - Path_Switch_Request_Transfer - ;, - PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing - PDU_SessionId, - Path_Switch_Request_Transfer - ; - ; - ; - from the GNB entity - } - then { - the IUT entity sends a PATH_SWITCH_REQUEST_FAILURE containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Released_List containing - PDU_Session_Resource_Released_Item containing - PDU_SessionId, - Path_Switch_Request_Unsuccessful_Transfer containing - Cause - ; - ; - ; - ; - to the GNB entity - } - } - - } // End TP_NGAP_AMF_MMP_05 + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_05 + + Test objective "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with same ID and answers with PATH SWITCH REQUEST FAILURE." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.4.4, 9.2.3.8 and 9.2.3.10" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/3_4 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PATH_SWITCH_REQUEST containing + RAN_UE_NGAP_ID, + Source_AMF_UE_NGAP_ID, + User_Location_Information, + UE_Security_Capabilities containing + NR_Encryption_Algorithms, + NR_Integrity_Protection_Algorithms, + E_UTRA_Encryption_Algorithms, + E_UTRA_Integrity_Protection_Algorithms + ;, + PDU_Session_Resources_to_be_Switched_in_Downlink_List containing + PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing + PDU_SessionId, + Path_Switch_Request_Transfer + ;, + PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing + PDU_SessionId, + Path_Switch_Request_Transfer + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a PATH_SWITCH_REQUEST_FAILURE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Released_List containing + PDU_Session_Resource_Released_Item containing + PDU_SessionId, + Path_Switch_Request_Unsuccessful_Transfer containing + Cause + ; + ; + ; + ; + to the GNB entity + } + } + } // End TP_NGAP_AMF_MMP_05 } // End Group "Path Switch Request" @@ -1173,52 +1148,12 @@ Package TP_AMF { RAN_UE_NGAP_ID ; to the GNB entity - } - } - - } // End TP_NGAP_AMF_MMP_05 + } + } + } // End TP_NGAP_AMF_MMP_06 } // End Group "Handover Cancellation" - Group "Handover Success" - { - import all from Ngap_Common; - - Test Purpose { - - TP Id TP_NGAP_AMF_MMP_09 - - Test objective "Verify that the NG-RAN node successfully sends a Handover Success message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.8.2 and 9.2.3.15" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/3_8 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the GNB entity completedHandover - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate the initiation "of an UE handover success procedure" - } - then { - the IUT entity sends a HANDOVER_SUCCESS containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - to the GNB entity - } - } - } // End TP_NGAP_GNB_MMP_03 - - } // End Group "Handover Success" - Group "Downlink RAN Status Transfer" { import all from Ngap_Common; @@ -1275,20 +1210,58 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - } // End TP_NGAP_AMF_MMP_07 + } + } + } // End TP_NGAP_AMF_MMP_07 } // End Group "Downlink RAN Status Transfer" + Group "Handover Success" + { + import all from Ngap_Common; + + Test Purpose { + + TP Id TP_NGAP_AMF_MMP_08 + + Test objective "Verify that the NG-RAN node successfully sends a Handover Success message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.8.2 and 9.2.3.15" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/3_8 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the GNB entity completedHandover + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of an UE handover success procedure" + } + then { + the IUT entity sends a HANDOVER_SUCCESS containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the GNB entity + } + } + } // End TP_NGAP_GNB_MMP_08 + + } // End Group "Handover Success" + Group "Downlink RAN Early Status Transfer" { import all from Ngap_Common; Test Purpose { - TP Id TP_NGAP_AMF_MMP_08 + TP Id TP_NGAP_AMF_MMP_09 Test objective "Verify that the AMF node successfully sends a DOWNLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." @@ -1334,10 +1307,9 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - } // End TP_NGAP_AMF_MMP_08 + } + } + } // End TP_NGAP_AMF_MMP_09 } // End Group "Downlink RAN Status Transfer" @@ -1394,8 +1366,8 @@ Package TP_AMF { to the GNB entity } } - - } // end TP_NGAP_GNB_PAG_01 + } // end TP_NGAP_GNB_PAG_01 + } // end "Paging" } // end "8.5 Paging Procedures" @@ -1445,8 +1417,7 @@ Package TP_AMF { to the GNB entity } } - - } // end TP_NGAP_AMF_NAS_01 + } // end TP_NGAP_AMF_NAS_01 } // end "Downlink NAS Transport" @@ -1492,7 +1463,6 @@ Package TP_AMF { to the GNB entity } } - } // end TP_NGAP_AMF_NAS_02 } // end "Reroute NAS Request" @@ -1577,10 +1547,9 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_IMP_01 + } + } + } // end TP TP_NGAP_AMF_IMP_01 Test Purpose { @@ -1628,16 +1597,13 @@ Package TP_AMF { Cause ; to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_IMP_02 - - + } + } + } // end TP TP_NGAP_AMF_IMP_02 Test Purpose { - TP Id TP_NGAP_AMF_IMP_11 + TP Id TP_NGAP_AMF_IMP_03 Test objective "Verify that the AMF node successfully processes a NG SETUP REQEST message with optional field UE Retention Information and answers with NG SETUP RESPONSE to acknowledge the setup." @@ -1709,14 +1675,13 @@ Package TP_AMF { UE_Retention_Information ; to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_IMP_11 - - Test Purpose { + } + } + } // end TP TP_NGAP_AMF_IMP_03 + + Test Purpose { - TP Id TP_NGAP_AMF_IMP_12 + TP Id TP_NGAP_AMF_IMP_04 Test objective "Verify that the AMF node successfully processes a NG SETUP REQEST message with different optional fields and answers with NG SETUP RESPONSE to acknowledge the setup." @@ -1803,12 +1768,11 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_IMP_12 - - } // End Group "NG Setup" + } + } + } // end TP TP_NGAP_AMF_IMP_04 + + } // End Group "NG Setup" Group "RAN Configuration Update" { @@ -1816,7 +1780,7 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_IMP_03 + TP Id TP_NGAP_AMF_IMP_05 Test objective "Verify that the AMF node successfully processes a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." @@ -1857,58 +1821,56 @@ Package TP_AMF { then { the IUT entity sends a RAN_CONFIGURATION_UPDATE_ACKNOWLEDGE to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_IMP_03 - - Test Purpose { - - TP Id TP_NGAP_AMF_IMP_04 - - Test objective "Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.2.2 and 9.2.6.4 and 9.2.6.6" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A2/2 and PICS_A4/6_2 - - Initial conditions with { - the UE entity isRegisteredTo the AMF - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a RAN_CONFIGURATION_UPDATE containing - Supported_TA_List containing - Supported_TA_Item containing // Implementation note: e.g. TA List is updated due to UE moving into a new TA - TAC, // Implementation note: The TAC in the NG Setup Request message does not match the TAC of the AMF. - Broadcast_PLMN_List containing - Broadcast_PLMN_Item containing - PLMN_Identity, - TAI_Slice_Support_List containing - S_NSSAI containing - SST - ; - ; - ; - ; - ; - ; - ; - from the GNB entity - } - then { - the IUT entity sends a RAN_CONFIGURATION_UPDATE_FAILURE containing - Cause; - to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_IMP_04 + } + } + } // end TP TP_NGAP_AMF_IMP_05 + + Test Purpose { + + TP Id TP_NGAP_AMF_IMP_06 + + Test objective "Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.2.2 and 9.2.6.4 and 9.2.6.6" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/6_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a RAN_CONFIGURATION_UPDATE containing + Supported_TA_List containing + Supported_TA_Item containing // Implementation note: e.g. TA List is updated due to UE moving into a new TA + TAC, // Implementation note: The TAC in the NG Setup Request message does not match the TAC of the AMF. + Broadcast_PLMN_List containing + Broadcast_PLMN_Item containing + PLMN_Identity, + TAI_Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; + ; + ; + ; + ; + from the GNB entity + } + then { + the IUT entity sends a RAN_CONFIGURATION_UPDATE_FAILURE containing + Cause; + to the GNB entity + } + } + } // end TP TP_NGAP_AMF_IMP_06 } // End Group "RAN Configuration Update" @@ -1918,58 +1880,55 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_IMP_05 - - Test objective "Verify that the IUT can send a AMF CONFIGURATION UPDATE message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.3.2 and 9.2.6.7" - - Config Id CFG_AMF_01 - - PICS Selection PICS_A2/2 and PICS_A4/6_3 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity isCMIDLE and - the UE entity hasReceivedPAGINGMessage - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate the initiation "of a AMF CONFIGURATION UPDATE procedure" - } - then { - the IUT entity sends a AMF_CONFIGURATION_UPDATE containing - Served_GUAMI_List containing - Served_GUAMI_Item containing - GUAMI containing - PLMN_Identity, - AMF_Region_ID, - AMF_Set_ID, - AMF_Pointer - ; - ; - ;, - PLMN_Support_List containing - PLMN_Support_Item containing - PLMN_Identity, - Slice_Support_List containing - S_NSSAI containing - SST - ; - ; - ; - ; - ; - to the GNB entity - } - - } - - - } // end TP TP_NGAP_AMF_IMP_05 + TP Id TP_NGAP_AMF_IMP_07 + + Test objective "Verify that the IUT can send a AMF CONFIGURATION UPDATE message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.3.2 and 9.2.6.7" + + Config Id CFG_AMF_01 + + PICS Selection PICS_A2/2 and PICS_A4/6_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity isCMIDLE and + the UE entity hasReceivedPAGINGMessage + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of a AMF CONFIGURATION UPDATE procedure" + } + then { + the IUT entity sends a AMF_CONFIGURATION_UPDATE containing + Served_GUAMI_List containing + Served_GUAMI_Item containing + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; + ; + ;, + PLMN_Support_List containing + PLMN_Support_Item containing + PLMN_Identity, + Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; + ; + ; + to the GNB entity + } + } + } // end TP TP_NGAP_AMF_IMP_07 } // End Group "AMF Configuration Update" @@ -1979,7 +1938,7 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_IMP_06 + TP Id TP_NGAP_AMF_IMP_08 Test objective "Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." @@ -2011,10 +1970,9 @@ Package TP_AMF { then { the IUT entity sends a NG_RESET_ACKNOWLEDGE to the GNB entity - } - } - - } // end TP TP_NGAP_AMF_IMP_06 + } + } + } // end TP TP_NGAP_AMF_IMP_08 } // End Group "NG Reset" @@ -2024,7 +1982,7 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_IMP_07 + TP Id TP_NGAP_AMF_IMP_09 Test objective "Verify that the AMF can send a ERROR INDICATION to the GNB when a error occurs." @@ -2082,10 +2040,10 @@ Package TP_AMF { then { the IUT entity sends a ERROR_INDICATION to the GNB entity - } - } - - } // end TP_NGAP_AMF_IMP_07 + } + } + } // end TP_NGAP_AMF_IMP_09 + } // End Group Error Indication Group "AMF Status Indication" @@ -2094,7 +2052,7 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_IMP_08 + TP Id TP_NGAP_AMF_IMP_10 Test objective "Verify that the AMF can send a AMF STATUS INDICATION to the GNB when a error occurs." @@ -2128,10 +2086,9 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - } // end TP_NGAP_AMF_IMP_08 + } + } + } // end TP_NGAP_AMF_IMP_10 } // End Group "AMF Status Indication" @@ -2141,7 +2098,7 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_IMP_09 + TP Id TP_NGAP_AMF_IMP_11 Test objective "Verify that the AMF can send a OVERLOAD START to the GNB." @@ -2172,10 +2129,9 @@ Package TP_AMF { ; ; to the GNB entity - } - } - - } // end TP_NGAP_AMF_IMP_09 + } + } + } // end TP_NGAP_AMF_IMP_11 } // End Group "Overload Start" Group "Overload Stop" @@ -2184,7 +2140,7 @@ Package TP_AMF { Test Purpose { - TP Id TP_NGAP_AMF_IMP_10 + TP Id TP_NGAP_AMF_IMP_12 Test objective "Verify that the AMF can send a OVERLOAD STOP to the GNB." @@ -2207,10 +2163,10 @@ Package TP_AMF { then { the IUT entity sends a OVERLOAD_STOP to the GNB entity - } - } - - } // end TP_NGAP_AMF_IMP_10 + } + } + } // end TP_NGAP_AMF_IMP_12 + } // End Group "Overload Stop" } // End Group "8.7 Interface Management Procedures" @@ -2256,7 +2212,6 @@ Package TP_AMF { to the GNB entity } } - } // end TP_NGAP_AMF_CTP_01 } // end "Downlink RAN Configuration Transfer" @@ -2296,10 +2251,9 @@ Package TP_AMF { Repetition_Period, Number_of_Broadcasts_Requested; to the GNB entity - } } - - } // end TP_NGAP_AMF_WTP_01 + } + } // end TP_NGAP_AMF_WTP_01 Test Purpose { @@ -2328,10 +2282,9 @@ Package TP_AMF { Message_Identifier, Serial_Number; to the GNB entity - } } - - } // end TP_NGAP_AMF_WTP_02 + } + } // end TP_NGAP_AMF_WTP_02 } // "8.9 Warning Message Transmission Procedures" @@ -2368,10 +2321,9 @@ Package TP_AMF { Routing_ID, NRPPa_PDU; to the GNB entity - } } - - } // end TP_NGAP_AMF_NTP_01 + } + } // end TP_NGAP_AMF_NTP_01 Test Purpose { @@ -2400,10 +2352,9 @@ Package TP_AMF { Routing_ID, NRPPa_PDU; to the GNB entity - } } - - } // end TP_NGAP_AMF_NTP_02 + } + } // end TP_NGAP_AMF_NTP_02 } // "8.10 NRPPa Transport Procedures" @@ -2443,10 +2394,9 @@ Package TP_AMF { Trace_Depth, Trace_Collection_Entity_IP_Address;; to the GNB entity - } } - - } // end TP_NGAP_AMF_TRP_01 + } + } // end TP_NGAP_AMF_TRP_01 Test Purpose { @@ -2476,10 +2426,9 @@ Package TP_AMF { RAN_UE_NGAP_ID, NG_RAN_Trace_ID; to the GNB entity - } } - - } // end TP_NGAP_AMF_TRP_02 + } + } // end TP_NGAP_AMF_TRP_02 } // "8.11 Trace Procedures" @@ -2520,7 +2469,6 @@ Package TP_AMF { to the GNB entity } } - } // end TP_NGAP_AMF_LRP_01 } // end "Location Reporting Control" @@ -2558,10 +2506,9 @@ Package TP_AMF { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; to the GNB entity - } } - - } // end TP_NGAP_AMF_UBP_01 + } + } // end TP_NGAP_AMF_UBP_01 } // end Group "8.13 UE TNLA Binding Procedures" @@ -2596,10 +2543,9 @@ Package TP_AMF { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; to the GNB entity - } } - - } // end TP_NGAP_AMF_URP_01 + } + } // end TP_NGAP_AMF_URP_01 Test Purpose { @@ -2630,10 +2576,9 @@ Package TP_AMF { UE_Radio_Capability_ID, UE_Radio_Capability; to the GNB entity - } } - - } // end TP_NGAP_AMF_URP_02 + } + } // end TP_NGAP_AMF_URP_02 } // end Group "8.14 UE Radio Capability Management Procedures" @@ -2671,10 +2616,9 @@ Package TP_AMF { then { the IUT entity sends a DOWNLINK_RIM_INFORMATION_TRANSFER to the GNB entity - } } - - } // end TP_NGAP_AMF_RIP_01 + } + } // end TP_NGAP_AMF_RIP_01 } // end Group "8.16 RIM Information Transfer Procedures" } // End of Package TP_AMF diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index f6f7ccd..7effeb6 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -31,7 +31,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -90,7 +90,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -162,7 +162,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -221,7 +221,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_1 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -283,7 +283,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_2 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -333,7 +333,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_2 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -389,7 +389,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_3 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -456,7 +456,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_4 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -481,10 +481,10 @@ Package TP_GNB { ; ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_PDU_08 + } // end TP_NGAP_GNB_PDU_08 Test Purpose { @@ -497,7 +497,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A3/5_1 + PICS Selection PICS_A2/1 and PICS_A3/1_5 Initial conditions with { the UE entity isRegisteredTo the AMF @@ -521,10 +521,10 @@ Package TP_GNB { ; ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_PDU_09 + } // end TP_NGAP_GNB_PDU_09 } // end Group 8.2 PDU Session Management Procedures @@ -601,14 +601,14 @@ Package TP_GNB { PDU_Session_Resource_Setup_Response_Transfer; ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_CMP_01 + } // end TP_NGAP_GNB_CMP_01 - Test Purpose { + Test Purpose { - TP Id TP_NGAP_GNB_CMP_17 + TP Id TP_NGAP_GNB_CMP_02 Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." @@ -635,7 +635,6 @@ Package TP_GNB { AMF_Set_ID, AMF_Pointer ;, - Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing @@ -660,14 +659,14 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_CMP_17 + } // end TP_NGAP_GNB_CMP_02 Test Purpose { - TP Id TP_NGAP_GNB_CMP_12 + TP Id TP_NGAP_GNB_CMP_03 Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Trace Activation and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." @@ -738,14 +737,14 @@ Package TP_GNB { PDU_Session_Resource_Setup_Response_Transfer; ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_CMP_12 + } // end TP_NGAP_GNB_CMP_03 Test Purpose { - TP Id TP_NGAP_GNB_CMP_13 + TP Id TP_NGAP_GNB_CMP_04 Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Mobility Restriction List and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." @@ -812,14 +811,14 @@ Package TP_GNB { PDU_Session_Resource_Setup_Response_Transfer; ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_CMP_13 + } // end TP_NGAP_GNB_CMP_04 Test Purpose { - TP Id TP_NGAP_GNB_CMP_14 + TP Id TP_NGAP_GNB_CMP_05 Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with different optional fields and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." @@ -906,14 +905,14 @@ Package TP_GNB { PDU_Session_Resource_Setup_Response_Transfer; ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_CMP_14 + } // end TP_NGAP_GNB_CMP_05 Test Purpose { - TP Id TP_NGAP_GNB_CMP_02 + TP Id TP_NGAP_GNB_CMP_06 Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." @@ -979,11 +978,11 @@ Package TP_GNB { PDU_Session_Resource_Setup_Unsuccessful_Transfer; ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_CMP_02 - } // end Group Initial Context Setup + } // end TP_NGAP_GNB_CMP_06 + } // end Group Initial Context Setup Group "UE Context Release (NG-RAN node initiated)" { @@ -992,39 +991,39 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_CMP_10 - - Test objective "Verify that the NG-RAN node successfully requests the AMF to release the UE-associated logical NG-connection." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.2.2 and 9.2.2.4" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/2_2 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate a UE context release request - } - then { - the IUT entity sends a UE_CONTEXT_RELEASE_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - Cause - ; - to the AMF entity - } - - } - - } // End TP TP_NGAP_GNB_CMP_10 + TP Id TP_NGAP_GNB_CMP_07 + + Test objective "Verify that the NG-RAN node successfully requests the AMF to release the UE-associated logical NG-connection." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.2.2 and 9.2.2.4" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/2_2 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE context release request + } + then { + the IUT entity sends a UE_CONTEXT_RELEASE_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Cause + ; + to the AMF entity + } + + } + + } // End TP TP_NGAP_GNB_CMP_07 } // End Group "UE Context Release (NG-RAN node initiated)" @@ -1034,7 +1033,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_CMP_07 + TP Id TP_NGAP_GNB_CMP_08 Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." @@ -1069,12 +1068,12 @@ Package TP_GNB { RAN_UE_NGAP_ID ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_CMP_07 + } // end TP_NGAP_GNB_CMP_08 - Test Purpose { + Test Purpose { TP Id TP_NGAP_GNB_CMP_09 @@ -1116,10 +1115,10 @@ Package TP_GNB { ; ; to the AMF entity - } - } + } + } - } // end TP_NGAP_GNB_CMP_09 + } // end TP_NGAP_GNB_CMP_09 } // End Group "UE Context Release (AMF initiated)" @@ -1129,7 +1128,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_CMP_03 + TP Id TP_NGAP_GNB_CMP_10 Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE because the UE is no longer available." @@ -1160,14 +1159,14 @@ Package TP_GNB { Cause ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_CMP_03 + } // end TP TP_NGAP_GNB_CMP_10 Test Purpose { - TP Id TP_NGAP_GNB_CMP_04 + TP Id TP_NGAP_GNB_CMP_11 Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." @@ -1198,14 +1197,14 @@ Package TP_GNB { RAN_UE_NGAP_ID ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_CMP_04 + } // end TP TP_NGAP_GNB_CMP_11 Test Purpose { - TP Id TP_NGAP_GNB_CMP_15 + TP Id TP_NGAP_GNB_CMP_12 Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains optional fields Security Key and Security Capabilities and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." @@ -1243,14 +1242,14 @@ Package TP_GNB { RAN_UE_NGAP_ID ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_CMP_15 + } // end TP TP_NGAP_GNB_CMP_12 Test Purpose { - TP Id TP_NGAP_GNB_CMP_16 + TP Id TP_NGAP_GNB_CMP_13 Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains different optional fields and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." @@ -1310,10 +1309,10 @@ Package TP_GNB { RAN_UE_NGAP_ID ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_CMP_16 + } // end TP TP_NGAP_GNB_CMP_13 } // end Group UE Context Modification @@ -1323,7 +1322,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_CMP_11 + TP Id TP_NGAP_GNB_CMP_14 Test objective "Verify that the IUT can send a RRC INACTIVE TRANSITION REPORT that contains mandatory IEs" @@ -1352,10 +1351,10 @@ Package TP_GNB { User_Location_Information ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_CMP_07 + } // end TP TP_NGAP_GNB_CMP_14 } // End Group "RRC Inactive Transition Report" @@ -1366,97 +1365,97 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_CMP_08 - - Test objective "Verify that the IUT can send a RAN CP Relocation Indication that contains mandatory IEs." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.8.2 and 9.2.2.13" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/2_8 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate a RAN CP relocation indication procedure - } - then { - the IUT entity sends a RAN_CP_RELOCATION_INDICATION containing - RAN_UE_NGAP_ID, - 5G_S_TMSI containing - AMF_Set_ID, - AMF_Pointer, - 5G_TMSI - ;, - E_ULTRA_CGI containing - PLMN_Identity, - E_UTRA_Cell_Identity - ;, - TAI containing - PLMN_Identity, - TAC - ;, - UL_CP_Security_Information containing - UL_NAS_MAC, - UL_NAS_Count - ; - ; - to the AMF entity - } - - } - - } // End TP TP_NGAP_GNB_CMP_08 + TP Id TP_NGAP_GNB_CMP_15 + + Test objective "Verify that the IUT can send a RAN CP Relocation Indication that contains mandatory IEs." + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.8.2 and 9.2.2.13" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1_2 and PICS_A3/2_8 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a RAN CP relocation indication procedure + } + then { + the IUT entity sends a RAN_CP_RELOCATION_INDICATION containing + RAN_UE_NGAP_ID, + 5G_S_TMSI containing + AMF_Set_ID, + AMF_Pointer, + 5G_TMSI + ;, + E_ULTRA_CGI containing + PLMN_Identity, + E_UTRA_Cell_Identity + ;, + TAI containing + PLMN_Identity, + TAC + ;, + UL_CP_Security_Information containing + UL_NAS_MAC, + UL_NAS_Count + ; + ; + to the AMF entity + } + + } + + } // End TP TP_NGAP_GNB_CMP_15 } // End Group "RAN CP Relocation Indication" Group "UE Context Suspend" - { - import all from Ngap_Common; - - Test Purpose { - - // This TP applies only if the NG-RAN node is an ng-eNB - TP Id TP_NGAP_GNB_CMP_05 - - Test objective "Verify that the IUT can send a UE CONTEXT SUSPEND REQUEST contains mandatory IEs" - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2 and 9.2.2.16" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/2_11 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate a UE context suspend request - } - then { - the IUT entity sends a UE_CONTEXT_SUSPEND_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - to the AMF entity - } - } - - } // end TP TP_NGAP_GNB_CMP_05 - - }// end Group UE Context Suspend + { + import all from Ngap_Common; + + Test Purpose { + + // This TP applies only if the NG-RAN node is an ng-eNB + TP Id TP_NGAP_GNB_CMP_16 + + Test objective "Verify that the IUT can send a UE CONTEXT SUSPEND REQUEST contains mandatory IEs" + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2 and 9.2.2.16" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1_2 and PICS_A3/2_11 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedInitialContext + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate a UE context suspend request + } + then { + the IUT entity sends a UE_CONTEXT_SUSPEND_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID + ; + to the AMF entity + } + } + + } // end TP TP_NGAP_GNB_CMP_16 + + }// end Group UE Context Suspend Group "UE Context Resume" { @@ -1465,7 +1464,7 @@ Package TP_GNB { Test Purpose { // This TP applies only if the NG-RAN node is an ng-eNB - TP Id TP_NGAP_GNB_CMP_06 + TP Id TP_NGAP_GNB_CMP_17 Test objective "Verify that the IUT can send a UE CONTEXT RESUME REQUEST contains mandatory IEs" @@ -1474,7 +1473,7 @@ Package TP_GNB { Config Id CFG_GNB_01 - PICS Selection PICS_A2/1 and PICS_A3/2_12 + PICS Selection PICS_A2/1_2 and PICS_A3/2_12 Initial conditions with { the UE entity isRegisteredTo the AMF and @@ -1493,10 +1492,10 @@ Package TP_GNB { RRC_Resume_Cause ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_CMP_06 + } // end TP TP_NGAP_GNB_CMP_17 } // End Group "UE Context Resume" @@ -1548,10 +1547,9 @@ Package TP_GNB { ; to the AMF entity } - } - - } // end TP TP_NGAP_GNB_MMP_01 + } + } // end TP TP_NGAP_GNB_MMP_01 } // End Group "Handover Preparation" @@ -1561,7 +1559,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_MMP_08 + TP Id TP_NGAP_GNB_MMP_02 Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." @@ -1662,14 +1660,14 @@ Package TP_GNB { ; ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_MMP_08 + } // end TP TP_NGAP_GNB_MMP_02 Test Purpose { - TP Id TP_NGAP_GNB_MMP_09 + TP Id TP_NGAP_GNB_MMP_03 Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST FAILURE because the UE is not longer available." @@ -1753,15 +1751,15 @@ Package TP_GNB { Cause ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_MMP_09 + } // end TP TP_NGAP_GNB_MMP_03 // TP covers important optional IE. Can be used as blueprint to create further TPs or reduce the optional IEs within this TP. Test Purpose { - TP Id TP_NGAP_GNB_MMP_10 + TP Id TP_NGAP_GNB_MMP_04 Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." @@ -1923,14 +1921,14 @@ Package TP_GNB { ; ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_MMP_10 + } // end TP TP_NGAP_GNB_MMP_04 Test Purpose { - TP Id TP_NGAP_GNB_MMP_11 + TP Id TP_NGAP_GNB_MMP_05 Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs within the Handover Request Transfer IEs and answers with correct HANDOVER REQUEST ACKNOWLEDGE." @@ -2051,15 +2049,15 @@ Package TP_GNB { ; ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_MMP_11 + } // end TP TP_NGAP_GNB_MMP_05 // The TP cover intra-system handover (e.g. from 4G to 5G). Test Purpose { - TP Id TP_NGAP_GNB_MMP_12 + TP Id TP_NGAP_GNB_MMP_06 Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message for an intra-system handover and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." @@ -2206,10 +2204,10 @@ Package TP_GNB { ; ; to the AMF entity - } - } + } + } - } // end TP TP_NGAP_GNB_MMP_12 + } // end TP TP_NGAP_GNB_MMP_06 } // End Group "Handover Resource Allocation" @@ -2250,7 +2248,6 @@ Package TP_GNB { } - } // End TP_NGAP_GNB_MMP_07 } // End Group "Handover Notification" @@ -2261,7 +2258,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_MMP_05 + TP Id TP_NGAP_GNB_MMP_08 Test objective "Verify that the AMF node successfully sends a PATH SWITCH REQUEST message that contains mandatory IEs to the AMF." @@ -2305,8 +2302,7 @@ Package TP_GNB { } - - } // End TP_NGAP_GNB_MMP_05 + } // End TP_NGAP_GNB_MMP_08 } // End Group "Path Switch Request" @@ -2316,7 +2312,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_MMP_06 + TP Id TP_NGAP_GNB_MMP_09 Test objective "Verify that the GNB node successfully sends a HANDOVER CANCEL message that contains mandatory IEs to the AMF." @@ -2347,7 +2343,7 @@ Package TP_GNB { } } - } // End TP_NGAP_GNB_MMP_06 + } // End TP_NGAP_GNB_MMP_09 } // End Group "Handover Cancellation" Group "Uplink RAN Status Transfer" @@ -2356,38 +2352,38 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_MMP_02 - - Test objective "Verify that the NG-RAN node successfully send a UPLINK RAN STATUS TRANSFER message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.6.2 and 9.2.3.13" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/3_6 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the GNB entity alreadyPreparedHandover - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate the initiation "of an UE Uplink RAN Status Transfer procedure" - } - then { - the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - RAN_Status_Transfer_Transparent_Container - ; - to the AMF entity - } - - } // End TP_NGAP_GNB_MMP_02 - } + TP Id TP_NGAP_GNB_MMP_10 + + Test objective "Verify that the NG-RAN node successfully send a UPLINK RAN STATUS TRANSFER message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.6.2 and 9.2.3.13" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/3_6 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the GNB entity alreadyPreparedHandover + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of an UE Uplink RAN Status Transfer procedure" + } + then { + the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + RAN_Status_Transfer_Transparent_Container + ; + to the AMF entity + } + + } + } // End TP_NGAP_GNB_MMP_10 } // End Group "Uplink RAN Status Transfer" @@ -2397,37 +2393,37 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_MMP_04 - - Test objective "Verify that the NG-RAN node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.9.2 and 9.2.3.16" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/3_9 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the GNB entity alreadyPreparedHandover - } - - Expected behaviour - ensure that { - when { - the IUT entity indicate the initiation "of an Uplink RAN Early Status Transfer" - } - then { - the IUT entity sends a UPLINK_RAN_EARLY_STATUS_TRANSFER containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - Early_Status_Transfer_Transparent_Container - ; - to the AMF entity - } - } - } // End TP_NGAP_GNB_MMP_04 + TP Id TP_NGAP_GNB_MMP_11 + + Test objective "Verify that the NG-RAN node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message to the AMF." + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.9.2 and 9.2.3.16" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/3_9 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the GNB entity alreadyPreparedHandover + } + + Expected behaviour + ensure that { + when { + the IUT entity indicate the initiation "of an Uplink RAN Early Status Transfer" + } + then { + the IUT entity sends a UPLINK_RAN_EARLY_STATUS_TRANSFER containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + Early_Status_Transfer_Transparent_Container + ; + to the AMF entity + } + } + } // End TP_NGAP_GNB_MMP_11 } // End Group "Uplink RAN Early Status Transfer" @@ -2612,11 +2608,9 @@ Package TP_GNB { Default_Paging_DRX ; to the AMF entity - } - - } - - } // end TP TP_NGAP_GNB_IMP_01 + } + } + } // end TP TP_NGAP_GNB_IMP_01 } // End Group "NG Setup" Group "RAN Configuration Update" @@ -2665,10 +2659,7 @@ Package TP_GNB { ; to the AMF entity } - } - - } // End TP_NGAP_GNB_IMP_02 } // End Group RAN Configuration Update @@ -2678,140 +2669,139 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_IMP_03 - - Test objective "Verify that the GNB node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.8" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/6_3 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity isCMIDLE and - the UE entity hasReceivedPAGINGMessage - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a AMF_CONFIGURATION_UPDATE containing - Served_GUAMI_List containing - Served_GUAMI_Item containing - GUAMI containing - PLMN_Identity, - AMF_Region_ID, - AMF_Set_ID, - AMF_Pointer - ; - ; - ;, - PLMN_Support_List containing - PLMN_Support_Item containing - PLMN_Identity, - Slice_Support_List containing - S_NSSAI containing - SST - ; - ; - ; - ;, - AMF_TNL_Association_to_Add_List containing - AMF_TNL_Association_to_Add_item containing - AMF_TNL_Association_Address, - TNL_Address_Weight_Factor - ; - ;, - AMF_TNL_Association_to_Update_List containing - AMF_TNL_Association_to_Update_Item containing - AMF_TNL_Association_Address - ; - ; - ; - from the AMF entity - } - then { - the IUT entity sends a AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE containing - AMF_TNL_Association_Setup_List containing - AMF_TNL_Association_Setup_Item containing - AMF_TNL_Association_Address - ; - ; - ; - to the AMF entity - } - } - - } // end TP TP_NGAP_GNB_IMP_03 + TP Id TP_NGAP_GNB_IMP_03 + + Test objective "Verify that the GNB node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.8" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/6_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity isCMIDLE and + the UE entity hasReceivedPAGINGMessage + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a AMF_CONFIGURATION_UPDATE containing + Served_GUAMI_List containing + Served_GUAMI_Item containing + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; + ; + ;, + PLMN_Support_List containing + PLMN_Support_Item containing + PLMN_Identity, + Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; + ;, + AMF_TNL_Association_to_Add_List containing + AMF_TNL_Association_to_Add_item containing + AMF_TNL_Association_Address, + TNL_Address_Weight_Factor + ; + ;, + AMF_TNL_Association_to_Update_List containing + AMF_TNL_Association_to_Update_Item containing + AMF_TNL_Association_Address + ; + ; + ; + from the AMF entity + } + then { + the IUT entity sends a AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE containing + AMF_TNL_Association_Setup_List containing + AMF_TNL_Association_Setup_Item containing + AMF_TNL_Association_Address + ; + ; + ; + to the AMF entity + } + } - Test Purpose { - - TP Id TP_NGAP_GNB_IMP_06 - - Test objective "Verify that the GNB node can send a AMF CONFIGURATION UPDATE FAILURE." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.9" - - Config Id CFG_GNB_01 - - PICS Selection PICS_A2/1 and PICS_A3/6_3 - - Initial conditions with { - the UE entity isRegisteredTo the AMF and - the UE entity isCMIDLE and - the UE entity hasReceivedPAGINGMessage - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a AMF_CONFIGURATION_UPDATE containing - Served_GUAMI_List containing - Served_GUAMI_Item containing - GUAMI containing - PLMN_Identity, - AMF_Region_ID, - AMF_Set_ID, - AMF_Pointer - ; - ; - ;, - PLMN_Support_List containing - PLMN_Support_Item containing - PLMN_Identity, // Implementation Note: Incorrect PLMN ID: The PLMN ID in the message does not match the PLMN ID of the GNB. - Slice_Support_List containing - S_NSSAI containing - SST - ; - ; - ; - ;, - AMF_TNL_Association_to_Add_List containing - AMF_TNL_Association_to_Add_item containing - AMF_TNL_Association_Address, - TNL_Address_Weight_Factor - ; - ;, - AMF_TNL_Association_to_Update_List containing - AMF_TNL_Association_to_Update_Item containing - AMF_TNL_Association_Address - ; - ; - ; - from the AMF entity - } - then { - the IUT entity sends a AMF_CONFIGURATION_UPDATE_FAILURE containing - Cause; - to the AMF entity - } - } + } // end TP TP_NGAP_GNB_IMP_03 - } // end TP TP_NGAP_GNB_IMP_06 + Test Purpose { + + TP Id TP_NGAP_GNB_IMP_04 + + Test objective "Verify that the GNB node can send a AMF CONFIGURATION UPDATE FAILURE." + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.9" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/6_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity isCMIDLE and + the UE entity hasReceivedPAGINGMessage + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a AMF_CONFIGURATION_UPDATE containing + Served_GUAMI_List containing + Served_GUAMI_Item containing + GUAMI containing + PLMN_Identity, + AMF_Region_ID, + AMF_Set_ID, + AMF_Pointer + ; + ; + ;, + PLMN_Support_List containing + PLMN_Support_Item containing + PLMN_Identity, // Implementation Note: Incorrect PLMN ID: The PLMN ID in the message does not match the PLMN ID of the GNB. + Slice_Support_List containing + S_NSSAI containing + SST + ; + ; + ; + ;, + AMF_TNL_Association_to_Add_List containing + AMF_TNL_Association_to_Add_item containing + AMF_TNL_Association_Address, + TNL_Address_Weight_Factor + ; + ;, + AMF_TNL_Association_to_Update_List containing + AMF_TNL_Association_to_Update_Item containing + AMF_TNL_Association_Address + ; + ; + ; + from the AMF entity + } + then { + the IUT entity sends a AMF_CONFIGURATION_UPDATE_FAILURE containing + Cause; + to the AMF entity + } + } + } // end TP TP_NGAP_GNB_IMP_04 } //End Group AMF Configuration Update @@ -2821,7 +2811,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_IMP_04 + TP Id TP_NGAP_GNB_IMP_05 Test objective "Verify that the GNB node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." @@ -2853,10 +2843,9 @@ Package TP_GNB { then { the IUT entity sends a NG_RESET_ACKNOWLEDGE to the AMF entity - } - } - - } // end TP TP_NGAP_GNB_IMP_04 + } + } + } // end TP TP_NGAP_GNB_IMP_05 } // End Group NG Reset @@ -2866,7 +2855,7 @@ Package TP_GNB { Test Purpose { - TP Id TP_NGAP_GNB_IMP_05 + TP Id TP_NGAP_GNB_IMP_06 Test objective "Verify that the GNB can send a ERROR INDICATION to the AMF when a error occurs." @@ -2889,13 +2878,11 @@ Package TP_GNB { then { the IUT entity sends a ERROR_INDICATION to the AMF entity - } - } - - } // end TP_NGAP_GNB_IMP_05 + } + } + } // end TP_NGAP_GNB_IMP_06 } // End Group Error Indication - - } + } // End Group "8.7 Interface Management Procedures" Group "8.8 Configuration Transfer Procedure" { @@ -2926,11 +2913,8 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_CTP_01 - } // end "Uplink RAN Configuration Transfer" - } // end Group "8.8 Configuration Transfer Procedure" Group "8.9 Warning Message Transmission Procedures" @@ -2971,7 +2955,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_WTP_01 Test Purpose { @@ -3009,7 +2992,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_WTP_02 //TODO:possible to add additional tests from 8.9.1.2 paragraph 4 and on @@ -3046,7 +3028,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_WTP_03 //TODO:possible to add additional tests from 8.9.2.2 paragraph 3, 5 and on @@ -3082,7 +3063,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_WTP_04 Test Purpose { @@ -3114,9 +3094,7 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_WTP_05 - } // end "8.9 Warning Message Transmission Procedures" Group "8.10 NRPPa Transport Procedures" @@ -3154,7 +3132,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_NTP_01 Test Purpose { @@ -3186,7 +3163,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_NTP_02 } // end "8.10 NRPPa Transport Procedures" @@ -3234,7 +3210,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_TRP_01 Test Purpose { @@ -3276,7 +3251,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_TRP_02 Test Purpose { @@ -3312,7 +3286,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_TRP_03 } // end "8.11 Trace Procedures" @@ -3376,7 +3349,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_LRP_01 } // end "Location Reporting Failure Indication" @@ -3422,7 +3394,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_LRP_02 } // end "Location Report" @@ -3469,7 +3440,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_URP_01 Test Purpose { @@ -3505,7 +3475,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_URP_02 Test Purpose { @@ -3537,7 +3506,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_URP_03 } // end Group "8.14 UE Radio Capability Management Procedures" @@ -3580,7 +3548,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_DRP_01 } // end Group "8.15 Data Usage Reporting Procedures" @@ -3617,7 +3584,6 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_RIP_01 } // end Group "8.16 RIM Information Transfer Procedures" -- GitLab From 294f8f3b9792a1ddf19b27864547fb0f94d80373 Mon Sep 17 00:00:00 2001 From: pintar Date: Mon, 25 Mar 2024 13:53:05 +0100 Subject: [PATCH 185/365] Semicolons moved into one line to get better word output --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 466 ++++------------ test_purposes/ngap/TP_GNB_NGAP.tplan2 | 734 ++++++------------------- 2 files changed, 281 insertions(+), 919 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 8416013..45afdc3 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -51,8 +51,7 @@ Package TP_AMF { PDU_Session_Resource_Setup_Request_List containing PDU_SessionId, S_NSSAI, - PDU_Session_Resource_Setup_Request_Transfer; - ; + PDU_Session_Resource_Setup_Request_Transfer;; to the GNB entity } } @@ -90,10 +89,7 @@ Package TP_AMF { PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, PDU_Session_Resource_Release_Command_Transfer containing - Cause indicating value PX_Cause; //normal_release - ; - ; - ; + Cause indicating value PX_Cause;;;; //normal_release to the GNB entity } } @@ -137,12 +133,7 @@ Package TP_AMF { // ;, QoSFlowAddorModifyRequestList containing QoSFlowAddorModifyRequestItem containing - QoSFlowIdentifier; - ; - ; - ; - ; - ; + QoSFlowIdentifier;;;;;; to the GNB entity } } @@ -179,13 +170,7 @@ Package TP_AMF { UPTransportLayerInformation, AssociatedQoSFlowList containing AssociatedQoSFlowItem containing - QoSFlowIdentifier indicating value PX_QoS_Flow_ID; - ; - ; - ; - ; - ; - ; + QoSFlowIdentifier indicating value PX_QoS_Flow_ID;;;;;;; from the GNB entity } then { @@ -198,13 +183,8 @@ Package TP_AMF { PDU_Session_Resource_Modify_Confirm_Transfer containing QoSFlowModifyConfirmList containing QoSFlowModifyConfirmItem containing - QoSFlowIdentifier; - ; - ;, - UL_NG_U_UP_TNLInformation - ; - ; - ; + QoSFlowIdentifier;;;, + UL_NG_U_UP_TNLInformation;;; to the GNB entity } } @@ -241,13 +221,7 @@ Package TP_AMF { UPTransportLayerInformation, AssociatedQoSFlowList containing AssociatedQoSFlowItem containing - QoSFlowIdentifier indicating value PX_QoS_Wrong_Flow_ID; - ; - ; - ; - ; - ; - ; + QoSFlowIdentifier indicating value PX_QoS_Wrong_Flow_ID;;;;;;; from the GNB entity } then { @@ -258,10 +232,7 @@ Package TP_AMF { PDU_Session_Resource_Failed_To_Modify_Item containing PDU_SessionId indicating value PX_PDU_ID, PDU_Session_Resource_Modify_Indication_Unsuccessful_Transfer containing - Cause; - ; - ; - ; + Cause;;;; to the GNB entity } } @@ -306,34 +277,24 @@ Package TP_AMF { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI containing - SST - ;, - PDU_Session_Resource_Setup_Request_Transfer - ; - ;, + SST;, + PDU_Session_Resource_Setup_Request_Transfer;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, - Security_Key - ; + E_UTRA_Integrity_Protection_Algorithms;, + Security_Key; to the GNB entity } } @@ -373,10 +334,7 @@ Package TP_AMF { CHOICE_UE_NGAP_IDs containing UE_NGAP_ID_pair containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - ; - ; + RAN_UE_NGAP_ID;;; to the GNB entity } } @@ -409,10 +367,7 @@ Package TP_AMF { the IUT entity sends a UE_CONTEXT_RELEASE_COMMAND containing CHOICE_UE_NGAP_IDs containing AMF_UE_NGAP_ID containing - AMF_UE_NGAP_ID - ; - ; - ; + AMF_UE_NGAP_ID;;; to the GNB entity } } @@ -451,8 +406,7 @@ Package TP_AMF { then { the IUT entity sends a UE_CONTEXT_MODIFICATION_REQUEST containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the GNB entity } } @@ -489,8 +443,7 @@ Package TP_AMF { then { the IUT entity sends a CONNECTION_ESTABLISHMENT_INDICATION containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the GNB entity } } @@ -529,8 +482,7 @@ Package TP_AMF { then { the IUT entity sends a AMF_CP_RELOCATION_INDICATION containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the GNB entity } } @@ -570,9 +522,7 @@ Package TP_AMF { 5G_S_TMSI containing AMF_Set_ID, AMF_Pointer, - 5G_TMSI - ; - ; + 5G_TMSI;; from the GNB entity } then { @@ -580,9 +530,7 @@ Package TP_AMF { 5G_S_TMSI containing AMF_Set_ID, AMF_Pointer, - 5G_TMSI - ; - ; + 5G_TMSI;; to the GNB entity } } @@ -623,17 +571,13 @@ Package TP_AMF { PDU_Session_Resource_Suspend_Item containing PDU_SessionId indicating value PX_PDU_ID, UE_Context_Suspend_Request_Transfer containing - Suspend_Indicator; - ; - ; - ; + Suspend_Indicator;;;; from the GNB entity } then { the IUT entity sends a UE_CONTEXT_SUSPEND_RESPONSE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the GNB entity } } @@ -670,18 +614,14 @@ Package TP_AMF { PDU_Session_Resource_Suspend_Item containing PDU_SessionId indicating value PX_PDU_ID, UE_Context_Suspend_Request_Transfer containing - Suspend_Indicator; - ; - ; - ; + Suspend_Indicator;;;; from the GNB entity } then { the IUT entity sends a UE_CONTEXT_SUSPEND_FAILURE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Cause - ; + Cause; to the GNB entity } } @@ -722,10 +662,7 @@ Package TP_AMF { PDU_Session_Resource_Resume_Item containing PDU_SessionId indicating value PX_PDU_ID, UE_Context_Suspend_Request_Transfer containing - Suspend_Indicator; - ; - ; - ; + Suspend_Indicator;;;; from the GNB entity } then { @@ -736,10 +673,7 @@ Package TP_AMF { PDU_Session_Resource_Resume_Item containing PDU_SessionId indicating value PX_PDU_ID, UE_Context_Suspend_Request_Transfer containing - Suspend_Indicator; - ; - ; - ; + Suspend_Indicator;;;; to the GNB entity } } @@ -775,18 +709,14 @@ Package TP_AMF { PDU_Session_Resource_Resume_List containing PDU_Session_Resource_Resume_Item containing PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Resume_Request_Transfer - ; - ; - ; + UE_Context_Resume_Request_Transfer;;; from the GNB entity } then { the IUT entity sends a UE_CONTEXT_RESUME_FAILURE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Cause - ; + Cause; to the GNB entity } } @@ -832,11 +762,8 @@ Package TP_AMF { PDU_Session_Resource_List containing PDU_Session_Resource_Item containing PDU_SessionId indicating value PX_PDU_ID, - Handover_Required_Transfer - ; - ;, - Source_to_Target_Transparent_Container - ; + Handover_Required_Transfer;;, + Source_to_Target_Transparent_Container; from the GNB entity } then { @@ -847,10 +774,7 @@ Package TP_AMF { PDU_Session_Resource_Handover_List containing PDU_Session_Resource_Handover_Item containing PDU_SessionId indicating value PX_PDU_ID, - Handover_Command_Transfer - ; - ; - ; + Handover_Command_Transfer;;; to the GNB entity } } @@ -886,19 +810,15 @@ Package TP_AMF { PDU_Session_Resource_List containing PDU_Session_Resource_Item containing PDU_SessionId, - Handover_Required_Transfer - ; - ;, - Source_to_Target_Transparent_Container - ; + Handover_Required_Transfer;;, + Source_to_Target_Transparent_Container; from the GNB entity } then { the IUT entity sends a HANDOVER_PREPARATION_FAILURE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Cause - ; + Cause; to the GNB entity } } @@ -940,39 +860,29 @@ Package TP_AMF { Cause, UE_Aggregate_Maximum_Bit_Rate containing UE_Aggregate_Maximum_Bit_Rate_Downlink, - UE_Aggregate_Maximum_Bit_Rate_Uplink - ;, + UE_Aggregate_Maximum_Bit_Rate_Uplink;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, PDU_Session_Setup_Resource_List containing PDU_Session_Setup_Resource_Item containing PDU_SessionId, S_NSSAI containing SST;, - Handover_Request_Transfer - ; - ;, + Handover_Request_Transfer;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, Source_to_Target_Transparent_Container, GUAMI containing PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; + AMF_Pointer;; to the GNB entity } } @@ -1014,15 +924,11 @@ Package TP_AMF { NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, PDU_Session_Resources_to_be_Switched_in_Downlink_List containing PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing PDU_SessionId, - Path_Switch_Request_Transfer - ; - ; - ; + Path_Switch_Request_Transfer;;; from the GNB entity } then { @@ -1036,10 +942,7 @@ Package TP_AMF { PDU_Session_Resource_Switched_List containing PDU_Session_Resource_Switched_Item containing PDU_SessionId, - Path_Switch_Request_Acknowledge_Transfer - ; - ; - ; + Path_Switch_Request_Acknowledge_Transfer;;; to the GNB entity } } @@ -1075,19 +978,14 @@ Package TP_AMF { NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, PDU_Session_Resources_to_be_Switched_in_Downlink_List containing PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing PDU_SessionId, - Path_Switch_Request_Transfer - ;, + Path_Switch_Request_Transfer;, PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing PDU_SessionId, - Path_Switch_Request_Transfer - ; - ; - ; + Path_Switch_Request_Transfer;;; from the GNB entity } then { @@ -1098,11 +996,7 @@ Package TP_AMF { PDU_Session_Resource_Released_Item containing PDU_SessionId, Path_Switch_Request_Unsuccessful_Transfer containing - Cause - ; - ; - ; - ; + Cause;;;; to the GNB entity } } @@ -1138,15 +1032,13 @@ Package TP_AMF { the IUT entity receives a HANDOVER_CANCEL containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Cause - ; + Cause; from the GNB entity } then { the IUT entity sends a HANDOVER_CANCEL_ACKNOWLEDGE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the GNB entity } } @@ -1193,22 +1085,12 @@ Package TP_AMF { 12_bits containing // use 18_bits IE instead if the PDCP-SN is 18 bits long UL_COUNT_Value containing PDCP_SN_Length_12, - HFN_for_PDCP_SN_Length_12 - ; - ; - ;, + HFN_for_PDCP_SN_Length_12;;;, CHOICE_DL_DRB_Status containing 12_bits containing // use 18_bits IE instead if the PDCP-SN is 18 bits long DL_COUNT_Value containing PDCP_SN_Length_12, - HFN_for_PDCP_SN_Length_12 - ; - ; - ; - ; - ; - ; - ; + HFN_for_PDCP_SN_Length_12;;;;;;; to the GNB entity } } @@ -1246,8 +1128,7 @@ Package TP_AMF { then { the IUT entity sends a HANDOVER_SUCCESS containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the GNB entity } } @@ -1296,16 +1177,7 @@ Package TP_AMF { 12_bits containing // use 18_bits IE instead if the PDCP-SN is 18 bits long FIRST_DL_COUNT_Value containing PDCP_SN_Length_12, - HFN_for_PDCP_SN_Length_12 - ; - ; - ; - ; - ; - ; - ; - ; - ; + HFN_for_PDCP_SN_Length_12;;;;;;;;; to the GNB entity } } @@ -1350,19 +1222,12 @@ Package TP_AMF { 5G_S_TMSI containing AMF_Set_ID, AMF_Pointer, - 5G_TMSI - ; - ; - ;, + 5G_TMSI;;;, TAI_List_for_Paging containing TAI_List_for_Paging_Item containing TAI containing PLMN_Identity, - TAC - ; - ; - ; - ; + TAC;;;; to the GNB entity } } @@ -1404,16 +1269,14 @@ Package TP_AMF { RAN_UE_NGAP_ID, NAS_PDU, User_Location_Information, - RRC_Establishmnet_Cause - ; + RRC_Establishmnet_Cause; from the GNB entity } then { the IUT entity sends an DOWNLINK_NAS_TRANSPORT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - NAS_PDU - ; + NAS_PDU; to the GNB entity } } @@ -1449,8 +1312,7 @@ Package TP_AMF { RAN_UE_NGAP_ID, NAS_PDU, User_Location_Information, - RRC_Establishmnet_Cause - ; + RRC_Establishmnet_Cause; from the GNB entity } then { @@ -1458,8 +1320,7 @@ Package TP_AMF { RAN_UE_NGAP_ID, NGAP_Message, // Contains the INITIAL UE MESSAGE NAS_PDU, - AMF_Set_ID - ; + AMF_Set_ID; to the GNB entity } } @@ -1505,15 +1366,8 @@ Package TP_AMF { PLMN_Identity, TAI_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ;, - Default_Paging_DRX - ; - ; + SST;;;;;, + Default_Paging_DRX;; from the GNB entity } then { @@ -1525,27 +1379,17 @@ Package TP_AMF { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; - ;, + AMF_Pointer;;;, Relative_AMF_Capacity, PLMN_Support_List containing PLMN_Support_Item containing PLMN_Identity, Slice_Support_List containing S_NSSAI containing - SST - ; - ;, + SST;;, Extended_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ; + SST;;;;; to the GNB entity } } @@ -1581,21 +1425,13 @@ Package TP_AMF { PLMN_Identity, TAI_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ;, - Default_Paging_DRX - ; - ; + SST;;;;;, + Default_Paging_DRX;; from the GNB entity } then { the IUT entity sends a NG_SETUP_FAILURE containing - Cause - ; + Cause; to the GNB entity } } @@ -1631,16 +1467,9 @@ Package TP_AMF { PLMN_Identity, TAI_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ;, + SST;;;;;, Default_Paging_DRX, - UE_Retention_Information // Implementation Node: use ues-retained - ; - ; + UE_Retention_Information;; // Implementation Node: use ues-retained from the GNB entity } then { @@ -1652,28 +1481,18 @@ Package TP_AMF { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; - ;, + AMF_Pointer;;;, Relative_AMF_Capacity, PLMN_Support_List containing PLMN_Support_Item containing PLMN_Identity, Slice_Support_List containing S_NSSAI containing - SST - ; - ;, + SST;;, Extended_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ;, - UE_Retention_Information - ; + SST;;;;, + UE_Retention_Information; to the GNB entity } } @@ -1709,28 +1528,17 @@ Package TP_AMF { PLMN_Identity, TAI_Slice_Support_List containing S_NSSAI containing - SST - ; - ;, + SST;;, NPN_Support, Extended_TAI_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, Configured_TAC_Indication, - RAT_Information - ; - , + RAT_Information;, Default_Paging_DRX, NB_IoT_Default_Paging_DRX, Extended_RAN_Node_Name containing - RAN_Node_Name_Visible - ; - ; - ; + RAN_Node_Name_Visible;;; from the GNB entity } then { @@ -1742,31 +1550,20 @@ Package TP_AMF { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; - ;, + AMF_Pointer;;;, Relative_AMF_Capacity, PLMN_Support_List containing PLMN_Support_Item containing PLMN_Identity, Slice_Support_List containing S_NSSAI containing - SST - ; - ;, + SST;;, NPN_Support, Extended_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, Extended_RAN_Node_Name containing - RAN_Node_Name_Visible - ; - ; + RAN_Node_Name_Visible;; to the GNB entity } } @@ -1808,14 +1605,7 @@ Package TP_AMF { PLMN_Identity, TAI_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ; - ; - ; + SST;;;;;;; from the GNB entity } then { @@ -1854,14 +1644,7 @@ Package TP_AMF { PLMN_Identity, TAI_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ; - ; - ; + SST;;;;;;; from the GNB entity } then { @@ -1910,21 +1693,13 @@ Package TP_AMF { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; - ;, + AMF_Pointer;;;, PLMN_Support_List containing PLMN_Support_Item containing PLMN_Identity, Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ; + SST;;;;; to the GNB entity } } @@ -1961,10 +1736,7 @@ Package TP_AMF { Cause, CHOICE_Reset_Type containing NG_interface containing - Reset_All - ; - ; - ; + Reset_All;;; from the GNB entity } then { @@ -2008,33 +1780,24 @@ Package TP_AMF { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI containing SST;, - PDU_Session_Resource_Setup_Request_Transfer - ; - ;, + PDU_Session_Resource_Setup_Request_Transfer;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, UE_Security_Capabilities containing // Implementation Node: use a not supported security key NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, - Security_Key - ; + E_UTRA_Integrity_Protection_Algorithms;, + Security_Key; from the GNB entity } then { @@ -2080,11 +1843,7 @@ Package TP_AMF { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; - ; - ; + AMF_Pointer;;;; to the GNB entity } } @@ -2122,12 +1881,7 @@ Package TP_AMF { Overload_Start_NSSAI_Item containing Slice_Overload_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ; + SST;;;;; to the GNB entity } } @@ -2200,16 +1954,12 @@ Package TP_AMF { SON_Configuration_Transfer containing Target_RAN_Node_ID containing Global_RAN_Node_ID, - Selected_TAI - ;, + Selected_TAI;, Source_RAN_Node_ID containing Global_RAN_Node_ID, - Selected_TAI - ;, - SON_Information - ; - ; - to the GNB entity + Selected_TAI;, + SON_Information;; + to the GNB entity } } } // end TP_NGAP_AMF_CTP_01 @@ -2250,7 +2000,7 @@ Package TP_AMF { Serial_Number, Repetition_Period, Number_of_Broadcasts_Requested; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_WTP_01 @@ -2281,7 +2031,7 @@ Package TP_AMF { the IUT entity sends a PWS_CANCEL_REQUEST containing Message_Identifier, Serial_Number; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_WTP_02 @@ -2320,7 +2070,7 @@ Package TP_AMF { RAN_UE_NGAP_ID, Routing_ID, NRPPa_PDU; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_NTP_01 @@ -2351,7 +2101,7 @@ Package TP_AMF { the IUT entity sends a DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT containing Routing_ID, NRPPa_PDU; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_NTP_02 @@ -2393,7 +2143,7 @@ Package TP_AMF { Interfaces_to_Trace, Trace_Depth, Trace_Collection_Entity_IP_Address;; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_TRP_01 @@ -2425,7 +2175,7 @@ Package TP_AMF { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NG_RAN_Trace_ID; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_TRP_02 @@ -2466,7 +2216,7 @@ Package TP_AMF { RAN_UE_NGAP_ID, Location_Reporting_Request_Type ; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_LRP_01 @@ -2505,7 +2255,7 @@ Package TP_AMF { the IUT entity sends a UE_TNLA_BINDING_RELEASE_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_UBP_01 @@ -2542,7 +2292,7 @@ Package TP_AMF { the IUT entity sends a UE_RADIO_CAPABILITY_CHECK_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_URP_01 @@ -2575,7 +2325,7 @@ Package TP_AMF { the IUT entity sends a UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE containing UE_Radio_Capability_ID, UE_Radio_Capability; - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_URP_02 @@ -2615,7 +2365,7 @@ Package TP_AMF { } then { the IUT entity sends a DOWNLINK_RIM_INFORMATION_TRANSFER - to the GNB entity + to the GNB entity } } } // end TP_NGAP_AMF_RIP_01 diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 7effeb6..ca6605e 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -53,12 +53,7 @@ Package TP_GNB { QoSFlowSetupRequestList containing QoSFlowSetupRequestItem containing QoSFlowIndicator, - QoSFlowLevelQoSParameters; - ; - ; - ; - ; - ; + QoSFlowLevelQoSParameters;;;;;; from the AMF entity } then { @@ -69,10 +64,7 @@ Package TP_GNB { PDU_Session_Resource_Setup_Response_Item containing PDU_SessionId indicating value PX_PDU_ID, PDU_Session_Resource_Setup_Response_Transfer containing - DL_QoS_Flow_per_TNL_Information; - ; - ; - ; + DL_QoS_Flow_per_TNL_Information;;;; to the AMF entity } } @@ -112,10 +104,7 @@ Package TP_GNB { QoSFlowSetupRequestList containing QoSFlowSetupRequestItem containing QoSFlowIndicator, - QoSFlowLevelQoSParameters; - ; - ; - ;, + QoSFlowLevelQoSParameters;;;;, PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, @@ -125,12 +114,7 @@ Package TP_GNB { QoSFlowSetupRequestList containing QoSFlowSetupRequestItem containing QoSFlowIndicator, - QoSFlowLevelQoSParameters; - ; - ; - ; - ; - ; + QoSFlowLevelQoSParameters;;;;;; from the AMF entity } then { @@ -141,10 +125,7 @@ Package TP_GNB { DU_Session_Resource_Failed_to_Setup_Item containing PDU_SessionId, PDU_Session_Resource_Setup_Unsuccessful_Transfer containing - Cause indicating value MultiplePDUSessionIDInstances; - ; - ; - ; + Cause indicating value MultiplePDUSessionIDInstances;;;; to the AMF entity } } @@ -184,12 +165,7 @@ Package TP_GNB { QoSFlowSetupRequestList containing QoSFlowSetupRequestItem containing QoSFlowIndicator, - QoSFlowLevelQoSParameters; - ; - ; - ; - ; - ; + QoSFlowLevelQoSParameters;;;;;; from the AMF entity } then { @@ -200,10 +176,7 @@ Package TP_GNB { DU_Session_Resource_Failed_to_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, PDU_Session_Resource_Setup_Unsuccessful_Transfer containing - Cause indicating value MultiplePDUSessionIDInstances; - ; - ; - ; + Cause indicating value MultiplePDUSessionIDInstances;;;; to the AMF entity } } @@ -243,13 +216,8 @@ Package TP_GNB { QoSFlowSetupRequestList containing QoSFlowSetupRequestItem containing QoSFlowIndicator indicating value Non_GBR_QoS, - QoSFlowLevelQoSParameters; - ; - ; - ; - ;, - not UEAggregateMaximumBitRate - ; + QoSFlowLevelQoSParameters;;;;;, + not UEAggregateMaximumBitRate; from the AMF entity } then { @@ -260,10 +228,7 @@ Package TP_GNB { DU_Session_Resource_Failed_to_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, PDU_Session_Resource_Setup_Unsuccessful_Transfer containing - Cause indicating value InvalidQoSCombination; - ; - ; - ; + Cause indicating value InvalidQoSCombination;;;; to the AMF entity } } @@ -300,10 +265,7 @@ Package TP_GNB { PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, PDU_Session_Resource_Release_Command_Transfer containing - Cause indicating value PX_Cause; //normal_release - ; - ; - ; + Cause indicating value PX_Cause;;;; //normal_release from the AMF entity } then { @@ -313,9 +275,7 @@ Package TP_GNB { PDU_Session_Resource_Released_List containing PDU_Session_Resource_Released_Item containing PDU_SessionId indicating value PX_PDU_ID, - PDU_Session_Resource_Release_Response_Transfer; - ; - ; + PDU_Session_Resource_Release_Response_Transfer;;; to the AMF entity } } @@ -356,10 +316,7 @@ Package TP_GNB { PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, PDU_Session_Resource_Release_Command_Transfer containing - Cause indicating value PX_Cause; //normal_release - ; - ; - ; + Cause indicating value PX_Cause;;;; //normal_release from the AMF entity } then { @@ -369,9 +326,7 @@ Package TP_GNB { PDU_Session_Resource_Released_List containing PDU_Session_Resource_Released_Item containing PDU_SessionId indicating value PX_PDU_ID, - PDU_Session_Resource_Release_Response_Transfer; - ; - ; + PDU_Session_Resource_Release_Response_Transfer;;; to the AMF entity } } @@ -413,12 +368,7 @@ Package TP_GNB { // ;, QoSFlowAddorModifyRequestList containing QoSFlowAddorModifyRequestItem containing - QoSFlowIdentifier; - ; - ; - ; - ; - ; + QoSFlowIdentifier;;;;;; from the AMF entity } then { @@ -431,12 +381,7 @@ Package TP_GNB { PDU_Session_Resource_Modify_Response_Transfer containing QoSFlowAddorModifyResponsetList containing QoSFlowAddorModifyResponsetItem containing - QoSFlowIdentifier; - ; - ; - ; - ; - ; + QoSFlowIdentifier;;;;;; to the AMF entity } } @@ -476,10 +421,7 @@ Package TP_GNB { PDU_SessionId indicating value PX_PDU_ID, S_NSSAI, PDU_Session_Resource_Notify_Released_Transfer containing - Cause; - ; - ; - ; + Cause;;;; to the AMF entity } } @@ -516,10 +458,7 @@ Package TP_GNB { PDU_Session_Resource_Modify_Indication_Item containing PDU_SessionId indicating value PX_PDU_ID, PDU_Session_Resource_Modify_Indication_Transfer containing - DLQoSFlowperTNLInformation; - ; - ; - ; + DLQoSFlowperTNLInformation;;;; to the AMF entity } } @@ -563,33 +502,24 @@ Package TP_GNB { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI containing SST;, - PDU_Session_Resource_Setup_Request_Transfer - ; - ;, + PDU_Session_Resource_Setup_Request_Transfer;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, - Security_Key - ; + E_UTRA_Integrity_Protection_Algorithms;, + Security_Key; from the AMF entity } then { @@ -598,8 +528,7 @@ Package TP_GNB { RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing PDU_SessionId, - PDU_Session_Resource_Setup_Response_Transfer; - ; + PDU_Session_Resource_Setup_Response_Transfer;; to the AMF entity } } @@ -633,25 +562,18 @@ Package TP_GNB { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, - Security_Key - ; + E_UTRA_Integrity_Protection_Algorithms;, + Security_Key; from the AMF entity } then { @@ -691,27 +613,18 @@ Package TP_GNB { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI containing - SST - ; - , - PDU_Session_Resource_Setup_Request_Transfer - ; - ;, + SST;, + PDU_Session_Resource_Setup_Request_Transfer;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, @@ -723,9 +636,7 @@ Package TP_GNB { NG_RAN_Trace_ID, Interfaces_to_Trace, Trace_Depth, - Trace_Collection_Entity_IP_Address - ; - ; + Trace_Collection_Entity_IP_Address;; from the AMF entity } then { @@ -734,8 +645,7 @@ Package TP_GNB { RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing PDU_SessionId, - PDU_Session_Resource_Setup_Response_Transfer; - ; + PDU_Session_Resource_Setup_Response_Transfer;; to the AMF entity } } @@ -769,37 +679,26 @@ Package TP_GNB { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI containing - SST - ;, - PDU_Session_Resource_Setup_Request_Transfer - ; - ;, + SST;, + PDU_Session_Resource_Setup_Request_Transfer;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, Security_Key, Mobility_Restriction_List containing - Serving_PLMN - ; - ; + Serving_PLMN;; from the AMF entity } then { @@ -808,8 +707,7 @@ Package TP_GNB { RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing PDU_SessionId, - PDU_Session_Resource_Setup_Response_Transfer; - ; + PDU_Session_Resource_Setup_Response_Transfer;; to the AMF entity } } @@ -843,32 +741,23 @@ Package TP_GNB { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI containing - SST - ;, - PDU_Session_Resource_Setup_Request_Transfer - ; - ;, + SST;, + PDU_Session_Resource_Setup_Request_Transfer;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, Security_Key, UE_Radio_Capability, Index_to_RAT_Frequency_Selection_Priority, @@ -879,21 +768,17 @@ Package TP_GNB { Redirection_for_Voice_EPS_Fallback, Location_Reporting_Request_Type containing Event_Type, - Report_Area - ; - , + Report_Area;, SRVCC_Operation_Possible, IAB_Authorized, Enhanced_Coverage_Restriction, Extended_Connected_Time, UE Differentiation Information containing Periodic_Communication_Indicator, - Periodic_Time; - , + Periodic_Time;, NR_UE_Sidelink_Aggregate_Maximum_Bit_Rate, LTE_UE_Sidelink_Aggregate_Maximum_Bit_Rate, - UE_Radio_Capability_ID - ; + UE_Radio_Capability_ID; from the AMF entity } then { @@ -902,8 +787,7 @@ Package TP_GNB { RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing PDU_SessionId, - PDU_Session_Resource_Setup_Response_Transfer; - ; + PDU_Session_Resource_Setup_Response_Transfer;; to the AMF entity } } @@ -939,34 +823,24 @@ Package TP_GNB { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, PDU_Session_Resource_Setup_Request_List containing PDU_Session_Resource_Setup_Request_Item containing PDU_SessionId indicating value PX_PDU_ID, S_NSSAI containing - SST - ;, - PDU_Session_Resource_Setup_Request_Transfer - ; - ;, + SST;, + PDU_Session_Resource_Setup_Request_Transfer;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, - Security_Key - ; + E_UTRA_Integrity_Protection_Algorithms;, + Security_Key; from the AMF entity } then { @@ -975,8 +849,7 @@ Package TP_GNB { RAN_UE_NGAP_ID, PDU_Session_Resource_Failed_to_Setup_List containing PDU_SessionId indicating value PX_PDU_ID, - PDU_Session_Resource_Setup_Unsuccessful_Transfer; - ; + PDU_Session_Resource_Setup_Unsuccessful_Transfer;; to the AMF entity } } @@ -1016,8 +889,7 @@ Package TP_GNB { the IUT entity sends a UE_CONTEXT_RELEASE_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Cause - ; + Cause; to the AMF entity } @@ -1056,17 +928,13 @@ Package TP_GNB { CHOICE_UE_NGAP_IDs containing UE_NGAP_ID_pair containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; - ; - ; + RAN_UE_NGAP_ID;;; from the AMF entity } then { the IUT entity sends a UE_CONTEXT_RELEASE_COMPLETE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the AMF entity } } @@ -1097,10 +965,7 @@ Package TP_GNB { the IUT entity receives a UE_CONTEXT_RELEASE_COMMAND containing CHOICE_UE_NGAP_IDs containing AMF_UE_NGAP_ID containing - AMF_UE_NGAP_ID - ; - ; - ; + AMF_UE_NGAP_ID;;; from the AMF entity } then { @@ -1110,10 +975,7 @@ Package TP_GNB { PDU_Session_Resource_List containing PDU_Session_Resource_Item containing PDU_SessionId indicating value PX_PDU_ID, - PDU_Session_Resource_Release_Response_Transfer - ; - ; - ; + PDU_Session_Resource_Release_Response_Transfer;;; to the AMF entity } } @@ -1148,16 +1010,14 @@ Package TP_GNB { when { the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; from the AMF entity } then { the IUT entity sends a UE_CONTEXT_MODIFICATION_FAILURE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Cause - ; + Cause; to the AMF entity } } @@ -1187,15 +1047,13 @@ Package TP_GNB { when { the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; from the AMF entity } then { the IUT entity sends a UE_CONTEXT_MODIFICATION_RESPONSE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the AMF entity } } @@ -1231,16 +1089,13 @@ Package TP_GNB { NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ; - ; + E_UTRA_Integrity_Protection_Algorithms;; from the AMF entity } then { the IUT entity sends a UE_CONTEXT_MODIFICATION_RESPONSE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the AMF entity } } @@ -1275,39 +1130,31 @@ Package TP_GNB { Index_to_RAT_Frequency_Selection_Priority, UE_Aggregate_Maximum_Bit_Rate containing UE_Aggregate_Maximum_Bit_Rate_Downlink, - UE_Aggregate_Maximum_Bit_Rate_Uplink - ;, + UE_Aggregate_Maximum_Bit_Rate_Uplink;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, Emergency_Fallback_Indicator, New_GUAMI containing PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, IAB_Authorized, PC5_QoS_Parameters containing PC5_QoS_Flow_List containing PC5_QoS_Flow_Item containing - PQI - ; - ; - ;, + PQI;;;, UE_Radio_Capability_ID, - RG_Level_Wireline_Access_Characteristics - ; + RG_Level_Wireline_Access_Characteristics; from the AMF entity } then { the IUT entity sends a UE_CONTEXT_MODIFICATION_RESPONSE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the AMF entity } } @@ -1348,8 +1195,7 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, RRC_State, - User_Location_Information - ; + User_Location_Information; to the AMF entity } } @@ -1392,21 +1238,16 @@ Package TP_GNB { 5G_S_TMSI containing AMF_Set_ID, AMF_Pointer, - 5G_TMSI - ;, + 5G_TMSI;, E_ULTRA_CGI containing PLMN_Identity, - E_UTRA_Cell_Identity - ;, + E_UTRA_Cell_Identity;, TAI containing PLMN_Identity, - TAC - ;, + TAC;, UL_CP_Security_Information containing UL_NAS_MAC, - UL_NAS_Count - ; - ; + UL_NAS_Count;; to the AMF entity } @@ -1447,8 +1288,7 @@ Package TP_GNB { then { the IUT entity sends a UE_CONTEXT_SUSPEND_REQUEST containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID - ; + RAN_UE_NGAP_ID; to the AMF entity } } @@ -1489,8 +1329,7 @@ Package TP_GNB { the IUT entity sends a UE_CONTEXT_RESUME_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - RRC_Resume_Cause - ; + RRC_Resume_Cause; to the AMF entity } } @@ -1540,11 +1379,8 @@ Package TP_GNB { PDU_Session_Resource_List containing PDU_Session_Resource_Item containing PDU_SessionId indicating value PX_PDU_ID, - Handover_Required_Transfer - ; - ;, - Source_to_Target_Transparent_Container - ; + Handover_Required_Transfer;;, + Source_to_Target_Transparent_Container; to the AMF entity } } @@ -1586,12 +1422,10 @@ Package TP_GNB { NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, Security_Context containing Next_Hop_Chaining_Count, - Next_Hop_NH - ;, + Next_Hop_NH;, PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -1601,37 +1435,23 @@ Package TP_GNB { DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, PDU_Session_Type, QoS_Flow_Setup_Request_List containing QoS_Flow_Setup_Request_Item containing QoS_Flow_Identifier, - QoS_Flow_Level_QoS_Parameter - ; - ; - ; - ; - ;, + QoS_Flow_Level_QoS_Parameter;;;;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, Source_to_Target_Transparent_Container, GUAMI containing PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; + AMF_Pointer;; from the AMF entity } then { @@ -1645,20 +1465,11 @@ Package TP_GNB { DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, QoS_Flow_Setup_Response_List containing QoS_Flow_Item_with_Data_Forwarding containing - QoS_Flow_Identifier - ; - ; - ; - ;, - Target_to_Source_Transparent_Container - ; - ; + QoS_Flow_Identifier;;;;, + Target_to_Source_Transparent_Container;; to the AMF entity } } @@ -1691,18 +1502,15 @@ Package TP_GNB { Cause, UE_Aggregate_Maximum_Bit_Rate containing UE_Aggregate_Maximum_Bit_Rate_Downlink, - UE_Aggregate_Maximum_Bit_Rate_Uplink - ;, + UE_Aggregate_Maximum_Bit_Rate_Uplink;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, Security_Context containing Next_Hop_Chaining_Count, - Next_Hop_NH - ;, + Next_Hop_NH;, PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -1712,44 +1520,29 @@ Package TP_GNB { DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, PDU_Session_Type, QoS_Flow_Setup_Request_List containing QoS_Flow_Setup_Request_Item containing QoS_Flow_Identifier, - QoS_Flow_Level_QoS_Parameter - ; - ; - ; - ; - ;, + QoS_Flow_Level_QoS_Parameter;;;;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, Source_to_Target_Transparent_Container, GUAMI containing PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; + AMF_Pointer;; from the AMF entity } then { the IUT entity sends a HANDOVER_FAILURE containing AMF_UE_NGAP_ID, - Cause - ; + Cause; to the AMF entity } } @@ -1782,41 +1575,29 @@ Package TP_GNB { Handover_Typ, Cause, UE_Aggregate_Maximum_Bit_Rate containing - UE_Aggregate_Maximum_Bit_Rate_Downlink, - UE_Aggregate_Maximum_Bit_Rate_Uplink - ;, + UE_Aggregate_Maximum_Bit_Rate_Downli;, Core_Network_Assistance_Information_for_RRC_INACTIVE containing UE_Identity_Index_Value containing CHOICE_UE_Identity_Index_Value containing Index_Length_10 containing - Index_Length_10 - ; - ; - ;, + Index_Length_10;;;, Periodic_Registration_Update_Timer, TAI_List_for_RRC_Inactive containing TAI_List_for_RRC_Inactive_Item containing TAI containing PLMN_Identity, - TAC - ; - ; - ; - ;, + TAC;;;;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, Security_Context containing Next_Hop_Chaining_Count, - Next_Hop_NH - ;, + Next_Hop_NH;, New_Security_Context_Indicator, NASC containing - NAS_PDU - ;, + NAS_PDU;, PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -1826,45 +1607,30 @@ Package TP_GNB { DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, PDU_Session_Type, QoS_Flow_Setup_Request_List containing QoS_Flow_Setup_Request_Item containing QoS_Flow_Identifier, - QoS_Flow_Level_QoS_Parameter - ; - ; - ; - ; - ;, + QoS_Flow_Level_QoS_Parameter;;;;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, Trace_Activiation containing NG_RAN_TRACE_ID, Interfaces_to_Trace, Trace_Depth, Trace_Collection_Entity_IP_Address containing - Transport_Layer_Address - ; - ;, + Transport_Layer_Address;;, Source_to_Target_Transparent_Container, RRC_Inactive_Transition_Report_Request, GUAMI containing PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ;, + AMF_Pointer;, Redirection_for_Voice_EPS_Fallback, CN_Assisted_RAN_Parameters_Tuning, SRVCC_Operation_Possible, @@ -1880,19 +1646,13 @@ Package TP_GNB { PQI, PC5_Flow_Bit_Rates containing Guaranteed_Flow_Bit_Rate, - Maximum_Flow_Bit_Rate - ; - ; - ; - ;, + Maximum_Flow_Bit_Rate;;;;, CE_mode_B_Restricted, UE_User_Plane_CIoT_Support_Indicator, Management_Based_MDT_PLMN_List containing - PLMN_Identity - ;, + PLMN_Identity;, UE_Radio_Capability_ID, - Extended_Connected_Time - ; + Extended_Connected_Time; from the AMF entity } then { @@ -1906,20 +1666,11 @@ Package TP_GNB { DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, QoS_Flow_Setup_Response_List containing QoS_Flow_Item_with_Data_Forwarding containing - QoS_Flow_Identifier - ; - ; - ; - ;, - Target_to_Source_Transparent_Container - ; - ; + QoS_Flow_Identifier;;;;, + Target_to_Source_Transparent_Container;; to the AMF entity } } @@ -1952,18 +1703,15 @@ Package TP_GNB { Cause, UE_Aggregate_Maximum_Bit_Rate containing UE_Aggregate_Maximum_Bit_Rate_Downlink, - UE_Aggregate_Maximum_Bit_Rate_Uplink - ;, + UE_Aggregate_Maximum_Bit_Rate_Uplink;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, Security_Context containing Next_Hop_Chaining_Count, - Next_Hop_NH - ;, + Next_Hop_NH;, PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -1973,43 +1721,28 @@ Package TP_GNB { DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, Data_Forwarding_Not_Possible indicating value "data forwarding not possible", Security_Indication containing Integrity_Protection_Indication indicating value preferred, Confidentiality_Protection_Indication indicating value preferred, - Maximum_Integrity_Protected_Data_Rate_Uplink indicating value max_UE_rate - ;, + Maximum_Integrity_Protected_Data_Rate_Uplink indicating value max_UE_rate;, PDU_Session_Type, QoS_Flow_Setup_Request_List containing QoS_Flow_Setup_Request_Item containing QoS_Flow_Identifier, - QoS_Flow_Level_QoS_Parameter - ; - ; - ; - ; - ;, + QoS_Flow_Level_QoS_Parameter;;;;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, Source_to_Target_Transparent_Container, GUAMI containing PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; + AMF_Pointer;; from the AMF entity } then { @@ -2023,31 +1756,18 @@ Package TP_GNB { DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, DL Forwarding UP TNL Information containing //may not be present because Data_Forwarding_Not_Possible is set to "data forwarding not possible" CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, Security_Result containing Integrity_Protection_Result indicating value performed, // "not performed" might be fine as well, because indication is set to "preferred" - Confidentiality_Protection_Result indicating value performed // "not performed" might be fine as well, because indication is set to "preferred" - ;, + Confidentiality_Protection_Result indicating value performed;, // "not performed" might be fine as well, because indication is set to "preferred" QoS_Flow_Setup_Response_List containing QoS_Flow_Item_with_Data_Forwarding containing - QoS_Flow_Identifier - ; - ; - ; - ;, - Target_to_Source_Transparent_Container - ; - ; + QoS_Flow_Identifier;;;;, + Target_to_Source_Transparent_Container;; to the AMF entity } } @@ -2081,18 +1801,15 @@ Package TP_GNB { Cause, UE_Aggregate_Maximum_Bit_Rate containing UE_Aggregate_Maximum_Bit_Rate_Downlink, - UE_Aggregate_Maximum_Bit_Rate_Uplink - ;, + UE_Aggregate_Maximum_Bit_Rate_Uplink;, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, Security_Context containing Next_Hop_Chaining_Count, - Next_Hop_NH - ;, + Next_Hop_NH;, PDU_Session_Resource_Setup_List containing PDU_Session_Resource_Setup_Item containing PDU_SessionId indicating value PX_PDU_ID, @@ -2102,30 +1819,18 @@ Package TP_GNB { DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, PDU_Session_Type, QoS_Flow_Setup_Request_List containing QoS_Flow_Setup_Request_Item containing QoS_Flow_Identifier, - QoS_Flow_Level_QoS_Parameter - ; - ;, - Direct_Forwarding_Path_Availability indicating value "direct path available" - ; - ; - ;, + QoS_Flow_Level_QoS_Parameter;;, + Direct_Forwarding_Path_Availability indicating value "direct path available";;;, Allowed_NSSAI containing Allowed_NSSAI_List containing Allowed_NSSAI_Item containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, Source_to_Target_Transparent_Container containing RRC_Container, PDU_Session_Resource_Information_List containing @@ -2135,33 +1840,20 @@ Package TP_GNB { QoS_Flow_Information_Item containing QoS_Flow_Identifier, DL_Forwarding indicating value "DL forwarding proposed", - UL_Forwarding indicating value "UL forwarding proposed" - ; - ; - ; - ;, + UL_Forwarding indicating value "UL forwarding proposed";;;;, Target_Cell_ID containing CHOICE_NG_RAN_CGI containing // other choice E-UTRA could be another case NR containing - NR_CGI - ; - ; - ;, + NR_CGI;;;, UE_History_Information containing CHOICE_UE_History_Information_from_UE containing // other choice E-UTRA could be another case NR containing - NR_Mobility_History_Report - ; - ; - ; - ;, + NR_Mobility_History_Report;;;;, GUAMI containing PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; + AMF_Pointer;; from the AMF entity } then { @@ -2175,34 +1867,19 @@ Package TP_GNB { DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, DL_Forwarding_UP_TNL_Information containing // because of DL_Forwarding indicating value "DL forwarding proposed" CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ;, + Endpoint_IP_Address;;;, QoS_Flow_Setup_Response_List containing QoS_Flow_Item_with_Data_Forwarding containing - QoS_Flow_Identifier - ; - ;, + QoS_Flow_Identifier;;, UL_Forwarding_UP_TNL_Information containing // because of UL_Forwarding indicating value "UL forwarding proposed" CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing - Endpoint_IP_Address - ; - ; - ; - ; - ;, - Target_to_Source_Transparent_Container - ; - ; + Endpoint_IP_Address;;;;;, + Target_to_Source_Transparent_Container;; to the AMF entity } } @@ -2241,8 +1918,7 @@ Package TP_GNB { the IUT entity sends a HANDOVER_NOTIFY containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - User_Location_Information - ; + User_Location_Information; to the AMF entity } @@ -2288,15 +1964,11 @@ Package TP_GNB { NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms - ;, + E_UTRA_Integrity_Protection_Algorithms;, PDU_Session_Resources_to_be_Switched_in_Downlink_List containing PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing PDU_SessionId indicating value PX_PDU_ID, - Path_Switch_Request_Transfer - ; - ; - ; + Path_Switch_Request_Transfer;;; to the AMF entity } @@ -2337,8 +2009,7 @@ Package TP_GNB { the IUT entity sends a HANDOVER_CANCEL containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Cause - ; + Cause; to the AMF entity } } @@ -2377,8 +2048,7 @@ Package TP_GNB { the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - RAN_Status_Transfer_Transparent_Container - ; + RAN_Status_Transfer_Transparent_Container; to the AMF entity } @@ -2418,8 +2088,7 @@ Package TP_GNB { the IUT entity sends a UPLINK_RAN_EARLY_STATUS_TRANSFER containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Early_Status_Transfer_Transparent_Container - ; + Early_Status_Transfer_Transparent_Container; to the AMF entity } } @@ -2464,8 +2133,7 @@ Package TP_GNB { RAN_UE_NGAP_ID, NAS_PDU, User_Location_Information, - RRC_Establishmnet_Cause - ; + RRC_Establishmnet_Cause; to the AMF entity } } @@ -2506,8 +2174,7 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NAS_PDU, - User_Location_Information - ; + User_Location_Information; to the AMF entity } } @@ -2547,8 +2214,7 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NAS_PDU, - Cause - ; + Cause; to the AMF entity } } @@ -2598,15 +2264,8 @@ Package TP_GNB { PLMN_Identity, TAI_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ; - ;, - Default_Paging_DRX - ; + SST;;;;;;, + Default_Paging_DRX; to the AMF entity } } @@ -2649,14 +2308,7 @@ Package TP_GNB { PLMN_Identity, TAI_Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ; - ; - ; - ; + SST;;;;;;; to the AMF entity } } @@ -2696,42 +2348,27 @@ Package TP_GNB { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; - ;, + AMF_Pointer;;;, PLMN_Support_List containing PLMN_Support_Item containing PLMN_Identity, Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, AMF_TNL_Association_to_Add_List containing AMF_TNL_Association_to_Add_item containing AMF_TNL_Association_Address, - TNL_Address_Weight_Factor - ; - ;, + TNL_Address_Weight_Factor;;, AMF_TNL_Association_to_Update_List containing AMF_TNL_Association_to_Update_Item containing - AMF_TNL_Association_Address - ; - ; - ; + AMF_TNL_Association_Address;;; from the AMF entity } then { the IUT entity sends a AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE containing AMF_TNL_Association_Setup_List containing AMF_TNL_Association_Setup_Item containing - AMF_TNL_Association_Address - ; - ; - ; + AMF_TNL_Association_Address;;; to the AMF entity } } @@ -2767,32 +2404,20 @@ Package TP_GNB { PLMN_Identity, AMF_Region_ID, AMF_Set_ID, - AMF_Pointer - ; - ; - ;, + AMF_Pointer;;;, PLMN_Support_List containing PLMN_Support_Item containing PLMN_Identity, // Implementation Note: Incorrect PLMN ID: The PLMN ID in the message does not match the PLMN ID of the GNB. Slice_Support_List containing S_NSSAI containing - SST - ; - ; - ; - ;, + SST;;;;, AMF_TNL_Association_to_Add_List containing AMF_TNL_Association_to_Add_item containing AMF_TNL_Association_Address, - TNL_Address_Weight_Factor - ; - ;, + TNL_Address_Weight_Factor;;, AMF_TNL_Association_to_Update_List containing AMF_TNL_Association_to_Update_Item containing - AMF_TNL_Association_Address - ; - ; - ; + AMF_TNL_Association_Address;;; from the AMF entity } then { @@ -2834,10 +2459,7 @@ Package TP_GNB { Cause, CHOICE_Reset_Type containing NG_interface containing - Reset_All - ; - ; - ; + Reset_All;;; from the AMF entity } then { @@ -3325,15 +2947,10 @@ Package TP_GNB { Area_of_Interest_List containing Area_of_Interest_Item containing Area_of_Interest, - Location_Reporting_Reference_ID indicating value PX_REPORTING_REFERENCE_ID - ;, + Location_Reporting_Reference_ID indicating value PX_REPORTING_REFERENCE_ID;, Area_of_Interest_Item containing Area_of_Interest, - Location_Reporting_Reference_ID indicating value PX_REPORTING_REFERENCE_ID - ; - ; - ; - ; + Location_Reporting_Reference_ID indicating value PX_REPORTING_REFERENCE_ID;;;; from the AMF entity } then { @@ -3342,10 +2959,7 @@ Package TP_GNB { RAN_UE_NGAP_ID, Cause containing CHOICE_Cause_Group containing - Radio_Network_Layer_Cause indicating value Multiple_Location_Reporting_Reference_ID_instances - ; - ; - ; + Radio_Network_Layer_Cause indicating value Multiple_Location_Reporting_Reference_ID_instances;;; to the AMF entity } } @@ -3380,8 +2994,7 @@ Package TP_GNB { the IUT entity sends an LOCATION_REPORTING_CONTROL containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Location_Reporting_Request_Type - ; + Location_Reporting_Request_Type; from the AMF entity } then { @@ -3389,8 +3002,7 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, User_Location_Information, - Location_Reporting_Request_Type - ; + Location_Reporting_Request_Type; to the AMF entity } } -- GitLab From 680643485f8fea5fea071eed185917c524e070f2 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 26 Mar 2024 12:07:55 +0100 Subject: [PATCH 186/365] updated PICS --- ttcn/AtsNGAP/NGAP_Pics.ttcn | 107 ++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_Pics.ttcn b/ttcn/AtsNGAP/NGAP_Pics.ttcn index 9463c97..38530a3 100644 --- a/ttcn/AtsNGAP/NGAP_Pics.ttcn +++ b/ttcn/AtsNGAP/NGAP_Pics.ttcn @@ -27,9 +27,116 @@ module NGAP_Pics { } // End of group PICS_A2 group PICS_A3 { + + modulepar boolean PICS_A3_1_1 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE SETUP REQUEST + modulepar boolean PICS_A3_1_2 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE RELEASE COMMAND + modulepar boolean PICS_A3_1_3 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST + modulepar boolean PICS_A3_1_4 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY NOTIFY + modulepar boolean PICS_A3_1_5 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY INDICATION + modulepar boolean PICS_A3_2_1 := false; //gnB - UE Context Management Procedures - INITIAL CONTEXT SETUP REQUEST + modulepar boolean PICS_A3_2_2 := false; //gnB - UE Context Management Procedures - UE CONTEXT RELEASE REQUEST + modulepar boolean PICS_A3_2_3 := false; //gnB - UE Context Management Procedures - UE CONTEXT RELEASE COMMAND + modulepar boolean PICS_A3_2_4 := false; //gnB - UE Context Management Procedures - UE CONTEXT MODIFICATION REQUEST + modulepar boolean PICS_A3_2_5 := false; //gnB - UE Context Management Procedures - RRC INACTIVE TRANSITION REPORT + modulepar boolean PICS_A3_2_8 := false; //gnB - UE Context Management Procedures - RAN CP Relocation Indication + modulepar boolean PICS_A3_2_11 := false; //gnB - UE Context Management Procedures - UE CONTEXT SUSPEND REQUEST + modulepar boolean PICS_A3_2_12 := false; //gnB - UE Context Management Procedures - UE CONTEXT RESUME REQUEST + modulepar boolean PICS_A3_3_1 := false; //gnB - UE Mobility Management Procedures - HANDOVER REQUIRED + modulepar boolean PICS_A3_3_2 := false; //gnB - UE Mobility Management Procedures - HANDOVER REQUEST + modulepar boolean PICS_A3_3_3 := false; //gnB - UE Mobility Management Procedures - HANDOVER NOTIFY + modulepar boolean PICS_A3_3_4 := false; //gnB - UE Mobility Management Procedures - PATH SWITCH REQUEST + modulepar boolean PICS_A3_3_5 := false; //gnB - UE Mobility Management Procedures - HANDOVER CANCEL + modulepar boolean PICS_A3_3_6 := false; //gnB - UE Mobility Management Procedures - UPLINK RAN STATUS TRANSFER + modulepar boolean PICS_A3_3_8 := false; //gnB - UE Mobility Management Procedures - HANDOVER SUCCESS + modulepar boolean PICS_A3_3_9 := false; //gnB - UE Mobility Management Procedures - UPLINK RAN EARLY STATUS TRANSFER + modulepar boolean PICS_A3_5_1 := false; //gNB - Transport of NAS Messages Procedures - INITIAL UE MESSAGE + modulepar boolean PICS_A3_5_3 := false; //gNB - Transport of NAS Messages Procedures - UPLINK NAS TRANSPORT + modulepar boolean PICS_A3_5_4 := false; //gNB - Transport of NAS Messages Procedures - NAS NON DELIVERY INDICATION + modulepar boolean PICS_A3_6_1 := false; //gNB - Interface Management Procedures - NG SETUP REQUEST + modulepar boolean PICS_A3_6_2 := false; //gNB - Interface Management Procedures - RAN CONFIGURATION UPDATE + modulepar boolean PICS_A3_6_3 := false; //gNB - Interface Management Procedures - AMF CONFIGURATION UPDATE + modulepar boolean PICS_A3_6_4 := false; //gNB - Interface Management Procedures - NG RESET + modulepar boolean PICS_A3_6_5 := false; //gNB - Interface Management Procedures - ERROR INDICATION + modulepar boolean PICS_A3_7_1 := false; //gNB - Configuration Transfer Procedures - UPLINK RAN CONFIGURATION TRANSFER + modulepar boolean PICS_A3_8_1 := false; //gNB - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST + modulepar boolean PICS_A3_8_2 := false; //gNB - Warning Message Transmission procedure - PWS CANCEL REQUEST + modulepar boolean PICS_A3_8_3 := false; //gNB - Warning Message Transmission procedure - PWS RESTART INDICATION + modulepar boolean PICS_A3_8_4 := false; //gNB - Warning Message Transmission procedure - PWS FAILURE INDICATION + modulepar boolean PICS_A3_9_1 := false; //gNB - NRPPa Transport procedure - DOWNLINK UE ASSOCIATED NRPPA TRANSPORT messages + modulepar boolean PICS_A3_9_2 := false; //gNB - NRPPa Transport procedure - UPLINK UE ASSOCIATED NRPPA TRANSPORT messages + modulepar boolean PICS_A3_9_3 := false; //gNB - NRPPa Transport procedure - DOWNLINK NON UE ASSOCIATED NRPPA TRANSPORT messages + modulepar boolean PICS_A3_9_4 := false; //gNB - NRPPa Transport procedure - UPLINK NON UE ASSOCIATED NRPPA TRANSPORT messages + modulepar boolean PICS_A3_10_1 := false; //gNB - Trace procedure - TRACE START messages + modulepar boolean PICS_A3_10_2 := false; //gNB - Trace procedure - TRACE FAILURE INDICATION messages + modulepar boolean PICS_A3_10_3 := false; //gNB - Trace procedure - DEACTIVATE TRACE messages + modulepar boolean PICS_A3_10_4 := false; //gNB - Trace procedure - CELL TRAFFIC TRACE messages + modulepar boolean PICS_A3_11_1 := false; //gNB - Location Reporting Procedures - LOCATION REPORTING CONTROL + modulepar boolean PICS_A3_11_2 := false; //gNB - Location Reporting Procedures - LOCATION REPORTING FAILURE INDICATION + modulepar boolean PICS_A3_11_3 := false; //gNB - Location Reporting Procedures - LOCATION REPORT + modulepar boolean PICS_A3_12_1 := false; //gNB - TNLA procedure - UE TNLA BINDING RELEASE REQUEST messages + modulepar boolean PICS_A3_13_1 := false; //gNB - UE Radio Capability Management procedure - UE RADIO CAPABILITY INFO INDICATION messages + modulepar boolean PICS_A3_13_2 := false; //gNB - UE Radio Capability Management procedure - UE RADIO CAPABILITY CHECK REQUEST messages + modulepar boolean PICS_A3_13_3 := false; //gNB - UE Radio Capability Management procedure - UE RADIO CAPABILITY ID MAPPING REQUEST messages + modulepar boolean PICS_A3_14_1 := false; //gNB - Data Usage Reporting Procedures - SECONDARY RAT DATA USAGE REPORT + modulepar boolean PICS_A3_15_1 := false; //gNB - RIM information Transfer procedure - UPLINK RIM INFORMATION TRANSFER + modulepar boolean PICS_A3_15_2 := false; //gNB - RIM information Transfer procedure - DOWNLINK RIM INFORMATION TRANSFER } // End of group PICS_A3 group PICS_A4 { + + modulepar boolean PICS_A4_1_1 := false; //AMF - PDU session management procedure - PDU SESSION RESOURCE SETUP REQUEST + modulepar boolean PICS_A4_1_2 := false; //AMF - PDU session management procedure - PDU SESSION RESOURCE RELEASE COMMAND + modulepar boolean PICS_A4_1_3 := false; //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST + modulepar boolean PICS_A4_1_4 := false; //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY NOTIFY + modulepar boolean PICS_A4_1_5 := false; //AMF - PDU session management procedure - PDU SESSION RESOURCE MODIFY INDICATION + modulepar boolean PICS_A4_2_1 := false; //AMF - UE Context Management Procedures - INITIAL CONTEXT SETUP REQUEST + modulepar boolean PICS_A4_2_3 := false; //AMF - UE Context Management Procedures - UE CONTEXT RELEASE COMMAND + modulepar boolean PICS_A4_2_4 := false; //AMF - UE Context Management Procedures - UE CONTEXT MODIFICATION REQUEST + modulepar boolean PICS_A4_2_6 := false; //AMF - UE Context Management Procedures - CONNECTION ESTABLISHMENT INDICATION + modulepar boolean PICS_A4_2_7 := false; //AMF - UE Context Management Procedures - AMF CP RELOCATION INDICATION + modulepar boolean PICS_A4_2_9 := false; //AMF - UE Context Management Procedures - RETRIEVE UE INFORMATION + modulepar boolean PICS_A4_2_10 := false; //AMF - UE Context Management Procedures - UE INFORMATION TRANSFER + modulepar boolean PICS_A4_2_11 := false; //AMF - UE Context Management Procedures - UE CONTEXT SUSPEND REQUEST + modulepar boolean PICS_A4_2_12 := false; //AMF - UE Context Management Procedures - UE CONTEXT RESUME REQUEST + modulepar boolean PICS_A4_3_1 := false; //AMF - UE Mobility Management Procedures - HANDOVER REQUIRED + modulepar boolean PICS_A4_3_2 := false; //AMF - UE Mobility Management Procedures - HANDOVER REQUEST + modulepar boolean PICS_A4_3_4 := false; //AMF - UE Mobility Management Procedures - PATH SWITCH REQUESTS + modulepar boolean PICS_A4_3_5 := false; //AMF - UE Mobility Management Procedures - HANDOVER CANCEL + modulepar boolean PICS_A4_3_6 := false; //AMF - UE Mobility Management Procedures - UPLINK RAN STATUS TRANSFER + modulepar boolean PICS_A4_3_9 := false; //AMF - UE Mobility Management Procedures - UPLINK RAN EARLY STATUS TRANSFER + modulepar boolean PICS_A4_4_1 := false; //AMF - Paging procedures - Paging + modulepar boolean PICS_A4_5_2 := false; //AMF - Transport of NAS Messages Procedures - DOWNLINK NAS TRANSPORT + modulepar boolean PICS_A4_5_5 := false; //AMF - Transport of NAS Messages Procedures - REROUTE NAS REQUEST + modulepar boolean PICS_A4_6_1 := false; //AMF - Interface Management Procedures - NG SETUP REQUEST + modulepar boolean PICS_A4_6_2 := false; //AMF - Interface Management Procedures - RAN CONFIGURATION UPDATE + modulepar boolean PICS_A4_6_3 := false; //AMF - Interface Management Procedures - AMF CONFIGURATION UPDATE + modulepar boolean PICS_A4_6_4 := false; //AMF - Interface Management Procedures - NG RESET + modulepar boolean PICS_A4_6_5 := false; //AMF - Interface Management Procedures - ERROR INDICATION + modulepar boolean PICS_A4_6_6 := false; //AMF - Interface Management Procedures - AMF STATUS INDICATION + modulepar boolean PICS_A4_6_7 := false; //AMF - Interface Management Procedures - OVERLOAD START + modulepar boolean PICS_A4_6_8 := false; //AMF - Interface Management Procedures - OVERLOAD STOP + modulepar boolean PICS_A4_7_2 := false; //AMF - Configuration Transfer Procedures - DOWNLINK RAN CONFIGURATION TRANSFER + modulepar boolean PICS_A4_8_1 := false; //AMF - Warning Message Transmission procedure - WRITE-REPLACE WARNING REQUEST + modulepar boolean PICS_A4_8_2 := false; //AMF - Warning Message Transmission procedure - PWS CANCEL REQUEST + modulepar boolean PICS_A4_8_3 := false; //AMF - Warning Message Transmission procedure - PWS RESTART INDICATION + modulepar boolean PICS_A4_8_4 := false; //AMF - Warning Message Transmission procedure - PWS FAILURE INDICATION + modulepar boolean PICS_A4_9_1 := false; //AMF - NRPPa Transport procedure - DOWNLINK UE ASSOCIATED NRPPA TRANSPORT messages + modulepar boolean PICS_A4_9_2 := false; //AMF - NRPPa Transport procedure - UPLINK UE ASSOCIATED NRPPA TRANSPORT messages + modulepar boolean PICS_A4_9_3 := false; //AMF - NRPPa Transport procedure - DOWNLINK NON UE ASSOCIATED NRPPA TRANSPORT messages + modulepar boolean PICS_A4_9_4 := false; //AMF - NRPPa Transport procedure - UPLINK NON UE ASSOCIATED NRPPA TRANSPORT messages + modulepar boolean PICS_A4_10_1 := false; //AMF - Trace procedure - TRACE START messages + modulepar boolean PICS_A4_10_2 := false; //AMF - Trace procedure - TRACE FAILURE INDICATION messages + modulepar boolean PICS_A4_10_3 := false; //AMF - Trace procedure - DEACTIVATE TRACE messages + modulepar boolean PICS_A4_10_4 := false; //AMF - Trace procedure - CELL TRAFFIC TRACE messages + modulepar boolean PICS_A4_11_2 := false; //AMF - Location Reporting Procedures - LOCATION REPORTING FAILURE INDICATION + modulepar boolean PICS_A4_11_3 := false; //AMF - Location Reporting Procedures - LOCATION REPORT + modulepar boolean PICS_A4_12_1 := false; //AMF - TNLA procedure - UE TNLA BINDING RELEASE REQUEST messages + modulepar boolean PICS_A4_13_1 := false; //AMF - UE Radio Capability Management procedure - UE RADIO CAPABILITY INFO INDICATION messages + modulepar boolean PICS_A4_13_2 := false; //AMF - UE Radio Capability Management procedure - UE RADIO CAPABILITY CHECK REQUEST messages + modulepar boolean PICS_A4_13_3 := false; //AMF - UE Radio Capability Management procedure - UE RADIO CAPABILITY ID MAPPING REQUEST messages + modulepar boolean PICS_A4_14_1 := false; //AMF - Data Usage Reporting Procedures - SECONDARY RAT DATA USAGE REPORT + modulepar boolean PICS_A4_15_1 := false; //AMF - RIM information Transfer procedure - UPLINK RIM INFORMATION TRANSFER + modulepar boolean PICS_A4_15_2 := false; //AMF - RIM information Transfer procedure - DOWNLINK RIM INFORMATION TRANSFER } // End of group PICS_A4 } // End of module NGAP_Pics -- GitLab From 41431fc2f8c75fba46eef59c33cd33bb443380fc Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 26 Mar 2024 13:17:50 +0100 Subject: [PATCH 187/365] added TP --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 11 +++++ ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 78 +++++++++++++++++++++++++++++- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 32 +++++++++++- 3 files changed, 118 insertions(+), 3 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index c9828c1..7e5a35f 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -157,4 +157,15 @@ module NGAP_Steps { }//end group DefaultTestStep + group BehaviorFunctions{ + + /** + * @desc + */ + function f_NGAP_amf_UE_Register() runs on NGAPComponent { + //FIXME: Implementation of UE registration + } // End of function f_NGAP_amf_UE_Register() + + }//end group BehaviorFunctions + } // End of module NGAP_Steps diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index be53f97..930cf99 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -73,6 +73,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -139,9 +140,84 @@ module NGAP_TCFunctions { f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - } // End of function f_TC_NGAP_gNB_PDU_01 + } // End of function f_TC_NGAP_gNB_PDU_01 + /** + * @desc Testcase function for TC_NGAP_gNB_PDU_02 + */ + function f_TC_NGAP_GNB_PDU_02() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceSetupRequest( + 1, + 1, + //m_ie_pDUSessionResourceSetupListSUReq( + { + m_pDUSessionResourceSetupItemSUReq( + 0, + m_s_NSSAI('00'O,'000000'O), + '00'O //TODO replace with template + /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( + m_uPTLInf(m_gTPTunnel( + '0'B', + '00000000'O(-))), + m_ie_PDUSessionType(-), + m_ie_qosFlowSetReqList({}) + )))*/ + ) + } + //) + + + ) + ) + ); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceSetupResponse( + -, + -, + //? //TODO replace with template + { + (mw_pDUSessionResourceSetupItemSURes( + ?,//template (present) PDUSessionID p_pDUSessionID, + //mw_pDUSessionResourceSetupResponseTransfer( + // ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + // *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + // *,//template SecurityResult p_securityResult := *, + // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + // ), In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer + ?,//template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) + + ) + } + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + } // End of function f_TC_NGAP_gNB_PDU_02 } // End of group PDU_Session_Resource_Setup //8.2.2 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 49b723c..4026ae8 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -127,8 +127,8 @@ module NGAP_TestCases { var aMFNGAPComponent v_ngap_amf; // Test control - if (not PICS_NGAP_GNB_IUT) { - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT' shall be set to true for executing the TC. ***"); + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_1' shall be set to true for executing the TC. ***"); stop; } @@ -145,6 +145,34 @@ module NGAP_TestCases { } // End of testcase TC_NGAP_GNB_PDU_01 + /** + * @desc Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains several PDU Session ID IEs set to the same value." + */ + testcase TC_NGAP_GNB_PDU_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_PDU_02 + + } // End of group PDU_Session_Resource_Setup //8.2.2 -- GitLab From a2f170e999e4605135e9b5b5d969f8904d795000 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 27 Mar 2024 11:44:48 +0100 Subject: [PATCH 188/365] added template in f_TC_NGAP_GNB_PDU_02 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 54 +++++++++++++++++++++++++++++- 1 file changed, 53 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 930cf99..1f599b6 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -165,7 +165,59 @@ module NGAP_TCFunctions { m_pDUSessionResourceSetupItemSUReq( 0, m_s_NSSAI('00'O,'000000'O), - '00'O //TODO replace with template + //'00'O //TODO replace with template + bit2oct(encvalue( + m_pDUSessionResourceSetupRequestTransfer({ + m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation({ + m_uPTransportLayerInformationItem( + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel( + PX_TRANSPORT_LAYER_ADDRESS, + PX_GTP_TEID, + - + ) + ), + - + ) + }), + m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType(m_pDUSessionType(ipv4)), + m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList({ + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0,//in template (value) PacketErrorRate.pERExponent p_pERExponent, + - + ), + -, + -, + -, + -, + - + ) + ), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable,//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + - + ), + -, + -, + -, + - + ), + -, + - + ) + }) + }) + )) /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( m_uPTLInf(m_gTPTunnel( '0'B', -- GitLab From 0732e1669032ab1ef415caa5207d3ce292c5f2f5 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 27 Mar 2024 12:08:29 +0100 Subject: [PATCH 189/365] added enc function --- ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn index a1f0731..5cf1d92 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -12,12 +12,15 @@ module LibNGAP_EncdecDeclarations { import from LibNGAP_TypesAndValues all; + import from NGAP_IEs language "ASN.1:2002" all;// with {encode "ALIGNED_PER_OctetAligned"}; //TODO: if no additional type in TypesAndvalues remove //external function fx_enc_ProtocolIE (ProtocolIE p) return bitstring // with {extension "prototype(convert) encode(LibNGAP_codec)"} //external function fx_dec_ProtocolIE (inout bitstring pdu, out ProtocolIE p) return integer // with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_PDUSessionResourceSetupRequestTransfer(NGAP_IEs.PDUSessionResourceSetupRequestTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} - -} // End of module LibNGAP_EncdecDeclarations \ No newline at end of file +} // End of module LibNGAP_EncdecDeclarations -- GitLab From 56073e5c881589be1ce6c45349a5971f7964d65b Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 27 Mar 2024 18:24:40 +0100 Subject: [PATCH 190/365] Tests on templates for optional ProtocolIEs --- ccsrc/EncDec/LibNGAP_Encdec.cc | 11 +- etc/AtsNGAP/AtsNGAP.cfg | 60 +++++++++++ scripts/build_titan.bash | 106 ++++++++++++++++++ scripts/devenv.bash.debian | 77 +++++++++++++ scripts/devenv.bash.ubuntu | 73 +++++++++++++ scripts/f.bash | 19 ++++ scripts/generate_png.sh | 17 +++ scripts/run_all.bash | 60 +++++++++++ scripts/run_mtc.bash | 48 +++++++++ scripts/run_ptcs.bash | 36 +++++++ scripts/titan_repos.txt | 56 ++++++++++ scripts/update_user_name.sh | 16 +++ ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 114 +++++++------------- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 59 ++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 138 +++++++++++++++++------- 15 files changed, 775 insertions(+), 115 deletions(-) create mode 100644 etc/AtsNGAP/AtsNGAP.cfg create mode 100755 scripts/build_titan.bash create mode 100755 scripts/devenv.bash.debian create mode 100755 scripts/devenv.bash.ubuntu create mode 100755 scripts/f.bash create mode 100755 scripts/generate_png.sh create mode 100755 scripts/run_all.bash create mode 100755 scripts/run_mtc.bash create mode 100755 scripts/run_ptcs.bash create mode 100644 scripts/titan_repos.txt create mode 100755 scripts/update_user_name.sh diff --git a/ccsrc/EncDec/LibNGAP_Encdec.cc b/ccsrc/EncDec/LibNGAP_Encdec.cc index b440dac..0f1bd49 100644 --- a/ccsrc/EncDec/LibNGAP_Encdec.cc +++ b/ccsrc/EncDec/LibNGAP_Encdec.cc @@ -4,13 +4,22 @@ namespace LibNGAP__EncdecDeclarations { + BITSTRING fx__enc__PDUSessionResourceSetupRequestTransfer(const NGAP__IEs::PDUSessionResourceSetupRequestTransfer &p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupRequestTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceSetupRequestTransfer(BITSTRING &b, NGAP__IEs::PDUSessionResourceSetupRequestTransfer &p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupRequestTransfer"); + return -1; + } + /**************************************************** * @desc External function to encode a .... type * @param value to encode * @return encoded value ****************************************************/ /*BITSTRING fx__enc__ProtocolIE(const LibNGAP__TypesAndValues::ProtocolIE &p) { - loggers::get_instance().log(">>> fx__enc__ProtocolIE::"); loggers::get_instance().log_msg(">>> fx__enc__ProtocolIE:: ", p); ngap_codec codec; OCTETSTRING os; diff --git a/etc/AtsNGAP/AtsNGAP.cfg b/etc/AtsNGAP/AtsNGAP.cfg new file mode 100644 index 0000000..7b686a6 --- /dev/null +++ b/etc/AtsNGAP/AtsNGAP.cfg @@ -0,0 +1,60 @@ +[MODULE_PARAMETERS] +# This section shall contain the values of all parameters that are defined in your TTCN-3 modules. + +[LOGGING] +# In this section you can specify the name of the log file and the classes of events +# you want to log into the file or display on console (standard error). + +LogFile := "../logs/AtsNGAP/%e.%h-%r.%s" +FileMask := LOG_ALL | USER | DEBUG | MATCHING +ConsoleMask := LOG_ALL | USER | DEBUG | MATCHING +#FileMask := ERROR | WARNING | USER | MATCHING | EXECUTOR_RUNTIME | VERDICTOP | PORTEVENT | TESTCASE +#ConsoleMask := ERROR | WARNING | USER | MATCHING | EXECUTOR_RUNTIME | VERDICTOP | PORTEVENT | TESTCASE +LogSourceInfo := Stack +LogEntityName:= Yes +LogEventTypes:= Yes +#TimeStampFormat := DateTime + +[TESTPORT_PARAMETERS] +# In this section you can specify parameters that are passed to Test Ports. +[DEFINE] +# In this section you can create macro definitions, +# that can be used in other configuration file sections except [INCLUDE] and [ORDERED_INCLUDE]. + +[INCLUDE] +# To use configuration settings given in other configuration files, +# the configuration files just need to be listed in this section, with their full or relative pathnames. + +[ORDERED_INCLUDE] +# To use configuration settings given in other configuration files, +# the configuration files just need to be listed in this section, with their full or relative pathnames. + +[EXTERNAL_COMMANDS] +# This section can define external commands (shell scripts) to be executed by the ETS +# whenever a control part or test case is started or terminated. + +#BeginTestCase := "" +#EndTestCase := "" +#BeginControlPart := "" +#EndControlPart := "" + +[EXECUTE] +# In this section you can specify what parts of your test suite you want to execute. +#AtsImsIot_TestControl.control + +# Emergency Network Attachment and Establishment of the Emergency Bearer with USIM. +NGAP_TestCases.TC_NGAP_gNB_or_aMF_testcaseName_01 + +[GROUPS] +# In this section you can specify groups of hosts. These groups can be used inside the +# [COMPONENTS] section to restrict the creation of certain PTCs to a given set of hosts. + +[COMPONENTS] +# This section consists of rules restricting the location of created PTCs. + +[MAIN_CONTROLLER] +# The options herein control the behavior of MC. +KillTimer := 10.0 +LocalAddress := 127.0.0.1 +TCPPort := 12000 +NumHCs := 1 diff --git a/scripts/build_titan.bash b/scripts/build_titan.bash new file mode 100755 index 0000000..9d39632 --- /dev/null +++ b/scripts/build_titan.bash @@ -0,0 +1,106 @@ +#!/bin/bash +# Copyright ETSI 2018 +# See: https://forge.etsi.org/etsi-forge-copyright-statement.txt + +set -e +#set -vx + +clear + +if [ -z "${TOP}" ] +then + echo "Failed, TOP variable not defined, exit" + exit 1 +fi + +CURDIR=`pwd` +TITAN_DIR=${TOP}/.. + +# Move to the right directory +if [ ! -d ${TITAN_DIR} ] +then + echo "Titan directory does not exist, create it" + # Create TITAN directories + mkdir -p ${TITAN_DIR} + if [ ! "$?" -eq "0" ] + then + echo "Failed, TOP variable not defined, exit" + exit 2 + fi + cd ${TITAN_DIR} + # Clone all TITAN repositories + if [ ! -f ${CURDIR}/titan_repos.txt ] + then + echo "${HOME_BIN}/titan_repos.txt file does not exist, exit" + rm -fr ${TOP} + rm -fr ${TOP}/.. + exit 3 + fi + TITAN_REPOS=`cat ${CURDIR}/titan_repos.txt` + for i in ${TITAN_REPOS}; + do + git clone $i + if [ ! "$?" -eq "0" ] + then + echo "Failed to clone $i, exit" + exit 4 + fi + done +else + cd ${TITAN_DIR} + # Update github folders + DIRS=`find . -type d -name ".git" -exec dirname {} \;` + for i in ${DIRS}; + do + echo "Processing $i..." + cd $i + git fetch + if [ ! "$?" -eq "0" ] + then + echo "Failed to fetch $i, continue" + else + git pull + if [ ! "$?" -eq "0" ] + then + echo "Failed to pull $i, continue" + fi + fi + cd - + done +fi + +# Build TITAN core +export JNI=no +export GUI=no +export DEBUG=no +export GEN_PDF=no +if [ -d ${TTCN3_DIR} ] +then + rm -fr ${TTCN3_DIR} +fi +mkdir ${TTCN3_DIR} +cd ./titan.core +/bin/cat < Makefile.personal +JNI:=no +GUI:=no +DEBUG:=no +GEN_PDF:=no +EOF + +# To prevent link error /usr/bin/ld: /lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command lineema +sed --in-place 's/LINUX_LIBS := -lxml2/LINUX_LIBS := -lxml2 -lpthread/g' ./core/Makefile + +echo "Starting build..." +make clean +if [ "${OSTYPE}" == "cygwin" ] +then + make -j +else + make +fi +make install +echo "Build done" + +# Go back to initial directory +cd ${CURDIR} +exit 0 diff --git a/scripts/devenv.bash.debian b/scripts/devenv.bash.debian new file mode 100755 index 0000000..3954023 --- /dev/null +++ b/scripts/devenv.bash.debian @@ -0,0 +1,77 @@ +#!/bin/bash + +# Turn on debug mode +#set -vx +#set -e + +# Colors and Prompt +#export PS1="\w\$ " +#export PS1="\D{%Y-%m-%d %H:%M:%S} \w\n\$ " + +export EDITOR=emacs +set -o emacs + +# Home working directories +export HOME_FRAMEWORKS=${HOME}/frameworks +export HOME_LIB=${HOME}/lib +export HOME_BIN=${HOME}/bin +export HOME_ETC=${HOME}/etc +export HOME_TMP=${HOME}/tmp +export HOME_DOCS=${HOME}/docs + +# Home common include directory +export HOME_INC=${HOME}/include + +# Update PATH environment variable +export PATH=${HOME_BIN}:${PATH} + +# Update LD_LIBRARY_PATH environment variable +if [ -z "${LD_LIBRARY_PATH}" ] +then + export LD_LIBRARY_PATH=${HOME_LIB}:/usr/local/lib:${HOME}/dev/etsi_its/lib +else + export LD_LIBRARY_PATH=${HOME_LIB}:/usr/local/lib:${HOME}/dev/etsi_its/lib:${LD_LIBRARY_PATH} +fi + + +# Add JAVA support +#export JAVA_VERSION=1.8.0_92 +#export JAVA_JDK=jdk${JAVA_VERSION} +#if [ -d "${HOME_FRAMEWORKS}/${JAVA_JDK}" ] +#then +# export JAVA_HOME=${HOME_FRAMEWORKS}/${JAVA_JDK}/bin +#else +# unset JAVA_VERSION +# unset JAVA_JDK +#fi + +# Add TITAN support +export TOP=${HOME_FRAMEWORKS}/titan/titan.core +export TTCN3_DIR=${TOP}/Install +if [ -d ${TTCN3_DIR} ] +then + export TTCN3_BROWSER=mozilla + export PATH=${TTCN3_DIR}/bin:${PATH} + export LD_LIBRARY_PATH=${TTCN3_DIR}/lib:${LD_LIBRARY_PATH} + export MANPATH=${TTCN3_DIR}/man:${MANPATH} + export TTCN3_LICENSE_FILE=${TTCN3_DIR}/etc/license/license.dat + export PATH_DEV_TTCN=${HOME}/dev/ttcn3 + # ITS support + export PATH_DEV_ITS=${HOME}/dev/TS.ITS + # Emergency Communication support + export PATH_DEV_EMCOM=${HOME}/dev/NG112 + # Mobile-Edge Computing support + export PATH_DEV_MEC=${HOME}/dev/gs032p3-ttcn-test-suite + # CDM/CISE support + export PATH_DEV_MEC=${HOME}/dev/cise + # Validation folder + export VALIDATION_DIR=${HOME} +fi + +export BROWSER=netsurf + +export OPENSSL_DIR=/usr/local + +export LSAN_OPTIONS=verbosity=1:log_threads=1 + + diff --git a/scripts/devenv.bash.ubuntu b/scripts/devenv.bash.ubuntu new file mode 100755 index 0000000..254cc37 --- /dev/null +++ b/scripts/devenv.bash.ubuntu @@ -0,0 +1,73 @@ +#!/bin/bash + +# Turn on debug mode +#set -vx + +set -e + +# Colors and Prompt +#export PS1="\w\$ " +#export PS1="\D{%Y-%m-%d %H:%M:%S} \w\n\$ " + +export TERM=xterm +export EDITOR=emacs +set -o emacs + +# Home working directories +export HOME_FRAMEWORKS=${HOME}/frameworks +export HOME_LIB=${HOME}/lib +export HOME_BIN=${HOME}/bin +export HOME_ETC=${HOME}/etc +export HOME_TMP=${HOME}/tmp +export HOME_DOCS=${HOME}/docs + +# Home common include directory +export HOME_INC=${HOME}/include + +# Update PATH environment variable +export PATH=${HOME_BIN}:${PATH} + +# Update LD_LIBRARY_PATH environment variable +if [ "${LD_LIBRARY_PATH}" == "" ] +then + export LD_LIBRARY_PATH=${HOME_LIB}:/usr/local/lib +else + export LD_LIBRARY_PATH=${HOME_LIB}:/usr/local/lib:${LD_LIBRARY_PATH} +fi + + +# Add JAVA support +export JAVA_VERSION=1.8.0_92 +export JAVA_JDK=jdk${JAVA_VERSION} +if [ -d "${HOME_FRAMEWORKS}/${JAVA_JDK}" ] +then + export JAVA_HOME=${HOME_FRAMEWORKS}/${JAVA_JDK}/bin +else + unset JAVA_VERSION + unset JAVA_JDK +fi + +# Add TITAN support +export TOP=${HOME_FRAMEWORKS}/titan/titan.core +export TTCN3_DIR=${TOP}/Install +if [ -d ${TTCN3_DIR} ] +then + export TTCN3_BROWSER=mozilla + export PATH=${TTCN3_DIR}/bin:${PATH} + export LD_LIBRARY_PATH=${TTCN3_DIR}/lib:${LD_LIBRARY_PATH} + export MANPATH=${TTCN3_DIR}/man:${MANPATH} + export TTCN3_LICENSE_FILE=${TTCN3_DIR}/etc/license/license.dat + export PATH_DEV_TTCN=${HOME}/dev/ttcn3 + # ITS support + export PATH_DEV_ITS=${HOME}/dev/TS.ITS + # Emergency Communication support + export PATH_DEV_EMCOM=${HOME}/dev/NG112 + # Mobile-Edge Computing support + export PATH_DEV_MEC=${HOME}/dev/gs032p3-ttcn-test-suite + # CDM/CISE support + export PATH_DEV_MEC=${HOME}/dev/cise + # Validation folder + export VALIDATION_DIR=${HOME} +fi + +export BROWSER=netsurf diff --git a/scripts/f.bash b/scripts/f.bash new file mode 100755 index 0000000..9e2bb39 --- /dev/null +++ b/scripts/f.bash @@ -0,0 +1,19 @@ +#!/bin/bash +#set -vx + +if [ "$1" == "" ] +then + echo "Search In Files usage: f.bash " + echo " : With default = ttcn" + echo " e.g.: f.bash module ttcn" + exit 0 +fi + +EXT=ttcn +if [ "$2" != "" ] +then + EXT=$2 +fi +find .. -type f -name "*.$EXT" -exec grep -nH $1 {} \; + +exit $? diff --git a/scripts/generate_png.sh b/scripts/generate_png.sh new file mode 100755 index 0000000..37b46ba --- /dev/null +++ b/scripts/generate_png.sh @@ -0,0 +1,17 @@ +#!/bin/bash +#set -e +#set -vx + +clear + +if [ -z $ATS ] +then + echo "ATS shall be defined" + exit 1 +fi + +cd ../plantuml/ +python3 . ../logs/${ATS}/merged.log ./${ATS}.txt +cd - + +exit 0 diff --git a/scripts/run_all.bash b/scripts/run_all.bash new file mode 100755 index 0000000..f5fe449 --- /dev/null +++ b/scripts/run_all.bash @@ -0,0 +1,60 @@ +#!/bin/bash +#set -e +#set -vx + +clear + +if [ -z $ATS ] +then + echo "ATS shall be defined" + exit 1 +fi + +if ! [[ $1 =~ "^[0-9]+$" ]] +then + COUNTER=$1 +else + COUNTER=1 +fi + +if [ $COUNTER == 0 ] +then + COUNTER=1 + cd .. && make && cd - +fi + +CURPWD=`pwd` +if [ ! "${PWD##*/}" == "scripts" ] +then + cd ../scripts + if [ ! $? == 0 ] + then + echo "Please move to PROJECT/scripts directory" + exit 1 + fi +fi + +rm ../logs/$ATS/*.log + +for i in $(seq 1 1 $COUNTER) +do + ./run_mtc.bash & + ./run_ptcs.bash + + dup=$(ps -ef | grep "$0" | grep -v grep | wc -l) + while [ ${dup} -eq 3 ] + do + sleep 1 + dup=$(ps -ef | grep "$0" | grep -v grep | wc -l) + done + sleep 1 + + if [ -f ../logs/$ATS/merged_formated.log ] + then + mv ../logs/$ATS/merged_formated.log ../logs/$ATS/merged.`date +'%Y%m%d%S'`.log + fi +done + +exit 0 + + diff --git a/scripts/run_mtc.bash b/scripts/run_mtc.bash new file mode 100755 index 0000000..e225512 --- /dev/null +++ b/scripts/run_mtc.bash @@ -0,0 +1,48 @@ +#!/bin/bash +#set -e +#set -vx + +clear + +if [ -z $ATS ] +then + echo "ATS shall be defined" + exit 1 +fi + +CURPWD=`pwd` +if [ ! "${PWD##*/}" == "scripts" ] +then + cd ../scripts + if [ ! $? == 0 ] + then + echo "Please move to PROJECT/scripts directory" + exit 1 + fi +fi + +TITAN_LOG_DIR=../logs/$ATS +if [ ! -d ${TITAN_LOG_DIR} ] +then + mkdir ${TITAN_LOG_DIR} +else + rm -f ${TITAN_LOG_DIR}/*.log +fi + +CFG_FILES=`find ../etc/$ATS -name '*.cfg'` + +echo "> cmtc: to create the MTC server" +echo "> smtc [module_name[[.control]|.testcase_name|.*]: when MyExample is connected, run the TCs in [EXECUTE] section" +echo "> emtc: Terminate MTC." +mctr ${CFG_FILES} + +sudo chown -R `whoami` ${TITAN_LOG_DIR} +LOG_FILES=`find ${TITAN_LOG_DIR} -name '*.log'` +if [ "${TITAN_LOG_DIR}" != "" ] +then + ttcn3_logmerge -o ${TITAN_LOG_DIR}/merged.log ${LOG_FILES} + ttcn3_logformat -o ${TITAN_LOG_DIR}/merged_formated.log ${TITAN_LOG_DIR}/merged.log + echo "log files were merged into ${TITAN_LOG_DIR}/merged.log" +fi + +cd ${CURPWD} diff --git a/scripts/run_ptcs.bash b/scripts/run_ptcs.bash new file mode 100755 index 0000000..1c097d4 --- /dev/null +++ b/scripts/run_ptcs.bash @@ -0,0 +1,36 @@ +#!/bin/bash +#set -e +#set -vx + +clear + +if [ -z $ATS ] +then + echo "ATS shall be defined" + exit 1 +fi + +CURPWD=`pwd` +if [ ! "${PWD##*/}" == "scripts" ] +then + cd ../scripts + if [ ! $? == 0 ] + then + echo "Please move to PROJECT/scripts directory" + exit 1 + fi +fi + +if [ -f ./core ] +then + rm -f ./core +fi + +if [ "$ATS" == "AtsRSUsSimulator" ] +then + sudo LD_LIBRARY_PATH=$LD_LIBRARY_PATH ../bin/$ATS 127.0.0.1 12001 +else + sudo LD_LIBRARY_PATH=$LD_LIBRARY_PATH ../bin/$ATS 127.0.0.1 12000 +fi + +cd ${CURPWD} diff --git a/scripts/titan_repos.txt b/scripts/titan_repos.txt new file mode 100644 index 0000000..8842f4e --- /dev/null +++ b/scripts/titan_repos.txt @@ -0,0 +1,56 @@ +https://gitlab.eclipse.org/eclipse/titan/titan.core.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.Common_Components.Abstract_Socket.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.HTTPmsg.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.LANL2asp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.PCAPasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.PIPEasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.SCTPasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.SIPmsg.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.SQLasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.TCPasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.TELNETasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.UDPasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.COMMON.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.DHCP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.DHCPv6.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.DIAMETER_ProtocolModule_Generator.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.DNS.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.ICMP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.ICMPv6.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.IP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.RTP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.RTSP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.SMPP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.SMTP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.SNMP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.TCP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.UDP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.XMPP.git +https://gitlab.eclipse.org/eclipse/titan/titan.misc.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.LDAPasp_RFC4511.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.LDAPmsg.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.Common_Components.Socket-API.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.SSHCLIENTasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.STDINOUTmsg.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.SUNRPCasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.UNIX_DOMAIN_SOCKETasp.git +https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.IPL4asp.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.FrameRelay.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.H248_v2.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.IMAP_4rev1.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.ICAP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.IKEv2.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.IPsec.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.IUA.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.JSON_v07_2006.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.L2TP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.M3UA.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.MIME.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.MSRP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.PPP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.ProtoBuff.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.RADIUS_ProtocolModule_Generator.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.SRTP.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.WebSocket.git +https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.HTTP2.0.git +https://gitlab.eclipse.org/eclipse/titan/titan.Libraries.TCCUsefulFunctions.git diff --git a/scripts/update_user_name.sh b/scripts/update_user_name.sh new file mode 100755 index 0000000..b5c5d7f --- /dev/null +++ b/scripts/update_user_name.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +# Debug mode +#set -e +#set -vx + +# Usage: sudo ./update_user_name.bash +# TODO Use git clone in temporary directory + +USER_NAME='s/etsi/vagrant/g' +for i in `find /home/vagrant/dev/$1 -name "*.cf*"` +do + sed --in-place ${USER_NAME} $i +done + +exit 0 diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 1f599b6..d69f0fc 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -156,84 +156,42 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_PDUSessionResourceSetupRequest( - 1, - 1, - //m_ie_pDUSessionResourceSetupListSUReq( - { - m_pDUSessionResourceSetupItemSUReq( - 0, - m_s_NSSAI('00'O,'000000'O), - //'00'O //TODO replace with template - bit2oct(encvalue( - m_pDUSessionResourceSetupRequestTransfer({ - m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation({ - m_uPTransportLayerInformationItem( - m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel( - PX_TRANSPORT_LAYER_ADDRESS, - PX_GTP_TEID, - - - ) - ), - - - ) - }), - m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType(m_pDUSessionType(ipv4)), - m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList({ - m_qosFlowSetupRequestItem( - PX_QOS_FLOW_IDENTIFIER, - m_qosFlowLevelQosParameters( - m_qosCharacteristics_dynamic5QI( - m_dynamic5QIDescriptor( - 1,//in template (value) PriorityLevelQos p_priorityLevelQos, - 0,//in template (value) PacketDelayBudget p_packetDelayBudget, - m_PacketErrorRate( - 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, - 0,//in template (value) PacketErrorRate.pERExponent p_pERExponent, - - - ), - -, - -, - -, - -, - - - ) - ), - m_allocationAndRetentionPriority( - 1,//in template (value) PriorityLevelARP p_priorityLevelARP, - shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, - not_pre_emptable,//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, - - - ), - -, - -, - -, - - - ), - -, - - - ) - }) - }) - )) - /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( - m_uPTLInf(m_gTPTunnel( - '0'B', - '00000000'O(-))), - m_ie_PDUSessionType(-), - m_ie_qosFlowSetReqList({}) - )))*/ - ) - } - //) - - - ) - ) - ); - + m_ngap_initMsg( + m_n2_PDUSessionResourceSetupRequest( + -, + -, + { + m_pDUSessionResourceSetupItemSUReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + } + ))); f_recv_NGAP_PDU( mw_ngap_succMsg( diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 4026ae8..cbeaf8c 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -54,6 +54,65 @@ module NGAP_TestCases { var AdditionalDLUPTNLInformationForHOItem v_test, v_test1; + + log(m_pDUSessionResourceSetupRequestTransfer_optionals( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + ), + m_pDUSessionAggregateMaximumBitRate( + PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_DL, + PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_UL + ))); + log(m_pDUSessionResourceSetupRequestTransfer_optionals_1( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + ), + m_pDUSessionAggregateMaximumBitRate( + PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_DL, + PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_UL + ))); + + + stop; + // Test control if (not PICS_NGAP_AMF_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT' shall be set to true for executing the TC. ***"); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 0d8a7d1..b36c6e1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -5965,11 +5965,11 @@ module LibNGAP_Templates { group Send { template (omit) AdditionalDLUPTNLInformationForHOItem m_additionalDLUPTNLInformationForHOItem( - in template (value) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation, - in template (value) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList, - in template (omit) UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := omit, - in template (omit) AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) UPTransportLayerInformation p_additionalDL_NGU_UP_TNLInformation, + in template (value) QosFlowListWithDataForwarding p_additionalQosFlowSetupResponseList, + in template (omit) UPTransportLayerInformation p_additionalDLForwardingUPTNLInformation := omit, + in template (omit) AdditionalDLUPTNLInformationForHOItem.iE_Extensions p_iE_Extensions := omit + ) := { additionalDL_NGU_UP_TNLInformation := p_additionalDL_NGU_UP_TNLInformation, additionalQosFlowSetupResponseList := p_additionalQosFlowSetupResponseList, additionalDLForwardingUPTNLInformation := p_additionalDLForwardingUPTNLInformation, @@ -5977,8 +5977,8 @@ module LibNGAP_Templates { } // End of template m_additionalDLUPTNLInformationForHOItem template (value) AdditionalDLUPTNLInformationForHOItem.iE_Extensions m_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { { id := id_AdditionalRedundantDL_NGU_UP_TNLInformation, criticality := ignore, @@ -7737,10 +7737,10 @@ module LibNGAP_Templates { } // End of template m_gNB_ID_choice_Extensions template (omit) GTPTunnel m_gTPTunnel( - in template (value) TransportLayerAddress p_tla := PX_TRANSPORT_LAYER_ADDRESS, - in template (value) GTP_TEID p_gtp_teid := PX_GTP_TEID, - in template (omit) GTPTunnel.iE_Extensions p_iE_Extensions := omit - ):= { + in template (value) TransportLayerAddress p_tla := PX_TRANSPORT_LAYER_ADDRESS, + in template (value) GTP_TEID p_gtp_teid := PX_GTP_TEID, + in template (omit) GTPTunnel.iE_Extensions p_iE_Extensions := omit + ):= { transportLayerAddress := p_tla, gTP_TEID := p_gtp_teid, iE_Extensions := p_iE_Extensions @@ -10014,10 +10014,10 @@ module LibNGAP_Templates { template (value) PrivacyIndicator m_privacyIndicator(in PrivacyIndicator p_value := immediate_MDT) := p_value; template (omit) PDUSessionAggregateMaximumBitRate m_pDUSessionAggregateMaximumBitRate( - in template (value) BitRate p_pDUSessionAggregateMaximumBitRateDL, - in template (value) BitRate p_pDUSessionAggregateMaximumBitRateUL, - in template (omit) PDUSessionAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) BitRate p_pDUSessionAggregateMaximumBitRateDL, + in template (value) BitRate p_pDUSessionAggregateMaximumBitRateUL, + in template (omit) PDUSessionAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit + ) := { pDUSessionAggregateMaximumBitRateDL := p_pDUSessionAggregateMaximumBitRateDL, pDUSessionAggregateMaximumBitRateUL := p_pDUSessionAggregateMaximumBitRateUL, iE_Extensions := p_iE_Extensions @@ -10841,14 +10841,80 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceSetupItemSURes template (value) PDUSessionResourceSetupRequestTransfer m_pDUSessionResourceSetupRequestTransfer( - in template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs p_protocolIEs - ) := { + in template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs p_protocolIEs + ) := { protocolIEs := p_protocolIEs } // End of template m_pDUSessionResourceSetupRequestTransfer + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_mandatories( + in template (value) PDUSessionType p_pDUSessionType, + in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList, + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { + { + id := id_PDUSessionType, + criticality := reject, + value_ := { PDUSessionType := p_pDUSessionType } + }, + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + }, + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template m_pDUSessionResourceSetupRequestTransfer_mandatories + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_optionals( + in template (value) PDUSessionType p_pDUSessionType, + in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList, + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, + in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate + ) modifies m_pDUSessionResourceSetupRequestTransfer_mandatories := { + + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + } + + } // End of template m_pDUSessionResourceSetupRequestTransfer_optionals + + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_optionals_1( + in template (value) PDUSessionType p_pDUSessionType, + in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList, + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, + in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate + ) := { + { + id := id_PDUSessionType, + criticality := reject, + value_ := { PDUSessionType := p_pDUSessionType } + }, + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + }, + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + }, + { + id := id_PDUSessionAggregateMaximumBitRate, + criticality := reject, + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + } + + } // End of template m_pDUSessionResourceSetupRequestTransfer_optionals + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( - in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate - ) := { + in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate + ) := { { id := id_PDUSessionAggregateMaximumBitRate, criticality := reject, @@ -10857,8 +10923,8 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList - ) := { + in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList + ) := { { id := id_UL_NGU_UP_TNLInformation, criticality := reject, @@ -10867,8 +10933,8 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible( - in template (value) DataForwardingNotPossible p_dataForwardingNotPossible - ) := { + in template (value) DataForwardingNotPossible p_dataForwardingNotPossible + ) := { { id := id_DataForwardingNotPossible, criticality := reject, @@ -10877,8 +10943,8 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType( - in template (value) PDUSessionType p_pDUSessionType - ) := { + in template (value) PDUSessionType p_pDUSessionType + ) := { { id := id_PDUSessionType, criticality := reject, @@ -10887,8 +10953,8 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication( - in template (value) SecurityIndication p_securityIndication - ) := { + in template (value) SecurityIndication p_securityIndication + ) := { { id := id_SecurityIndication, criticality := reject, @@ -10917,8 +10983,8 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance( - in template (value) CommonNetworkInstance p_commonNetworkInstance - ) := { + in template (value) CommonNetworkInstance p_commonNetworkInstance + ) := { { id := id_CommonNetworkInstance, criticality := ignore, @@ -10927,8 +10993,8 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability( - in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability - ) := { + in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability + ) := { { id := id_DirectForwardingPathAvailability, criticality := ignore, @@ -10937,11 +11003,11 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation + ) := { { id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, + criticality := reject, value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation @@ -10967,8 +11033,8 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstance template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation( - in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation - ) := { + in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation + ) := { { id := id_RedundantPDUSessionInformation, criticality := ignore, -- GitLab From bd7bf48f00f970c4e5e7daeec04483631285d74b Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 29 Mar 2024 10:45:13 +0100 Subject: [PATCH 191/365] updated template in f_TC_NGAP_GNB_PDU_02 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 190 +++++++++++++++++------------ 1 file changed, 112 insertions(+), 78 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index d69f0fc..9c87007 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -81,29 +81,40 @@ module NGAP_TCFunctions { f_send_NGAP_PDU( m_ngap_initMsg( m_n2_PDUSessionResourceSetupRequest( - 1, - 1, - //m_ie_pDUSessionResourceSetupListSUReq( - { - m_pDUSessionResourceSetupItemSUReq( - 0, - m_s_NSSAI('00'O,'000000'O), - '00'O //TODO replace with template - /*bit2oct(encvalue(m_ie_pDUSessResSetReqTrIEs( - m_uPTLInf(m_gTPTunnel( - '0'B', - '00000000'O(-))), - m_ie_PDUSessionType(-), - m_ie_qosFlowSetReqList({}) - )))*/ - ) - } - //) - - - ) - ) - ); + -, + -, + { + m_pDUSessionResourceSetupItemSUReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + } + ))); f_recv_NGAP_PDU( @@ -156,65 +167,88 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_PDUSessionResourceSetupRequest( - -, - -, - { - m_pDUSessionResourceSetupItemSUReq( - -, - m_s_NSSAI('00'O, '000000'O), - bit2oct( - encvalue( - m_pDUSessionResourceSetupRequestTransfer( - m_pDUSessionResourceSetupRequestTransfer_mandatories( - m_pDUSessionType(ipv4), - { - m_qosFlowSetupRequestItem( - PX_QOS_FLOW_IDENTIFIER, - m_qosFlowLevelQosParameters( - m_qosCharacteristics_dynamic5QI( - m_dynamic5QIDescriptor( - 1,//in template (value) PriorityLevelQos p_priorityLevelQos, - 0,//in template (value) PacketDelayBudget p_packetDelayBudget, - m_PacketErrorRate( - 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, - 0//in template (value) PacketErrorRate.pERExponent p_pERExponent - ))), - m_allocationAndRetentionPriority( - 1,//in template (value) PriorityLevelARP p_priorityLevelARP, - shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, - not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, - ))) - }, - m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel - )))))) - } - ))); + m_ngap_initMsg( + m_n2_PDUSessionResourceSetupRequest( + -, + -, + { + m_pDUSessionResourceSetupItemSUReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))), + m_pDUSessionResourceSetupItemSUReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + } + ))); f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_PDUSessionResourceSetupResponse( - -, - -, - //? //TODO replace with template - { - (mw_pDUSessionResourceSetupItemSURes( - ?,//template (present) PDUSessionID p_pDUSessionID, - //mw_pDUSessionResourceSetupResponseTransfer( - // ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - // *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - // *,//template SecurityResult p_securityResult := *, - // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, - // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * - // ), In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer - ?,//template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, - *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * - ) - - ) - } + -, + -, + //? //TODO replace with template + { + * + + //FIXME: when template Ready + //mw_pDUSessionResourceFailedToSetupItemSURes( + // ?, + // ?, + // * + //) + } ) ) ); -- GitLab From 3e2c29c5b750a933240ab07f49ca1054e30bd3e8 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 9 Apr 2024 11:27:03 +0200 Subject: [PATCH 192/365] Create templates for two entries NGAP-PROTOCOL-EXTENSION --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 273 ++++++++++++++++++++++++ 1 file changed, 273 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index b36c6e1..9b4546f 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -6031,11 +6031,13 @@ module LibNGAP_Templates { ) := { globalRANNodeID := p_globalRANNodeID } // End of template m_aMFPagingTarget_globalRANNodeID + template (value) AMFPagingTarget m_aMFPagingTarget_tAI( in template (value) TAI p_tAI ) := { tAI := p_tAI } // End of template m_aMFPagingTarget_tAI + template (value) AMFPagingTarget m_aMFPagingTarget_ext( in template (value) AMFPagingTarget.choice_Extensions p_choice_Extensions ) := { @@ -6158,6 +6160,22 @@ module LibNGAP_Templates { } } // End of template m_assistanceDataForPaging_pagingAssisDataforCEcapabUE + template (value) AssistanceDataForPaging.iE_Extensions m_assistanceDataForPaging_full( + in template (value) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation, + in template (value) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE + ) := { + { + id := id_NPN_PagingAssistanceInformation, + criticality := ignore, + extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } + }, + { + id := id_PagingAssisDataforCEcapabUE, + criticality := ignore, + extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } + } + } // End of template m_assistanceDataForPaging_full + template (omit) AssistanceDataForRecommendedCells m_assistanceDataForRecommendedCells( in template (value) RecommendedCellsForPaging p_recommendedCellsForPaging, in template (omit) AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := omit @@ -7272,6 +7290,22 @@ module LibNGAP_Templates { } } // End of template m_e_RABInformationItem_id_SourceNodeTNLAddrInfo + template (omit) E_RABInformationItem.iE_Extensions m_e_RABInformationItem_full( + in template (value) TransportLayerAddress p_transportLayerAddress_id_SourceTNLAddrInfo := PX_SOURCE_TRANSPORT_LAYER_ADDRESS, + in template (value) TransportLayerAddress p_transportLayerAddress_id_SourceNodeTNLAddrInfo := PX_SOURCE_TRANSPORT_LAYER_ADDRESS + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress_id_SourceTNLAddrInfo } + }, + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress_id_SourceNodeTNLAddrInfo } + } + } // End of template m_e_RABInformationItem_full + template (omit) EUTRA_CGI m_uUTRA_CGI( in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, in template (value) EUTRACellIdentity p_eUTRACellIdentity := PX_EUTRA_CELL_IDENTITY, @@ -10577,6 +10611,22 @@ module LibNGAP_Templates { } } // End of template m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour + template (value) PDUSessionResourceModifyItemModReq.iE_Extensions m_pDUSessionResourceModifyItemModReq_full( + in template (value) S_NSSAI p_s_nSSAI, + in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour + ) := { + { + id := id_S_NSSAI, + criticality := reject, + extensionValue := { S_NSSAI := p_s_nSSAI } + }, + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template m_pDUSessionResourceModifyItemModReq_full + template (omit) PDUSessionResourceModifyItemModRes m_pDUSessionResourceModifyItemModRes( in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, in template (value) PDUSessionResourceModifyItemModRes.pDUSessionResourceModifyResponseTransfer p_pDUSessionResourceModifyResponseTransfer, @@ -11388,6 +11438,22 @@ module LibNGAP_Templates { } } // End of template m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator + template (value) QosFlowAddOrModifyRequestItem.iE_Extensions m_qosFlowAddOrModifyRequestItem_full( + in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics, + in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + }, + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template m_qosFlowAddOrModifyRequestItem_full + template (omit) QosFlowAddOrModifyResponseItem m_qosFlowAddOrModifyResponseItem( in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, in template (omit) QosFlowAddOrModifyResponseItem.iE_Extensions p_iE_Extensions := omit @@ -11496,6 +11562,22 @@ module LibNGAP_Templates { } } // End of template m_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency + template (value) QosFlowLevelQosParameters.iE_Extensions m_qosFlowLevelQosParameters_full( + in template (value) QosMonitoringRequest p_qosMonitoringRequest, + in template (value) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency + ) := { + { + id := id_QosMonitoringRequest, + criticality := ignore, + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + }, + { + id := id_QosMonitoringReportingFrequency, + criticality := ignore, + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + } + } // End of template m_qosFlowLevelQosParameters_full + template (value) QosMonitoringRequest m_qosMonitoringRequest(in QosMonitoringRequest p_value := ul) := p_value; template (omit) QosFlowWithCauseItem m_qosFlowWithCauseItem( @@ -11626,6 +11708,22 @@ module LibNGAP_Templates { } } // End of template m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator + template (value) QosFlowSetupRequestItem.iE_Extensions m_qosFlowSetupRequestItem_full( + in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics, + in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + }, + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template m_qosFlowSetupRequestItem_full + template (omit) QosFlowItemWithDataForwarding m_qosFlowItemWithDataForwarding( in template (value) QosFlowIdentifier p_qosFlowIdentifier := PX_QOS_FLOW_IDENTIFIER, in template (omit) DataForwardingAccepted p_dataForwardingAccepted := omit, @@ -12268,6 +12366,22 @@ module LibNGAP_Templates { } } // End of template m_supportedTAItem_id_RAT_Information + template (value) SupportedTAItem.iE_Extensions m_supportedTAItem_full( + in template (value) ConfiguredTACIndication p_configuredTACIndication, + in template (value) RAT_Information p_rAT_Information + ) := { + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + }, + { + id := id_RAT_Information, + criticality := reject, + extensionValue := { RAT_Information := p_rAT_Information } + } + } // End of template m_supportedTAItem_full + template (value) SuspendIndicator m_suspendIndicator(in SuspendIndicator p_value := true_) := p_value; template (value) Suspend_Request_Indication m_suspend_Request_Indication(in Suspend_Request_Indication p_value := suspend_requested) := p_value; @@ -12627,6 +12741,22 @@ module LibNGAP_Templates { } } // End of template m_traceActivation_id_TraceCollectionEntityURI + template (value) TraceActivation.iE_Extensions m_traceActivation_full( + in template (value) MDT_Configuration p_mDT_Configuration, + in template (value) URI_address p_uRI_address + ) := { + { + id := id_MDTConfiguration, + criticality := ignore, + extensionValue := { MDT_Configuration := p_mDT_Configuration } + }, + { + id := id_TraceCollectionEntityURI, + criticality := ignore, + extensionValue := { URI_address := p_uRI_address } + } + } // End of template m_traceActivation_full + template (value) TraceDepth m_traceDepth(in TraceDepth p_value := minimum) := p_value; template (value) TypeOfError m_typeOfError(in TypeOfError p_value := not_understood) := p_value; @@ -12991,6 +13121,22 @@ module LibNGAP_Templates { } } // End of template m_uL_NGU_UP_TNLModifyItem_id_RedundantDL_NGU_UP_TNLInformation + template (value) UL_NGU_UP_TNLModifyItem.iE_Extensions m_uL_NGU_UP_TNLModifyItem_full( + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation_id_RedundantUL_NGU_UP_TNLInformation, + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation_id_RedundantDL_NGU_UP_TNLInformation + ) := { + { + id := id_RedundantUL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation_id_RedundantUL_NGU_UP_TNLInformation } + }, + { + id := id_RedundantDL_NGU_UP_TNLInformation, + criticality := ignore, + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation_id_RedundantDL_NGU_UP_TNLInformation } + } + } // End of template m_uL_NGU_UP_TNLModifyItem_full + template (omit) UnavailableGUAMIItem m_unavailableGUAMIItem( in template (value) GUAMI p_gUAMI, in template (omit) TimerApproachForGUAMIRemoval p_timerApproachForGUAMIRemoval := omit, @@ -13593,6 +13739,22 @@ module LibNGAP_Templates { } } // End of template mw_assistanceDataForPaging_pagingAssisDataforCEcapabUE + template (present) AssistanceDataForPaging.iE_Extensions mw_assistanceDataForPaging_full( + template (present) NPN_PagingAssistanceInformation p_nPN_PagingAssistanceInformation := ?, + template (present) PagingAssisDataforCEcapabUE p_pagingAssisDataforCEcapabUE := ? + ) := { + { + id := id_NPN_PagingAssistanceInformation, + criticality := ignore, + extensionValue := { NPN_PagingAssistanceInformation := p_nPN_PagingAssistanceInformation } + }, + { + id := id_PagingAssisDataforCEcapabUE, + criticality := ignore, + extensionValue := { PagingAssisDataforCEcapabUE := p_pagingAssisDataforCEcapabUE } + } + } // End of template mw_assistanceDataForPaging_full + template (present) AssistanceDataForRecommendedCells mw_assistanceDataForRecommendedCells( template (present) RecommendedCellsForPaging p_recommendedCellsForPaging := ?, template AssistanceDataForRecommendedCells.iE_Extensions p_iE_Extensions := * @@ -14702,6 +14864,22 @@ module LibNGAP_Templates { } } // End of template mw_e_RABInformationItem_id_SourceNodeTNLAddrInfo + template (present) E_RABInformationItem.iE_Extensions mw_e_RABInformationItem_full( + template (present) TransportLayerAddress p_transportLayerAddress_id_SourceTNLAddrInfo := ?, + template (present) TransportLayerAddress p_transportLayerAddress_id_SourceNodeTNLAddrInfo := ? + ) := { + { + id := id_SourceTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress_id_SourceTNLAddrInfo } + }, + { + id := id_SourceNodeTNLAddrInfo, + criticality := ignore, + extensionValue := { TransportLayerAddress := p_transportLayerAddress_id_SourceNodeTNLAddrInfo } + } + } // End of template mw_e_RABInformationItem_full + template (present) EUTRA_CGI mw_uUTRA_CGI( template (present) PLMNIdentity p_pLMNIdentity := ?, template (present) EUTRACellIdentity p_eUTRACellIdentity := ?, @@ -17974,6 +18152,22 @@ module LibNGAP_Templates { } } // End of template mw_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour + template (present) PDUSessionResourceModifyItemModReq.iE_Extensions mw_pDUSessionResourceModifyItemModReq_full( + template (present) S_NSSAI p_s_nSSAI := ?, + template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? + ) := { + { + id := id_S_NSSAI, + criticality := reject, + extensionValue := { S_NSSAI := p_s_nSSAI } + }, + { + id := id_PduSessionExpectedUEActivityBehaviour, + criticality := ignore, + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + } + } // End of template mw_pDUSessionResourceModifyItemModReq_full + template (present) PDUSessionResourceModifyItemModRes mw_pDUSessionResourceModifyItemModRes( template (present) PDUSessionID p_pDUSessionID := ?, template (present) PDUSessionResourceModifyItemModRes.pDUSessionResourceModifyResponseTransfer p_pDUSessionResourceModifyResponseTransfer := ?, @@ -18719,6 +18913,22 @@ module LibNGAP_Templates { } } // End of template mw_qosFlowAddOrModifyRequestItemw_id_RedundantQosFlowIndicator + template (present) QosFlowAddOrModifyRequestItem.iE_Extensions mw_qosFlowAddOrModifyRequestItemw_full( + template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ?, + template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + }, + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template mw_qosFlowAddOrModifyRequestItemw_full + template (present) QosFlowAddOrModifyResponseItem mw_qosFlowAddOrModifyResponseItem( template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, template QosFlowAddOrModifyResponseItem.iE_Extensions p_iE_Extensions := * @@ -18827,6 +19037,22 @@ module LibNGAP_Templates { } } // End of template mw_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency + template (present) QosFlowLevelQosParameters.iE_Extensions mw_qosFlowLevelQosParameters_full( + template (present) QosMonitoringRequest p_qosMonitoringRequest := ?, + template (present) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency := ? + ) := { + { + id := id_QosMonitoringRequest, + criticality := ignore, + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + }, + { + id := id_QosMonitoringReportingFrequency, + criticality := ignore, + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + } + } // End of template mw_qosFlowLevelQosParameters_full + template (present) QosMonitoringRequest mw_qosMonitoringRequest(template (present) QosMonitoringRequest p_value := ?) := p_value; template (present) QosFlowWithCauseItem mw_qosFlowWithCauseItem( @@ -18957,6 +19183,22 @@ module LibNGAP_Templates { } } // End of template mw_qosFlowSetupRequestItemw_id_RedundantQosFlowIndicator + template (present) QosFlowSetupRequestItem.iE_Extensions mw_qosFlowSetupRequestItemw_full( + template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ?, + template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? + ) := { + { + id := id_TSCTrafficCharacteristics, + criticality := ignore, + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + }, + { + id := id_RedundantQosFlowIndicator, + criticality := ignore, + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + } + } // End of template mw_qosFlowSetupRequestItemw_full + template (present) QosFlowItemWithDataForwarding mw_qosFlowItemWithDataForwarding( template (present) QosFlowIdentifier p_qosFlowIdentifier := ?, template DataForwardingAccepted p_dataForwardingAccepted := *, @@ -19600,6 +19842,22 @@ module LibNGAP_Templates { } } // End of template mw_supportedTAItemw_id_RAT_Information + template (present) SupportedTAItem.iE_Extensions mw_supportedTAItemw_full( + template (present) ConfiguredTACIndication p_configuredTACIndication := ?, + template (present) RAT_Information p_rAT_Information := ? + ) := { + { + id := id_ConfiguredTACIndication, + criticality := ignore, + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + }, + { + id := id_RAT_Information, + criticality := reject, + extensionValue := { RAT_Information := p_rAT_Information } + } + } // End of template mw_supportedTAItemw_full + template (present) SuspendIndicator mw_suspendIndicator(template (present) SuspendIndicator p_value := true_) := p_value; template (present) Suspend_Request_Indication mw_suspend_Request_Indication(template (present) Suspend_Request_Indication p_value := suspend_requested) := p_value; @@ -19959,6 +20217,21 @@ module LibNGAP_Templates { } } // End of template mw_traceActivation_id_TraceCollectionEntityURI + template (present) TraceActivation.iE_Extensions mw_traceActivation_full( + template (present) MDT_Configuration p_mDT_Configuration := ?, + template (present) URI_address p_uRI_address := ? + ) := { + { + id := id_MDTConfiguration, + criticality := ignore, + extensionValue := { MDT_Configuration := p_mDT_Configuration } + },{ + id := id_TraceCollectionEntityURI, + criticality := ignore, + extensionValue := { URI_address := p_uRI_address } + } + } // End of template mw_traceActivation_full + template (present) TraceDepth mw_traceDepth(template (present) TraceDepth p_value := ?) := p_value; template (present) TypeOfError mw_typeOfError(template (present) TypeOfError p_value := ?) := p_value; -- GitLab From 22801e3c1006a65b147dc6b8646d6c2df55ec581 Mon Sep 17 00:00:00 2001 From: pintar Date: Mon, 15 Apr 2024 09:53:47 +0200 Subject: [PATCH 193/365] TP _GNB_PDU_08 updated --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index ca6605e..3bd5fea 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -416,12 +416,8 @@ Package TP_GNB { the IUT entity sends a PDU_SESSION_RESOURCE_NOTIFY containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - PDU_Session_Resource_Released_List containing - PDU_Session_Resource_Released_Item containing - PDU_SessionId indicating value PX_PDU_ID, - S_NSSAI, - PDU_Session_Resource_Notify_Released_Transfer containing - Cause;;;; + PDU_Session_Resource_Notify_List containing + PDU_Session_Resource_Notify_Item;; to the AMF entity } } -- GitLab From ae1c64a8ac2500f95ca5ffcdd4875c855925a971 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 16 Apr 2024 10:40:28 +0200 Subject: [PATCH 194/365] added 1st version GNB PDU session managementProcedures TPs --- ttcn/AtsNGAP/NGAP_Pics.ttcn | 2 +- ttcn/AtsNGAP/NGAP_Steps.ttcn | 7 + ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 537 +++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 194 +++++++++++ 4 files changed, 739 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_Pics.ttcn b/ttcn/AtsNGAP/NGAP_Pics.ttcn index 38530a3..341b666 100644 --- a/ttcn/AtsNGAP/NGAP_Pics.ttcn +++ b/ttcn/AtsNGAP/NGAP_Pics.ttcn @@ -31,7 +31,7 @@ module NGAP_Pics { modulepar boolean PICS_A3_1_1 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE SETUP REQUEST modulepar boolean PICS_A3_1_2 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE RELEASE COMMAND modulepar boolean PICS_A3_1_3 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY REQUEST - modulepar boolean PICS_A3_1_4 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY NOTIFY + modulepar boolean PICS_A3_1_4 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE NOTIFY REQUEST modulepar boolean PICS_A3_1_5 := false; //gNB - PDU session management procedure - PDU SESSION RESOURCE MODIFY INDICATION modulepar boolean PICS_A3_2_1 := false; //gnB - UE Context Management Procedures - INITIAL CONTEXT SETUP REQUEST modulepar boolean PICS_A3_2_2 := false; //gnB - UE Context Management Procedures - UE CONTEXT RELEASE REQUEST diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 7e5a35f..dd53cf7 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -166,6 +166,13 @@ module NGAP_Steps { //FIXME: Implementation of UE registration } // End of function f_NGAP_amf_UE_Register() + /** + * @desc + */ + function f_NGAP_amf_UE_PDU_ResourceSetup() runs on NGAPComponent { + //FIXME: Implementation of PDU session resource setup + } // End of function f_NGAP_amf_UE_PDU_ResourceSetup(); + }//end group BehaviorFunctions } // End of module NGAP_Steps diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 9c87007..10782b1 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -263,18 +263,555 @@ module NGAP_TCFunctions { } // End of function f_TC_NGAP_gNB_PDU_02 + /** + * @desc Testcase function for TC_NGAP_gNB_PDU_03 + */ + function f_TC_NGAP_GNB_PDU_03() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceSetupRequest( + -, + -, + { + m_pDUSessionResourceSetupItemSUReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + } + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceSetupResponse( + -, + -, + //? //TODO replace with template + { + mw_pDUSessionResourceSetupItemSURes( + ?,//template (present) PDUSessionID p_pDUSessionID, + //mw_pDUSessionResourceSetupResponseTransfer( + // ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + // *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + // *,//template SecurityResult p_securityResult := *, + // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + // ), In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer + ?,//template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) + } + ) + ) + ); + + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceSetupRequest( + -, + -, + { + m_pDUSessionResourceSetupItemSUReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + } + ))); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceSetupResponse( + -, + -, + //? //TODO replace with template + { + * + + //FIXME: when template Ready + //mw_pDUSessionResourceFailedToSetupItemSURes( + // ?, + // ?, + // * + //) + } + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_PDU_03 + + /** + * @desc Testcase function for TC_NGAP_gNB_PDU_04 + */ + function f_TC_NGAP_GNB_PDU_04() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceSetupRequest( + -, + -, + { + m_pDUSessionResourceSetupItemSUReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, //FIXME nonGBRQosID + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + } + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceSetupResponse( + -, + -, + //? //TODO replace with template + { + * + + //FIXME: when template Ready + //mw_pDUSessionResourceFailedToSetupItemSURes( + // ?, + // ?, + // * + //) + } + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_PDU_04 + } // End of group PDU_Session_Resource_Setup //8.2.2 group PDU_Session_Resource_Release{ + + /** + * @desc Testcase function for TC_NGAP_gNB_PDU_05 + */ + function f_TC_NGAP_GNB_PDU_05() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceReleaseCommand( + -, + -, + { + m_pDUSessionResourceToReleaseItemRelCmd( + PX_PDU_SESSION_ID, + bit2oct( + encvalue( + m_pDUSessionResourceReleaseCommandTransfer( + m_cause_misc(m_causeMisc(-)), + -//in template (omit) PDUSessionResourceReleaseCommandTransfer.iE_Extensions p_iE_Extensions := omit + ) + ) + ), + - //in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit + ) + } + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceReleaseResponse( + -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + { + ( + mw_pDUSessionResourceReleasedItemRelRes( + PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, + -,//bit2oct(encvalue(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + -//template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * + ) + + ) + }//template (present) PDUSessionResourceReleasedListRelRes p_pDUSessionResourceReleasedListRelRes := ? + ) + + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_PDU_05 + + /** + * @desc Testcase function for TC_NGAP_gNB_PDU_06 + */ + function f_TC_NGAP_GNB_PDU_06() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceReleaseCommand( + -, + -, + { + m_pDUSessionResourceToReleaseItemRelCmd( + PX_PDU_SESSION_ID, + bit2oct( + encvalue( + m_pDUSessionResourceReleaseCommandTransfer( + m_cause_misc(m_causeMisc(-)), + -//in template (omit) PDUSessionResourceReleaseCommandTransfer.iE_Extensions p_iE_Extensions := omit + ) + ) + ), + - //in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit + ), + m_pDUSessionResourceToReleaseItemRelCmd( + PX_PDU_SESSION_ID, + bit2oct( + encvalue( + m_pDUSessionResourceReleaseCommandTransfer( + m_cause_misc(m_causeMisc(-)), + -//in template (omit) PDUSessionResourceReleaseCommandTransfer.iE_Extensions p_iE_Extensions := omit + ) + ) + ), + - //in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit + ) + } + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceReleaseResponse( + -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + { + ( + mw_pDUSessionResourceReleasedItemRelRes( + PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, + -,//bit2oct(encvalue(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + -//template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * + ) + + ) + }//template (present) PDUSessionResourceReleasedListRelRes p_pDUSessionResourceReleasedListRelRes := ? + ) + + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_PDU_06 + } // End of group PDU_Session_Resource_Release //8.2.3 group PDU_Session_Resource_Modify{ + + /** + * @desc Testcase function for TC_NGAP_gNB_PDU_07 + */ + function f_TC_NGAP_GNB_PDU_07() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceModify( + -, + -, + { + m_pDUSessionResourceModifyItemModReq( + PX_PDU_SESSION_ID, + '00'O,//bit2oct( + // encvalue( + // m_pDUSessionResourceModifyRequestTransfer(//FIXME when template with mandatory IEs available + // -//in template (omit) PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs + // ) + // ) + //), + -,//in template (omit) NAS_PDU p_nAS_PDU := omit, + -//in template (omit) PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := omit + ) + } + ))); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceModifyResponse( + -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + { + ( + mw_pDUSessionResourceModifyItemModRes( + PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, + ?,//mw_pDUSessionResourceModifyResponseTransfer( + //*,//template UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := *, + //*,//template UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := *, + //?,//template QosFlowAddOrModifyResponseList p_qosFlowAddOrModifyResponseList := *, + //*,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + //*,//template QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := *, + //*//template PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := * + //), + -//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * + ) + + ) + } + ) + + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_PDU_07 + } // End of group PDU_Session_Resource_Modify //8.2.4 group PDU_Session_Resource_Notify{ + + /** + * @desc Testcase function for TC_NGAP_gNB_PDU_08 + */ + function f_TC_NGAP_GNB_PDU_08() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger PDU session resource NOTIFY!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_PDUSessionResourceNotify( + -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + { + //* + mw_pDUSessionResourceNotifyItem( + PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, + ?,//template (present) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer, + -//template PDUSessionResourceNotifyItem.iE_Extensions p_iE_Extensions := * + ) + } + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_PDU_08 + } // End of group PDU_Session_Resource_Notify //8.2.5 group PDU_Session_Resource_Modify_Indication{ + + /** + * @desc Testcase function for TC_NGAP_gNB_PDU_09 + */ + function f_TC_NGAP_GNB_PDU_09() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger PDU session resource MODIFY!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_PDUSessionResourceModifyIndication( + -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + { + ( + mw_pDUSessionResourceModifyItemModInd( + PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, + ?,//pDUSessionResourceModifyIndicationTransfer( + //?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + //*,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + //-//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * + //), + -//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * + ) + ) + } + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_PDU_09 + } // End of group PDU_Session_Resource_Modify_Indication } // End of group PDU_Session_Management_Procedures //8.3 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index cbeaf8c..16d2f36 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -231,20 +231,214 @@ module NGAP_TestCases { } // End of testcase TC_NGAP_GNB_PDU_02 + /** + * @desc Test objective "Verify that the NG-RAN node reports the establishment of the new PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a PDU Session ID IE set to value that identifies an active PDU Session. NOTE: Run TP_NGAP_GNB_PDU_01 before this TP " + */ + testcase TC_NGAP_GNB_PDU_03() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_PDU_03 + + /** + * @desc Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a QoS Flow Setup Request List IE in the PDU Session Resource Setup Request Transfer IE including at least one Non-GBR QoS flow but the PDU Session Aggregate Maximum Bit Rate IE is not present. " + */ + testcase TC_NGAP_GNB_PDU_04() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_PDU_04 } // End of group PDU_Session_Resource_Setup //8.2.2 group PDU_Session_Resource_Release{ + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND contains mandatory IEs and answers with PDU SESSION RESOURCE RELEASE RESPONSE to release PDU session." + */ + testcase TC_NGAP_GNB_PDU_05() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_PDU_05 + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND containing multiple PDU Session ID IEs set to the same value and ignore the duplication." + */ + testcase TC_NGAP_GNB_PDU_06() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_06()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_PDU_06 + } // End of group PDU_Session_Resource_Release //8.2.3 group PDU_Session_Resource_Modify{ + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE MODIFY REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE MODIFY RESPONSE for successfully modified PDU session." + */ + testcase TC_NGAP_GNB_PDU_07() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_07()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_PDU_07 + + + } // End of group PDU_Session_Resource_Modify //8.2.4 group PDU_Session_Resource_Notify{ + + /** + * @desc Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_NOTIFY that already established QoS flow or PDU session for given UE are release." + */ + testcase TC_NGAP_GNB_PDU_08() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_08()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_PDU_08 + } // End of group PDU_Session_Resource_Notify //8.2.5 group PDU_Session_Resource_Modify_Indication{ + + /** + * @desc Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_INDICATION to request modification of established PDU session." + */ + testcase TC_NGAP_GNB_PDU_09() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_09()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_PDU_09 + } // End of group PDU_Session_Resource_Modify_Indication } // End of group PDU_Session_Management_Procedures //8.3 -- GitLab From e89ce5b38fbfbea9ad91ca1cf92573f41d838b7e Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 17 Apr 2024 07:54:58 +0200 Subject: [PATCH 195/365] added 1st version AMF PDU session managementProcedures TPs --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 17 ++++ ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 138 +++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 86 +++++++++++++++++- 3 files changed, 240 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index dd53cf7..0136c41 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -173,6 +173,23 @@ module NGAP_Steps { //FIXME: Implementation of PDU session resource setup } // End of function f_NGAP_amf_UE_PDU_ResourceSetup(); + + /******************************************************************/ + + /** + * @desc + */ + function f_NGAP_gnb_UE_Register() runs on NGAPComponent { + //FIXME: Implementation of UE registration + } // End of function f_NGAP_gnb_UE_Register() + + /** + * @desc + */ + function f_NGAP_gnb_UE_PDU_ResourceSetup() runs on NGAPComponent { + //FIXME: Implementation of PDU session resource setup + } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup(); + }//end group BehaviorFunctions } // End of module NGAP_Steps diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 10782b1..3de7261 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1031,12 +1031,150 @@ module NGAP_TCFunctions { group PDU_Session_Management_Procedures{ //8.2.1 group PDU_Session_Resource_Setup{ + + /** + * @desc Testcase function for TC_NGAP_aMF_PDU_01 + */ + function f_TC_NGAP_AMF_PDU_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger PDU session resource SETUP!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_PDUSessionResourceSetupRequest( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { + mw_pDUSessionResourceSetupItemSUReq( + PX_PDU_SESSION_ID, + mw_s_NSSAI( + PX_SST, + -,//in template (omit) SD p_sD := omit, + -//in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ), + ?,//mw_pDUSessionResourceSetupRequestTransfer(?),OCTETSTRING + -,//in template (omit) NAS_PDU p_pDUSessionNAS_PDU := omit, + -//in template (omit) PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := omit + ) + }//in template (value) PDUSessionResourceSetupListSUReq p_pDUSessionResourceSetupListSUReq + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_PDU_01 + } // End of group PDU_Session_Resource_Setup //8.2.2 group PDU_Session_Resource_Release{ + + /** + * @desc Testcase function for TC_NGAP_AMF_PDU_02 + */ + function f_TC_NGAP_AMF_PDU_02() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger PDU session resource RELEASE!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_PDUSessionResourceReleaseCommand( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { + mw_pDUSessionResourceToReleaseItemRelCmd( + PX_PDU_SESSION_ID, + ?,//mw_pDUSessionResourceReleaseCommandTransfer(?,-),OCTETSTRING + -//in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit + ) + } + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_PDU_02 + } // End of group PDU_Session_Resource_Release //8.2.3 group PDU_Session_Resource_Modify{ + + /** + * @desc Testcase function for TC_NGAP_AMF_PDU_03 + */ + function f_TC_NGAP_AMF_PDU_03() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger PDU session resource MODIFY!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_PDUSessionResourceModify( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { + mw_pDUSessionResourceModifyItemModReq( + PX_PDU_SESSION_ID, + ?,//mw_pDUSessionResourceModifyRequestTransfer(*),OCTETSTRING + -,//template NAS_PDU p_nAS_PDU := *, + -//template PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := * + ) + } + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_PDU_03 + } // End of group PDU_Session_Resource_Modify //8.2.4 group PDU_Session_Resource_Notify{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 16d2f36..0e05791 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -438,7 +438,7 @@ module NGAP_TestCases { f_cf_Down/*gNBoraMF*/(); } // End of testcase TC_NGAP_GNB_PDU_09 - + } // End of group PDU_Session_Resource_Modify_Indication } // End of group PDU_Session_Management_Procedures //8.3 @@ -658,12 +658,96 @@ module NGAP_TestCases { group PDU_Session_Management_Procedures{ //8.2.1 group PDU_Session_Resource_Setup{ + + /** + * @desc "Verify that the IUT can send a PDU SESSION RESOURCE SETUP REQUEST with at least one PDU session resource list to established PDU session." + */ + testcase TC_NGAP_AMF_PDU_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_1_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_1_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_PDU_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_PDU_01 + } // End of group PDU_Session_Resource_Setup //8.2.2 group PDU_Session_Resource_Release{ + + /** + * @desc "Verify that the IUT can send a PDU_SESSION_RESOURCE_RELEASE_COMMAND to release PDU session." + */ + testcase TC_NGAP_AMF_PDU_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_1_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_1_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_PDU_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_PDU_02 + } // End of group PDU_Session_Resource_Release //8.2.3 group PDU_Session_Resource_Modify{ + + /** + * @desc "Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_REQUEST to modify PDU session." + */ + testcase TC_NGAP_AMF_PDU_03() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_1_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_1_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_PDU_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_PDU_03 + } // End of group PDU_Session_Resource_Modify //8.2.4 group PDU_Session_Resource_Notify{ -- GitLab From 228243c01e656c65f9b105faaf2e156cf4eb2d36 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 17 Apr 2024 07:55:59 +0200 Subject: [PATCH 196/365] added 1st version AMF PDU session managementProcedures TPs --- .../lib/LibNGAP_EncdecDeclarations.ttcn | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn index 5cf1d92..dba2015 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -14,13 +14,33 @@ module LibNGAP_EncdecDeclarations { import from LibNGAP_TypesAndValues all; import from NGAP_IEs language "ASN.1:2002" all;// with {encode "ALIGNED_PER_OctetAligned"}; -//TODO: if no additional type in TypesAndvalues remove + //TODO: if no additional type in TypesAndvalues remove //external function fx_enc_ProtocolIE (ProtocolIE p) return bitstring // with {extension "prototype(convert) encode(LibNGAP_codec)"} //external function fx_dec_ProtocolIE (inout bitstring pdu, out ProtocolIE p) return integer // with {extension "prototype(sliding) decode(LibNGAP_codec)"} - + + /*external function fx_enc_NGAP_IEs (NGAP_IEs p) return bitstring + with {extension "prototype(convert) encode(LibNGAP_codec)"} + external function fx_dec_NGAP_IEs (inout bitstring pdu, out NGAP_IEs p) return integer + with {extension "prototype(sliding) decode(LibNGAP_codec)"}*/ + //external function dec_PDUSessionResourceSetupResponseTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceSetupResponseTransfer p) return integer + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + external function fx_dec_PDUSessionResourceSetupResponseTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceSetupResponseTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + external function fx_enc_PDUSessionResourceSetupRequestTransfer(NGAP_IEs.PDUSessionResourceSetupRequestTransfer p) return bitstring with {extension "prototype(convert) encode(PER)"} -} // End of module LibNGAP_EncdecDeclarations + + + + external function fx_dec_PDUSessionResourceReleaseCommandTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceReleaseCommandTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_PDUSessionResourceReleaseCommandTransfer(NGAP_IEs.PDUSessionResourceReleaseCommandTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} + +} // End of module LibNGAP_EncdecDeclarations \ No newline at end of file -- GitLab From 4ea333db8342d1eeb131d43dc3b3efbe774ba70e Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 19 Apr 2024 07:58:39 +0200 Subject: [PATCH 197/365] added new tests for AMF PDU session managementProcedures TPs --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 169 +++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 55 ++++++++++ 2 files changed, 224 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 3de7261..eee45ee 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1181,6 +1181,175 @@ module NGAP_TCFunctions { } // End of group PDU_Session_Resource_Notify //8.2.5 group PDU_Session_Resource_Modify_Indication{ + + /** + * @desc Testcase function for TC_NGAP_AMF_PDU_04 + */ + function f_TC_NGAP_AMF_PDU_04() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceModifyIndication( + PX_AMF_UE_NGAP_ID,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + PX_RAN_UE_NGAP_ID,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + { + m_pDUSessionResourceModifyItemModInd( + PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, + bit2oct(encvalue( + m_pDUSessionResourceModifyIndicationTransfer( + m_qosFlowPerTNLInformation( + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel( + PX_TRANSPORT_LAYER_ADDRESS, + PX_GTP_TEID, + omit + ) + ), + { + m_associatedQosFlowItem( + PX_QOS_FLOW_IDENTIFIER, + omit, + omit + ) + },//in template (value) AssociatedQosFlowList p_associatedQosFlowList, + omit//in template (omit) QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := omit + ),//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + omit,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + omit//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * + ))), + omit//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * + ) + } + ) + ) + ); + + // f_recv_NGAP_PDU( + // mw_ngap_succMsg( + // ? //FIXME missing template mw_n2_PDUSessionResourceFailedToModifyListModCfm + // // mw_n2_PDUSessionResourceModifyConfirm( + // // PX_AMF_UE_NGAP_ID, + // // PX_RAN_UE_NGAP_ID, + // // { + // // mw_pDUSessionResourceModifyItemModCfm( + // // PX_PDU_SESSION_ID, + // // ?,//mw_pDUSessionResourceModifyConfirmTransfer( + // // // ?,//template (present) QosFlowModifyConfirmList p_qosFlowModifyConfirmList := ?, + // // // ?,//template (present) UPTransportLayerInformation p_uLNGU_UP_TNLInformation := ?, + // // // -,//template UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := *, + // // // -,//template QosFlowListWithCause p_qosFlowFailedToModifyList := *, + // // // -//template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * + // // // ), OCTETSTRING + // // -//template PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := * + // // ) + // // } + // // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_PDU_04 + + /** + * @desc Testcase function for TC_NGAP_AMF_PDU_05 + */ + function f_TC_NGAP_AMF_PDU_05() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceModifyIndication( + PX_AMF_UE_NGAP_ID,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + PX_RAN_UE_NGAP_ID,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + { + ( + m_pDUSessionResourceModifyItemModInd( + PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, + bit2oct(encvalue( + m_pDUSessionResourceModifyIndicationTransfer( + m_qosFlowPerTNLInformation( + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel( + PX_TRANSPORT_LAYER_ADDRESS, + PX_GTP_TEID, + omit + ) + ), + { + m_associatedQosFlowItem( + PX_QOS_FLOW_IDENTIFIER, + omit, + omit + ) + },//in template (value) AssociatedQosFlowList p_associatedQosFlowList, + omit//in template (omit) QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := omit + ),//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + omit,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + omit//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * + ))), + omit//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * + ) + ) + } + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceModifyConfirm( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { * + // mw_pDUSessionResourceFailedToModifyItemModCfm( + // PX_PDU_SESSION_ID, + // ?,//mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( + // // ?,//template (present) Cause p_cause := ?, + // // -//template PDUSessionResourceModifyIndicationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + // //),OCTETSTRING + // *//template PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := * + // ) + } + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_PDU_05 + } // End of group PDU_Session_Resource_Modify_Indication } // End of group PDU_Session_Management_Procedures //8.3 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 0e05791..a87bb28 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -754,6 +754,61 @@ module NGAP_TestCases { } // End of group PDU_Session_Resource_Notify //8.2.5 group PDU_Session_Resource_Modify_Indication{ + + /** + * @desc "Verify that the AMF node successfully processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for successfully modified PDU session." + */ + testcase TC_NGAP_AMF_PDU_04() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_1_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_1_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_PDU_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_PDU_04 + + /** + * @desc "Verify that the AMF node processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for not successfully modified PDU session." + */ + testcase TC_NGAP_AMF_PDU_05() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_1_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_1_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_PDU_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_PDU_05 + } // End of group PDU_Session_Resource_Modify_Indication } // End of group PDU_Session_Management_Procedures //8.3 -- GitLab From 7621f0fe0c27f6481c98597998b553e7ca03e84e Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 19 Apr 2024 07:59:10 +0200 Subject: [PATCH 198/365] added new tests for AMF PDU session managementProcedures TPs --- ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn index dba2015..72466f9 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -35,7 +35,6 @@ module LibNGAP_EncdecDeclarations { - external function fx_dec_PDUSessionResourceReleaseCommandTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceReleaseCommandTransfer p) return integer with {extension "prototype(sliding) decode(PER)"} //with {extension "prototype(sliding) decode(LibNGAP_codec)"} @@ -43,4 +42,14 @@ module LibNGAP_EncdecDeclarations { external function fx_enc_PDUSessionResourceReleaseCommandTransfer(NGAP_IEs.PDUSessionResourceReleaseCommandTransfer p) return bitstring with {extension "prototype(convert) encode(PER)"} + + + external function fx_dec_PDUSessionResourceModifyIndicationTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceModifyIndicationTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_PDUSessionResourceModifyIndicationTransfer(NGAP_IEs.PDUSessionResourceModifyIndicationTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} + + } // End of module LibNGAP_EncdecDeclarations \ No newline at end of file -- GitLab From 53c75c42ffcd028abd68b38371e7af1564b768aa Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 22 Apr 2024 07:39:52 +0200 Subject: [PATCH 199/365] updated AMF PDU session managementProcedures TPs 04,05 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 44 +++++++++++++++--------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index eee45ee..a804831 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1234,28 +1234,27 @@ module NGAP_TCFunctions { ) ); - // f_recv_NGAP_PDU( - // mw_ngap_succMsg( - // ? //FIXME missing template mw_n2_PDUSessionResourceFailedToModifyListModCfm - // // mw_n2_PDUSessionResourceModifyConfirm( - // // PX_AMF_UE_NGAP_ID, - // // PX_RAN_UE_NGAP_ID, - // // { - // // mw_pDUSessionResourceModifyItemModCfm( - // // PX_PDU_SESSION_ID, - // // ?,//mw_pDUSessionResourceModifyConfirmTransfer( - // // // ?,//template (present) QosFlowModifyConfirmList p_qosFlowModifyConfirmList := ?, - // // // ?,//template (present) UPTransportLayerInformation p_uLNGU_UP_TNLInformation := ?, - // // // -,//template UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := *, - // // // -,//template QosFlowListWithCause p_qosFlowFailedToModifyList := *, - // // // -//template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * - // // // ), OCTETSTRING - // // -//template PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := * - // // ) - // // } - // // ) - // ) - // ); + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceModifyConfirm( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { + mw_pDUSessionResourceModifyItemModCfm( + PX_PDU_SESSION_ID, + ?,//mw_pDUSessionResourceModifyConfirmTransfer( + // ?,//template (present) QosFlowModifyConfirmList p_qosFlowModifyConfirmList := ?, + // ?,//template (present) UPTransportLayerInformation p_uLNGU_UP_TNLInformation := ?, + // -,//template UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := *, + // -,//template QosFlowListWithCause p_qosFlowFailedToModifyList := *, + // -//template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * + // ), OCTETSTRING + -//template PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := * + ) + } + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -1323,6 +1322,7 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( + //? //FIXME missing template mw_n2_PDUSessionResourceFailedToModifyListModCfm mw_n2_PDUSessionResourceModifyConfirm( PX_AMF_UE_NGAP_ID, PX_RAN_UE_NGAP_ID, -- GitLab From 3e245523c967b707e53f44d7a889078c55665274 Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 22 Apr 2024 13:51:16 +0200 Subject: [PATCH 200/365] added Warning Message Transmission Procedures TPs --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 333 ++++++++++++++++++++++++++--- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 213 +++++++++++++++++- 2 files changed, 511 insertions(+), 35 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index a804831..fa9fc6d 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -120,25 +120,24 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_PDUSessionResourceSetupResponse( - -, - -, - //? //TODO replace with template - { - (mw_pDUSessionResourceSetupItemSURes( - ?,//template (present) PDUSessionID p_pDUSessionID, - //mw_pDUSessionResourceSetupResponseTransfer( - // ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - // *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - // *,//template SecurityResult p_securityResult := *, - // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, - // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * - // ), In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer - ?,//template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, - *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * - ) - - ) - } + -, + -, + //? //TODO replace with template + { + (mw_pDUSessionResourceSetupItemSURes( + ?,//template (present) PDUSessionID p_pDUSessionID, + //mw_pDUSessionResourceSetupResponseTransfer( + // ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + // *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + // *,//template SecurityResult p_securityResult := *, + // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + // ), In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer + ?,//template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) + ) + } ) ) ); @@ -945,22 +944,228 @@ module NGAP_TCFunctions { //8.8.2 group Downlink_RAN_Configuration_Transfer{ } // End of group Downlink_RAN_Configuration_Transfer - //8.9 - group Warning_Message_Transmission_Procedures{ - } // End of group Warning_Message_Transmission_Procedures + } // End of group Configuration_Transfer_Procedures + //8.9 + group Warning_Message_Transmission_Procedures{ //8.9.1 group Write_Replace_Warning{ + + /** + * @desc Testcase function for TC_NGAP_gNB_WTP_01 + */ + function f_TC_NGAP_GNB_WTP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_WriteReplaceWarningRequest( + PX_MESSAGE_IDENTIFIER, + PX_SERIAL_NUMBER, + PX_REPETITION_PERIOD, + PX_NUMBER_OF_BROADCASTS_REQUESTED + ) + )); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_WriteReplaceWarningResponse( + PX_MESSAGE_IDENTIFIER, + PX_SERIAL_NUMBER + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_WTP_01 + + /** + * @desc Testcase function for TC_NGAP_gNB_WTP_02 + */ + function f_TC_NGAP_GNB_WTP_02() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_WriteReplaceWarningRequest( + PX_MESSAGE_IDENTIFIER, // indicating value "different from already being broadcasted", + PX_SERIAL_NUMBER, //indicating value "different from already being broadcasted", + PX_REPETITION_PERIOD, + PX_NUMBER_OF_BROADCASTS_REQUESTED + ) + )); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_WriteReplaceWarningResponse( + PX_MESSAGE_IDENTIFIER, + PX_SERIAL_NUMBER + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_WTP_02 + } // End of group Write_Replace_Warning //8.9.2 group PWS_Cancel{ + + /** + * @desc Testcase function for TC_NGAP_gNB_WTP_03 + */ + function f_TC_NGAP_GNB_WTP_03() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + //f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PWSCancelRequest( + PX_MESSAGE_IDENTIFIER, + PX_SERIAL_NUMBER + ) + )); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + /*mw*/m_n2_PWSCancelResponse( //missing template + PX_MESSAGE_IDENTIFIER, + PX_SERIAL_NUMBER + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_WTP_03 + } // End of group PWS_Cancel //8.9.3 group PWS_Restart_Indication{ + + /** + * @desc Testcase function for TC_NGAP_gNB_WTP_04 + */ + function f_TC_NGAP_GNB_WTP_04() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + //f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger PWS_Restart_Indication!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + ? + // /*mw*/m_n2_PWSRestartIndication( // missing template + // ?,//in template (value) CellIDListForRestart p_cellIDListForRestart, + // ?,//in template (value) GlobalRANNodeID p_globalRANNodeID, + // ?,//in template (value) TAIListForRestart p_tAIListForRestart, + // ?//in template (value) EmergencyAreaIDListForRestart p_emergencyAreaIDListForRestart + // ) + ) + ); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_WTP_04 + } // End of group PWS_Restart_Indication //8.9.4 group PWS_Failure_Indication{ + + /** + * @desc Testcase function for TC_NGAP_gNB_WTP_05 + */ + function f_TC_NGAP_GNB_WTP_05() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger PWS_Failure_Indication!"); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + ? + // /*mw*/m_n2_PWSFailureIndication( //missing template + // ?,//in template (value) PWSFailedCellList p_pWSFailedCellList, + // ?//in template (value) GlobalRANNodeID p_globalRANNodeID + // ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_WTP_05 + } // End of group PWS_Failure_Indication - } // End of group Configuration_Transfer_Procedures + } // End of group Warning_Message_Transmission_Procedures //8.10 group NRPPa_Transport_Procedures{ } // End of group NRPPa_Transport_Procedures @@ -1483,14 +1688,88 @@ module NGAP_TCFunctions { //8.8.2 group Downlink_RAN_Configuration_Transfer{ } // End of group Downlink_RAN_Configuration_Transfer - //8.9 - group Warning_Message_Transmission_Procedures{ - } // End of group Warning_Message_Transmission_Procedures + } // End of group Configuration_Transfer_Procedures + //8.9 + group Warning_Message_Transmission_Procedures{ //8.9.1 group Write_Replace_Warning{ + + /** + * @desc Testcase function for TC_NGAP_aMF_WTP_01 + */ + function f_TC_NGAP_AMF_WTP_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger WRITE REPLACE WARNING REQUEST !"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_WriteReplaceWarningRequest( + ?,// template (present) MessageIdentifier p_messageIdentifier :=?, + ?,// template (present) SerialNumber p_serialNumber := ?, + ?,// template (present) RepetitionPeriod p_repetitionPeriod := ?, + ?// template (present) NumberOfBroadcastsRequested p_numberOfBroadcastsRequested := ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_WTP_01 + } // End of group Write_Replace_Warning //8.9.2 group PWS_Cancel{ + + /** + * @desc Testcase function for TC_NGAP_aMF_WTP_02 + */ + function f_TC_NGAP_AMF_WTP_02() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger PWS CANCEL REQUEST !"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_PWSCancelRequest( + ?,//template (present) MessageIdentifier p_messageIdentifier := ?, + ?// template (present) SerialNumber p_serialNumber := ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_WTP_02 + } // End of group PWS_Cancel //8.9.3 group PWS_Restart_Indication{ @@ -1498,7 +1777,7 @@ module NGAP_TCFunctions { //8.9.4 group PWS_Failure_Indication{ } // End of group PWS_Failure_Indication - } // End of group Configuration_Transfer_Procedures + } // End of group Warning_Message_Transmission_Procedures //8.10 group NRPPa_Transport_Procedures{ } // End of group NRPPa_Transport_Procedures diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index a87bb28..b24196a 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -572,22 +572,163 @@ module NGAP_TestCases { //8.8.2 group Downlink_RAN_Configuration_Transfer{ } // End of group Downlink_RAN_Configuration_Transfer - //8.9 - group Warning_Message_Transmission_Procedures{ - } // End of group Warning_Message_Transmission_Procedures + } // End of group Configuration_Transfer_Procedures + //8.9 + group Warning_Message_Transmission_Procedures{ + //8.9.1 group Write_Replace_Warning{ + + /** + * @desc Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing mandatory IEs and answers with WRITE-REPLACE WARNING RESPONSE to start broadcasting of warning messages. + */ + testcase TC_NGAP_GNB_WTP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_8_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_8_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_WTP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_WTP_01 + + /** + * @desc "Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing Message Identifier IE and/or Serial Number IE different from those in the warning message being broadcast and if Concurent Warning Message Indicator is not present then IUT node answers with WRITE-REPLACE WARNING RESPONSE and replaces the warning message being broadcast with newly received one for that area." + */ + testcase TC_NGAP_GNB_WTP_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_8_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_8_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_WTP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_WTP_02 + } // End of group Write_Replace_Warning //8.9.2 group PWS_Cancel{ + + /** + * @desc "Verify that the NG-RAN node successfully processes a PWS CANCEL REQUEST containing mandatory IEs and answers with PWS CANCEL RESPONSE to cancel an already ongoing broadcast warning messages in all of the cells in the NG-RAN." + */ + testcase TC_NGAP_GNB_WTP_03() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_8_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_8_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_WTP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_WTP_03 + } // End of group PWS_Cancel //8.9.3 group PWS_Restart_Indication{ + + /** + * @desc "Verify that the IUT can send a PWS RESTART INDICATION to inform AMF that PWS information for some or all cells may be reloaded from the CBC if needed." + */ + testcase TC_NGAP_GNB_WTP_04() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_8_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_8_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_WTP_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_WTP_04 + } // End of group PWS_Restart_Indication //8.9.4 group PWS_Failure_Indication{ + + /** + * @desc "Verify that the IUT can send a PWS FAILURE INDICATION to inform AMF that ongoing PWS operation for one or more cells has failed." + */ + testcase TC_NGAP_GNB_WTP_05() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_8_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_8_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_WTP_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_WTP_05 + } // End of group PWS_Failure_Indication - } // End of group Configuration_Transfer_Procedures + } // End of group Warning_Message_Transmission_Procedures + //8.10 group NRPPa_Transport_Procedures{ } // End of group NRPPa_Transport_Procedures @@ -942,14 +1083,70 @@ module NGAP_TestCases { //8.8.2 group Downlink_RAN_Configuration_Transfer{ } // End of group Downlink_RAN_Configuration_Transfer - //8.9 - group Warning_Message_Transmission_Procedures{ - } // End of group Warning_Message_Transmission_Procedures + } // End of group Configuration_Transfer_Procedures + //8.9 + group Warning_Message_Transmission_Procedures{ //8.9.1 group Write_Replace_Warning{ + + /** + * @desc "Verify that the IUT can send a WRITE REPLACE WARNING REQUEST to start broadcasting of warning messages." + */ + testcase TC_NGAP_AMF_WTP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_8_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_8_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_WTP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_WTP_01 + } // End of group Write_Replace_Warning //8.9.2 group PWS_Cancel{ + + /** + * @desc "Verify that the IUT can send a PWS CANCEL REQUEST to cancel broadcasting of warning messages." + */ + testcase TC_NGAP_AMF_WTP_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_8_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_8_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_WTP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_WTP_02 + } // End of group PWS_Cancel //8.9.3 group PWS_Restart_Indication{ @@ -957,7 +1154,7 @@ module NGAP_TestCases { //8.9.4 group PWS_Failure_Indication{ } // End of group PWS_Failure_Indication - } // End of group Configuration_Transfer_Procedures + } // End of group Warning_Message_Transmission_Procedures //8.10 group NRPPa_Transport_Procedures{ } // End of group NRPPa_Transport_Procedures -- GitLab From 0839e5d74eec4676a30f2c4b5cec9e2cac00ab5d Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 23 Apr 2024 12:23:51 +0200 Subject: [PATCH 201/365] Added trace-message templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 433 +++++++++++++++++++++++- 1 file changed, 432 insertions(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 9b4546f..7c430bf 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -5827,29 +5827,460 @@ module LibNGAP_Templates { //9.2.10.1 group TRACE_START{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.1 TRACE START + */ + template (value) InitiatingMessage m_n2_TraceStart := { + procedureCode := id_TraceStart, + criticality := ignore, + value_ := { + TraceStart := { + protocolIEs := { } + } + } + } // End of template m_n2_TraceStart + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.1 TRACE START + */ + template (value) InitiatingMessage m_n2_TraceStart_ids( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) TraceActivation p_traceActivation + ) := { + procedureCode := id_TraceStart, + criticality := ignore, + value_ := { + TraceStart := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_TraceActivation, + criticality := ignore, + value_ := { TraceActivation := p_traceActivation } + } + } + } + } + } // End of template m_n2_TraceStart_ids } + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.1 TRACE START + */ + template (present) InitiatingMessage mw_n2_TraceStart := { + procedureCode := id_TraceStart, + criticality := ignore, + value_ := { + TraceStart := { + protocolIEs := { } + } + } + } // End of template mw_n2_TraceStart + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.1 TRACE START + */ + template (present) InitiatingMessage mw_n2_TraceStart_ids( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) TraceActivation p_traceActivation := ? + ) := { + procedureCode := id_TraceStart, + criticality := ignore, + value_ := { + TraceStart := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_TraceActivation, + criticality := ignore, + value_ := { TraceActivation := p_traceActivation } + } + } + } + } + } // End of template mw_n2_TraceActivation_ids + } } //9.2.10.2 group TRACE_FAILURE_INDICATION{ + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.2 TRACE FAILURE INDICATION + */ + template (value) InitiatingMessage m_n2_TraceFailureIndication := { + procedureCode := id_TraceFailureIndication, + criticality := ignore, + value_ := { + TraceFailureIndication := { + protocolIEs := { } + } + } + } // End of template m_n2_TraceFailureIndication + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.2 TRACE FAILURE INDICATION + */ + template (value) InitiatingMessage m_n2_TraceFailureIndication_ids( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) NGRANTraceID p_NGRANTraceID, + in template (value) Cause p_cause + ) := { + procedureCode := id_TraceFailureIndication, + criticality := ignore, + value_ := { + TraceFailureIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NGRANTraceID, + criticality := ignore, + value_ := { NGRANTraceID := p_NGRANTraceID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_TraceFailureIndication_ids } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.2 TRACE FAILURE INDICATION + */ + template (present) InitiatingMessage mw_n2_TraceFailureIndication := { + procedureCode := id_TraceFailureIndication, + criticality := ignore, + value_ := { + TraceFailureIndication := { + protocolIEs := { } + } + } + } // End of template mw_n2_TraceFailureIndication + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.2 TRACE FAILURE INDICATION + */ + template (present) InitiatingMessage mw_n2_TraceFailureIndication_ids( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) NGRANTraceID p_NGRANTraceID := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_TraceFailureIndication, + criticality := ignore, + value_ := { + TraceFailureIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NGRANTraceID, + criticality := ignore, + value_ := { NGRANTraceID := p_NGRANTraceID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_TraceFailureIndication_ids } } //9.2.10.3 group DEACTIVATE_TRACE{ - group Send { + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.3 DEACTIVATE TRACE + */ + template (value) InitiatingMessage m_n2_DeactivateTrace := { + procedureCode := id_DeactivateTrace, + criticality := ignore, + value_ := { + DeactivateTrace := { + protocolIEs := { } + } + } + } // End of template m_n2_DeactivateTrace + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.3 DEACTIVATE TRACE + */ + template (value) InitiatingMessage m_n2_DeactivateTrace_ids( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) NGRANTraceID p_NGRANTraceID + ) := { + procedureCode := id_DeactivateTrace, + criticality := ignore, + value_ := { + DeactivateTrace := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NGRANTraceID, + criticality := ignore, + value_ := { NGRANTraceID := p_NGRANTraceID } + } + } + } + } + } // End of template m_n2_DeactivateTrace_ids } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.3 DEACTIVATE TRACE + */ + template (present) InitiatingMessage mw_n2_DeactivateTrace := { + procedureCode := id_DeactivateTrace, + criticality := ignore, + value_ := { + DeactivateTrace := { + protocolIEs := { } + } + } + } // End of template mw_n2_DeactivateTrace + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.3 DEACTIVATE TRACE + */ + template (present) InitiatingMessage mw_n2_DeactivateTrace_ids( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) NGRANTraceID p_NGRANTraceID := ? + ) := { + procedureCode := id_DeactivateTrace, + criticality := ignore, + value_ := { + DeactivateTrace := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NGRANTraceID, + criticality := ignore, + value_ := { NGRANTraceID := p_NGRANTraceID } + } + } + } + } + } // End of template mw_n2_DeactivateTrace_ids } } //9.2.10.4 group CELL_TRAFFIC_TRACE{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.4 CELL TRAFFIC TRACE + */ + template (value) InitiatingMessage m_n2_CellTrafficTrace := { + procedureCode := id_CellTrafficTrace, + criticality := ignore, + value_ := { + CellTrafficTrace := { + protocolIEs := { } + } + } + } // End of template m_n2_CellTrafficTrace + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.4 CELL TRAFFIC TRACE + */ + template (value) InitiatingMessage m_n2_CellTrafficTrace_ids( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) NGRANTraceID p_NGRANTraceID, + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) TransportLayerAddress p_tla, + in template (value) PrivacyIndicator p_privacyInd, + in template (value) URI_address p_uRI_address + ) := { + procedureCode := id_CellTrafficTrace, + criticality := ignore, + value_ := { + CellTrafficTrace := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NGRANTraceID, + criticality := ignore, + value_ := { NGRANTraceID := p_NGRANTraceID } + }, + { + id := id_NGRAN_CGI, + criticality := ignore, + value_ := { NGRAN_CGI := p_nGRAN_CGI } + }, + { + id := id_TraceCollectionEntityIPAddress, + criticality := ignore, + value_ := { transportLayerAddress := p_tla } + }, + { + id := id_PrivacyIndicator, + criticality := ignore, + value_ := { PrivacyIndicator := p_privacyInd } + }, + { + id := id_TraceCollectionEntityURI, + criticality := ignore, + value_ := { uRI_address := p_uRI_address } + } + } + } + } + } // End of template m_n2_CellTrafficTrace_ids } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.4 CELL TRAFFIC TRACE + */ + template (present) InitiatingMessage mw_n2_CellTrafficTrace := { + procedureCode := id_CellTrafficTrace, + criticality := ignore, + value_ := { + CellTrafficTrace := { + protocolIEs := { } + } + } + } // End of template mw_n2_CellTrafficTrace + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.4 CELL TRAFFIC TRACE + */ + template (present) InitiatingMessage mw_n2_CellTrafficTrace_ids( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) NGRANTraceID p_NGRANTraceID := ?, + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) TransportLayerAddress p_tla := ?, + template (present) PrivacyIndicator p_privacyInd := ?, + template (present) URI_address p_uRI_address := ? + ) := { + procedureCode := id_CellTrafficTrace, + criticality := ignore, + value_ := { + CellTrafficTrace := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_NGRANTraceID, + criticality := ignore, + value_ := { NGRANTraceID := p_NGRANTraceID } + }, + { + id := id_NGRAN_CGI, + criticality := ignore, + value_ := { NGRAN_CGI := p_nGRAN_CGI } + }, + { + id := id_TraceCollectionEntityIPAddress, + criticality := ignore, + value_ := { transportLayerAddress := p_tla } + }, + { + id := id_PrivacyIndicator, + criticality := ignore, + value_ := { PrivacyIndicator := p_privacyInd } + }, + { + id := id_TraceCollectionEntityURI, + criticality := ignore, + value_ := { uRI_address := p_uRI_address } + } + } + } + } + } // End of template mw_n2_CellTrafficTrace_ids } } } // End of group Trace_Messages -- GitLab From c6fbf5e11607f2accaa35f2e56bc3d6da35f562e Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 24 Apr 2024 10:37:53 +0200 Subject: [PATCH 202/365] updated trace-message templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 62 ++++++++++++------------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 7c430bf..b9405b1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -5831,7 +5831,7 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.1 TRACE START */ - template (value) InitiatingMessage m_n2_TraceStart := { + template (value) InitiatingMessage m_n2_TraceStart_ie := { procedureCode := id_TraceStart, criticality := ignore, value_ := { @@ -5839,12 +5839,12 @@ module LibNGAP_Templates { protocolIEs := { } } } - } // End of template m_n2_TraceStart + } // End of template m_n2_TraceStart_ie /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.1 TRACE START */ - template (value) InitiatingMessage m_n2_TraceStart_ids( + template (value) InitiatingMessage m_n2_TraceStart( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) TraceActivation p_traceActivation @@ -5872,7 +5872,7 @@ module LibNGAP_Templates { } } } - } // End of template m_n2_TraceStart_ids + } // End of template m_n2_TraceStart } group Receive { @@ -5880,7 +5880,7 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.1 TRACE START */ - template (present) InitiatingMessage mw_n2_TraceStart := { + template (present) InitiatingMessage mw_n2_TraceStart_ie := { procedureCode := id_TraceStart, criticality := ignore, value_ := { @@ -5888,12 +5888,12 @@ module LibNGAP_Templates { protocolIEs := { } } } - } // End of template mw_n2_TraceStart + } // End of template mw_n2_TraceStart_ie /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.1 TRACE START */ - template (present) InitiatingMessage mw_n2_TraceStart_ids( + template (present) InitiatingMessage mw_n2_TraceStart( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) TraceActivation p_traceActivation := ? @@ -5921,7 +5921,7 @@ module LibNGAP_Templates { } } } - } // End of template mw_n2_TraceActivation_ids + } // End of template mw_n2_TraceStart } } @@ -5933,7 +5933,7 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.2 TRACE FAILURE INDICATION */ - template (value) InitiatingMessage m_n2_TraceFailureIndication := { + template (value) InitiatingMessage m_n2_TraceFailureIndication_ie := { procedureCode := id_TraceFailureIndication, criticality := ignore, value_ := { @@ -5941,12 +5941,12 @@ module LibNGAP_Templates { protocolIEs := { } } } - } // End of template m_n2_TraceFailureIndication + } // End of template m_n2_TraceFailureIndication_ie /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.2 TRACE FAILURE INDICATION */ - template (value) InitiatingMessage m_n2_TraceFailureIndication_ids( + template (value) InitiatingMessage m_n2_TraceFailureIndication( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) NGRANTraceID p_NGRANTraceID, @@ -5980,14 +5980,14 @@ module LibNGAP_Templates { } } } - } // End of template m_n2_TraceFailureIndication_ids + } // End of template m_n2_TraceFailureIndication } group Receive { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.2 TRACE FAILURE INDICATION */ - template (present) InitiatingMessage mw_n2_TraceFailureIndication := { + template (present) InitiatingMessage mw_n2_TraceFailureIndication_ie := { procedureCode := id_TraceFailureIndication, criticality := ignore, value_ := { @@ -5995,12 +5995,12 @@ module LibNGAP_Templates { protocolIEs := { } } } - } // End of template mw_n2_TraceFailureIndication + } // End of template mw_n2_TraceFailureIndication_ie /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.2 TRACE FAILURE INDICATION */ - template (present) InitiatingMessage mw_n2_TraceFailureIndication_ids( + template (present) InitiatingMessage mw_n2_TraceFailureIndication( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) NGRANTraceID p_NGRANTraceID := ?, @@ -6034,7 +6034,7 @@ module LibNGAP_Templates { } } } - } // End of template mw_n2_TraceFailureIndication_ids + } // End of template mw_n2_TraceFailureIndication } } //9.2.10.3 @@ -6044,7 +6044,7 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.3 DEACTIVATE TRACE */ - template (value) InitiatingMessage m_n2_DeactivateTrace := { + template (value) InitiatingMessage m_n2_DeactivateTrace_ie := { procedureCode := id_DeactivateTrace, criticality := ignore, value_ := { @@ -6057,7 +6057,7 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.3 DEACTIVATE TRACE */ - template (value) InitiatingMessage m_n2_DeactivateTrace_ids( + template (value) InitiatingMessage m_n2_DeactivateTrace( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) NGRANTraceID p_NGRANTraceID @@ -6085,14 +6085,14 @@ module LibNGAP_Templates { } } } - } // End of template m_n2_DeactivateTrace_ids + } // End of template m_n2_DeactivateTrace } group Receive { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.3 DEACTIVATE TRACE */ - template (present) InitiatingMessage mw_n2_DeactivateTrace := { + template (present) InitiatingMessage mw_n2_DeactivateTrace_ie := { procedureCode := id_DeactivateTrace, criticality := ignore, value_ := { @@ -6100,12 +6100,12 @@ module LibNGAP_Templates { protocolIEs := { } } } - } // End of template mw_n2_DeactivateTrace + } // End of template mw_n2_DeactivateTrace_ie /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.3 DEACTIVATE TRACE */ - template (present) InitiatingMessage mw_n2_DeactivateTrace_ids( + template (present) InitiatingMessage mw_n2_DeactivateTrace( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) NGRANTraceID p_NGRANTraceID := ? @@ -6133,7 +6133,7 @@ module LibNGAP_Templates { } } } - } // End of template mw_n2_DeactivateTrace_ids + } // End of template mw_n2_DeactivateTrace } } //9.2.10.4 @@ -6143,7 +6143,7 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.4 CELL TRAFFIC TRACE */ - template (value) InitiatingMessage m_n2_CellTrafficTrace := { + template (value) InitiatingMessage m_n2_CellTrafficTrace_ie := { procedureCode := id_CellTrafficTrace, criticality := ignore, value_ := { @@ -6151,12 +6151,12 @@ module LibNGAP_Templates { protocolIEs := { } } } - } // End of template m_n2_CellTrafficTrace + } // End of template m_n2_CellTrafficTrace_ie /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.4 CELL TRAFFIC TRACE */ - template (value) InitiatingMessage m_n2_CellTrafficTrace_ids( + template (value) InitiatingMessage m_n2_CellTrafficTrace( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) NGRANTraceID p_NGRANTraceID, @@ -6208,14 +6208,14 @@ module LibNGAP_Templates { } } } - } // End of template m_n2_CellTrafficTrace_ids + } // End of template m_n2_CellTrafficTrace } group Receive { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.4 CELL TRAFFIC TRACE */ - template (present) InitiatingMessage mw_n2_CellTrafficTrace := { + template (present) InitiatingMessage mw_n2_CellTrafficTrace_ie := { procedureCode := id_CellTrafficTrace, criticality := ignore, value_ := { @@ -6223,12 +6223,12 @@ module LibNGAP_Templates { protocolIEs := { } } } - } // End of template mw_n2_CellTrafficTrace + } // End of template mw_n2_CellTrafficTrace_ie /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.10.4 CELL TRAFFIC TRACE */ - template (present) InitiatingMessage mw_n2_CellTrafficTrace_ids( + template (present) InitiatingMessage mw_n2_CellTrafficTrace( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) NGRANTraceID p_NGRANTraceID := ?, @@ -6280,7 +6280,7 @@ module LibNGAP_Templates { } } } - } // End of template mw_n2_CellTrafficTrace_ids + } // End of template mw_n2_CellTrafficTrace } } } // End of group Trace_Messages -- GitLab From 722f282cbb712024c74dee69cebf67b15d504be9 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 24 Apr 2024 10:38:36 +0200 Subject: [PATCH 203/365] added Trace TPs --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 216 +++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 140 +++++++++++++++++++ 2 files changed, 356 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index fa9fc6d..92d25ac 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1173,15 +1173,157 @@ module NGAP_TCFunctions { group Trace_Procedures{ //8.11.1 group Trace_Start{ + + /** + * @desc Testcase function for TC_NGAP_gNB_TRP_01 + */ + function f_TC_NGAP_GNB_TRP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + //f_NGAP_amf_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_TraceStart( + -, + -, + m_traceActivation( + '0000000000000001'O,//in template (value) NGRANTraceID p_nGRANTraceID, + '00000000'B,//in template (value) InterfacesToTrace p_interfacesToTrace, + m_traceDepth(minimum), + PX_TRANSPORT_LAYER_ADDRESS, + omit//in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit + ) + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_TraceFailureIndication( + -, + -, + ?, + ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_TRP_01 + } // End of group Trace_Start //8.11.2 group Trace_Failure_Indication{ } // End of group Trace_Failure_Indication //8.11.3 group Deactivate_Trace{ + + /** + * @desc Testcase function for TC_NGAP_gNB_TRP_02 + */ + function f_TC_NGAP_GNB_TRP_02() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + //f_NGAP_amf_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_DeactivateTrace( + -, + -, + '0000000000000001'O//in template (value) NGRANTraceID p_NGRANTraceID + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_TraceFailureIndication( + -, + -, + ?, + ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_TRP_02 + } // End of group Deactivate_Trace //8.11.4 group Cell_Traffic_Trace{ + + /** + * @desc Testcase function for TC_NGAP_gNB_TRP_03 + */ + function f_TC_NGAP_GNB_TRP_03() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + //f_NGAP_amf_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger CELL TRAFFIC TRACE!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_CellTrafficTrace( + ?, + ?, + ?, + ?, + ?, + ?, + ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_TRP_03 + } // End of group Cell_Traffic_Trace } // End of group Trace_Procedures //8.12 @@ -1785,12 +1927,86 @@ module NGAP_TCFunctions { group Trace_Procedures{ //8.11.1 group Trace_Start{ + + /** + * @desc Testcase function for TC_NGAP_aMF_TRP_01 + */ + function f_TC_NGAP_AMF_TRP_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger TRACE START!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_TraceStart( + ?, + ?, + ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_TRP_01 + } // End of group Trace_Start //8.11.2 group Trace_Failure_Indication{ } // End of group Trace_Failure_Indication //8.11.3 group Deactivate_Trace{ + + /** + * @desc Testcase function for TC_NGAP_aMF_TRP_02 + */ + function f_TC_NGAP_AMF_TRP_02() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger DEACTIVATE TRACE!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_DeactivateTrace( + ?, + ?, + ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_TRP_02 + } // End of group Deactivate_Trace //8.11.4 group Cell_Traffic_Trace{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index b24196a..9815aa5 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -736,15 +736,99 @@ module NGAP_TestCases { group Trace_Procedures{ //8.11.1 group Trace_Start{ + + /** + * @desc Test objective "Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that Trace Start procedure has failed due to an interaction with handover procedure." + */ + testcase TC_NGAP_GNB_TRP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_10_1) and (not PICS_A3_10_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_10_1 and PICS_A3_10_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_TRP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_TRP_01 + } // End of group Trace_Start //8.11.2 group Trace_Failure_Indication{ } // End of group Trace_Failure_Indication //8.11.3 group Deactivate_Trace{ + + /** + * @desc Test objective "Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that a Deactivate Trace procedure has failed due to an interaction with handover procedure." + */ + testcase TC_NGAP_GNB_TRP_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_10_2) and (not PICS_A3_10_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_10_2 and PICS_A3_10_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_TRP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_TRP_02 + } // End of group Deactivate_Trace //8.11.4 group Cell_Traffic_Trace{ + + /** + * @desc Test objective "Verify that the IUT can send a CELL_TRAFFIC_TRACE to send the allocated Trace Recording Session Reference and Trace Reference to AMF." + */ + testcase TC_NGAP_GNB_TRP_03() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_10_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_10_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_TRP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_TRP_03 + } // End of group Cell_Traffic_Trace } // End of group Trace_Procedures //8.12 @@ -1162,12 +1246,68 @@ module NGAP_TestCases { group Trace_Procedures{ //8.11.1 group Trace_Start{ + + /** + * @desc "Verify that the IUT can send a TRACE_START to initiate a trace session for a UE." + */ + testcase TC_NGAP_AMF_TRP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_10_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_10_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_TRP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_TRP_01 + } // End of group Trace_Start //8.11.2 group Trace_Failure_Indication{ } // End of group Trace_Failure_Indication //8.11.3 group Deactivate_Trace{ + + /** + * @desc "Verify that the IUT can send a DEACTIVATE_TRACE to deactivate a trace session for a UE." + */ + testcase TC_NGAP_AMF_TRP_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_10_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_10_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_TRP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_TRP_02 + } // End of group Deactivate_Trace //8.11.4 group Cell_Traffic_Trace{ -- GitLab From 58ed1cf26b0e5aced4022305bb0e58fe287fc126 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 25 Apr 2024 09:03:01 +0200 Subject: [PATCH 204/365] added interfaceManagement TPs gnb 01-05 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 195 +++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 141 ++++++++++++++++++++- 2 files changed, 335 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 92d25ac..5601373 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -913,15 +913,210 @@ module NGAP_TCFunctions { group Interface_Management_Procedures{ //8.7.1 group NG_Setup{ + + /** + * @desc Testcase function for TC_NGAP_gNB_IMP_01 + */ + function f_TC_NGAP_GNB_IMP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + //f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger NG SETUP REQUEST!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_NGSetupRequest( + ?,//template (present) GlobalRANNodeID p_globalRANNodeID := ?, + ?,//template (present) SupportedTAList p_supportedTAs := ?, + ?//template (present) PagingDRX p_pagingDRX := ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_IMP_01 + } // End of group NG_Setup //8.7.2 group RAN_Configuration_Update{ + + /** + * @desc Testcase function for TC_NGAP_gNB_IMP_02 + */ + function f_TC_NGAP_GNB_IMP_02() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + //f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger RAN CONFIGURATION UPDATE!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_RANConfigurationUpdate(//FIXME: prepare/update template IEs + ?//template (present) RANNodeName p_rANNodeName := ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_IMP_02 + } // End of group RAN_Configuration_Update //8.7.3 group AMF_Configuration_Update{ + + /** + * @desc Testcase function for TC_NGAP_gNB_IMP_03 + */ + function f_TC_NGAP_GNB_IMP_03() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + //f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_AMFConfigurationUpdate(//FIXME: prepare/update template IEs + PX_AMF_NAME//in template (value) AMFName p_aMFName := PX_AMF_NAME + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_AMFConfigurationUpdateAcknowledge_aMF_TNLAssociationSetupList( + ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_IMP_03 + + /** + * @desc Testcase function for TC_NGAP_gNB_IMP_04 + */ + function f_TC_NGAP_GNB_IMP_04() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + //f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_AMFConfigurationUpdate(//FIXME: prepare/update template IEs + PX_AMF_NAME//in template (value) AMFName p_aMFName := PX_AMF_NAME + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_AMFConfigurationUpdateFailure( + ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_IMP_04 + } // End of group AMF_Configuration_Update //8.7.4 group NG_Reset{ + + /** + * @desc Testcase function for TC_NGAP_gNB_IMP_05 + */ + function f_TC_NGAP_GNB_IMP_05() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + //f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_NGReset( + m_cause_radioNetwork(PX_NG_SETUP_FAILURE), + m_resetType_nG_Interface( + m_resetAll(reset_all) + ) + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_NGResetAcknowledge + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_IMP_05 + } // End of group NG_Reset //8.7.5 group Error_Indication{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 9815aa5..f15bfc5 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -541,15 +541,154 @@ module NGAP_TestCases { group Interface_Management_Procedures{ //8.7.1 group NG_Setup{ + + /** + * @desc "Verify that the GNB node successfully sends a NG SETUP REQEST message to the AMF." + */ + testcase TC_NGAP_GNB_IMP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_6_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_6_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_IMP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_IMP_01 + } // End of group NG_Setup //8.7.2 group RAN_Configuration_Update{ + + /** + * @desc "Verify that the IUT can send a RAN CONFIGURATION UPDATE message to the AMF." + */ + testcase TC_NGAP_GNB_IMP_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_6_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_6_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_IMP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_IMP_02 + } // End of group RAN_Configuration_Update //8.7.3 group AMF_Configuration_Update{ + + /** + * @desc "Verify that the GNB node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." + */ + testcase TC_NGAP_GNB_IMP_03() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_6_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_6_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_IMP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_IMP_03 + + /** + * @desc "Verify that the GNB node can send a AMF CONFIGURATION UPDATE FAILURE." + */ + testcase TC_NGAP_GNB_IMP_04() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_6_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_6_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_IMP_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_IMP_04 + } // End of group AMF_Configuration_Update //8.7.4 group NG_Reset{ + + /** + * @desc "Verify that the GNB node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." + */ + testcase TC_NGAP_GNB_IMP_05() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_6_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_6_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_IMP_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_IMP_05 + } // End of group NG_Reset //8.7.5 group Error_Indication{ @@ -1307,7 +1446,7 @@ module NGAP_TestCases { f_cf_Down/*gNBoraMF*/(); } // End of testcase TC_NGAP_AMF_TRP_02 - + } // End of group Deactivate_Trace //8.11.4 group Cell_Traffic_Trace{ -- GitLab From 3c17091470fa9e5491c70a793add2ffde4b56a22 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 14 May 2024 10:59:47 +0200 Subject: [PATCH 205/365] added interfaceManagement TPs amf 01-04 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 452 ++++++++++++++++++++++++++++- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 137 +++++++++ 2 files changed, 588 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 5601373..19a6db4 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1076,7 +1076,7 @@ module NGAP_TCFunctions { //8.7.4 group NG_Reset{ - /** + /** * @desc Testcase function for TC_NGAP_gNB_IMP_05 */ function f_TC_NGAP_GNB_IMP_05() runs on aMFNGAPComponent { @@ -1120,6 +1120,39 @@ module NGAP_TCFunctions { } // End of group NG_Reset //8.7.5 group Error_Indication{ + + /** + * @desc Testcase function for TC_NGAP_gNB_IMP_06 + */ + function f_TC_NGAP_GNB_IMP_06() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + //f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger ERROR INDICATION!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_ErrorIndication + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_IMP_06 + } // End of group Error_Indication //8.7.6 group AMF_Status_Indication{ @@ -1994,6 +2027,423 @@ module NGAP_TCFunctions { group Interface_Management_Procedures{ //8.7.1 group NG_Setup{ + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_01 + */ + function f_TC_NGAP_AMF_IMP_01() runs on gNBNGAPComponent { + // Local variables + + /*// type record SupportedTAItem { + template (omit) SupportedTAItem m_ie_supportedTAItem(in template (value) TAC p_tAC, + in template (value) BroadcastPLMNList p_broadcastPLMNList, + in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ) := { + tAC := p_tAC, + broadcastPLMNList := p_broadcastPLMNList, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_supportedTAItem + // type octetstring TAC length (3); + template (value) TAC m_ie_tAC(in template (value) TAC p_val) := p_val; + // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; + template (value) SliceSupportList m_ie_sliceSupportList(in template (value) SliceSupportList p_list) := p_list; + + // type record SliceSupportItem { + template (omit) SliceSupportItem m_ie_sliceSupportItem( + in template (value) S_NSSAI p_S_NSSAI, + in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_S_NSSAI, + iE_Extensions :=p_iE_Extensions + } // End of template m_ie_sliceSupportItem + // type record S_NSSAI { + template (omit) S_NSSAI m_ie_sNSSAI( + in template (value) SST p_sST, + in template (value) SD p_sD, + in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ) := { + sST := p_sST,//'00'O, + sD := p_sD,//'000000'O, + iE_Extensions := p_iE_Extensions + } // End of template m_ie_sNSSAI + // type octetstring SST length (1); + template (value) SST m_ie_sST(in SST p_val := '00'O) := p_val; + // type octetstring SD length (3); + template (value) SD m_ie_sD(in SD p_val := '000000'O) := p_val; + */ + + // Preamble + f_NGAP_gnb_init(); + //f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // f_send_NGAP_PDU( + // m_ngap_initMsg( + // m_n2_NGSetupRequest( + // m_globalRANNodeID_globalGNB_ID( + // m_ie_globalGnbId( + // PX_PLMN_IDENTITY, + // '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + // -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + // ) + // ), + // { + // m_ie_supportedTAItem( + // m_ie_tAC('000000'O), + // m_ie_broadcastPLMNList( + // { + // m_ie_broadcastPLMNItem( + // m_ie_pLMNIdentity('00f110'O), + // m_ie_sliceSupportList( + // { + // m_ie_sliceSupportItem( + // m_ie_sNSSAI( + // m_ie_sST('00'O), + // m_ie_sD('000000'O) + // ) + // ) + // } + // ) + + // ) + // } + // ) + // ) + // }, + // PX_PAGING_DRX + // ) + // ) + // ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_NGSetupResponse( + ?, + { + mw_servedGUAMIItem( + mw_gUAMI( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + ?,//template (present) AMFRegionID p_aMFRegionID := ?, + ?,//template (present) AMFSetID p_aMFSetID := ?, + ?,//template (present) AMFPointer p_aMFPointer := ?, + *//template GUAMI.iE_Extensions p_iE_Extensions := * + ),//template (present) GUAMI p_gUAMI := ?, + *,//template AMFName p_backupAMFName := *, + *//template ServedGUAMIItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) ServedGUAMIList p_servedGUAMIList := ?, + ?,//template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + { + mw_pLMNSupportItem( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + { + mw_sliceSupportItem( + mw_s_NSSAI( + ?,//template (present) SST p_sST := ?, + *,//template SD p_sD := *, + *//template S_NSSAI.iE_Extensions p_iE_Extensions := * + ),//template (present) S_NSSAI p_s_NSSAI := ?, + ?//template SliceSupportItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) SliceSupportList p_sliceSupportList := ?, + *//template PLMNSupportItem.iE_Extensions p_iE_Extensions := * + ) + }//template (present) PLMNSupportList p_plmnSuppList := ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_01 + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_02 + */ + function f_TC_NGAP_AMF_IMP_02() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + //f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // f_send_NGAP_PDU( + // m_ngap_initMsg( + // m_n2_NGSetupRequest( + // m_globalRANNodeID_globalGNB_ID( + // m_ie_globalGnbId( + // PX_PLMN_IDENTITY, + // '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + // -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + // ) + // ), + // { + // m_ie_supportedTAItem( + // m_ie_tAC('000000'O), + // m_ie_broadcastPLMNList( + // { + // m_ie_broadcastPLMNItem( + // m_ie_pLMNIdentity('00f110'O), + // m_ie_sliceSupportList( + // { + // m_ie_sliceSupportItem( + // m_ie_sNSSAI( + // m_ie_sST('00'O), + // m_ie_sD('000000'O) + // ) + // ) + // } + // ) + + // ) + // } + // ) + // ) + // }, + // PX_PAGING_DRX + // ) + // ) + // ); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_NGSetupFailure( + ?//template (present) Cause p_cause := ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_02 + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_03 + */ + function f_TC_NGAP_AMF_IMP_03() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + //f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // f_send_NGAP_PDU( + // m_ngap_initMsg( + // m_n2_NGSetupRequest( + // m_globalRANNodeID_globalGNB_ID( + // m_ie_globalGnbId( + // PX_PLMN_IDENTITY, + // '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + // -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + // ) + // ), + // { + // m_ie_supportedTAItem( + // m_ie_tAC('000000'O), + // m_ie_broadcastPLMNList( + // { + // m_ie_broadcastPLMNItem( + // m_ie_pLMNIdentity('00f110'O), + // m_ie_sliceSupportList( + // { + // m_ie_sliceSupportItem( + // m_ie_sNSSAI( + // m_ie_sST('00'O), + // m_ie_sD('000000'O) + // ) + // ) + // } + // ) + + // ) + // } + // ) + // ) + // }, + // PX_PAGING_DRX, + // FIXME:UERetention_Information template m_uERetentionInformation(in UERetentionInformation p_value := ues_retained) + // ) + // ) + // ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_NGSetupResponse( + ?, + { + mw_servedGUAMIItem( + mw_gUAMI( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + ?,//template (present) AMFRegionID p_aMFRegionID := ?, + ?,//template (present) AMFSetID p_aMFSetID := ?, + ?,//template (present) AMFPointer p_aMFPointer := ?, + *//template GUAMI.iE_Extensions p_iE_Extensions := * + ),//template (present) GUAMI p_gUAMI := ?, + *,//template AMFName p_backupAMFName := *, + *//template ServedGUAMIItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) ServedGUAMIList p_servedGUAMIList := ?, + ?,//template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + { + mw_pLMNSupportItem( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + { + mw_sliceSupportItem( + mw_s_NSSAI( + ?,//template (present) SST p_sST := ?, + *,//template SD p_sD := *, + *//template S_NSSAI.iE_Extensions p_iE_Extensions := * + ),//template (present) S_NSSAI p_s_NSSAI := ?, + ?//template SliceSupportItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) SliceSupportList p_sliceSupportList := ?, + *//template PLMNSupportItem.iE_Extensions p_iE_Extensions := * + ) + }//template (present) PLMNSupportList p_plmnSuppList := ? + //FIXME:UERetention_Information template mw_uERetentionInformation(template (present) UERetentionInformation p_value := ues_retained) + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_03 + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_04 + */ + function f_TC_NGAP_AMF_IMP_04() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + //f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // f_send_NGAP_PDU( + // m_ngap_initMsg( + // m_n2_NGSetupRequest( + // m_globalRANNodeID_globalGNB_ID( + // m_ie_globalGnbId( + // PX_PLMN_IDENTITY, + // '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + // -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + // ) + // ), + // { + // m_ie_supportedTAItem( + // m_ie_tAC('000000'O), + // m_ie_broadcastPLMNList( + // { + // m_ie_broadcastPLMNItem( + // m_ie_pLMNIdentity('00f110'O), + // m_ie_sliceSupportList( + // { + // m_ie_sliceSupportItem( + // m_ie_sNSSAI( + // m_ie_sST('00'O), + // m_ie_sD('000000'O) + // ) + // ) + // } + // ) + + // ) + // } + // ) + // ) + // }, + // PX_PAGING_DRX, + // FIXME:NB_IoT_Default_Paging_DRX, + // FIXME:Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; m_extended_RANNodeName... + // ) + // ) + // ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_NGSetupResponse( + ?, + { + mw_servedGUAMIItem( + mw_gUAMI( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + ?,//template (present) AMFRegionID p_aMFRegionID := ?, + ?,//template (present) AMFSetID p_aMFSetID := ?, + ?,//template (present) AMFPointer p_aMFPointer := ?, + *//template GUAMI.iE_Extensions p_iE_Extensions := * + ),//template (present) GUAMI p_gUAMI := ?, + *,//template AMFName p_backupAMFName := *, + *//template ServedGUAMIItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) ServedGUAMIList p_servedGUAMIList := ?, + ?,//template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + { + mw_pLMNSupportItem( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + { + mw_sliceSupportItem( + mw_s_NSSAI( + ?,//template (present) SST p_sST := ?, + *,//template SD p_sD := *, + *//template S_NSSAI.iE_Extensions p_iE_Extensions := * + ),//template (present) S_NSSAI p_s_NSSAI := ?, + ?//template SliceSupportItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) SliceSupportList p_sliceSupportList := ?, + *//template PLMNSupportItem.iE_Extensions p_iE_Extensions := * + ) + }//template (present) PLMNSupportList p_plmnSuppList := ? + // FIXME:Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; mw_extended_RANNodeName... + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_04 + } // End of group NG_Setup //8.7.2 group RAN_Configuration_Update{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index f15bfc5..9abfb64 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -692,6 +692,34 @@ module NGAP_TestCases { } // End of group NG_Reset //8.7.5 group Error_Indication{ + + /** + * @desc "Verify that the GNB can send a ERROR INDICATION to the AMF when a error occurs." + */ + testcase TC_NGAP_GNB_IMP_06() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_6_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_6_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_IMP_06()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_IMP_06 + } // End of group Error_Indication //8.7.6 group AMF_Status_Indication{ @@ -1275,6 +1303,115 @@ module NGAP_TestCases { group Interface_Management_Procedures{ //8.7.1 group NG_Setup{ + + /** + * @desc "Verify that the AMF node successfully processes a NG SETUP REQEST message that contains mandatory IEs and answers with NG SETUP RESPONSE to acknowledge the setup." + */ + testcase TC_NGAP_AMF_IMP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_01 + + /** + * @desc "Verify that the AMF node successfully decline a NG RESET REQEST message and answers with NG SETUP FAILURE when the AMF is not able to handle the request." + */ + testcase TC_NGAP_AMF_IMP_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_02 + + /** + * @desc "Verify that the AMF node successfully processes a NG SETUP REQEST message with optional field UE Retention Information and answers with NG SETUP RESPONSE to acknowledge the setup." + */ + testcase TC_NGAP_AMF_IMP_03() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_03 + + /** + * @desc "Verify that the AMF node successfully processes a NG SETUP REQEST message with different optional fields and answers with NG SETUP RESPONSE to acknowledge the setup." + */ + testcase TC_NGAP_AMF_IMP_04() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_04 + } // End of group NG_Setup //8.7.2 group RAN_Configuration_Update{ -- GitLab From b63989c7c3e9dc7e40f123dd0d16b56fbcdb137b Mon Sep 17 00:00:00 2001 From: pintar Date: Wed, 22 May 2024 09:31:40 +0200 Subject: [PATCH 206/365] TP_GNB_TRP_02 updated --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 3bd5fea..1c297d3 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -2853,11 +2853,7 @@ Package TP_GNB { the IUT entity receives a DEACTIVATE_TRACE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Trace_Activation containing - NG_RAN_Trace_ID, - Interfaces_to_Trace, - Trace_Depth, - Trace_Collection_Entity_IP_Address;; + NG_RAN_Trace_ID; from the AMF entity } then { -- GitLab From 1349240f71e116fbad5c5232782f14b847d71767 Mon Sep 17 00:00:00 2001 From: pintar Date: Wed, 22 May 2024 09:34:18 +0200 Subject: [PATCH 207/365] TP_AMF_IMP_09 updated --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 45afdc3..85b1d87 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1773,7 +1773,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity sends a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing -- GitLab From 47b7b1cba63ef69141ff0e019e0a1b547e2b56c1 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 22 May 2024 10:25:52 +0200 Subject: [PATCH 208/365] aded AMF_IMP* tests --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 223 +++++++++++++++++++++++++++++++ 1 file changed, 223 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 9abfb64..98322ea 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1415,24 +1415,247 @@ module NGAP_TestCases { } // End of group NG_Setup //8.7.2 group RAN_Configuration_Update{ + + /** + * @desc "Verify that the AMF node successfully processes a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." + */ + testcase TC_NGAP_AMF_IMP_05() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_05 + + /** + * @desc "Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request." + */ + testcase TC_NGAP_AMF_IMP_06() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_06()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_06 + } // End of group RAN_Configuration_Update //8.7.3 group AMF_Configuration_Update{ + + /** + * @desc "Verify that the IUT can send a AMF CONFIGURATION UPDATE message to the AMF." + */ + testcase TC_NGAP_AMF_IMP_07() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_07()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_07 + } // End of group AMF_Configuration_Update //8.7.4 group NG_Reset{ + + /** + * @desc "Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." + */ + testcase TC_NGAP_AMF_IMP_08() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_08()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_08 + } // End of group NG_Reset //8.7.5 group Error_Indication{ + + /** + * @desc "Verify that the AMF can send a ERROR INDICATION to the GNB when a error occurs." + */ + testcase TC_NGAP_AMF_IMP_09() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_09()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_09 + } // End of group Error_Indication //8.7.6 group AMF_Status_Indication{ + + /** + * @desc "Verify that the AMF can send a AMF STATUS INDICATION to the GNB when a error occurs." + */ + testcase TC_NGAP_AMF_IMP_10() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_6)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_6' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_10()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_10 + } // End of group AMF_Status_Indication //8.7.7 group Overload_Start{ + + /** + * @desc "Verify that the AMF can send a OVERLOAD START to the GNB." + */ + testcase TC_NGAP_AMF_IMP_11() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_7)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_7' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_11()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_11 + } // End of group Overload_Start //8.7.8 group Overload_Stop{ + + /** + * @desc "Verify that the AMF can send a OVERLOAD STOP to the GNB." + */ + testcase TC_NGAP_AMF_IMP_12() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_6_8)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_6_8' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_IMP_12()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_IMP_12 + } // End of group Overload_Stop } // End of group Interface_Management_Procedures //8.8 -- GitLab From bd964cf9925c2d53dcf84fb7e2a0380a39e8e9a1 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 22 May 2024 10:26:13 +0200 Subject: [PATCH 209/365] aded AMF_IMP* test functions --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 312 +++++++++++++++++++++++++++++ 1 file changed, 312 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 19a6db4..e8f23d1 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -2447,24 +2447,336 @@ module NGAP_TCFunctions { } // End of group NG_Setup //8.7.2 group RAN_Configuration_Update{ + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_05 + */ + function f_TC_NGAP_AMF_IMP_05() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + //f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_RANConfigurationUpdate( + PX_RAN_NODE_NAME + //FIXXME: mising template params due to TP , Supported_TA_list,.... + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_RANConfigurationUpdateAcknowledge + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_05 + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_06 + */ + function f_TC_NGAP_AMF_IMP_06() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + //f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_RANConfigurationUpdate( + PX_RAN_NODE_NAME + //FIXXME: mising template params due to TP , Supported_TA_list,.... + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_RANConfigurationUpdateFailure( + ?//template (present) Cause p_cause := ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_06 + } // End of group RAN_Configuration_Update //8.7.3 group AMF_Configuration_Update{ + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_07 + */ + function f_TC_NGAP_AMF_IMP_07() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger AMF CONFIGURATION UPDATE !"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_AMFConfigurationUpdate( + ?//template (present) AMFName p_aMFName := ? + //FIXXME: mising template params due to TP ,ServedGUAMI_list,PLMNSupport_List.... + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_07 + } // End of group AMF_Configuration_Update //8.7.4 group NG_Reset{ + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_08 + */ + function f_TC_NGAP_AMF_IMP_08() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + //f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_NGReset( + m_cause_misc(m_causeMisc(-)),//in template (value) Cause p_cause, + m_resetType_nG_Interface( + m_resetAll(reset_all) + )//in template (value) ResetType p_resetType + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_NGResetAcknowledge + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_08 + } // End of group NG_Reset //8.7.5 group Error_Indication{ + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_09 + */ + function f_TC_NGAP_AMF_IMP_09() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // f_send_NGAP_PDU( + // m_ngap_initMsg( + // m_n2_InitialContextSetupRequest( + // PX_AMF_UE_NGAP_ID, + // PX_RAN_UE_NGAP_ID, + // *//in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq + //FIXME missing template for PDUSessionResourceSetupListCxtReq + // ) + // ) + // ); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_ErrorIndication_ids( + ?, + ?, + ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_09 + } // End of group Error_Indication //8.7.6 group AMF_Status_Indication{ + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_10 + */ + function f_TC_NGAP_AMF_IMP_10() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger AMF STATUS INDICATION !"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_AMFStatusIndication( + ?//template (present) UnavailableGUAMIList p_unavailableGUAMIList := ? + //FIXME: when UnavailableGUAMIList template ready + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_10 + } // End of group AMF_Status_Indication //8.7.7 group Overload_Start{ + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_11 + */ + function f_TC_NGAP_AMF_IMP_11() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger OVERLOAD START !"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_OverloadStart //FIXME: mising template with aditional IEs, OverloadStartNSSAIList + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_11 + } // End of group Overload_Start //8.7.8 group Overload_Stop{ + + /** + * @desc Testcase function for TC_NGAP_AMF_IMF_12 + */ + function f_TC_NGAP_AMF_IMP_12() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger OVERLOAD STOP !"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_OverloadStop + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_IMP_12 + } // End of group Overload_Stop } // End of group Interface_Management_Procedures //8.8 -- GitLab From bc9e65f8e7a1ed13eb8eb2a84e509eed7bc43bbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Fri, 24 May 2024 11:05:59 +0200 Subject: [PATCH 210/365] revise trigger (and Test Objective description) for TP_NGAP_GNB_CMP_08 and TP_NGAP_GNB_CMP_09 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 1c297d3..d445cd2 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -941,7 +941,7 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_09 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND where both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE are not available and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND where only the AMF UE NGAP ID IE is available and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.3, 9.2.2.6 and 9.2.2.5" @@ -967,11 +967,7 @@ Package TP_GNB { then { the IUT entity sends a UE_CONTEXT_RELEASE_COMPLETE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_List containing - PDU_Session_Resource_Item containing - PDU_SessionId indicating value PX_PDU_ID, - PDU_Session_Resource_Release_Response_Transfer;;; + RAN_UE_NGAP_ID; to the AMF entity } } -- GitLab From fc0561c3ed3acc0a921ab96fae4a5c579152dbea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Fri, 24 May 2024 11:21:39 +0200 Subject: [PATCH 211/365] Adjusted Test Objective and Initial Conditions of TP_NGAP_GNB_CMP_11 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index d445cd2..1d2b65b 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -1020,7 +1020,7 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_11 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs after the preparation of a handover and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" @@ -1031,7 +1031,8 @@ Package TP_GNB { Initial conditions with { the UE entity isRegisteredTo the AMF and - the UE entity hasEstablishedInitialContext + the UE entity hasEstablishedInitialContext and + the GNB entity alreadyPreparedHandover } Expected behaviour -- GitLab From 4a615e65ad17c1fe34c88f9cf2dcb3c06e90400c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20L=C3=BCdtke?= Date: Fri, 24 May 2024 11:33:22 +0200 Subject: [PATCH 212/365] Removed Initial Conditions of TP_NGAP_GNB_IMP_01 --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 1d2b65b..73ee3ba 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -2228,7 +2228,7 @@ Package TP_GNB { TP Id TP_NGAP_GNB_IMP_01 - Test objective "Verify that the GNB node successfully sends a NG SETUP REQEST message to the AMF." + Test objective "Verify that the GNB node successfully sends a NG SETUP REQUEST message to the AMF." Reference "ETSI TS 138 413 [1], Clauses 8.7.1.2 and 9.2.6.1" @@ -2237,10 +2237,6 @@ Package TP_GNB { PICS Selection PICS_A2/1 and PICS_A3/6_1 - Initial conditions with { - the UE entity hasEstablishedRRCConnection - } - Expected behaviour ensure that { when { -- GitLab From dc7cf2240e37a5d99578f9518738a0ad71abf1fa Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 27 May 2024 07:18:35 +0200 Subject: [PATCH 213/365] added AMF_URP* test functions --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 144 +++++++++++++++++++++++++++++ 1 file changed, 144 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index e8f23d1..144a141 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -2985,6 +2985,41 @@ module NGAP_TCFunctions { group UE_TNLA_Binding_Procedures{ //8.13.1 group UE_TNLA_Binding_Release{ + + /** + * @desc Testcase function for TC_NGAP_aMF_UBP_01 + */ + function f_TC_NGAP_AMF_UBP_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger UE TNLA BINDING procedure !"); + + // f_recv_NGAP_PDU( + // mw_ngap_initMsg( + // mw_n2_UeTnlaBindingReleaseRequest( + + // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_UBP_01 + } // End of group UE_TNLA_Binding_Release } // End of group UE_TNLA_Binding_Procedures //8.14 @@ -2994,9 +3029,83 @@ module NGAP_TCFunctions { } // End of group UE_Radio_Capability_Info_Indication //8.14.2 group UE_Radio_Capability_Check{ + + /** + * @desc Testcase function for TC_NGAP_aMF_URP_01 + */ + function f_TC_NGAP_AMF_URP_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger UE RADIO CAPABILITY CHECK management procedure !"); + + // f_recv_NGAP_PDU( + // mw_ngap_initMsg( + // mw_n2_Ue****( //FIXME: missing template + + // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_URP_01 + } // End of group UE_Radio_Capability_Check //8.14.3 group UE_Radio_Capability_ID_Mapping{ + + /** + * @desc Testcase function for TC_NGAP_aMF_URP_02 + */ + function f_TC_NGAP_AMF_URP_02() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // f_send_NGAP_PDU( + // m_ngap_initMsg( + //FIXME: missing template + // ) + // ); + + // f_recv_NGAP_PDU( + // mw_ngap_initMsg( + // mw_n2_Ue****( //FIXME: missing template + + // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_URP_02 + } // End of group UE_Radio_Capability_ID_Mapping } // End of group UE_Radio_Capability_Management_Procedures //8.15 @@ -3012,6 +3121,41 @@ module NGAP_TCFunctions { } // End of group Uplink_RIM_Information_Transfer //8.16.2 group Downlink_RIM_Information_Transfer{ + + /** + * @desc Testcase function for TC_NGAP_aMF_RIP_01 + */ + function f_TC_NGAP_AMF_RIP_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger RIM Information Transfer procedure !"); + + // f_recv_NGAP_PDU( + // mw_ngap_initMsg( + // mw_n2_Ue****( //FIXME: missing template + + // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_RIP_01 + } // End of group Downlink_RIM_Information_Transfer } // End of group RIM_Information_Transfer_Procedures } // End of group aMF_Role -- GitLab From b245790c77d2e0e7f4bd5619cc439696c5a475bf Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 27 May 2024 07:18:52 +0200 Subject: [PATCH 214/365] added AMF_URP* test functions --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 112 +++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 98322ea..a0d607f 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1828,6 +1828,34 @@ module NGAP_TestCases { group UE_TNLA_Binding_Procedures{ //8.13.1 group UE_TNLA_Binding_Release{ + + /** + * @desc "Verify that the IUT can send a UE TNLA BINDING RELEASE REQUEST to initiate a UE TNLA Binding Release procedure." + */ + testcase TC_NGAP_AMF_UBP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_12_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_12_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_UBP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_UBP_01 + } // End of group UE_TNLA_Binding_Release } // End of group UE_TNLA_Binding_Procedures //8.14 @@ -1837,9 +1865,65 @@ module NGAP_TestCases { } // End of group UE_Radio_Capability_Info_Indication //8.14.2 group UE_Radio_Capability_Check{ + + /** + * @desc "Verify that the IUT can send a UE RADIO CAPABILITY CHECK REQUEST to initiate UE Radio Capability Management procedure." + */ + testcase TC_NGAP_AMF_URP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_13_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_13_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_URP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_URP_01 + } // End of group UE_Radio_Capability_Check //8.14.3 group UE_Radio_Capability_ID_Mapping{ + + /** + * @desc "Verify that the IUT can send a UE RADIO CAPABILITY ID MAPPING RESPONSE message that contains mandatory IEs to provide the UE radio capabilities id mapping." + */ + testcase TC_NGAP_AMF_URP_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_13_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_13_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_URP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_URP_02 + } // End of group UE_Radio_Capability_ID_Mapping } // End of group UE_Radio_Capability_Management_Procedures //8.15 @@ -1855,6 +1939,34 @@ module NGAP_TestCases { } // End of group Uplink_RIM_Information_Transfer //8.16.2 group Downlink_RIM_Information_Transfer{ + + /** + * @desc "Verify that the IUT can send a DOWNLINK RIM INFORMATION TRANSFER." + */ + testcase TC_NGAP_AMF_RIP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_15_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_15_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_RIP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_RIP_01 + } // End of group Downlink_RIM_Information_Transfer } // End of group RIM_Information_Transfer_Procedures } // End of group aMF_Role -- GitLab From 33adc4ddd4bb2211ac044c30c18630aa170a0c89 Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 27 May 2024 09:45:55 +0200 Subject: [PATCH 215/365] Add missing enc/dec prototypes --- ccsrc/EncDec/LibNGAP_Encdec.cc | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/ccsrc/EncDec/LibNGAP_Encdec.cc b/ccsrc/EncDec/LibNGAP_Encdec.cc index 0f1bd49..14d5966 100644 --- a/ccsrc/EncDec/LibNGAP_Encdec.cc +++ b/ccsrc/EncDec/LibNGAP_Encdec.cc @@ -4,7 +4,7 @@ namespace LibNGAP__EncdecDeclarations { - BITSTRING fx__enc__PDUSessionResourceSetupRequestTransfer(const NGAP__IEs::PDUSessionResourceSetupRequestTransfer &p) { + BITSTRING fx__enc__PDUSessionResourceSetupRequestTransfer(const NGAP__IEs::PDUSessionResourceSetupRequestTransfer& p) { loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupRequestTransfer ", p); return int2bit(0, 1); } @@ -14,6 +14,36 @@ namespace LibNGAP__EncdecDeclarations { return -1; } + BITSTRING fx__enc__PDUSessionResourceReleaseCommandTransfer(const NGAP__IEs::PDUSessionResourceReleaseCommandTransfer &p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceReleaseCommandTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceReleaseCommandTransfer(BITSTRING& b, NGAP__IEs::PDUSessionResourceReleaseCommandTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceReleaseCommandTransfer"); + return -1; + } + + BITSTRING fx__enc__PDUSessionResourceSetupResponseTransfer(const NGAP__IEs::PDUSessionResourceSetupResponseTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupResponseTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceSetupResponseTransfer(BITSTRING& b, NGAP__IEs::PDUSessionResourceSetupResponseTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupResponseTransfer"); + return -1; + } + + BITSTRING fx__enc__PDUSessionResourceModifyIndicationTransfer(const NGAP__IEs::PDUSessionResourceModifyIndicationTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupRequestTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceModifyIndicationTransfer(BITSTRING& b, NGAP__IEs::PDUSessionResourceModifyIndicationTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceModifyIndicationTransfer"); + return -1; + } + /**************************************************** * @desc External function to encode a .... type * @param value to encode -- GitLab From 11b73c944ddfa44833bfc3dc587069a225a0adbf Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 27 May 2024 10:40:08 +0200 Subject: [PATCH 216/365] Update of config file --- etc/AtsNGAP/AtsNGAP.cfg | 115 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 114 insertions(+), 1 deletion(-) diff --git a/etc/AtsNGAP/AtsNGAP.cfg b/etc/AtsNGAP/AtsNGAP.cfg index 7b686a6..e677b18 100644 --- a/etc/AtsNGAP/AtsNGAP.cfg +++ b/etc/AtsNGAP/AtsNGAP.cfg @@ -17,6 +17,8 @@ LogEventTypes:= Yes [TESTPORT_PARAMETERS] # In this section you can specify parameters that are passed to Test Ports. +system.N2_gNBaMF_P.params := "SCTP/ETH(mac_src=080027D2B658)/PCAP(file=test.pcap)" + [DEFINE] # In this section you can create macro definitions, # that can be used in other configuration file sections except [INCLUDE] and [ORDERED_INCLUDE]. @@ -42,9 +44,120 @@ LogEventTypes:= Yes # In this section you can specify what parts of your test suite you want to execute. #AtsImsIot_TestControl.control -# Emergency Network Attachment and Establishment of the Emergency Bearer with USIM. +# Test System testing NGAP_TestCases.TC_NGAP_gNB_or_aMF_testcaseName_01 +# Emergency Network Attachment and Establishment of the Emergency Bearer with USIM. +#NGAP_TestCases.TC_NGAP_GNB_PDU_01 +# Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains several PDU Session ID IEs set to the same value. +#NGAP_TestCases.TC_NGAP_GNB_PDU_02 +# Verify that the NG-RAN node reports the establishment of the new PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a PDU Session ID IE set to value that identifies an active PDU Session. NOTE: Run TP_NGAP_GNB_PDU_01 before this TP. +#NGAP_TestCases.TC_NGAP_GNB_PDU_03 +# Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a QoS Flow Setup Request List IE in the PDU Session Resource Setup Request Transfer IE including at least one Non-GBR QoS flow but the PDU Session Aggregate Maximum Bit Rate IE is not present. +#NGAP_TestCases.TC_NGAP_GNB_PDU_04 +# Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND contains mandatory IEs and answers with PDU SESSION RESOURCE RELEASE RESPONSE to release PDU session. +#NGAP_TestCases.TC_NGAP_GNB_PDU_05 +# Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND containing multiple PDU Session ID IEs set to the same value and ignore the duplication. +#NGAP_TestCases.TC_NGAP_GNB_PDU_05 +# Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE MODIFY REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE MODIFY RESPONSE for successfully modified PDU session. +#NGAP_TestCases.TC_NGAP_GNB_PDU_07 +# Verify that the IUT can send a PDU_SESSION_RESOURCE_NOTIFY that already established QoS flow or PDU session for given UE are release. +#NGAP_TestCases.TC_NGAP_GNB_PDU_08 +# Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_INDICATION to request modification of established PDU session. +#NGAP_TestCases.TC_NGAP_GNB_PDU_09 + +# Verify that the GNB node successfully sends a NG SETUP REQEST message to the AMF. +#NGAP_TestCases.TC_NGAP_GNB_IMP_01 +# Verify that the IUT can send a RAN CONFIGURATION UPDATE message to the AMF. +#NGAP_TestCases.TC_NGAP_GNB_IMP_02 +# Verify that the GNB node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update. +#NGAP_TestCases.TC_NGAP_GNB_IMP_03 +# Verify that the GNB node can send a AMF CONFIGURATION UPDATE FAILURE. +#NGAP_TestCases.TC_NGAP_GNB_IMP_04 +# Verify that the GNB node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset. +#NGAP_TestCases.TC_NGAP_GNB_IMP_05 +# Verify that the GNB can send a ERROR INDICATION to the AMF when a error occurs. +#NGAP_TestCases.TC_NGAP_GNB_IMP_06 + +# Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing mandatory IEs and answers with WRITE-REPLACE WARNING RESPONSE to start broadcasting of warning messages. +#NGAP_TestCases.TC_NGAP_GNB_WTP_01 +# Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing Message Identifier IE and/or Serial Number IE different from those in the warning message being broadcast and if Concurent Warning Message Indicator is not present then IUT node answers with WRITE-REPLACE WARNING RESPONSE and replaces the warning message being broadcast with newly received one for that area. +#NGAP_TestCases.TC_NGAP_GNB_WTP_02 +# Verify that the NG-RAN node successfully processes a PWS CANCEL REQUEST containing mandatory IEs and answers with PWS CANCEL RESPONSE to cancel an already ongoing broadcast warning messages in all of the cells in the NG-RAN. +#NGAP_TestCases.TC_NGAP_GNB_WTP_03 +# Verify that the IUT can send a PWS RESTART INDICATION to inform AMF that PWS information for some or all cells may be reloaded from the CBC if needed. +#NGAP_TestCases.TC_NGAP_GNB_WTP_04 +# Verify that the IUT can send a PWS FAILURE INDICATION to inform AMF that ongoing PWS operation for one or more cells has failed. +#NGAP_TestCases.TC_NGAP_GNB_WTP_05 + +# Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that Trace Start procedure has failed due to an interaction with handover procedure. +#NGAP_TestCases.TC_NGAP_GNB_TRP_01 +# Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that a Deactivate Trace procedure has failed due to an interaction with handover procedure. +#NGAP_TestCases.TC_NGAP_GNB_TRP_02 +# Verify that the IUT can send a CELL_TRAFFIC_TRACE to send the allocated Trace Recording Session Reference and Trace Reference to AMF. +#NGAP_TestCases.TC_NGAP_GNB_TRP_03 + +# Verify that the IUT can send a PDU SESSION RESOURCE SETUP REQUEST with at least one PDU session resource list to established PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_01 +# Verify that the IUT can send a PDU_SESSION_RESOURCE_RELEASE_COMMAND to release PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_02 +# Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_REQUEST to modify PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_03 +# Verify that the AMF node successfully processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for successfully modified PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_04 +# Verify that the AMF node processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for not successfully modified PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_05 + +# Verify that the AMF node successfully processes a NG SETUP REQEST message that contains mandatory IEs and answers with NG SETUP RESPONSE to acknowledge the setup. +#NGAP_TestCases.TC_NGAP_AMF_IMP_01 +# Verify that the AMF node successfully decline a NG RESET REQEST message and answers with NG SETUP FAILURE when the AMF is not able to handle the request. +#NGAP_TestCases.TC_NGAP_AMF_IMP_02 +# Verify that the AMF node successfully processes a NG SETUP REQEST message with optional field UE Retention Information and answers with NG SETUP RESPONSE to acknowledge the setup. +#NGAP_TestCases.TC_NGAP_AMF_IMP_03 +# Verify that the AMF node successfully processes a NG SETUP REQEST message with different optional fields and answers with NG SETUP RESPONSE to acknowledge the setup. +#NGAP_TestCases.TC_NGAP_AMF_IMP_04 +# Verify that the AMF node successfully processes a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update. +#NGAP_TestCases.TC_NGAP_AMF_IMP_05 +# Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request. +#NGAP_TestCases.TC_NGAP_AMF_IMP_06 +# Verify that the IUT can send a AMF CONFIGURATION UPDATE message to the AMF. +#NGAP_TestCases.TC_NGAP_AMF_IMP_07 +# Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset. +#NGAP_TestCases.TC_NGAP_AMF_IMP_08 +# Verify that the AMF can send a ERROR INDICATION to the GNB when a error occurs. +#NGAP_TestCases.TC_NGAP_AMF_IMP_09 +# Verify that the AMF can send a AMF STATUS INDICATION to the GNB when a error occurs. +#NGAP_TestCases.TC_NGAP_AMF_IMP_10 +# Verify that the AMF can send a OVERLOAD START to the GNB. +#NGAP_TestCases.TC_NGAP_AMF_IMP_11 +# Verify that the AMF can send a OVERLOAD STOP to the GNB. +#NGAP_TestCases.TC_NGAP_AMF_IMP_12 + +# Verify that the IUT can send a WRITE REPLACE WARNING REQUEST to start broadcasting of warning messages. +#NGAP_TestCases.TC_NGAP_AMF_WTP_01 +#Verify that the IUT can send a PWS CANCEL REQUEST to cancel broadcasting of warning messages. +#NGAP_TestCases.TC_NGAP_AMF_WTP_02 + +# Verify that the IUT can send a TRACE_START to initiate a trace session for a UE. +#NGAP_TestCases.TC_NGAP_AMF_TRP_01 +# Verify that the IUT can send a DEACTIVATE_TRACE to deactivate a trace session for a UE. +#NGAP_TestCases.TC_NGAP_AMF_TRP_02 + +# Verify that the IUT can send a UE TNLA BINDING RELEASE REQUEST to initiate a UE TNLA Binding Release procedure. +#NGAP_TestCases.TC_NGAP_AMF_UBP_01 +# Verify that the IUT can send a UE RADIO CAPABILITY ID MAPPING RESPONSE message that contains mandatory IEs to provide the UE radio capabilities id mapping. +#NGAP_TestCases.TC_NGAP_AMF_URP_02 + +# Verify that the IUT can send a DOWNLINK RIM INFORMATION TRANSFER. +#NGAP_TestCases.TC_NGAP_AMF_RIP_01 + + + + + + + + [GROUPS] # In this section you can specify groups of hosts. These groups can be used inside the # [COMPONENTS] section to restrict the creation of certain PTCs to a given set of hosts. -- GitLab From 26da86bf4166f25b6bf2d24f30127b7b4daf3f76 Mon Sep 17 00:00:00 2001 From: pintar Date: Mon, 27 May 2024 14:09:36 +0200 Subject: [PATCH 217/365] TP_GNB_PDU_10 added --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 99 +++++++++++++++++++++------ 1 file changed, 77 insertions(+), 22 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 1c297d3..ba37b77 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -24,10 +24,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_01 - Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE for successfully established PDU session." + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE for successfully established PDU session." Reference - "ETSI TS 138 413 [1], Clause 8.2.1.2" + "ETSI TS 138 413 [1], Clauses 8.2.1.2, 9.2.1.1 and 9.2.1.2" Config Id CFG_GNB_01 @@ -78,7 +78,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains several PDU Session ID IEs set to the same value." Reference - "ETSI TS 138 413 [1], Clause 8.2.1.4" + "ETSI TS 138 413 [1], Clauses 8.2.1.4, 9.2.1.1 and 9.2.1.2" Config Id CFG_GNB_01 @@ -118,7 +118,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Failed_to_Setup_List containing @@ -136,17 +136,18 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_03 - Test objective "Verify that the NG-RAN node reports the establishment of the new PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a PDU Session ID IE set to value that identifies an active PDU Session. NOTE: Run TP_NGAP_GNB_PDU_01 before this TP " + Test objective "Verify that the NG-RAN node reports the establishment of the new PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a PDU Session ID IE set to value that identifies an active PDU Session." Reference - "ETSI TS 138 413 [1], Clause 8.2.1.4" + "ETSI TS 138 413 [1], Clauses 8.2.1.4, 9.2.1.1 and 9.2.1.2" Config Id CFG_GNB_01 PICS Selection PICS_A2/1 and PICS_A3/1_1 Initial conditions with { - the UE entity isRegisteredTo the AMF + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedPDUsessionWithSameId } Expected behaviour @@ -169,7 +170,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Failed_to_Setup_List containing @@ -190,7 +191,7 @@ Package TP_GNB { Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a QoS Flow Setup Request List IE in the PDU Session Resource Setup Request Transfer IE including at least one Non-GBR QoS flow but the PDU Session Aggregate Maximum Bit Rate IE is not present. " Reference - "ETSI TS 138 413 [1], Clause 8.2.1.4" + "ETSI TS 138 413 [1], Clauses 8.2.1.4, 9.2.1.1 and 9.2.1.2" Config Id CFG_GNB_01 @@ -221,7 +222,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Failed_to_Setup_List containing @@ -241,10 +242,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_05 - Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND contains mandatory IEs and answers with PDU SESSION RESOURCE RELEASE RESPONSE to release PDU session." + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND contains mandatory IEs and answers with PDU SESSION RESOURCE RELEASE RESPONSE to release PDU session." Reference - "ETSI TS 138 413 [1], Clause 8.2.2.2" + "ETSI TS 138 413 [1], Clauses 8.2.2.2, 9.2.1.3 and 9.2.1.4" Config Id CFG_GNB_01 @@ -269,7 +270,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a PDU_SESSION_RESOURCE_RELEASE_RESPONSE containing + the IUT entity sends a PDU_SESSION_RESOURCE_RELEASE_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Released_List containing @@ -286,10 +287,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_06 - Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND containing multiple PDU Session ID IEs set to the same value and ignore the duplication." + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND containing multiple PDU Session ID IEs set to the same value and ignore the duplication." Reference - "ETSI TS 138 413 [1], Clause 8.2.2.2" + "ETSI TS 138 413 [1], Clauses 8.2.2.2, 9.2.1.3 and 9.2.1.4" Config Id CFG_GNB_01 @@ -320,7 +321,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a PDU_SESSION_RESOURCE_RELEASE_RESPONSE containing + the IUT entity sends a PDU_SESSION_RESOURCE_RELEASE_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Released_List containing @@ -337,10 +338,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_07 - Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE MODIFY REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE MODIFY RESPONSE for successfully modified PDU session." + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE MODIFY REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE MODIFY RESPONSE for successfully modified PDU session." Reference - "ETSI TS 138 413 [1], Clause 8.2.3.2" + "ETSI TS 138 413 [1], Clauses 8.2.3.2, 9.2.1.5 and 9.2.1.6" Config Id CFG_GNB_01 @@ -372,7 +373,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_RESPONSE containing + the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Modify_Response_List containing @@ -394,10 +395,10 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_08 - Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_NOTIFY that already established QoS flow or PDU session for given UE are release." + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_NOTIFY that already established QoS flow or PDU session for given UE are release." Reference - "ETSI TS 138 413 [1], Clauses 8.2.4.2" + "ETSI TS 138 413 [1], Clauses 8.2.4.2 and 9.2.1.7" Config Id CFG_GNB_01 @@ -431,7 +432,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_INDICATION to request modification of established PDU session." Reference - "ETSI TS 138 413 [1], Clauses 8.2.5.2" + "ETSI TS 138 413 [1], Clauses 8.2.5.2 and 9.2.1.8" Config Id CFG_GNB_01 @@ -460,6 +461,60 @@ Package TP_GNB { } } // end TP_NGAP_GNB_PDU_09 + + Test Purpose { + + TP Id TP_NGAP_GNB_PDU_10 + + Test objective "Verify that the NG-RAN node reports the modification of the corresponding PDU session as failed if a PDU SESSION RESOURCE MODIFY REQUEST contains several PDU Session ID IEs set to the same value." + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.3.4, 9.2.1.5 and 9.2.1.6" + + Config Id CFG_GNB_01 + + PICS Selection PICS_A2/1 and PICS_A3/1_3 + + Initial conditions with { + the UE entity isRegisteredTo the AMF and + the UE entity hasEstablishedPDUsession + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a PDU_SESSION_RESOURCE_MODIFY_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Modify_Request_List containing + PDU_Session_Resource_Modify_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Request_Transfer containing + QoSFlowAddorModifyRequestList containing + QoSFlowAddorModifyRequestItem containing + QoSFlowIdentifier;;;;;, + PDU_Session_Resource_Modify_Request_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Request_Transfer containing + QoSFlowAddorModifyRequestList containing + QoSFlowAddorModifyRequestItem containing + QoSFlowIdentifier;;;;; + from the AMF entity + } + then { + the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_RESPONSE containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, + PDU_Session_Resource_Failed_to_Modify_Response_List containing + PDU_Session_Resource_Failed_to_Modify_Response_Item containing + PDU_SessionId indicating value PX_PDU_ID, + PDU_Session_Resource_Modify_Unsuccessful_Transfer containing + Cause indicating value MultiplePDUSessionIDInstances;;;; + to the AMF entity + } + } + + } // end TP_NGAP_GNB_PDU_10 } // end Group 8.2 PDU Session Management Procedures -- GitLab From aa06f496f5e9ff83118828f78593b92c84b7546c Mon Sep 17 00:00:00 2001 From: pintar Date: Mon, 27 May 2024 14:11:02 +0200 Subject: [PATCH 218/365] Initial conditions added --- test_purposes/Ngap_Common.tplan2 | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 153b094..00d9fe2 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -165,6 +165,8 @@ Package Ngap_Common { - hasEstablishedInitialContext - hasEstablishedRRCConnection - hasEstablishedContextInproperly + - hasEstablishedPDUsessionWithSameId + - hasEstablishedPDUsession - isConfiguredWithENUMentryForTelURI_E164NumberOf - hasReceivedInitialRequestForDialog - hasReceived200OkOnInitialRequestForDialogWith -- GitLab From fc66f5a415079d0dd7141b20c32561775c1d5823 Mon Sep 17 00:00:00 2001 From: pintar Date: Mon, 27 May 2024 14:11:32 +0200 Subject: [PATCH 219/365] Missing references added --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 85b1d87..496e639 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -26,10 +26,10 @@ Package TP_AMF { TP Id TP_NGAP_AMF_PDU_01 - Test objective "Verify that the IUT can send a PDU SESSION RESOURCE SETUP REQUEST with at least one PDU session resource list to established PDU session." + Test objective "Verify that the IUT can send a PDU SESSION RESOURCE SETUP REQUEST with at least one PDU session resource list to established PDU session." Reference - "ETSI TS 138 413 [1], Clauses 8.2.1.2" + "ETSI TS 138 413 [1], Clauses 8.2.1.2 and 9.2.1.1" Config Id CFG_AMF_01 @@ -45,7 +45,7 @@ Package TP_AMF { the IUT entity indicate a PDU session management procedure } then { - the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Request_List containing @@ -62,10 +62,10 @@ Package TP_AMF { TP Id TP_NGAP_AMF_PDU_02 - Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_RELEASE_COMMAND to release PDU session." + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_RELEASE_COMMAND to release PDU session." Reference - "ETSI TS 138 413 [1], Clauses 8.2.1.2" + "ETSI TS 138 413 [1], Clauses 8.2.1.2 and 9.2.1.3" Config Id CFG_AMF_01 @@ -99,10 +99,10 @@ Package TP_AMF { TP Id TP_NGAP_AMF_PDU_03 - Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_REQUEST to modify PDU session." + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_REQUEST to modify PDU session." Reference - "ETSI TS 138 413 [1], Clauses 8.2.3.2" + "ETSI TS 138 413 [1], Clauses 8.2.3.2 and 9.2.1.5" Config Id CFG_AMF_01 @@ -143,10 +143,10 @@ Package TP_AMF { TP Id TP_NGAP_AMF_PDU_04 - Test objective "Verify that the AMF node successfully processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for successfully modified PDU session." + Test objective "Verify that the AMF node successfully processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for successfully modified PDU session." Reference - "ETSI TS 138 413 [1], Clause 8.2.5.2" + "ETSI TS 138 413 [1], Clauses 8.2.5.2 and 9.2.1.8" Config Id CFG_AMF_01 @@ -194,10 +194,10 @@ Package TP_AMF { TP Id TP_NGAP_AMF_PDU_05 - Test objective "Verify that the AMF node processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for not successfully modified PDU session." + Test objective "Verify that the AMF node processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for not successfully modified PDU session." Reference - "ETSI TS 138 413 [1], Clause 8.2.5.2" + "ETSI TS 138 413 [1], Clauses 8.2.5.2 and 9.2.1.8" Config Id CFG_AMF_01 -- GitLab From 0c501cb4f46ae24dbe64e669b38c8d18329017b7 Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 27 May 2024 14:43:44 +0200 Subject: [PATCH 220/365] Add skeletons for TC_NGAP_GNB_MMP_xx --- etc/AtsNGAP/AtsNGAP.cfg | 19 ++- ttcn/AtsNGAP/NGAP_Steps.ttcn | 7 + ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 69 +++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 220 +++++++++++++++++++++++++++++ 4 files changed, 314 insertions(+), 1 deletion(-) diff --git a/etc/AtsNGAP/AtsNGAP.cfg b/etc/AtsNGAP/AtsNGAP.cfg index e677b18..59f08e3 100644 --- a/etc/AtsNGAP/AtsNGAP.cfg +++ b/etc/AtsNGAP/AtsNGAP.cfg @@ -17,7 +17,7 @@ LogEventTypes:= Yes [TESTPORT_PARAMETERS] # In this section you can specify parameters that are passed to Test Ports. -system.N2_gNBaMF_P.params := "SCTP/ETH(mac_src=080027D2B658)/PCAP(file=test.pcap)" +system.N2_gNBaMF_P.params := "SCTP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=test.pcap)" [DEFINE] # In this section you can create macro definitions, @@ -66,6 +66,23 @@ NGAP_TestCases.TC_NGAP_gNB_or_aMF_testcaseName_01 # Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_INDICATION to request modification of established PDU session. #NGAP_TestCases.TC_NGAP_GNB_PDU_09 +# Verify that the IUT can send a HANDOVER REQUIRED message containing mandatory IEs. +#NGAP_TestCases.TC_NGAP_GNB_MMP_01 +# Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover. +#NGAP_TestCases.TC_NGAP_GNB_MMP_02 +# Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST FAILURE because the UE is not longer available. +#NGAP_TestCases.TC_NGAP_GNB_MMP_03 +# Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover. +#NGAP_TestCases.TC_NGAP_GNB_MMP_04 +# Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs within the Handover Request Transfer IEs and answers with correct HANDOVER REQUEST ACKNOWLEDGE. +#NGAP_TestCases.TC_NGAP_GNB_MMP_05 +# Verify that the GNB node successfully processes a HANDOVER REQUEST message for an intra-system handover and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover. +#NGAP_TestCases.TC_NGAP_GNB_MMP_06 +# Verify that the AMF node successfully sends a HANDOVER NOTIFICATION message that contains mandatory IEs to the AMF. +#NGAP_TestCases.TC_NGAP_GNB_MMP_07 +# Verify that the AMF node successfully sends a PATH SWITCH REQUEST message that contains mandatory IEs to the AMF. +#NGAP_TestCases.TC_NGAP_GNB_MMP_08 + # Verify that the GNB node successfully sends a NG SETUP REQEST message to the AMF. #NGAP_TestCases.TC_NGAP_GNB_IMP_01 # Verify that the IUT can send a RAN CONFIGURATION UPDATE message to the AMF. diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 0136c41..17538d1 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -190,6 +190,13 @@ module NGAP_Steps { //FIXME: Implementation of PDU session resource setup } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup(); + /** + * @desc + */ + function f_NGAP_amf_UE_MMP_Initiate_Handover() runs on NGAPComponent { + //FIXME: Implementation of Handover init + } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover(); + }//end group BehaviorFunctions } // End of module NGAP_Steps diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 144a141..4a40b1c 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -817,9 +817,78 @@ module NGAP_TCFunctions { group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ + + function f_TC_NGAP_GNB_MMP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_MMP_Initiate_Handover(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_HandoverRequired( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + PX_HANDOVER_TYPE, + -, + mw_targetID_targeteNB_ID, // ?? + { + *, + mw_pDUSessionResourceItemHORqd( + PX_PDU_SESSION_ID + ), // FSCOM To be refined + * + } + ))); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_MMP_01 + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ + + function f_TC_NGAP_GNB_MMP_02() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_02 + + function f_TC_NGAP_GNB_MMP_03() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_03 + + function f_TC_NGAP_GNB_MMP_04() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_04 + + function f_TC_NGAP_GNB_MMP_05() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_05 + + function f_TC_NGAP_GNB_MMP_06() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_06 + + function f_TC_NGAP_GNB_MMP_07() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_07 + + function f_TC_NGAP_GNB_MMP_08() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_08 + } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index a0d607f..0cd4d23 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -484,15 +484,235 @@ module NGAP_TestCases { group UE_Mobility_Management_Procedures{ //8.4.1 group Handover_Preparation{ + + /** + * @desc Verify that the IUT can send a HANDOVER REQUIRED message containing mandatory IEs. + */ + testcase TC_NGAP_GNB_MMP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_01 + } // End of group Handover_Preparation //8.4.2 group Handover_Resource_Allocation{ + + /** + * @desc Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover. + */ + testcase TC_NGAP_GNB_MMP_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_02 + + /** + * @desc Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST FAILURE because the UE is not longer available. + */ + testcase TC_NGAP_GNB_MMP_03() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_03 + + /** + * @desc Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover. + */ + testcase TC_NGAP_GNB_MMP_04() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_04 + + /** + * @desc Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs within the Handover Request Transfer IEs and answers with correct HANDOVER REQUEST ACKNOWLEDGE. + */ + testcase TC_NGAP_GNB_MMP_05() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_05 + + /** + * @desc Verify that the GNB node successfully processes a HANDOVER REQUEST message for an intra-system handover and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover. + */ + testcase TC_NGAP_GNB_MMP_06() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_06()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_06 + } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ + + /** + * @desc Verify that the AMF node successfully sends a HANDOVER NOTIFICATION message that contains mandatory IEs to the AMF. + */ + testcase TC_NGAP_GNB_MMP_07() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_07()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_07 + } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ + + /** + * @desc Verify that the AMF node successfully sends a PATH SWITCH REQUEST message that contains mandatory IEs to the AMF. + */ + testcase TC_NGAP_GNB_MMP_08() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_08()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_08 + } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ -- GitLab From 1986ad6a3ee9aadb52ac3e17af0e74ad0afe4cd9 Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 27 May 2024 16:20:36 +0200 Subject: [PATCH 221/365] Implement TC_NGAP_GNB_MMP_01/02 --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 9 +- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 87 +++++++++++++++- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 26 +++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 130 ++++++++++++++++++------ 4 files changed, 216 insertions(+), 36 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 17538d1..ba1fdbe 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -191,12 +191,19 @@ module NGAP_Steps { } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup(); /** - * @desc + * @desc The IUT entity indicate the initiation "of a Handover Required procedure" */ function f_NGAP_amf_UE_MMP_Initiate_Handover() runs on NGAPComponent { //FIXME: Implementation of Handover init } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover(); + /** + * @desc + */ + function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed() runs on NGAPComponent { + //FIXME: Implementation of Handover init + } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed(); + }//end group BehaviorFunctions } // End of module NGAP_Steps diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 4a40b1c..1a6d309 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -824,7 +824,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_MMP_Initiate_Handover(); + f_NGAP_amf_UE_MMP_Initiate_Handover_Completed(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -836,12 +836,12 @@ module NGAP_TCFunctions { PX_RAN_UE_NGAP_ID, PX_HANDOVER_TYPE, -, - mw_targetID_targeteNB_ID, // ?? + mw_targetID_targeteNB_ID, // FIXME FSCOM To be check { *, - mw_pDUSessionResourceItemHORqd( + mw_pDUSessionResourceItemHORqd( // TODO FSCOM Make the template more restrictive PX_PDU_SESSION_ID - ), // FSCOM To be refined + ), * } ))); @@ -862,6 +862,85 @@ module NGAP_TCFunctions { group UE_Context_Release_Request_NG_RAN_node_initiated{ function f_TC_NGAP_GNB_MMP_02() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_MMP_Initiate_Handover_Completed(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_HandoverRequest( + -, -, -, + m_uEAggregateMaximumBitRate, + m_uESecurityCapabilities, + m_securityContext, + { + m_pDUSessionResourceSetupItemHOReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) + m_gUAMI + ))); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_HandoverRequestAcknowledge( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { + *, + mw_pDUSessionResourceAdmittedItem( // TODO FSCOM Make the template more restrictive + PX_PDU_SESSION_ID + ), + * + } + ))); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_MMP_02 diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 9e76453..ca2a5b1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -340,6 +340,22 @@ module LibNGAP_Pixits { */ modulepar NRintegrityProtectionAlgorithms PX_NR_INTEGRITY_PROTECTION_ALGORITHMS; + /** + * @desc Each position in the bitmap represents an encryption algorithm + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.86 UE Security Capabilities + */ + modulepar EUTRAencryptionAlgorithms PX_EUTRA_ENCRYPTION_ALGORITHMS; + + /** + * @desc Each position in the bitmap represents an encryption algorithm + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.86 UE Security Capabilities + */ + modulepar EUTRAintegrityProtectionAlgorithms PX_EUTRA_INTEGRITY_PROTECTION_ALGORITHMS; + + modulepar NextHopChainingCount PX_NEXT_HOP_CHAINING_COUNT; + + modulepar SecurityKey PX_NEXT_HOP_NH; + /** * @desc Contains the DRB ID * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.53 DRB ID @@ -388,6 +404,16 @@ module LibNGAP_Pixits { */ modulepar NumberOfBroadcastsRequested PX_NUMBER_OF_BROADCASTS_REQUESTED := 4; + modulepar octetstring PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER; + + modulepar EPS_TAC PX_EPS_TAC := '0000'O; + + modulepar Bit20 PX_MACRO_NGENB_ID; + + modulepar Bit18 PX_SHORT_MACRO_NGENB_ID; + + modulepar Bit21 PX_LONG_MACRO_NGENB_ID; + /** * @desc eNB Identity. * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index b9405b1..bef5903 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2405,7 +2405,8 @@ module LibNGAP_Templates { in template (value) HandoverType p_handoverType := PX_HANDOVER_TYPE, in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), in template (value) TargetID p_targetID, - in template (value) PDUSessionResourceListHORqd p_pDUSessionResourceListHORqd + in template (value) PDUSessionResourceListHORqd p_pDUSessionResourceListHORqd, + in template (value) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer ) := { procedureCode := id_HandoverPreparation, criticality := reject, @@ -2460,7 +2461,8 @@ module LibNGAP_Templates { template (present) HandoverType p_handoverType := ?, template (present) Cause p_cause := ?, template (present) TargetID p_targetID := ?, - template (present) PDUSessionResourceListHORqd p_pDUSessionResourceListHORqd := ? + template (present) PDUSessionResourceListHORqd p_pDUSessionResourceListHORqd := ?, + template (present) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer := ? ) := { procedureCode := id_HandoverPreparation, criticality := reject, @@ -2496,6 +2498,11 @@ module LibNGAP_Templates { id := id_PDUSessionResourceListHORqd, criticality := reject, value_ := { PDUSessionResourceListHORqd := p_pDUSessionResourceListHORqd } + }, + { + id := id_SourceToTarget_TransparentContainer, + criticality := reject, + value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } } } } @@ -2688,7 +2695,10 @@ module LibNGAP_Templates { in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, in template (value) UESecurityCapabilities p_uESecurityCapabilities, in template (value) SecurityContext p_securityContext, - in template (value) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq + in template (value) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer, + in template (value) GUAMI p_gUAMI ) := { procedureCode := id_HandoverResourceAllocation, criticality := reject, @@ -2729,6 +2739,21 @@ module LibNGAP_Templates { id := id_PDUSessionResourceListHORqd, criticality := reject, value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_SourceToTarget_TransparentContainer, + criticality := reject, + value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } } } } @@ -2749,7 +2774,10 @@ module LibNGAP_Templates { template (present) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := ?, template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, template (present) SecurityContext p_securityContext := ?, - template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ? + template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ?, + template (present) AllowedNSSAI p_allowedNSSAI := ?, + template (present) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer := ?, + template (present) GUAMI p_gUAMI := ? ) := { procedureCode := id_HandoverResourceAllocation, criticality := reject, @@ -6431,6 +6459,26 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_allocationAndRetentionPriority + template (omit) AllowedNSSAI_Item m_allowedNSSAI_Item( + in template (value) S_NSSAI p_s_NSSAI, + in template (omit) AllowedNSSAI_Item.iE_Extensions p_iE_Extensions := omit + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template m_allowedNSSAI_Item + + template (omit) Allowed_PNI_NPN_Item m_allowed_PNI_NPN_Item( + in template (value) PLMNIdentity p_pLMNIdentity, + in template (value) Allowed_PNI_NPN_Item.pNI_NPN_restricted p_pNI_NPN_restricted := restricted, + in template (value) Allowed_CAG_List_per_PLMN p_allowed_CAG_List_per_PLMN, + in template (omit) Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := omit + ) := { + pLMNIdentity := p_pLMNIdentity, + pNI_NPN_restricted := p_pNI_NPN_restricted, + allowed_CAG_List_per_PLMN := p_allowed_CAG_List_per_PLMN, + iE_Extensions := p_iE_Extensions + } // End of template m_allowed_PNI_NPN_Item + template (value) AlternativeQoSParaSetIndex m_alternativeQoSParaSetIndex(in template (value) integer p_value := PX_ALTERNATIVE_QOS_PARA_SET_INDEX) := p_value; template (value) AlternativeQoSParaSetNotifyIndex m_alternativeQoSParaSetNotifyIndex(in template (value) integer p_value := PX_ALTERNATIVE_QOS_PARA_SET_NOTIFY_INDEX) := p_value; @@ -7682,10 +7730,10 @@ module LibNGAP_Templates { template (value) EndIndication m_endIndication(in EndIndication p_value := no_further_data) := p_value; template (omit) EPS_TAI m_ePS_TAI( - in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) EPS_TAC p_ePS_TAC, - in template (omit) EPS_TAI.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, + in template (value) EPS_TAC p_ePS_TAC := PX_EPS_TAC, + in template (omit) EPS_TAI.iE_Extensions p_iE_Extensions := omit + ) := { pLMNIdentity := p_pLMNIdentity, ePS_TAC := p_ePS_TAC, iE_Extensions := p_iE_Extensions @@ -10000,26 +10048,26 @@ module LibNGAP_Templates { } // End of template m_nGAPIESupportInformationResponseItem template (value) NgENB_ID m_ngENB_ID_macroNgENB_ID( - in template (value) NgENB_ID.macroNgENB_ID p_macroNgENB_ID - ) := { + in template (value) NgENB_ID.macroNgENB_ID p_macroNgENB_ID := PX_MACRO_NGENB_ID + ) := { macroNgENB_ID := p_macroNgENB_ID } // End of template m_ngENB_ID_macroNgENB_ID template (value) NgENB_ID m_ngENB_ID_shortMacroNgENB_ID( - in template (value) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID + in template (value) NgENB_ID.shortMacroNgENB_ID p_shortMacroNgENB_ID := PX_SHORT_MACRO_NGENB_ID ) := { shortMacroNgENB_ID := p_shortMacroNgENB_ID } // End of template m_ngENB_ID_shortMacroNgENB_ID template (value) NgENB_ID m_ngENB_ID_longMacroNgENB_ID( - in template (value) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID - ) := { + in template (value) NgENB_ID.longMacroNgENB_ID p_longMacroNgENB_ID := PX_LONG_MACRO_NGENB_ID + ) := { longMacroNgENB_ID := p_longMacroNgENB_ID } // End of template m_ngENB_ID_longMacroNgENB_ID template (value) NgENB_ID m_ngENB_ID_choice_Extensions( - in template (value) NgENB_ID.choice_Extensions p_choice_Extensions - ) := { + in template (value) NgENB_ID.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_ngENB_ID_choice_Extensions @@ -12376,8 +12424,8 @@ module LibNGAP_Templates { } // End of template m_secondaryRATDataUsageReportTransfer template (omit) SecurityContext m_securityContext( - in template (value) NextHopChainingCount p_nextHopChainingCount, - in template (value) SecurityKey p_nextHopNH, + in template (value) NextHopChainingCount p_nextHopChainingCount := PX_NEXT_HOP_CHAINING_COUNT, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, in template (omit) SecurityContext.iE_Extensions p_iE_Extensions := omit ) := { nextHopChainingCount := p_nextHopChainingCount, @@ -12918,26 +12966,26 @@ module LibNGAP_Templates { } // End of template m_targetHomeENB_ID template (value) TargetID m_targetID_targetRANNodeID( - in template (value) TargetRANNodeID p_targetRANNodeID - ) := { + in template (value) TargetRANNodeID p_targetRANNodeID + ) := { targetRANNodeID := p_targetRANNodeID } // End of template m_targetID_targetRANNodeID template (value) TargetID m_targetID_targeteNB_ID( - in template (value) TargeteNB_ID p_targeteNB_ID - ) := { + in template (value) TargeteNB_ID p_targeteNB_ID + ) := { targeteNB_ID := p_targeteNB_ID } // End of template m_targetID_targeteNB_ID template (value) TargetID m_targetID_choice_Extensions( - in template (value) TargetID.choice_Extensions p_choice_Extensions - ) := { + in template (value) TargetID.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_targetID_choice_Extensions template (value) TargetID.choice_Extensions m_targetID_id_TargetRNC_ID( - in template (value) TargetRNC_ID p_targetRNC_ID - ) := { + in template (value) TargetRNC_ID p_targetRNC_ID + ) := { id := id_TargetRNC_ID, criticality := reject, value_ := { TargetRNC_ID := p_targetRNC_ID } @@ -13269,8 +13317,8 @@ module LibNGAP_Templates { } // End of template m_tSCTrafficCharacteristics template (omit) UEAggregateMaximumBitRate m_uEAggregateMaximumBitRate( - in template (value) BitRate p_uEAggregateMaximumBitRateDL, - in template (value) BitRate p_uEAggregateMaximumBitRateUL, + in template (value) BitRate p_uEAggregateMaximumBitRateDL := PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_DL, + in template (value) BitRate p_uEAggregateMaximumBitRateUL := PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_UL, in template (omit) UEAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit ) := { uEAggregateMaximumBitRateDL := p_uEAggregateMaximumBitRateDL, @@ -13485,10 +13533,10 @@ module LibNGAP_Templates { } // End of template m_uERLFReportContainer_choice_Extensions template (omit) UESecurityCapabilities m_uESecurityCapabilities( - in template (value) NRencryptionAlgorithms p_nRencryptionAlgorithms, - in template (value) NRintegrityProtectionAlgorithms p_nRintegrityProtectionAlgorithms, - in template (value) EUTRAencryptionAlgorithms p_eUTRAencryptionAlgorithms, - in template (value) EUTRAintegrityProtectionAlgorithms p_eUTRAintegrityProtectionAlgorithms, + in template (value) NRencryptionAlgorithms p_nRencryptionAlgorithms := PX_NR_ENCRYPTION_ALGORITHMS, + in template (value) NRintegrityProtectionAlgorithms p_nRintegrityProtectionAlgorithms := PX_NR_INTEGRITY_PROTECTION_ALGORITHMS, + in template (value) EUTRAencryptionAlgorithms p_eUTRAencryptionAlgorithms := PX_EUTRA_ENCRYPTION_ALGORITHMS, + in template (value) EUTRAintegrityProtectionAlgorithms p_eUTRAintegrityProtectionAlgorithms := PX_EUTRA_INTEGRITY_PROTECTION_ALGORITHMS, in template (omit) UESecurityCapabilities.iE_Extensions p_iE_Extensions := omit ) := { nRencryptionAlgorithms := p_nRencryptionAlgorithms, @@ -14010,6 +14058,26 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_allocationAndRetentionPriority + template (present) AllowedNSSAI_Item mw_allowedNSSAI_Item( + template (present) S_NSSAI p_s_NSSAI := ?, + template AllowedNSSAI_Item.iE_Extensions p_iE_Extensions := * + ) := { + s_NSSAI := p_s_NSSAI, + iE_Extensions := p_iE_Extensions + } // End of template mw_allowedNSSAI_Item + + template (present) Allowed_PNI_NPN_Item mw_allowed_PNI_NPN_Item( + template (present) PLMNIdentity p_pLMNIdentity := ?, + template (present) Allowed_PNI_NPN_Item.pNI_NPN_restricted p_pNI_NPN_restricted := ?, + template (present) Allowed_CAG_List_per_PLMN p_allowed_CAG_List_per_PLMN := ?, + template Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := * + ) := { + pLMNIdentity := p_pLMNIdentity, + pNI_NPN_restricted := p_pNI_NPN_restricted, + allowed_CAG_List_per_PLMN := p_allowed_CAG_List_per_PLMN, + iE_Extensions := p_iE_Extensions + } // End of template mw_allowed_PNI_NPN_Item + template (present) AlternativeQoSParaSetIndex mw_alternativeQoSParaSetIndex(template (present) integer p_value := ?) := p_value; template (present) AlternativeQoSParaSetNotifyIndex mw_alternativeQoSParaSetNotifyIndex(template (present) integer p_value := ?) := p_value; -- GitLab From eb3b961a0c2b8a4f2c791e826f75e140577cf715 Mon Sep 17 00:00:00 2001 From: kretzschmann Date: Mon, 27 May 2024 14:29:32 +0000 Subject: [PATCH 222/365] fix copy paste error --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index ff72461..f4c9e28 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -2575,7 +2575,7 @@ Package TP_GNB { the IUT entity indicate the initiation "of a Uplink RAN Configuration Transfer" } then { - the IUT entity sends an NAS_NON_DELIVERY_INDICATION + the IUT entity sends an UPLINK_RAN_CONFIGURATION_TRANSFER to the AMF entity } } -- GitLab From 197f8dd8acb5cd99a147f73ef3b27b15ebc7fe34 Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 27 May 2024 16:40:41 +0200 Subject: [PATCH 223/365] Implement TC_NGAP_GNB_MMP_03 --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 36 ++++++++------ ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 76 +++++++++++++++++++++++++++++- 2 files changed, 95 insertions(+), 17 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index ba1fdbe..0bcf959 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -171,38 +171,44 @@ module NGAP_Steps { */ function f_NGAP_amf_UE_PDU_ResourceSetup() runs on NGAPComponent { //FIXME: Implementation of PDU session resource setup - } // End of function f_NGAP_amf_UE_PDU_ResourceSetup(); - - - /******************************************************************/ + } // End of function f_NGAP_amf_UE_PDU_ResourceSetup() /** * @desc */ - function f_NGAP_gnb_UE_Register() runs on NGAPComponent { - //FIXME: Implementation of UE registration - } // End of function f_NGAP_gnb_UE_Register() - - /** - * @desc - */ - function f_NGAP_gnb_UE_PDU_ResourceSetup() runs on NGAPComponent { + function f_NGAP_amf_UE_NoLongerAvailable() runs on NGAPComponent { //FIXME: Implementation of PDU session resource setup - } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup(); + } // End of function f_NGAP_amf_UE_NoLongerAvailable() /** * @desc The IUT entity indicate the initiation "of a Handover Required procedure" */ function f_NGAP_amf_UE_MMP_Initiate_Handover() runs on NGAPComponent { //FIXME: Implementation of Handover init - } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover(); + } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover() /** * @desc */ function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed() runs on NGAPComponent { //FIXME: Implementation of Handover init - } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed(); + } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed() + + /******************************************************************/ + + /** + * @desc + */ + function f_NGAP_gnb_UE_Register() runs on NGAPComponent { + //FIXME: Implementation of UE registration + } // End of function f_NGAP_gnb_UE_Register() + + /** + * @desc + */ + function f_NGAP_gnb_UE_PDU_ResourceSetup() runs on NGAPComponent { + //FIXME: Implementation of PDU session resource setup + } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup() }//end group BehaviorFunctions diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 1a6d309..ea263dc 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -844,7 +844,7 @@ module NGAP_TCFunctions { ), * } - ))); + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); @@ -931,7 +931,7 @@ module NGAP_TCFunctions { ), * } - ))); + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); @@ -945,6 +945,78 @@ module NGAP_TCFunctions { } // End of function f_TC_NGAP_GNB_MMP_02 function f_TC_NGAP_GNB_MMP_03() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_MMP_Initiate_Handover_Completed(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_NGAP_amf_UE_NoLongerAvailable(); + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_HandoverRequest( + -, -, -, + m_uEAggregateMaximumBitRate, + m_uESecurityCapabilities, + m_securityContext, + { + m_pDUSessionResourceSetupItemHOReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) + m_gUAMI + ))); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_HandoverFailure( + PX_AMF_UE_NGAP_ID + ))); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_MMP_03 -- GitLab From 82d9eb21747633a963dcd4e051d34355b7f90eef Mon Sep 17 00:00:00 2001 From: ldtke Date: Mon, 27 May 2024 17:22:28 +0200 Subject: [PATCH 224/365] add TCs for TP_NGAP_GNB_CMP_08 and TP_NGAP_GNB_CMP_09 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 83 ++++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 82 +++++++++++++++++++++++++++++ 2 files changed, 165 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index ea263dc..6679652 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1043,6 +1043,89 @@ module NGAP_TCFunctions { } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ + + /** + * @desc Testcase function for TP_NGAP_GNB_CMP_08 + */ + function f_TC_NGAP_GNB_CMP_08() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextReleaseCommand + ( + m_uE_NGAP_IDs_uE_NGAP_ID_pair + ( + m_uE_NGAP_ID_pair + ), + - + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContextReleaseComplete + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_08 + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_09 + */ + function f_TC_NGAP_GNB_CMP_09() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextReleaseCommand + ( + m_uE_NGAP_IDs_aMF_UE_NGAP_ID + ( + - + ), + - + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContextReleaseComplete + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_09 + } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 0cd4d23..8859cb3 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -445,12 +445,94 @@ module NGAP_TestCases { group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains optional PDU Session Resource Setup Request List field mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + */ + testcase TP_NGAP_GNB_CMP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + // v_ngap_amf.start(f_TC_NGAP_GNB_CMP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TP_NGAP_GNB_CMP_01 } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context."" + */ + testcase TP_NGAP_GNB_CMP_08() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_08()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TP_NGAP_GNB_CMP_08 + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND where only the AMF UE NGAP ID IE is available and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." + */ + testcase TP_NGAP_GNB_CMP_09() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_09()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TP_NGAP_GNB_CMP_09 + } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ -- GitLab From 80066fa061b6b458d594a8ff615f6816ebc93242 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Mon, 27 May 2024 17:34:28 +0200 Subject: [PATCH 225/365] add TCs for group CTP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 66 +++++++++++++++++++++++++++++- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 54 ++++++++++++++++++++++++ 2 files changed, 118 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 144a141..86741f7 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1168,9 +1168,72 @@ module NGAP_TCFunctions { group Configuration_Transfer_Procedures{ //8.8.1 group Uplink_RAN_Configuration_Transfer{ + + /** + * @desc Testcase function for TC_NGAP_gNB_CTP_01 + */ + function f_TC_NGAP_GNB_CTP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger Uplink_RAN_Configuration_Transfer!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UplinkRANConfigurationTransfer + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + } } // End of group Uplink_RAN_Configuration_Transfer //8.8.2 group Downlink_RAN_Configuration_Transfer{ + + /** + * @desc Testcase function for TC_NGAP_aMF_CTP_01 + */ + function f_TC_NGAP_AMF_CTP_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger Downlink_RAN_Configuration_Transfer!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_DownlinkRANConfigurationTransfer + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + } + } // End of group Downlink_RAN_Configuration_Transfer } // End of group Configuration_Transfer_Procedures //8.9 @@ -3160,5 +3223,4 @@ module NGAP_TCFunctions { } // End of group RIM_Information_Transfer_Procedures } // End of group aMF_Role -} // End of module NGAP_TCFunctions - +} // End of module NGAP_TCFunctions \ No newline at end of file diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index a0d607f..6b0d757 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -735,9 +735,63 @@ module NGAP_TestCases { group Configuration_Transfer_Procedures{ //8.8.1 group Uplink_RAN_Configuration_Transfer{ + + /** + * @desc Verify that the IUT can send an Uplink RAN Configuration Transfer message to transfer RAN configuration information to the AMF. + */ + testcase TC_NGAP_GNB_CTP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_7_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_7_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CTP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CTP_01 + } // End of group Uplink_RAN_Configuration_Transfer //8.8.2 group Downlink_RAN_Configuration_Transfer{ + + /** + * @desc Verify that the IUT can send an DOWNLINK RAN CONFIGURATION TRANSFER message to transfer RAN configuration information to the NG-RAN. + */ + testcase TC_NGAP_AMF_CTP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_7_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_7_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CTP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + } // End of testcase TC_NGAP_AMF_CTP_01 } // End of group Downlink_RAN_Configuration_Transfer } // End of group Configuration_Transfer_Procedures //8.9 -- GitLab From d547387892676748e07fe1b55b9caf02cae7592c Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Mon, 27 May 2024 17:53:24 +0200 Subject: [PATCH 226/365] remove uneccessary (optional) fields --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 496e639..f4b0081 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1950,15 +1950,7 @@ Package TP_AMF { the IUT entity indicate the initiation "of a Downlink RAN Configuration Transfer" } then { - the IUT entity sends an DOWNLINK_RAN_CONFIGURATION_TRANSFER containing - SON_Configuration_Transfer containing - Target_RAN_Node_ID containing - Global_RAN_Node_ID, - Selected_TAI;, - Source_RAN_Node_ID containing - Global_RAN_Node_ID, - Selected_TAI;, - SON_Information;; + the IUT entity sends an DOWNLINK_RAN_CONFIGURATION_TRANSFER to the GNB entity } } -- GitLab From ff3a397cc05e0c9e4a3775552513e16875bb3de0 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 09:27:14 +0200 Subject: [PATCH 227/365] Move TP functions f_TC_NGAP_GNB_MMP_0x into the correct group --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 329 +++++++++++++++--------- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 85 ++++++ 2 files changed, 289 insertions(+), 125 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 8426591..c742a64 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -817,6 +817,128 @@ module NGAP_TCFunctions { group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ + } // End of group Initial_Context_Setup + //8.3.2 + group UE_Context_Release_Request_NG_RAN_node_initiated{ + } // End of group UE_Context_Release_Request_NG_RAN_node_initiated + //8.3.3 + group UE_Context_Release_AMF_initiated{ + + /** + * @desc Testcase function for TP_NGAP_GNB_CMP_08 + */ + function f_TC_NGAP_GNB_CMP_08() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextReleaseCommand + ( + m_uE_NGAP_IDs_uE_NGAP_ID_pair + ( + m_uE_NGAP_ID_pair + ), + - + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContextReleaseComplete + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_08 + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_09 + */ + function f_TC_NGAP_GNB_CMP_09() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextReleaseCommand + ( + m_uE_NGAP_IDs_aMF_UE_NGAP_ID + ( + - + ), + - + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContextReleaseComplete + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_09 + + } // End of group UE_Context_Release_AMF_initiated + //8.3.4 + group UE_Context_Modification{ + } // End of group UE_Context_Modification + //8.3.5 + group RRC_Inactive_Transition_Report{ + } // End of group RRC_Inactive_Transition_Report + //8.3.6 + group Connection_Establishment_Indication{ + } // End of group Connection_Establishment_Indication + //8.3.7 + group AMF_CP_Relocation_Indication{ + } // End of group AMF_CP_Relocation_Indication + //8.3.8 + group RAN_CP_Relocation_Indication{ + } // End of group RAN_CP_Relocation_Indication + //8.3.9 + group Retrieve_UE_Information{ + } // End of group Retrieve_UE_Information + //8.3.10 + group UE_Information_Transfer{ + } // End of group UE_Information_Transfer + //8.3.11 + group UE_Context_Suspend{ + } // End of group UE_Context_Suspend + //8.3.12 + group UE_Context_Resume{ + } // End of group UE_Context_Resume + } // End of group UE_Context_Management_Procedures + //8.4 + group UE_Mobility_Management_Procedures{ + //8.4.1 + group Handover_Preparation{ function f_TC_NGAP_GNB_MMP_01() runs on aMFNGAPComponent { // Local variables @@ -857,9 +979,9 @@ module NGAP_TCFunctions { } // End of function f_TC_NGAP_GNB_MMP_01 - } // End of group Initial_Context_Setup - //8.3.2 - group UE_Context_Release_Request_NG_RAN_node_initiated{ + } // End of group Handover_Preparation + //8.4.2 + group Handover_Resource_Allocation{ function f_TC_NGAP_GNB_MMP_02() runs on aMFNGAPComponent { // Local variables @@ -1021,6 +1143,85 @@ module NGAP_TCFunctions { } // End of function f_TC_NGAP_GNB_MMP_03 function f_TC_NGAP_GNB_MMP_04() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_MMP_Initiate_Handover_Completed(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_HandoverRequest_full( + -, -, -, + m_uEAggregateMaximumBitRate, + m_uESecurityCapabilities, + m_securityContext, + { + m_pDUSessionResourceSetupItemHOReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) + m_gUAMI + ))); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_HandoverRequestAcknowledge( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { + *, + mw_pDUSessionResourceAdmittedItem( // TODO FSCOM Make the template more restrictive + PX_PDU_SESSION_ID + ), + * + } + ))); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_MMP_04 @@ -1040,128 +1241,6 @@ module NGAP_TCFunctions { } // End of function f_TC_NGAP_GNB_MMP_08 - } // End of group UE_Context_Release_Request_NG_RAN_node_initiated - //8.3.3 - group UE_Context_Release_AMF_initiated{ - - /** - * @desc Testcase function for TP_NGAP_GNB_CMP_08 - */ - function f_TC_NGAP_GNB_CMP_08() runs on aMFNGAPComponent { - - // Preamble - f_NGAP_amf_init(); - f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_PDU_ResourceSetup(); - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_UEContextReleaseCommand - ( - m_uE_NGAP_IDs_uE_NGAP_ID_pair - ( - m_uE_NGAP_ID_pair - ), - - - ))); - - - f_recv_NGAP_PDU( - mw_ngap_succMsg( - mw_n2_UEContextReleaseComplete - )); - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_GNB_CMP_08 - - /** - * @desc Testcase function for f_TC_NGAP_GNB_CMP_09 - */ - function f_TC_NGAP_GNB_CMP_09() runs on aMFNGAPComponent { - - // Preamble - f_NGAP_amf_init(); - f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_PDU_ResourceSetup(); - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_UEContextReleaseCommand - ( - m_uE_NGAP_IDs_aMF_UE_NGAP_ID - ( - - - ), - - - ))); - - - f_recv_NGAP_PDU( - mw_ngap_succMsg( - mw_n2_UEContextReleaseComplete - )); - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_GNB_CMP_09 - - } // End of group UE_Context_Release_AMF_initiated - //8.3.4 - group UE_Context_Modification{ - } // End of group UE_Context_Modification - //8.3.5 - group RRC_Inactive_Transition_Report{ - } // End of group RRC_Inactive_Transition_Report - //8.3.6 - group Connection_Establishment_Indication{ - } // End of group Connection_Establishment_Indication - //8.3.7 - group AMF_CP_Relocation_Indication{ - } // End of group AMF_CP_Relocation_Indication - //8.3.8 - group RAN_CP_Relocation_Indication{ - } // End of group RAN_CP_Relocation_Indication - //8.3.9 - group Retrieve_UE_Information{ - } // End of group Retrieve_UE_Information - //8.3.10 - group UE_Information_Transfer{ - } // End of group UE_Information_Transfer - //8.3.11 - group UE_Context_Suspend{ - } // End of group UE_Context_Suspend - //8.3.12 - group UE_Context_Resume{ - } // End of group UE_Context_Resume - } // End of group UE_Context_Management_Procedures - //8.4 - group UE_Mobility_Management_Procedures{ - //8.4.1 - group Handover_Preparation{ - } // End of group Handover_Preparation - //8.4.2 - group Handover_Resource_Allocation{ } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index bef5903..dd4cc25 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2760,6 +2760,91 @@ module LibNGAP_Templates { } } // End of template m_n2_HandoverRequest + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST + */ + template (value) InitiatingMessage m_n2_HandoverRequest_full( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) HandoverType p_handoverType := PX_HANDOVER_TYPE, + in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), + in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityContext p_securityContext, + in template (value) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer, + in template (value) GUAMI p_gUAMI + // { ID id-UEAggregateMaximumBitRate CRITICALITY reject TYPE UEAggregateMaximumBitRate PRESENCE mandatory }| + // { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| + // { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory }| + // { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory }| + // { ID id-NewSecurityContextInd CRITICALITY reject TYPE NewSecurityContextInd PRESENCE optional }| + // { ID id-NASC CRITICALITY reject TYPE NAS-PDU PRESENCE optional }| + // { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE mandatory }| + // { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }| + // { ID id-RRCInactiveTransitionReportRequest CRITICALITY ignore TYPE RRCInactiveTransitionReportRequest PRESENCE optional }| + + ) modifies m_n2_HandoverRequest := { + procedureCode := id_HandoverResourceAllocation, + criticality := reject, + value_ := { + HandoverRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityContext, + criticality := reject, + value_ := { SecurityContext := p_securityContext } + }, + { + id := id_PDUSessionResourceListHORqd, + criticality := reject, + value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_SourceToTarget_TransparentContainer, + criticality := reject, + value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + } + } + } + } + } // End of template m_n2_HandoverRequest + } // End of group Send group Receive { -- GitLab From 4c7513dc9c82f6de09d84ca331bc8a0c7dd593ac Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 09:48:52 +0200 Subject: [PATCH 228/365] Add m_n2_HandoverRequest_full template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 64 +++++++++++++++++-------- 1 file changed, 45 insertions(+), 19 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index dd4cc25..187f6bf 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2773,17 +2773,13 @@ module LibNGAP_Templates { in template (value) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq, in template (value) AllowedNSSAI p_allowedNSSAI, in template (value) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer, - in template (value) GUAMI p_gUAMI - // { ID id-UEAggregateMaximumBitRate CRITICALITY reject TYPE UEAggregateMaximumBitRate PRESENCE mandatory }| - // { ID id-CoreNetworkAssistanceInformationForInactive CRITICALITY ignore TYPE CoreNetworkAssistanceInformationForInactive PRESENCE optional }| - // { ID id-UESecurityCapabilities CRITICALITY reject TYPE UESecurityCapabilities PRESENCE mandatory }| - // { ID id-SecurityContext CRITICALITY reject TYPE SecurityContext PRESENCE mandatory }| - // { ID id-NewSecurityContextInd CRITICALITY reject TYPE NewSecurityContextInd PRESENCE optional }| - // { ID id-NASC CRITICALITY reject TYPE NAS-PDU PRESENCE optional }| - // { ID id-AllowedNSSAI CRITICALITY reject TYPE AllowedNSSAI PRESENCE mandatory }| - // { ID id-TraceActivation CRITICALITY ignore TYPE TraceActivation PRESENCE optional }| - // { ID id-RRCInactiveTransitionReportRequest CRITICALITY ignore TYPE RRCInactiveTransitionReportRequest PRESENCE optional }| - + in template (value) GUAMI p_gUAMI, + in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, + in template (value) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive, + in template (value) NewSecurityContextInd p_newSecurityContextInd, + in template (value) NAS_PDU p_nAS_PDU, + in template (value) TraceActivation p_traceActivation, + in template (value) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest ) modifies m_n2_HandoverRequest := { procedureCode := id_HandoverResourceAllocation, criticality := reject, @@ -2810,6 +2806,16 @@ module LibNGAP_Templates { criticality := reject, value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } }, + { + id := id_CoreNetworkAssistanceInformationForInactive, + criticality := ignore, + value_ := { CoreNetworkAssistanceInformationForInactive := p_coreNetworkAssistanceInformationForInactive } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, { id := id_UESecurityCapabilities, criticality := reject, @@ -2820,6 +2826,16 @@ module LibNGAP_Templates { criticality := reject, value_ := { SecurityContext := p_securityContext } }, + { + id := id_NewSecurityContextInd, + criticality := reject, + value_ := { NewSecurityContextInd := p_newSecurityContextInd } + }, + { + id := id_NASC, + criticality := reject, + value_ := { NAS_PDU := p_nAS_PDU } + }, { id := id_PDUSessionResourceListHORqd, criticality := reject, @@ -2830,11 +2846,21 @@ module LibNGAP_Templates { criticality := reject, value_ := { AllowedNSSAI := p_allowedNSSAI } }, + { + id := id_TraceActivation, + criticality := ignore, + value_ := { TraceActivation := p_traceActivation } + }, { id := id_SourceToTarget_TransparentContainer, criticality := reject, value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } }, + { + id := id_RRCInactiveTransitionReportRequest, + criticality := ignore, + value_ := { RRCInactiveTransitionReportRequest := p_rRCInactiveTransitionReportRequest } + }, { id := id_GUAMI, criticality := reject, @@ -13392,20 +13418,20 @@ module LibNGAP_Templates { } // End of template m_tSCAssistanceInformation_id_SurvivalTime template (omit) TSCTrafficCharacteristics m_tSCTrafficCharacteristics( - in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationDL := omit, - in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationUL := omit, - in template (omit) TSCTrafficCharacteristics.iE_Extensions p_iE_Extensions := omit - ) := { + in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationDL := omit, + in template (omit) TSCAssistanceInformation p_tSCAssistanceInformationUL := omit, + in template (omit) TSCTrafficCharacteristics.iE_Extensions p_iE_Extensions := omit + ) := { tSCAssistanceInformationDL := p_tSCAssistanceInformationDL, tSCAssistanceInformationUL := p_tSCAssistanceInformationUL, iE_Extensions := p_iE_Extensions } // End of template m_tSCTrafficCharacteristics template (omit) UEAggregateMaximumBitRate m_uEAggregateMaximumBitRate( - in template (value) BitRate p_uEAggregateMaximumBitRateDL := PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_DL, - in template (value) BitRate p_uEAggregateMaximumBitRateUL := PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_UL, - in template (omit) UEAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) BitRate p_uEAggregateMaximumBitRateDL := PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_DL, + in template (value) BitRate p_uEAggregateMaximumBitRateUL := PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_UL, + in template (omit) UEAggregateMaximumBitRate.iE_Extensions p_iE_Extensions := omit + ) := { uEAggregateMaximumBitRateDL := p_uEAggregateMaximumBitRateDL, uEAggregateMaximumBitRateUL := p_uEAggregateMaximumBitRateUL, iE_Extensions := p_iE_Extensions -- GitLab From a15474187b225c01036efe9692c9e04f55facae4 Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 28 May 2024 10:52:40 +0200 Subject: [PATCH 229/365] add TC and functions for TC_NGAP_GNB_CMP_01 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 93 +++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 14 ++-- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 12 +++- 3 files changed, 110 insertions(+), 9 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index c742a64..dae79da 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -817,6 +817,99 @@ module NGAP_TCFunctions { group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ + + /** + * @desc Testcase function for TP_NGAP_GNB_CMP_01 + */ + function f_TC_NGAP_GNB_CMP_01() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_InitialContextSetupRequest + ( + -, + -, + m_gUAMI, + { + { + PX_PDU_SESSION_ID, + omit, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))) + ), + omit + } + + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + m_uESecurityCapabilities, + - + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_InitialContextSetupResponse( + -, + -, + { + { + ?, + ?, + * + } + } + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_01 + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 46afe25..4f73305 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -449,7 +449,7 @@ module NGAP_TestCases { /** * @desc Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains optional PDU Session Resource Setup Request List field mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." */ - testcase TP_NGAP_GNB_CMP_01() runs on aMFNGAPComponent system TestAdapter { + testcase TC_NGAP_GNB_CMP_01() runs on aMFNGAPComponent system TestAdapter { // Local variables var aMFNGAPComponent v_ngap_amf; @@ -464,14 +464,14 @@ module NGAP_TestCases { f_cf_NGAP_aMF_Up(v_ngap_amf); // Start - // v_ngap_amf.start(f_TC_NGAP_GNB_CMP_01()); + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down/*gNBoraMF*/(); - } // End of testcase TP_NGAP_GNB_CMP_01 + } // End of testcase TC_NGAP_GNB_CMP_01 } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ @@ -482,7 +482,7 @@ module NGAP_TestCases { /** * @desc Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context."" */ - testcase TP_NGAP_GNB_CMP_08() runs on aMFNGAPComponent system TestAdapter { + testcase TC_NGAP_GNB_CMP_08() runs on aMFNGAPComponent system TestAdapter { // Local variables var aMFNGAPComponent v_ngap_amf; @@ -504,12 +504,12 @@ module NGAP_TestCases { f_cf_Down/*gNBoraMF*/(); - } // End of testcase TP_NGAP_GNB_CMP_08 + } // End of testcase TC_NGAP_GNB_CMP_08 /** * @desc Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND where only the AMF UE NGAP ID IE is available and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." */ - testcase TP_NGAP_GNB_CMP_09() runs on aMFNGAPComponent system TestAdapter { + testcase TC_NGAP_GNB_CMP_09() runs on aMFNGAPComponent system TestAdapter { // Local variables var aMFNGAPComponent v_ngap_amf; @@ -531,7 +531,7 @@ module NGAP_TestCases { f_cf_Down/*gNBoraMF*/(); - } // End of testcase TP_NGAP_GNB_CMP_09 + } // End of testcase TC_NGAP_GNB_CMP_09 } // End of group UE_Context_Release_AMF_initiated //8.3.4 diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 187f6bf..49ac4c7 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -841,7 +841,11 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_InitialContextSetupRequest( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq + in template (value) GUAMI p_gUAMI, + in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH ) := { procedureCode := id_InitialContextSetup, criticality := reject, @@ -878,7 +882,11 @@ module LibNGAP_Templates { template (present) InitiatingMessage mw_n2_InitialContextSetupRequest( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - template (present) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq := ? + template (present) GUAMI p_gUAMI := ?, + template (present) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq := ?, + template (present) AllowedNSSAI p_allowedNSSAI := ?, + template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, + template (present) SecurityKey p_nextHopNH := ? ) := { procedureCode := id_InitialContextSetup, criticality := reject, -- GitLab From 4805373f2e85d3d199b04d43a4e1eeb6f620f177 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 28 May 2024 11:14:44 +0200 Subject: [PATCH 230/365] added tc in f_TC_NGAP_GNB_PDU_10 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 78 ++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index c742a64..44f7965 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -712,6 +712,84 @@ module NGAP_TCFunctions { } // End of function f_TC_NGAP_gNB_PDU_07 + /** + * @desc Testcase function for TC_NGAP_gNB_PDU_10 + */ + function f_TC_NGAP_GNB_PDU_10() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PDUSessionResourceModify( + -, + -, + { + m_pDUSessionResourceModifyItemModReq( + PX_PDU_SESSION_ID, + '00'O,//bit2oct( + // encvalue( + // m_pDUSessionResourceModifyRequestTransfer(//FIXME when template with mandatory IEs available + // -//in template (omit) PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs + // ) + // ) + //), + -,//in template (omit) NAS_PDU p_nAS_PDU := omit, + -//in template (omit) PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := omit + ), + m_pDUSessionResourceModifyItemModReq( + PX_PDU_SESSION_ID, + '00'O,//bit2oct( + // encvalue( + // m_pDUSessionResourceModifyRequestTransfer(//FIXME when template with mandatory IEs available + // -//in template (omit) PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs + // ) + // ) + //), + -,//in template (omit) NAS_PDU p_nAS_PDU := omit, + -//in template (omit) PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := omit + ) + } + ))); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PDUSessionResourceModifyResponseFailedToMod( + -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + { + mw_pDUSessionResourceFailedToModifyItemModRes( + PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, + ?,//FIXME:Decode&Match//mw_pDUSessionResourceModifyUnsuccessfulTransfer( + // ?,//template (present) Cause p_cause := ?, + // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, + // *//template PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + //), + * + ) + } + ) + + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_PDU_10 + } // End of group PDU_Session_Resource_Modify //8.2.4 group PDU_Session_Resource_Notify{ -- GitLab From a90556f2fc5a6750a8f076d689114deafa72fcb8 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 28 May 2024 11:15:05 +0200 Subject: [PATCH 231/365] added tc in f_TC_NGAP_GNB_PDU_10 --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 46afe25..f3526e5 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -375,6 +375,33 @@ module NGAP_TestCases { } // End of testcase TC_NGAP_GNB_PDU_07 + /** + * @desc Test objective "Verify that the NG-RAN node reports the modification of the corresponding PDU session as failed if a PDU SESSION RESOURCE MODIFY REQUEST contains several PDU Session ID IEs set to the same value." + */ + testcase TC_NGAP_GNB_PDU_10() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_1_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_1_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_PDU_10()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_PDU_10 + } // End of group PDU_Session_Resource_Modify -- GitLab From 3c9865a933870fa184a034c1d05b856be71514c5 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 28 May 2024 11:15:51 +0200 Subject: [PATCH 232/365] added template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 32 +++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 187f6bf..966e037 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -576,6 +576,38 @@ module LibNGAP_Templates { } } // End of template mw_n2_PDUSessionResourceModifyResponse + template (present) SuccessfulOutcome mw_n2_PDUSessionResourceModifyResponseFailedToMod( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceFailedToModifyListModRes p_pDUSessionResourceFailedToModifyListModRes := ? + ) := { + + procedureCode := id_PDUSessionResourceModify, + criticality := reject, + value_ := { + PDUSessionResourceModifyResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceFailedToModifyListModRes, + criticality := reject, + value_ := { PDUSessionResourceFailedToModifyListModRes := p_pDUSessionResourceFailedToModifyListModRes + } + } + } + } + } + } // End of template mw_n2_PDUSessionResourceModifyResponse + } // End of group Receive } // End of group PDU_SESSION_RESOURCE_MODIFY_RESPONSE -- GitLab From 3913ead4603a2f9456281179f3071473258eef38 Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 28 May 2024 11:42:17 +0200 Subject: [PATCH 233/365] add TC and functions for TC_NGAP_GNB_CMP_02 and 03 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 150 ++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 54 +++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 37 ++++++ 3 files changed, 241 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 7c6130c..b005fdb 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -987,6 +987,156 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_CMP_01 + + /** + * @desc Testcase function for TP_NGAP_GNB_CMP_02 + */ + function f_TC_NGAP_GNB_CMP_02() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_InitialContextSetupRequest + ( + -, + -, + m_gUAMI, + omit, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + m_uESecurityCapabilities, + - + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_InitialContextSetupResponse( + -, + -, + omit + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_02 + + /** + * @desc Testcase function for TP_NGAP_GNB_CMP_03 + */ + function f_TC_NGAP_GNB_CMP_03() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_InitialContextSetupRequest_optionals + ( + -, + -, + m_gUAMI, + { + { + PX_PDU_SESSION_ID, + omit, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))) + ), + omit + } + + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + m_uESecurityCapabilities, + -, + m_traceActivation( + '0000000000000001'O,//in template (value) NGRANTraceID p_nGRANTraceID, + '00000000'B,//in template (value) InterfacesToTrace p_interfacesToTrace, + m_traceDepth(minimum), + PX_TRANSPORT_LAYER_ADDRESS, + omit//in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit + ) + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_InitialContextSetupResponse( + -, + -, + { + { + ?, + ?, + * + } + } + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_03 } // End of group Initial_Context_Setup //8.3.2 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 8aeb8b8..7905dcd 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -499,6 +499,60 @@ module NGAP_TestCases { f_cf_Down/*gNBoraMF*/(); } // End of testcase TC_NGAP_GNB_CMP_01 + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + */ + testcase TC_NGAP_GNB_CMP_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_02 + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Trace Activation and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + */ + testcase TC_NGAP_GNB_CMP_03() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_03 } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 20aaca2..c550c5b 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -903,6 +903,43 @@ module LibNGAP_Templates { } } } // End of template m_n2_InitialContextSetupRequest + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST + */ + template (value) InitiatingMessage m_n2_InitialContextSetupRequest_optionals( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) GUAMI p_gUAMI, + in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, + in template (value) TraceActivation p_traceActivation := omit + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + InitialContextSetupRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSetupListCxtReq, + criticality := reject, + value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + } + } + } + } } // End of group Send -- GitLab From f35c7de24918f7dbe4a8588fd9d16320c5d55037 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 12:00:22 +0200 Subject: [PATCH 234/365] Implement TC_NGAP_GNB_MMP_07 --- etc/AtsNGAP/AtsNGAP.cfg | 6 + ttcn/AtsNGAP/NGAP_Steps.ttcn | 8 + ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 231 +++++++++++++++++++++++- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 84 +++++++++ ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 16 ++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 196 ++++++++++++++------ 6 files changed, 481 insertions(+), 60 deletions(-) diff --git a/etc/AtsNGAP/AtsNGAP.cfg b/etc/AtsNGAP/AtsNGAP.cfg index 59f08e3..74e3183 100644 --- a/etc/AtsNGAP/AtsNGAP.cfg +++ b/etc/AtsNGAP/AtsNGAP.cfg @@ -82,6 +82,12 @@ NGAP_TestCases.TC_NGAP_gNB_or_aMF_testcaseName_01 #NGAP_TestCases.TC_NGAP_GNB_MMP_07 # Verify that the AMF node successfully sends a PATH SWITCH REQUEST message that contains mandatory IEs to the AMF. #NGAP_TestCases.TC_NGAP_GNB_MMP_08 +# Verify that the GNB node successfully sends a HANDOVER CANCEL message that contains mandatory IEs to the AMF. +#NGAP_TestCases.TC_NGAP_GNB_MMP_09 +# Verify that the NG-RAN node successfully send a UPLINK RAN STATUS TRANSFER message to the AMF. +#NGAP_TestCases.TC_NGAP_GNB_MMP_10 +# Verify that the NG-RAN node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message to the AMF. +#NGAP_TestCases.TC_NGAP_GNB_MMP_11 # Verify that the GNB node successfully sends a NG SETUP REQEST message to the AMF. #NGAP_TestCases.TC_NGAP_GNB_IMP_01 diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 0bcf959..607f27f 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -194,6 +194,14 @@ module NGAP_Steps { //FIXME: Implementation of Handover init } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed() + /** + * @desc + */ + function f_NGAP_amf_UE_MMP_Handover_Completed() runs on NGAPComponent { + //FIXME: Implementation of Handover init + } // End of function f_NGAP_amf_UE_MMP_Handover_Completed() + + /******************************************************************/ /** diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index b005fdb..15bbbef 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1518,7 +1518,38 @@ module NGAP_TCFunctions { ) }, PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) - m_gUAMI + m_gUAMI, + m_coreNetworkAssistanceInformationForInactive( + m_uEIdentityIndexValue_indexLength10(PX_UE_IDENTITY_INDEX_VALUE), + -, + { + m_tAIListForInactiveItem( + m_tAI + ) + } + ), + m_newSecurityContextInd, + ''O, // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???)) + m_traceActivation( + -, -, + m_traceDepth + ), + m_rRCInactiveTransitionReportRequest, + m_redirectionVoiceFallback, + m_cNAssistedRANTuning, + m_sRVCCOperationPossible, + m_enhanced_CoverageRestriction, + m_uE_DifferentiationInfo, + m_nRV2XServicesAuthorized, + m_lTEV2XServicesAuthorized, + m_nRUESidelinkAggregateMaximumBitrate, + m_lTEUESidelinkAggregateMaximumBitrate, + m_pC5QoSParameters( + { m_pC5QoSFlowItem } + ), + m_cEmodeBrestricted, + m_uE_UP_CIoT_Support, + { PX_PLMN_IDENTITY } ))); f_recv_NGAP_PDU( @@ -1547,36 +1578,224 @@ module NGAP_TCFunctions { } // End of function f_TC_NGAP_GNB_MMP_04 function f_TC_NGAP_GNB_MMP_05() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_MMP_Initiate_Handover_Completed(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_NGAP_amf_UE_NoLongerAvailable(); + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_HandoverRequest( + -, -, -, + m_uEAggregateMaximumBitRate, + m_uESecurityCapabilities, + m_securityContext, + { + m_pDUSessionResourceSetupItemHOReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) + m_gUAMI + ))); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_HandoverFailure( + PX_AMF_UE_NGAP_ID + ))); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_MMP_05 function f_TC_NGAP_GNB_MMP_06() runs on aMFNGAPComponent { + // Local variables - } // End of function f_TC_NGAP_GNB_MMP_06 + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_MMP_Initiate_Handover_Completed(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - function f_TC_NGAP_GNB_MMP_07() runs on aMFNGAPComponent { + // Body + f_NGAP_amf_UE_NoLongerAvailable(); + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_HandoverRequest( + -, -, -, + m_uEAggregateMaximumBitRate, + m_uESecurityCapabilities, + m_securityContext, + { + m_pDUSessionResourceSetupItemHOReq( + -, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))))) + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) + m_gUAMI + ))); - } // End of function f_TC_NGAP_GNB_MMP_07 + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_HandoverFailure( + PX_AMF_UE_NGAP_ID + ))); - function f_TC_NGAP_GNB_MMP_08() runs on aMFNGAPComponent { - } // End of function f_TC_NGAP_GNB_MMP_08 + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_MMP_06 } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ + + function f_TC_NGAP_GNB_MMP_07() runs on aMFNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_NGAP_amf_UE_MMP_Handover_Completed() + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_HandoverNotify( + -, + -, + ? + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_MMP_07 + } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ + + function f_TC_NGAP_GNB_MMP_08() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_08 + } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ + + function f_TC_NGAP_GNB_MMP_09() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_09 + } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ + + function f_TC_NGAP_GNB_MMP_10() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_10 + } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ + + function f_TC_NGAP_GNB_MMP_11() runs on aMFNGAPComponent { + + } // End of function f_TC_NGAP_GNB_MMP_11 + } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 7905dcd..d085db7 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -879,9 +879,65 @@ module NGAP_TestCases { } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ + + /** + * @desc Verify that the NG-RAN node successfully send a UPLINK RAN STATUS TRANSFER message to the AMF. + */ + testcase TC_NGAP_GNB_MMP_09() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_09()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_09 + } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ + + /** + * @desc Verify that the NG-RAN node successfully send a UPLINK RAN STATUS TRANSFER message to the AMF. + */ + testcase TC_NGAP_GNB_MMP_10() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_6)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_6' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_10()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_10 + } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ @@ -891,6 +947,34 @@ module NGAP_TestCases { } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ + + /** + * @desc Verify that the NG-RAN node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message to the AMF. + */ + testcase TC_NGAP_GNB_MMP_11() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_3_9)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_3_9' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_MMP_11()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_MMP_11 + } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index ca2a5b1..22ca5e3 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -414,6 +414,22 @@ module LibNGAP_Pixits { modulepar Bit21 PX_LONG_MACRO_NGENB_ID; + modulepar Bit10 PX_UE_IDENTITY_INDEX_VALUE; + + modulepar PeriodicRegistrationUpdateTimer PX_PERIODIC_REGISTRATION_UPDATE_TIMER; + + modulepar NGRANTraceID PX_NGRAN_TRACE_ID; + + modulepar InterfacesToTrace PX_INTERFACES_TO_TRACE; + + modulepar UERadioCapabilityID PX_U_E_RADIO_CAPABILITY_ID; + + modulepar Extended_ConnectedTime PX_EXTENDED_CONNECTED_TIME; + + modulepar BitRate PX_UE_SIDELINK_AGGREGATE_MAXIMUM_BIT_RATE; + + modulepar FiveQI PX_FIVE_QI; + /** * @desc eNB Identity. * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index c550c5b..de41d79 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2831,6 +2831,81 @@ module LibNGAP_Templates { id := id_GUAMI, criticality := reject, value_ := { GUAMI := p_gUAMI } + }, + { + id := id_RedirectionVoiceFallback, + criticality := ignore, + value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } + }, + { + id := id_CNAssistedRANTuning, + criticality := ignore, + value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } + }, + { + id := id_SRVCCOperationPossible, + criticality := ignore, + value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } + }, + { + id := id_Enhanced_CoverageRestriction, + criticality := ignore, + value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } + }, + { + id := id_UE_DifferentiationInfo, + criticality := ignore, + value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } + }, + { + id := id_NRV2XServicesAuthorized, + criticality := ignore, + value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } + }, + { + id := id_LTEV2XServicesAuthorized, + criticality := ignore, + value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } + }, + { + id := id_NRUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } + }, + { + id := id_LTEUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } + }, + { + id := id_PC5QoSParameters, + criticality := ignore, + value_ := { PC5QoSParameters := p_pC5QoSParameters } + }, + { + id := id_CEmodeBrestricted, + criticality := ignore, + value_ := { CEmodeBrestricted := p_cEmodeBrestricted } + }, + { + id := id_UE_UP_CIoT_Support, + criticality := ignore, + value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } + }, + { + id := id_ManagementBasedMDTPLMNList, + criticality := ignore, + value_ := { MDTPLMNList := p_mDTPLMNList } + }, + { + id := id_UERadioCapabilityID, + criticality := ignore, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_Extended_ConnectedTime, + criticality := ignore, + value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } } } } @@ -2851,12 +2926,26 @@ module LibNGAP_Templates { in template (value) AllowedNSSAI p_allowedNSSAI, in template (value) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer, in template (value) GUAMI p_gUAMI, - in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, - in template (value) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive, - in template (value) NewSecurityContextInd p_newSecurityContextInd, - in template (value) NAS_PDU p_nAS_PDU, - in template (value) TraceActivation p_traceActivation, - in template (value) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest + in template (value) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive, + in template (value) NewSecurityContextInd p_newSecurityContextInd, + in template (value) NAS_PDU p_nAS_PDU, + in template (value) TraceActivation p_traceActivation, + in template (value) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest, + in template (value) RedirectionVoiceFallback p_redirectionVoiceFallback, + in template (value) CNAssistedRANTuning p_cNAssistedRANTuning, + in template (value) SRVCCOperationPossible p_sRVCCOperationPossible, + in template (value) Enhanced_CoverageRestriction p_enhanced_CoverageRestriction, + in template (value) UE_DifferentiationInfo p_uE_DifferentiationInfo, + in template (value) NRV2XServicesAuthorized p_nRV2XServicesAuthorized, + in template (value) LTEV2XServicesAuthorized p_lTEV2XServicesAuthorized, + in template (value) NRUESidelinkAggregateMaximumBitrate p_nRUESidelinkAggregateMaximumBitrate, + in template (value) LTEUESidelinkAggregateMaximumBitrate p_lTEUESidelinkAggregateMaximumBitrate, + in template (value) PC5QoSParameters p_pC5QoSParameters, + in template (value) CEmodeBrestricted p_cEmodeBrestricted, + in template (value) UE_UP_CIoT_Support p_uE_UP_CIoT_Support, + in template (value) MDTPLMNList p_mDTPLMNList, + in template (value) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, + in template (value) Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME ) modifies m_n2_HandoverRequest := { procedureCode := id_HandoverResourceAllocation, criticality := reject, @@ -6376,10 +6465,10 @@ module LibNGAP_Templates { in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) NGRANTraceID p_NGRANTraceID, - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (value) TransportLayerAddress p_tla, - in template (value) PrivacyIndicator p_privacyInd, - in template (value) URI_address p_uRI_address + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) TransportLayerAddress p_tla, + in template (value) PrivacyIndicator p_privacyInd, + in template (value) URI_address p_uRI_address ) := { procedureCode := id_CellTrafficTrace, criticality := ignore, @@ -6448,10 +6537,10 @@ module LibNGAP_Templates { template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) NGRANTraceID p_NGRANTraceID := ?, - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template (present) TransportLayerAddress p_tla := ?, - template (present) PrivacyIndicator p_privacyInd := ?, - template (present) URI_address p_uRI_address := ? + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) TransportLayerAddress p_tla := ?, + template (present) PrivacyIndicator p_privacyInd := ?, + template (present) URI_address p_uRI_address := ? ) := { procedureCode := id_CellTrafficTrace, criticality := ignore, @@ -6651,7 +6740,7 @@ module LibNGAP_Templates { in template (value) S_NSSAI p_s_NSSAI, in template (omit) AllowedNSSAI_Item.iE_Extensions p_iE_Extensions := omit ) := { - s_NSSAI := p_s_NSSAI, + s_NSSAI := p_s_NSSAI, iE_Extensions := p_iE_Extensions } // End of template m_allowedNSSAI_Item @@ -6659,7 +6748,7 @@ module LibNGAP_Templates { in template (value) PLMNIdentity p_pLMNIdentity, in template (value) Allowed_PNI_NPN_Item.pNI_NPN_restricted p_pNI_NPN_restricted := restricted, in template (value) Allowed_CAG_List_per_PLMN p_allowed_CAG_List_per_PLMN, - in template (omit) Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := omit + in template (omit) Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, pNI_NPN_restricted := p_pNI_NPN_restricted, @@ -7407,14 +7496,14 @@ module LibNGAP_Templates { template (value) ConfiguredTACIndication m_configuredTACIndication(in ConfiguredTACIndication p_value := true_) := p_value; template (omit) CoreNetworkAssistanceInformationForInactive m_coreNetworkAssistanceInformationForInactive( - in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, - in template (value) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer, - in template (value) TAIListForInactive p_tAIListForInactive, - in template (omit) PagingDRX p_uESpecificDRX := omit, - in template (omit) MICOModeIndication p_mICOModeIndication := omit, - in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, - in template (omit) CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, + in template (value) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := PX_PERIODIC_REGISTRATION_UPDATE_TIMER, + in template (value) TAIListForInactive p_tAIListForInactive, + in template (omit) PagingDRX p_uESpecificDRX := omit, + in template (omit) MICOModeIndication p_mICOModeIndication := omit, + in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, + in template (omit) CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := omit + ) := { uEIdentityIndexValue := p_uEIdentityIndexValue, uESpecificDRX := p_uESpecificDRX, periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, @@ -9376,7 +9465,7 @@ module LibNGAP_Templates { } // End of template m_lTEV2XServicesAuthorized template (omit) LTEUESidelinkAggregateMaximumBitrate m_lTEUESidelinkAggregateMaximumBitrate( - in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate := PX_UE_SIDELINK_AGGREGATE_MAXIMUM_BIT_RATE, in template (omit) LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit ) := { uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, @@ -10436,11 +10525,10 @@ module LibNGAP_Templates { } // End of template m_nRFrequencyInfo template (omit) NRV2XServicesAuthorized m_nRV2XServicesAuthorized( - in template (omit) VehicleUE p_vehicleUE := omit, - in template (omit) PedestrianUE p_pedestrianUE := omit, - in template (omit) NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit - - ) := { + in template (omit) VehicleUE p_vehicleUE := omit, + in template (omit) PedestrianUE p_pedestrianUE := omit, + in template (omit) NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit + ) := { vehicleUE := p_vehicleUE, pedestrianUE := p_pedestrianUE, iE_Extensions := p_iE_Extensions @@ -10451,9 +10539,9 @@ module LibNGAP_Templates { template (value) PedestrianUE m_pedestrianUE(in PedestrianUE p_value := authorized) := p_value; template (omit) NRUESidelinkAggregateMaximumBitrate m_nRUESidelinkAggregateMaximumBitrate( - in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, - in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate := PX_UE_SIDELINK_AGGREGATE_MAXIMUM_BIT_RATE, + in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit + ) := { uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, iE_Extensions := p_iE_Extensions } // End of template m_nRUESidelinkAggregateMaximumBitrate @@ -10691,7 +10779,7 @@ module LibNGAP_Templates { } // End of template m_pC5QoSParameters template (omit) PC5QoSFlowItem m_pC5QoSFlowItem( - in template (value) FiveQI p_pQI, + in template (value) FiveQI p_pQI := PX_FIVE_QI, in template (omit) PC5FlowBitRates p_pc5FlowBitRates := omit, in template (omit) Range p_range := omit, in template (omit) PC5QoSFlowItem.iE_Extensions p_iE_Extensions := omit @@ -13375,8 +13463,8 @@ module LibNGAP_Templates { } // End of template m_tooearlyIntersystemHO template (omit) TraceActivation m_traceActivation( - in template (value) NGRANTraceID p_nGRANTraceID, - in template (value) InterfacesToTrace p_interfacesToTrace, + in template (value) NGRANTraceID p_nGRANTraceID := PX_NGRAN_TRACE_ID, + in template (value) InterfacesToTrace p_interfacesToTrace := PX_INTERFACES_TO_TRACE, in template (value) TraceDepth p_traceDepth, in template (value) TransportLayerAddress p_traceCollectionEntityIPAddress := PX_TRANSPORT_LAYER_ADDRESS, in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit @@ -13605,8 +13693,8 @@ module LibNGAP_Templates { } // End of template m_uE_DifferentiationInfo template (value) UEHistoryInformationFromTheUE m_uEHistoryInformationFromTheUE_nR( - in template (value) NRMobilityHistoryReport p_nR - ) := { + in template (value) NRMobilityHistoryReport p_nR + ) := { nR := p_nR } // End of template m_uEHistoryInformationFromTheUE_nR @@ -13617,14 +13705,14 @@ module LibNGAP_Templates { } // End of template m_uEHistoryInformationFromTheUE_choice_Extensions template (value) UEIdentityIndexValue m_uEIdentityIndexValue_indexLength10( - in template (value) UEIdentityIndexValue.indexLength10 p_indexLength10 - ) := { + in template (value) UEIdentityIndexValue.indexLength10 p_indexLength10 + ) := { indexLength10 := p_indexLength10 } // End of template m_uEIdentityIndexValue_indexLength10 template (value) UEIdentityIndexValue m_uEIdentityIndexValue_choice_Extensions( - in template (value) UEIdentityIndexValue.choice_Extensions p_choice_Extensions - ) := { + in template (value) UEIdentityIndexValue.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_uEIdentityIndexValue_choice_Extensions @@ -14250,7 +14338,7 @@ module LibNGAP_Templates { template (present) S_NSSAI p_s_NSSAI := ?, template AllowedNSSAI_Item.iE_Extensions p_iE_Extensions := * ) := { - s_NSSAI := p_s_NSSAI, + s_NSSAI := p_s_NSSAI, iE_Extensions := p_iE_Extensions } // End of template mw_allowedNSSAI_Item @@ -17987,20 +18075,20 @@ module LibNGAP_Templates { } // End of template mw_nRFrequencyBandItem template (present) NRFrequencyInfo mw_nRFrequencyInfo( - template (present) NRARFCN p_nrARFCN := ?, - template (present) NRFrequencyBand_List p_frequencyBand_List, - template NRFrequencyInfo.iE_Extension p_iE_Extension := * - ) := { + template (present) NRARFCN p_nrARFCN := ?, + template (present) NRFrequencyBand_List p_frequencyBand_List, + template NRFrequencyInfo.iE_Extension p_iE_Extension := * + ) := { nrARFCN := p_nrARFCN, frequencyBand_List := p_frequencyBand_List, iE_Extension := p_iE_Extension } // End of template mw_nRFrequencyInfo template (present) NRV2XServicesAuthorized mw_nRV2XServicesAuthorized( - template VehicleUE p_vehicleUE := *, - template PedestrianUE p_pedestrianUE := *, - template NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * - ) := { + template VehicleUE p_vehicleUE := *, + template PedestrianUE p_pedestrianUE := *, + template NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * + ) := { vehicleUE := p_vehicleUE, pedestrianUE := p_pedestrianUE, iE_Extensions := p_iE_Extensions @@ -18011,9 +18099,9 @@ module LibNGAP_Templates { template (present) PedestrianUE mw_pedestrianUE(template (present) PedestrianUE p_value := ?) := p_value; template (present) NRUESidelinkAggregateMaximumBitrate mw_nRUESidelinkAggregateMaximumBitrate( - template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, - template NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * - ) := { + template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, + template NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * + ) := { uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, iE_Extensions := p_iE_Extensions } // End of template mw_nRUESidelinkAggregateMaximumBitrate -- GitLab From 412d88efafca2a20f60e89360f58981cec52d56f Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 12:33:14 +0200 Subject: [PATCH 235/365] Fix invalid template restriction --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 8 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 206 +++++++++++++++--------- 2 files changed, 132 insertions(+), 82 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 15bbbef..0553526 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1004,12 +1004,11 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_InitialContextSetupRequest + m_n2_InitialContextSetupRequest_noPDUSessionResourceSetupListCxtReq ( -, -, m_gUAMI, - omit, { m_allowedNSSAI_Item( m_s_NSSAI('00'O, '000000'O) @@ -1022,10 +1021,9 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( - mw_n2_InitialContextSetupResponse( - -, + mw_n2_InitialContextSetupResponse_noPDUSessionResourceSetupListSURes( -, - omit + - ) )); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index de41d79..66cd498 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -904,6 +904,34 @@ module LibNGAP_Templates { } } // End of template m_n2_InitialContextSetupRequest + template (value) InitiatingMessage m_n2_InitialContextSetupRequest_noPDUSessionResourceSetupListCxtReq( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) GUAMI p_gUAMI, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + InitialContextSetupRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_InitialContextSetupRequest_noPDUSessionResourceSetupListCxtReq + /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST */ @@ -915,7 +943,7 @@ module LibNGAP_Templates { in template (value) AllowedNSSAI p_allowedNSSAI, in template (value) UESecurityCapabilities p_uESecurityCapabilities, in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, - in template (value) TraceActivation p_traceActivation := omit + in template (value) TraceActivation p_traceActivation ) := { procedureCode := id_InitialContextSetup, criticality := reject, @@ -1060,6 +1088,30 @@ module LibNGAP_Templates { } } // End of template mw_n2_PDUInitialContextSetupResponse + template (present) SuccessfulOutcome mw_n2_InitialContextSetupResponse_noPDUSessionResourceSetupListSURes( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_InitialContextSetupResponse_noPDUSessionResourceSetupListSURes + } // End of group Receive } // End of group INITIAL_CONTEXT_SETUP_RESPONSE @@ -2831,81 +2883,6 @@ module LibNGAP_Templates { id := id_GUAMI, criticality := reject, value_ := { GUAMI := p_gUAMI } - }, - { - id := id_RedirectionVoiceFallback, - criticality := ignore, - value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } - }, - { - id := id_CNAssistedRANTuning, - criticality := ignore, - value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } - }, - { - id := id_SRVCCOperationPossible, - criticality := ignore, - value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } - }, - { - id := id_Enhanced_CoverageRestriction, - criticality := ignore, - value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } - }, - { - id := id_UE_DifferentiationInfo, - criticality := ignore, - value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } - }, - { - id := id_NRV2XServicesAuthorized, - criticality := ignore, - value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } - }, - { - id := id_LTEV2XServicesAuthorized, - criticality := ignore, - value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } - }, - { - id := id_NRUESidelinkAggregateMaximumBitrate, - criticality := ignore, - value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } - }, - { - id := id_LTEUESidelinkAggregateMaximumBitrate, - criticality := ignore, - value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } - }, - { - id := id_PC5QoSParameters, - criticality := ignore, - value_ := { PC5QoSParameters := p_pC5QoSParameters } - }, - { - id := id_CEmodeBrestricted, - criticality := ignore, - value_ := { CEmodeBrestricted := p_cEmodeBrestricted } - }, - { - id := id_UE_UP_CIoT_Support, - criticality := ignore, - value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } - }, - { - id := id_ManagementBasedMDTPLMNList, - criticality := ignore, - value_ := { MDTPLMNList := p_mDTPLMNList } - }, - { - id := id_UERadioCapabilityID, - criticality := ignore, - value_ := { UERadioCapabilityID := p_uERadioCapabilityID } - }, - { - id := id_Extended_ConnectedTime, - criticality := ignore, - value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } } } } @@ -3031,6 +3008,81 @@ module LibNGAP_Templates { id := id_GUAMI, criticality := reject, value_ := { GUAMI := p_gUAMI } + }, + { + id := id_RedirectionVoiceFallback, + criticality := ignore, + value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } + }, + { + id := id_CNAssistedRANTuning, + criticality := ignore, + value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } + }, + { + id := id_SRVCCOperationPossible, + criticality := ignore, + value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } + }, + { + id := id_Enhanced_CoverageRestriction, + criticality := ignore, + value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } + }, + { + id := id_UE_DifferentiationInfo, + criticality := ignore, + value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } + }, + { + id := id_NRV2XServicesAuthorized, + criticality := ignore, + value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } + }, + { + id := id_LTEV2XServicesAuthorized, + criticality := ignore, + value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } + }, + { + id := id_NRUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } + }, + { + id := id_LTEUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } + }, + { + id := id_PC5QoSParameters, + criticality := ignore, + value_ := { PC5QoSParameters := p_pC5QoSParameters } + }, + { + id := id_CEmodeBrestricted, + criticality := ignore, + value_ := { CEmodeBrestricted := p_cEmodeBrestricted } + }, + { + id := id_UE_UP_CIoT_Support, + criticality := ignore, + value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } + }, + { + id := id_ManagementBasedMDTPLMNList, + criticality := ignore, + value_ := { MDTPLMNList := p_mDTPLMNList } + }, + { + id := id_UERadioCapabilityID, + criticality := ignore, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_Extended_ConnectedTime, + criticality := ignore, + value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } } } } @@ -21775,7 +21827,7 @@ module LibNGAP_Templates { } // End of group Information_elements - // FIXME Parenthesis issue } // End of group g_NGAP + } // End of group g_NGAP group Functions_For_Templates{ } // End of group functionsForTemplates -- GitLab From c038891e78084c84cb2733bfc5314f586489a520 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 28 May 2024 12:44:52 +0200 Subject: [PATCH 236/365] added template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 42 +++++++++++++++++++------ 1 file changed, 32 insertions(+), 10 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 20aaca2..0d5c89e 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -256,6 +256,36 @@ module LibNGAP_Templates { } } // End of template mw_n2_PDUSessionResourceSetupResponse + template (present) SuccessfulOutcome mw_n2_PDUSessionResourceSetupResponseFailed( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceFailedToSetupListSURes p_pDUSessionResourceFailedToSetupListSUReq := ? + ) := { + procedureCode := id_PDUSessionResourceSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceFailedToSetupListSURes, + criticality := ignore, + value_ := { PDUSessionResourceFailedToSetupListSURes := p_pDUSessionResourceFailedToSetupListSUReq} + } + } + } + } + } // End of template mw_n2_PDUSessionResourceSetupResponse + } // End of group Receive } // End of group PDU_SESSION_RESOURCE_SETUP_RESPONSE @@ -873,11 +903,7 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_InitialContextSetupRequest( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) GUAMI p_gUAMI, - in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, - in template (value) AllowedNSSAI p_allowedNSSAI, - in template (value) UESecurityCapabilities p_uESecurityCapabilities, - in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH + in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq ) := { procedureCode := id_InitialContextSetup, criticality := reject, @@ -914,11 +940,7 @@ module LibNGAP_Templates { template (present) InitiatingMessage mw_n2_InitialContextSetupRequest( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - template (present) GUAMI p_gUAMI := ?, - template (present) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq := ?, - template (present) AllowedNSSAI p_allowedNSSAI := ?, - template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, - template (present) SecurityKey p_nextHopNH := ? + template (present) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq := ? ) := { procedureCode := id_InitialContextSetup, criticality := reject, -- GitLab From af687b084d34b9f3edcdc17c2d49585b43819730 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 28 May 2024 12:45:18 +0200 Subject: [PATCH 237/365] MODIFIED tc in f_TC_NGAP_GNB_PDU_1-4 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 164 +++++++---------------------- 1 file changed, 36 insertions(+), 128 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 7c6130c..00611ee 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -122,7 +122,6 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceSetupResponse( -, -, - //? //TODO replace with template { (mw_pDUSessionResourceSetupItemSURes( ?,//template (present) PDUSessionID p_pDUSessionID, @@ -132,7 +131,7 @@ module NGAP_TCFunctions { // *,//template SecurityResult p_securityResult := *, // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * - // ), In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer + // ), FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer ?,//template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * ) @@ -234,19 +233,20 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( - mw_n2_PDUSessionResourceSetupResponse( + mw_n2_PDUSessionResourceSetupResponseFailed( -, -, - //? //TODO replace with template { - * - - //FIXME: when template Ready - //mw_pDUSessionResourceFailedToSetupItemSURes( - // ?, - // ?, - // * - //) + mw_pDUSessionResourceFailedToSetupItemSURes( + ?,//template (present) PDUSessionID p_pDUSessionID := ?, + //mw_pDUSessionResourceSetupUnsuccessfulTransfer( + // mw_cause_misc(mw_causeMisc(?/*MultiplePDUSessionIDInstances*/)),//?,//template (present) Cause p_cause := ?, + // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, + // *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + // ),//template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, + ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer + *//template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) } ) ) @@ -319,7 +319,6 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceSetupResponse( -, -, - //? //TODO replace with template { mw_pDUSessionResourceSetupItemSURes( ?,//template (present) PDUSessionID p_pDUSessionID, @@ -329,8 +328,8 @@ module NGAP_TCFunctions { // *,//template SecurityResult p_securityResult := *, // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * - // ), In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer - ?,//template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + // ), //template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * ) } @@ -378,19 +377,20 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( - mw_n2_PDUSessionResourceSetupResponse( + mw_n2_PDUSessionResourceSetupResponseFailed( -, -, - //? //TODO replace with template { - * - - //FIXME: when template Ready - //mw_pDUSessionResourceFailedToSetupItemSURes( - // ?, - // ?, - // * - //) + mw_pDUSessionResourceFailedToSetupItemSURes( + ?,//template (present) PDUSessionID p_pDUSessionID := ?, + //mw_pDUSessionResourceSetupUnsuccessfulTransfer( + // mw_cause_misc(mw_causeMisc(?/*MultiplePDUSessionIDInstances*/)),//?,//template (present) Cause p_cause := ?, + // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, + // *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + // ),//template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, + ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer + *//template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) } ) ) @@ -460,19 +460,20 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( - mw_n2_PDUSessionResourceSetupResponse( + mw_n2_PDUSessionResourceSetupResponseFailed( -, -, - //? //TODO replace with template { - * - - //FIXME: when template Ready - //mw_pDUSessionResourceFailedToSetupItemSURes( - // ?, - // ?, - // * - //) + mw_pDUSessionResourceFailedToSetupItemSURes( + ?,//template (present) PDUSessionID p_pDUSessionID := ?, + //mw_pDUSessionResourceSetupUnsuccessfulTransfer( + // mw_cause_misc(mw_causeMisc(?/*InvalidQoSCombination*/)),//?,//template (present) Cause p_cause := ?, + // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, + // *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + // ),//template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, + ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer + *//template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * + ) } ) ) @@ -895,99 +896,6 @@ module NGAP_TCFunctions { group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ - - /** - * @desc Testcase function for TP_NGAP_GNB_CMP_01 - */ - function f_TC_NGAP_GNB_CMP_01() runs on aMFNGAPComponent { - - // Preamble - f_NGAP_amf_init(); - f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_PDU_ResourceSetup(); - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_InitialContextSetupRequest - ( - -, - -, - m_gUAMI, - { - { - PX_PDU_SESSION_ID, - omit, - m_s_NSSAI('00'O, '000000'O), - bit2oct( - encvalue( - m_pDUSessionResourceSetupRequestTransfer( - m_pDUSessionResourceSetupRequestTransfer_mandatories( - m_pDUSessionType(ipv4), - { - m_qosFlowSetupRequestItem( - PX_QOS_FLOW_IDENTIFIER, - m_qosFlowLevelQosParameters( - m_qosCharacteristics_dynamic5QI( - m_dynamic5QIDescriptor( - 1,//in template (value) PriorityLevelQos p_priorityLevelQos, - 0,//in template (value) PacketDelayBudget p_packetDelayBudget, - m_PacketErrorRate( - 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, - 0//in template (value) PacketErrorRate.pERExponent p_pERExponent - ))), - m_allocationAndRetentionPriority( - 1,//in template (value) PriorityLevelARP p_priorityLevelARP, - shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, - not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, - ))) - }, - m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel - )))) - ), - omit - } - - }, - { - m_allowedNSSAI_Item( - m_s_NSSAI('00'O, '000000'O) - ) - }, - m_uESecurityCapabilities, - - - ))); - - - f_recv_NGAP_PDU( - mw_ngap_succMsg( - mw_n2_InitialContextSetupResponse( - -, - -, - { - { - ?, - ?, - * - } - } - ) - )); - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_GNB_CMP_01 - } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ -- GitLab From eeb3ef1c42b563c9344e13f4ec705ad3983a7f76 Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 28 May 2024 13:57:51 +0200 Subject: [PATCH 238/365] bugfix for templates in INITIAL SETUP REQUEST and RESPONSE --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 93 ++++++++++++++++++++++++- 1 file changed, 92 insertions(+), 1 deletion(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 2c4b538..6332168 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -920,10 +920,30 @@ module LibNGAP_Templates { criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, { id := id_PDUSessionResourceSetupListCxtReq, criticality := reject, value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityKey, + criticality := reject, + value_ := { SecurityKey := p_nextHopNH } } } } @@ -952,6 +972,26 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityKey, + criticality := reject, + value_ := { SecurityKey := p_nextHopNH } } } } @@ -961,7 +1001,7 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST */ - template (value) InitiatingMessage m_n2_InitialContextSetupRequest_optionals( + template (value) InitiatingMessage m_n2_InitialContextSetupRequest_optional_TraceActivation( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) GUAMI p_gUAMI, @@ -990,6 +1030,36 @@ module LibNGAP_Templates { id := id_PDUSessionResourceSetupListCxtReq, criticality := reject, value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, + { + id := id_PDUSessionResourceSetupListCxtReq, + criticality := reject, + value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityKey, + criticality := reject, + value_ := { SecurityKey := p_nextHopNH } + }, + { + id := id_TraceActivation, + criticality := ignore, + value_ := { TraceActivation := p_traceActivation } } } } @@ -1022,11 +1092,32 @@ module LibNGAP_Templates { criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, { id := id_PDUSessionResourceSetupListCxtReq, criticality := reject, value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityKey, + criticality := reject, + value_ := { SecurityKey := p_nextHopNH } } + } } } -- GitLab From d8bdc4b7b93d364d3c5cd351f3787cf6dc6391bd Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 28 May 2024 14:31:37 +0200 Subject: [PATCH 239/365] modified f_TC_NGAP_GNB_PDU_05-10 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 30793ae..4060369 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -538,7 +538,8 @@ module NGAP_TCFunctions { ( mw_pDUSessionResourceReleasedItemRelRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, - -,//bit2oct(encvalue(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + //(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + -, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceReleaseResponseTransfer -//template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * ) @@ -616,7 +617,8 @@ module NGAP_TCFunctions { ( mw_pDUSessionResourceReleasedItemRelRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, - -,//bit2oct(encvalue(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + //(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + -, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceReleaseResponseTransfer -//template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * ) @@ -692,7 +694,8 @@ module NGAP_TCFunctions { //*,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, //*,//template QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := *, //*//template PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := * - //), + //),//FIXME: Decode&Match - In ASN1 it is OCTET STRING pDUSessionResourceModifyResponseTransfer + -//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * ) @@ -768,11 +771,11 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceFailedToModifyItemModRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, - ?,//FIXME:Decode&Match//mw_pDUSessionResourceModifyUnsuccessfulTransfer( + ?,//mw_pDUSessionResourceModifyUnsuccessfulTransfer( // ?,//template (present) Cause p_cause := ?, // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, // *//template PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - //), + //),/FIXME: Decode&Match - In ASN1 it is OCTET STRING mw_pDUSessionResourceModifyUnsuccessfulTransfer * ) } @@ -817,7 +820,6 @@ module NGAP_TCFunctions { -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, { - //* mw_pDUSessionResourceNotifyItem( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, ?,//template (present) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer, @@ -867,11 +869,11 @@ module NGAP_TCFunctions { ( mw_pDUSessionResourceModifyItemModInd( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, - ?,//pDUSessionResourceModifyIndicationTransfer( + ?,//mw_pDUSessionResourceModifyIndicationTransfer( //?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, //*,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - //-//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * - //), + //*//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * + //),FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceModifyIndicationTransfer -//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * ) ) -- GitLab From afd426f9cd5ce92cddb8c736f3003a5ac9b5ca3d Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 14:54:00 +0200 Subject: [PATCH 240/365] Implement TC_NGAP_GNB_MMP_05/6 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 75 ++++++----- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 59 --------- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 163 ++++++++++++++++++++---- 3 files changed, 181 insertions(+), 116 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 4060369..7bc8fc8 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1603,29 +1603,35 @@ module NGAP_TCFunctions { m_s_NSSAI('00'O, '000000'O), bit2oct( encvalue( - m_pDUSessionResourceSetupRequestTransfer( - m_pDUSessionResourceSetupRequestTransfer_mandatories( - m_pDUSessionType(ipv4), - { - m_qosFlowSetupRequestItem( - PX_QOS_FLOW_IDENTIFIER, - m_qosFlowLevelQosParameters( - m_qosCharacteristics_dynamic5QI( - m_dynamic5QIDescriptor( - 1,//in template (value) PriorityLevelQos p_priorityLevelQos, - 0,//in template (value) PacketDelayBudget p_packetDelayBudget, - m_PacketErrorRate( - 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, - 0//in template (value) PacketErrorRate.pERExponent p_pERExponent - ))), - m_allocationAndRetentionPriority( - 1,//in template (value) PriorityLevelARP p_priorityLevelARP, - shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, - not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, - ))) - }, - m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_handover( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + ), + m_dataForwardingNotPossible, + m_securityIndication( + m_integrityProtectionIndication, + m_confidentialityProtectionIndication, + m_maximumIntegrityProtectedDataRate )))))) }, { @@ -1638,10 +1644,18 @@ module NGAP_TCFunctions { ))); f_recv_NGAP_PDU( - mw_ngap_unsuccMsg( - mw_n2_HandoverFailure( - PX_AMF_UE_NGAP_ID - ))); + mw_ngap_succMsg( + mw_n2_HandoverRequestAcknowledge( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { + *, + mw_pDUSessionResourceAdmittedItem( // TODO FSCOM Make the template more restrictive + PX_PDU_SESSION_ID + ), + * + } + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); @@ -1680,7 +1694,7 @@ module NGAP_TCFunctions { bit2oct( encvalue( m_pDUSessionResourceSetupRequestTransfer( - m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionResourceSetupRequestTransfer_handover_1( m_pDUSessionType(ipv4), { m_qosFlowSetupRequestItem( @@ -1701,8 +1715,9 @@ module NGAP_TCFunctions { ))) }, m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel - )))))) + m_gTPTunnel), + m_directForwardingPathAvailability + ))))) }, { m_allowedNSSAI_Item( diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index d085db7..a1054f0 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -54,65 +54,6 @@ module NGAP_TestCases { var AdditionalDLUPTNLInformationForHOItem v_test, v_test1; - - log(m_pDUSessionResourceSetupRequestTransfer_optionals( - m_pDUSessionType(ipv4), - { - m_qosFlowSetupRequestItem( - PX_QOS_FLOW_IDENTIFIER, - m_qosFlowLevelQosParameters( - m_qosCharacteristics_dynamic5QI( - m_dynamic5QIDescriptor( - 1,//in template (value) PriorityLevelQos p_priorityLevelQos, - 0,//in template (value) PacketDelayBudget p_packetDelayBudget, - m_PacketErrorRate( - 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, - 0//in template (value) PacketErrorRate.pERExponent p_pERExponent - ))), - m_allocationAndRetentionPriority( - 1,//in template (value) PriorityLevelARP p_priorityLevelARP, - shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, - not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, - ))) - }, - m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel - ), - m_pDUSessionAggregateMaximumBitRate( - PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_DL, - PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_UL - ))); - log(m_pDUSessionResourceSetupRequestTransfer_optionals_1( - m_pDUSessionType(ipv4), - { - m_qosFlowSetupRequestItem( - PX_QOS_FLOW_IDENTIFIER, - m_qosFlowLevelQosParameters( - m_qosCharacteristics_dynamic5QI( - m_dynamic5QIDescriptor( - 1,//in template (value) PriorityLevelQos p_priorityLevelQos, - 0,//in template (value) PacketDelayBudget p_packetDelayBudget, - m_PacketErrorRate( - 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, - 0//in template (value) PacketErrorRate.pERExponent p_pERExponent - ))), - m_allocationAndRetentionPriority( - 1,//in template (value) PriorityLevelARP p_priorityLevelARP, - shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, - not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, - ))) - }, - m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel - ), - m_pDUSessionAggregateMaximumBitRate( - PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_DL, - PX_UE_AGGREGATE_MAXIMUM_BIT_RATE_UL - ))); - - - stop; - // Test control if (not PICS_NGAP_AMF_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT' shall be set to true for executing the TC. ***"); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 6332168..35e8151 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -567,6 +567,38 @@ module LibNGAP_Templates { } } // End of template m_n2_PDUSessionResourceModifyResponse + template (value) SuccessfulOutcome m_n2_PDUSessionResourceModifyResponseFailedToMod( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID, + in template (value) PDUSessionResourceFailedToModifyListModRes p_pDUSessionResourceFailedToModifyListModRes + ) := { + + procedureCode := id_PDUSessionResourceModify, + criticality := reject, + value_ := { + PDUSessionResourceModifyResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceFailedToModifyListModRes, + criticality := reject, + value_ := { PDUSessionResourceFailedToModifyListModRes := p_pDUSessionResourceFailedToModifyListModRes + } + } + } + } + } + } // End of template m_n2_PDUSessionResourceModifyResponse + } // End of group Send group Receive { @@ -607,10 +639,10 @@ module LibNGAP_Templates { } // End of template mw_n2_PDUSessionResourceModifyResponse template (present) SuccessfulOutcome mw_n2_PDUSessionResourceModifyResponseFailedToMod( - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - template (present) PDUSessionResourceFailedToModifyListModRes p_pDUSessionResourceFailedToModifyListModRes := ? - ) := { + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceFailedToModifyListModRes p_pDUSessionResourceFailedToModifyListModRes := ? + ) := { procedureCode := id_PDUSessionResourceModify, criticality := reject, @@ -11832,33 +11864,53 @@ module LibNGAP_Templates { value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } }, { - id := id_RedundantUL_NGU_UP_TNLInformation, + id := id_UL_NGU_UP_TNLInformation, criticality := reject, value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pDUSessionResourceSetupRequestTransfer_mandatories - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_optionals( - in template (value) PDUSessionType p_pDUSessionType, - in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList, - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, - in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate - ) modifies m_pDUSessionResourceSetupRequestTransfer_mandatories := { - + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_handover( + in template (value) PDUSessionType p_pDUSessionType, + in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList, + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, + in template (value) DataForwardingNotPossible p_dataForwardingNotPossible, + in template (value) SecurityIndication p_securityIndication + ) := { { - id := id_PDUSessionAggregateMaximumBitRate, + id := id_PDUSessionType, criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + value_ := { PDUSessionType := p_pDUSessionType } + }, + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + }, + { + id := id_UL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + }, + { + id := id_DataForwardingNotPossible, + criticality := reject, + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + }, + { + id := id_SecurityIndication, + criticality := reject, + value_ := { SecurityIndication := p_securityIndication } } - } // End of template m_pDUSessionResourceSetupRequestTransfer_optionals + } // End of template m_pDUSessionResourceSetupRequestTransfer_handover - template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_optionals_1( - in template (value) PDUSessionType p_pDUSessionType, - in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList, - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, - in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate - ) := { + template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_handover_1( + in template (value) PDUSessionType p_pDUSessionType, + in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList, + in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, + in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability + ) := { { id := id_PDUSessionType, criticality := reject, @@ -11870,17 +11922,17 @@ module LibNGAP_Templates { value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } }, { - id := id_RedundantUL_NGU_UP_TNLInformation, + id := id_UL_NGU_UP_TNLInformation, criticality := reject, value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } }, { - id := id_PDUSessionAggregateMaximumBitRate, - criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + id := id_DirectForwardingPathAvailability, + criticality := ignore, + value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } } - } // End of template m_pDUSessionResourceSetupRequestTransfer_optionals + } // End of template m_pDUSessionResourceSetupRequestTransfer_handover_1 template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate @@ -19362,7 +19414,7 @@ module LibNGAP_Templates { } // End of template mw_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour template (present) PDUSessionResourceSetupItemSURes mw_pDUSessionResourceSetupItemSURes( - template (present) PDUSessionID p_pDUSessionID, + template (present) PDUSessionID p_pDUSessionID := ?, template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * ) := { @@ -19377,6 +19429,63 @@ module LibNGAP_Templates { protocolIEs := p_protocolIEs } // End of template mw_pDUSessionResourceSetupRequestTransfer + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_mandatories( + template (present) PDUSessionType p_pDUSessionType := ?, + template (present) QosFlowSetupRequestList p_qosFlowSetupRequestList := ?, + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? + ) := { + { + id := id_PDUSessionType, + criticality := reject, + value_ := { PDUSessionType := p_pDUSessionType } + }, + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + }, + { + id := id_UL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + } + } // End of template mw_pDUSessionResourceSetupRequestTransfer_mandatories + + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_handover( + template (present) PDUSessionType p_pDUSessionType := ?, + template (present) QosFlowSetupRequestList p_qosFlowSetupRequestList := ?, + template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ?, + template (present) DataForwardingNotPossible p_dataForwardingNotPossible := ?, + template (present) SecurityIndication p_securityIndication := ? + ) := { + { + id := id_PDUSessionType, + criticality := reject, + value_ := { PDUSessionType := p_pDUSessionType } + }, + { + id := id_QosFlowSetupRequestList, + criticality := reject, + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + }, + { + id := id_UL_NGU_UP_TNLInformation, + criticality := reject, + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + }, + { + id := id_DataForwardingNotPossible, + criticality := reject, + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + }, + { + id := id_SecurityIndication, + criticality := reject, + value_ := { SecurityIndication := p_securityIndication } + } + + } // End of template mw_pDUSessionResourceSetupRequestTransfer_optionals + template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? ) := { -- GitLab From 0f0be8b194e85ce729a7efbd8a38757543e87f7b Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 28 May 2024 15:07:50 +0200 Subject: [PATCH 241/365] new TC TC_NGAP_GNB_CMP_07 and bugfixing templates --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 48 +++++++++++++++++++++++-- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 28 +++++++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 21 +++++++++-- 3 files changed, 92 insertions(+), 5 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 7bc8fc8..d3e1464 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -962,8 +962,9 @@ module NGAP_TCFunctions { ) }, m_uESecurityCapabilities, - - - ))); + - + ) + )); f_recv_NGAP_PDU( @@ -1056,7 +1057,7 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_InitialContextSetupRequest_optionals + m_n2_InitialContextSetupRequest_optional_TraceActivation ( -, -, @@ -1142,6 +1143,47 @@ module NGAP_TCFunctions { } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ + + /** + * @desc Testcase function for TC_NGAP_GNB_CMP_07 + */ + function f_TC_NGAP_GNB_CMP_07() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + + // TODO: hasEstablishedInitialContext + + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger UE context release request"); + + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEContextReleaseRequest( + -, + -, + *, + - + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_07 + } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index a1054f0..72d7ebb 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -497,6 +497,34 @@ module NGAP_TestCases { } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ + + /** + * @desc Test objective "Verify that the NG-RAN node successfully requests the AMF to release the UE-associated logical NG-connection." + */ + testcase TC_NGAP_GNB_CMP_07() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_2){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_07()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_07 + } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 35e8151..9556a39 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -935,12 +935,23 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_InitialContextSetupRequest( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq + in template (value) GUAMI p_gUAMI, + in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH ) := { procedureCode := id_InitialContextSetup, criticality := reject, value_ := { InitialContextSetupRequest := { + + + + + + + protocolIEs := { { id := id_AMF_UE_NGAP_ID, @@ -1398,7 +1409,8 @@ module LibNGAP_Templates { template (present) InitiatingMessage mw_n2_UEContextReleaseRequest( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - template (present) PDUSessionResourceListCxtRelReq p_pDUSessionResourceListCxtRelReq := ? + template PDUSessionResourceListCxtRelReq p_pDUSessionResourceListCxtRelReq := *, + template (present) Cause p_cause := ? ) := { procedureCode := id_UEContextReleaseRequest, criticality := reject, @@ -1419,6 +1431,11 @@ module LibNGAP_Templates { id := id_PDUSessionResourceListCxtRelReq, criticality := reject, value_ := { PDUSessionResourceListCxtRelReq := p_pDUSessionResourceListCxtRelReq } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } } } } -- GitLab From 4d6b2f86221db99df5c83977d41814d278f3245a Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 15:12:06 +0200 Subject: [PATCH 242/365] Bug fixed in templates; Add skeleton for NAS TCs --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 66 +++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 84 +++++++++++++++++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 7 ++- 3 files changed, 156 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index d3e1464..387a52a 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1875,15 +1875,81 @@ module NGAP_TCFunctions { group Transport_of_NAS_Messages_Procedures{ //8.6.1 group Initial_UE_Message{ + + function f_TC_NGAP_GNB_NAS_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_NAS_01 + } // End of group Initial_UE_Message //8.6.2 group Downlink_NAS_Transport{ } // End of group Downlink_NAS_Transport //8.6.3 group Uplink_NAS_Transport{ + + function f_TC_NGAP_GNB_NAS_02() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_NAS_02 + } // End of group Uplink_NAS_Transport //8.6.4 group NAS_Non_Delivery_Indication{ + + function f_TC_NGAP_GNB_NAS_03() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_NAS_03 + } // End of group NAS_Non_Delivery_Indication //8.6.5 group Rerout_NAS_Request{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 72d7ebb..f02a3bd 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -959,15 +959,99 @@ module NGAP_TestCases { group Transport_of_NAS_Messages_Procedures{ //8.6.1 group Initial_UE_Message{ + + /** + * @desc Verify that the IUT can send an INITIAL UE MESSAGE to indicate the initiation of a NAS Transport procedure. + */ + testcase TC_NGAP_GNB_NAS_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_5_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_5_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_NAS_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_NAS_01 + } // End of group Initial_UE_Message //8.6.2 group Downlink_NAS_Transport{ } // End of group Downlink_NAS_Transport //8.6.3 group Uplink_NAS_Transport{ + + /** + * @desc Verify that the IUT can send an UPLINK NAS TRANSPORT message to the AMF. + */ + testcase TC_NGAP_GNB_NAS_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_5_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_5_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_NAS_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_NAS_02 + } // End of group Uplink_NAS_Transport //8.6.4 group NAS_Non_Delivery_Indication{ + + /** + * @desc Verify that the IUT can send a NAS NON DELIVERY INDICATION message to the AMF. + */ + testcase TC_NGAP_GNB_NAS_03() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_5_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_5_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_NAS_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_NAS_03 + } // End of group NAS_Non_Delivery_Indication //8.6.5 group Rerout_NAS_Request{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 9556a39..8daf1f5 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1118,7 +1118,12 @@ module LibNGAP_Templates { template (present) InitiatingMessage mw_n2_InitialContextSetupRequest( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - template (present) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq := ? + template (present) GUAMI p_gUAMI := ?, + template (present) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq := ?, + template (present) AllowedNSSAI p_allowedNSSAI := ?, + template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, + template (present) SecurityKey p_nextHopNH := ?, + template (present) TraceActivation p_traceActivation := ? ) := { procedureCode := id_InitialContextSetup, criticality := reject, -- GitLab From 3d4337854c0a9a71887bb83360a7a684516599ec Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 15:26:10 +0200 Subject: [PATCH 243/365] Bug fixed into TC_NGAP_GNB_CMP_07 --- etc/AtsNGAP/AtsNGAP.cfg | 9 +++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/etc/AtsNGAP/AtsNGAP.cfg b/etc/AtsNGAP/AtsNGAP.cfg index 74e3183..63e1cb0 100644 --- a/etc/AtsNGAP/AtsNGAP.cfg +++ b/etc/AtsNGAP/AtsNGAP.cfg @@ -89,6 +89,15 @@ NGAP_TestCases.TC_NGAP_gNB_or_aMF_testcaseName_01 # Verify that the NG-RAN node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message to the AMF. #NGAP_TestCases.TC_NGAP_GNB_MMP_11 +# Verify that the IUT can send an INITIAL UE MESSAGE to indicate the initiation of a NAS Transport procedure. +#NGAP_TestCases.TC_NGAP_GNB_NAS_01 +# Verify that the IUT can send an UPLINK NAS TRANSPORT message to the AMF. +#NGAP_TestCases.TC_NGAP_GNB_NAS_02 +# Verify that the IUT can send a NAS NON DELIVERY INDICATION message to t.he AMF +#NGAP_TestCases.TC_NGAP_GNB_NAS_03 + + + # Verify that the GNB node successfully sends a NG SETUP REQEST message to the AMF. #NGAP_TestCases.TC_NGAP_GNB_IMP_01 # Verify that the IUT can send a RAN CONFIGURATION UPDATE message to the AMF. diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index f02a3bd..336619e 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -507,7 +507,7 @@ module NGAP_TestCases { var aMFNGAPComponent v_ngap_amf; // Test control - if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_2){ + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_2)) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_2' shall be set to true for executing the TC. ***"); stop; } -- GitLab From cf55dbb9fa4d39897cf76db9db01ce75053fc546 Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 28 May 2024 15:28:30 +0200 Subject: [PATCH 244/365] bugfix UEContextReleaseRequest --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 1 - ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 10 ++-------- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 387a52a..9de4422 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1169,7 +1169,6 @@ module NGAP_TCFunctions { mw_n2_UEContextReleaseRequest( -, -, - *, - ) )); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 8daf1f5..1f59361 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1413,8 +1413,7 @@ module LibNGAP_Templates { */ template (present) InitiatingMessage mw_n2_UEContextReleaseRequest( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - template PDUSessionResourceListCxtRelReq p_pDUSessionResourceListCxtRelReq := *, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) Cause p_cause := ? ) := { procedureCode := id_UEContextReleaseRequest, @@ -1431,12 +1430,7 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, - { - id := id_PDUSessionResourceListCxtRelReq, - criticality := reject, - value_ := { PDUSessionResourceListCxtRelReq := p_pDUSessionResourceListCxtRelReq } - }, + }, { id := id_Cause, criticality := ignore, -- GitLab From 6fe9e42e2db292365fcb40bbc09026cfeda40847 Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 28 May 2024 15:39:46 +0200 Subject: [PATCH 245/365] modified f_TC_NGAP_GNB_IMP01-02 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 32 ++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 4060369..a6e1e4f 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1857,8 +1857,20 @@ module NGAP_TCFunctions { mw_ngap_initMsg( mw_n2_NGSetupRequest( ?,//template (present) GlobalRANNodeID p_globalRANNodeID := ?, - ?,//template (present) SupportedTAList p_supportedTAs := ?, - ?//template (present) PagingDRX p_pagingDRX := ? + { + mw_supportedTAItem( + ?,//template (present) TAC p_tAC := ?, + { + mw_ie_broadcastPLMNItem( + ?, + ?, + * + ) + },//?,//template (present) BroadcastPLMNList p_broadcastPLMNList := ?, + *//template SupportedTAItem.iE_Extensions p_iE_Extensions := * + ) + }, + mw_pagingDRX(?) ) ) ); @@ -1895,8 +1907,20 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_initMsg( - mw_n2_RANConfigurationUpdate(//FIXME: prepare/update template IEs - ?//template (present) RANNodeName p_rANNodeName := ? + mw_n2_RANConfigurationUpdate_SupportedTAList( + { + mw_supportedTAItem( + ?,//template (present) TAC p_tAC := ?, + { + mw_ie_broadcastPLMNItem( + ?, + ?, + * + ) + },//?,//template (present) BroadcastPLMNList p_broadcastPLMNList := ?, + *//template SupportedTAItem.iE_Extensions p_iE_Extensions := * + ) + } ) ) ); -- GitLab From bd304acee55b32adfd966bc624ea933aa9574c6e Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 28 May 2024 15:40:23 +0200 Subject: [PATCH 246/365] added template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 420 ++++++------------------ 1 file changed, 97 insertions(+), 323 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 6332168..8c3f5ef 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -920,150 +920,15 @@ module LibNGAP_Templates { criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, - { - id := id_GUAMI, - criticality := reject, - value_ := { GUAMI := p_gUAMI } - }, { id := id_PDUSessionResourceSetupListCxtReq, criticality := reject, value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } - }, - { - id := id_AllowedNSSAI, - criticality := reject, - value_ := { AllowedNSSAI := p_allowedNSSAI } - }, - { - id := id_UESecurityCapabilities, - criticality := reject, - value_ := { UESecurityCapabilities := p_uESecurityCapabilities } - }, - { - id := id_SecurityKey, - criticality := reject, - value_ := { SecurityKey := p_nextHopNH } } } } } } // End of template m_n2_InitialContextSetupRequest - - template (value) InitiatingMessage m_n2_InitialContextSetupRequest_noPDUSessionResourceSetupListCxtReq( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) GUAMI p_gUAMI, - in template (value) AllowedNSSAI p_allowedNSSAI, - in template (value) UESecurityCapabilities p_uESecurityCapabilities, - in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH - ) := { - procedureCode := id_InitialContextSetup, - criticality := reject, - value_ := { - InitialContextSetupRequest := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, - { - id := id_GUAMI, - criticality := reject, - value_ := { GUAMI := p_gUAMI } - }, - { - id := id_AllowedNSSAI, - criticality := reject, - value_ := { AllowedNSSAI := p_allowedNSSAI } - }, - { - id := id_UESecurityCapabilities, - criticality := reject, - value_ := { UESecurityCapabilities := p_uESecurityCapabilities } - }, - { - id := id_SecurityKey, - criticality := reject, - value_ := { SecurityKey := p_nextHopNH } - } - } - } - } - } // End of template m_n2_InitialContextSetupRequest_noPDUSessionResourceSetupListCxtReq - - /** - * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST - */ - template (value) InitiatingMessage m_n2_InitialContextSetupRequest_optional_TraceActivation( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) GUAMI p_gUAMI, - in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, - in template (value) AllowedNSSAI p_allowedNSSAI, - in template (value) UESecurityCapabilities p_uESecurityCapabilities, - in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, - in template (value) TraceActivation p_traceActivation - ) := { - procedureCode := id_InitialContextSetup, - criticality := reject, - value_ := { - InitialContextSetupRequest := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_RAN_UE_NGAP_ID, - criticality := reject, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, - { - id := id_PDUSessionResourceSetupListCxtReq, - criticality := reject, - value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } - }, - { - id := id_GUAMI, - criticality := reject, - value_ := { GUAMI := p_gUAMI } - }, - { - id := id_PDUSessionResourceSetupListCxtReq, - criticality := reject, - value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } - }, - { - id := id_AllowedNSSAI, - criticality := reject, - value_ := { AllowedNSSAI := p_allowedNSSAI } - }, - { - id := id_UESecurityCapabilities, - criticality := reject, - value_ := { UESecurityCapabilities := p_uESecurityCapabilities } - }, - { - id := id_SecurityKey, - criticality := reject, - value_ := { SecurityKey := p_nextHopNH } - }, - { - id := id_TraceActivation, - criticality := ignore, - value_ := { TraceActivation := p_traceActivation } - } - } - } - } } // End of group Send @@ -1092,32 +957,11 @@ module LibNGAP_Templates { criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, - { - id := id_GUAMI, - criticality := reject, - value_ := { GUAMI := p_gUAMI } - }, { id := id_PDUSessionResourceSetupListCxtReq, criticality := reject, value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } - }, - { - id := id_AllowedNSSAI, - criticality := reject, - value_ := { AllowedNSSAI := p_allowedNSSAI } - }, - { - id := id_UESecurityCapabilities, - criticality := reject, - value_ := { UESecurityCapabilities := p_uESecurityCapabilities } - }, - { - id := id_SecurityKey, - criticality := reject, - value_ := { SecurityKey := p_nextHopNH } } - } } } @@ -1201,30 +1045,6 @@ module LibNGAP_Templates { } } // End of template mw_n2_PDUInitialContextSetupResponse - template (present) SuccessfulOutcome mw_n2_InitialContextSetupResponse_noPDUSessionResourceSetupListSURes( - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? - ) := { - procedureCode := id_InitialContextSetup, - criticality := reject, - value_ := { - PDUSessionResourceSetupResponse := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := ignore, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_RAN_UE_NGAP_ID, - criticality := ignore, - value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - } - } - } - } - } // End of template mw_n2_InitialContextSetupResponse_noPDUSessionResourceSetupListSURes - } // End of group Receive } // End of group INITIAL_CONTEXT_SETUP_RESPONSE @@ -3016,26 +2836,12 @@ module LibNGAP_Templates { in template (value) AllowedNSSAI p_allowedNSSAI, in template (value) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer, in template (value) GUAMI p_gUAMI, - in template (value) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive, - in template (value) NewSecurityContextInd p_newSecurityContextInd, - in template (value) NAS_PDU p_nAS_PDU, - in template (value) TraceActivation p_traceActivation, - in template (value) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest, - in template (value) RedirectionVoiceFallback p_redirectionVoiceFallback, - in template (value) CNAssistedRANTuning p_cNAssistedRANTuning, - in template (value) SRVCCOperationPossible p_sRVCCOperationPossible, - in template (value) Enhanced_CoverageRestriction p_enhanced_CoverageRestriction, - in template (value) UE_DifferentiationInfo p_uE_DifferentiationInfo, - in template (value) NRV2XServicesAuthorized p_nRV2XServicesAuthorized, - in template (value) LTEV2XServicesAuthorized p_lTEV2XServicesAuthorized, - in template (value) NRUESidelinkAggregateMaximumBitrate p_nRUESidelinkAggregateMaximumBitrate, - in template (value) LTEUESidelinkAggregateMaximumBitrate p_lTEUESidelinkAggregateMaximumBitrate, - in template (value) PC5QoSParameters p_pC5QoSParameters, - in template (value) CEmodeBrestricted p_cEmodeBrestricted, - in template (value) UE_UP_CIoT_Support p_uE_UP_CIoT_Support, - in template (value) MDTPLMNList p_mDTPLMNList, - in template (value) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, - in template (value) Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME + in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, + in template (value) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive, + in template (value) NewSecurityContextInd p_newSecurityContextInd, + in template (value) NAS_PDU p_nAS_PDU, + in template (value) TraceActivation p_traceActivation, + in template (value) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest ) modifies m_n2_HandoverRequest := { procedureCode := id_HandoverResourceAllocation, criticality := reject, @@ -3121,81 +2927,6 @@ module LibNGAP_Templates { id := id_GUAMI, criticality := reject, value_ := { GUAMI := p_gUAMI } - }, - { - id := id_RedirectionVoiceFallback, - criticality := ignore, - value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } - }, - { - id := id_CNAssistedRANTuning, - criticality := ignore, - value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } - }, - { - id := id_SRVCCOperationPossible, - criticality := ignore, - value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } - }, - { - id := id_Enhanced_CoverageRestriction, - criticality := ignore, - value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } - }, - { - id := id_UE_DifferentiationInfo, - criticality := ignore, - value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } - }, - { - id := id_NRV2XServicesAuthorized, - criticality := ignore, - value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } - }, - { - id := id_LTEV2XServicesAuthorized, - criticality := ignore, - value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } - }, - { - id := id_NRUESidelinkAggregateMaximumBitrate, - criticality := ignore, - value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } - }, - { - id := id_LTEUESidelinkAggregateMaximumBitrate, - criticality := ignore, - value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } - }, - { - id := id_PC5QoSParameters, - criticality := ignore, - value_ := { PC5QoSParameters := p_pC5QoSParameters } - }, - { - id := id_CEmodeBrestricted, - criticality := ignore, - value_ := { CEmodeBrestricted := p_cEmodeBrestricted } - }, - { - id := id_UE_UP_CIoT_Support, - criticality := ignore, - value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } - }, - { - id := id_ManagementBasedMDTPLMNList, - criticality := ignore, - value_ := { MDTPLMNList := p_mDTPLMNList } - }, - { - id := id_UERadioCapabilityID, - criticality := ignore, - value_ := { UERadioCapabilityID := p_uERadioCapabilityID } - }, - { - id := id_Extended_ConnectedTime, - criticality := ignore, - value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } } } } @@ -5110,6 +4841,27 @@ module LibNGAP_Templates { } } // End of template m_n2_RANConfigurationUpdate + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.4 RAN CONFIGURATION UPDATE + */ + template (value) InitiatingMessage m_n2_RANConfigurationUpdate_SupportedTAList( + template (value) SupportedTAList p_supportedTAs + ) := { + procedureCode := id_RANConfigurationUpdate, + criticality := reject, + value_ := { + RANConfigurationUpdate := { + protocolIEs := { + { + id := id_SupportedTAList, + criticality := reject, + value_ := { SupportedTAList := p_supportedTAs } + } + } + } + } + } // End of template mw_n2_RANConfigurationUpdate_SupportedTAList + } // End of group Send group Receive { @@ -5135,6 +4887,27 @@ module LibNGAP_Templates { } } // End of template mw_n2_RANConfigurationUpdate + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.4 RAN CONFIGURATION UPDATE + */ + template (present) InitiatingMessage mw_n2_RANConfigurationUpdate_SupportedTAList( + template (present) SupportedTAList p_supportedTAs := ? + ) := { + procedureCode := id_RANConfigurationUpdate, + criticality := reject, + value_ := { + RANConfigurationUpdate := { + protocolIEs := { + { + id := id_SupportedTAList, + criticality := reject, + value_ := { SupportedTAList := p_supportedTAs } + } + } + } + } + } // End of template mw_n2_RANConfigurationUpdate_SupportedTAList + } // End of group Receive } // End of group RAN_CONFIGURATION_UPDATE @@ -6630,10 +6403,10 @@ module LibNGAP_Templates { in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) NGRANTraceID p_NGRANTraceID, - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (value) TransportLayerAddress p_tla, - in template (value) PrivacyIndicator p_privacyInd, - in template (value) URI_address p_uRI_address + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) TransportLayerAddress p_tla, + in template (value) PrivacyIndicator p_privacyInd, + in template (value) URI_address p_uRI_address ) := { procedureCode := id_CellTrafficTrace, criticality := ignore, @@ -6702,10 +6475,10 @@ module LibNGAP_Templates { template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) NGRANTraceID p_NGRANTraceID := ?, - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template (present) TransportLayerAddress p_tla := ?, - template (present) PrivacyIndicator p_privacyInd := ?, - template (present) URI_address p_uRI_address := ? + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) TransportLayerAddress p_tla := ?, + template (present) PrivacyIndicator p_privacyInd := ?, + template (present) URI_address p_uRI_address := ? ) := { procedureCode := id_CellTrafficTrace, criticality := ignore, @@ -6905,7 +6678,7 @@ module LibNGAP_Templates { in template (value) S_NSSAI p_s_NSSAI, in template (omit) AllowedNSSAI_Item.iE_Extensions p_iE_Extensions := omit ) := { - s_NSSAI := p_s_NSSAI, + s_NSSAI := p_s_NSSAI, iE_Extensions := p_iE_Extensions } // End of template m_allowedNSSAI_Item @@ -6913,7 +6686,7 @@ module LibNGAP_Templates { in template (value) PLMNIdentity p_pLMNIdentity, in template (value) Allowed_PNI_NPN_Item.pNI_NPN_restricted p_pNI_NPN_restricted := restricted, in template (value) Allowed_CAG_List_per_PLMN p_allowed_CAG_List_per_PLMN, - in template (omit) Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := omit + in template (omit) Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, pNI_NPN_restricted := p_pNI_NPN_restricted, @@ -7661,14 +7434,14 @@ module LibNGAP_Templates { template (value) ConfiguredTACIndication m_configuredTACIndication(in ConfiguredTACIndication p_value := true_) := p_value; template (omit) CoreNetworkAssistanceInformationForInactive m_coreNetworkAssistanceInformationForInactive( - in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, - in template (value) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := PX_PERIODIC_REGISTRATION_UPDATE_TIMER, - in template (value) TAIListForInactive p_tAIListForInactive, - in template (omit) PagingDRX p_uESpecificDRX := omit, - in template (omit) MICOModeIndication p_mICOModeIndication := omit, - in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, - in template (omit) CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, + in template (value) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer, + in template (value) TAIListForInactive p_tAIListForInactive, + in template (omit) PagingDRX p_uESpecificDRX := omit, + in template (omit) MICOModeIndication p_mICOModeIndication := omit, + in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, + in template (omit) CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := omit + ) := { uEIdentityIndexValue := p_uEIdentityIndexValue, uESpecificDRX := p_uESpecificDRX, periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, @@ -9630,7 +9403,7 @@ module LibNGAP_Templates { } // End of template m_lTEV2XServicesAuthorized template (omit) LTEUESidelinkAggregateMaximumBitrate m_lTEUESidelinkAggregateMaximumBitrate( - in template (value) BitRate p_uESidelinkAggregateMaximumBitRate := PX_UE_SIDELINK_AGGREGATE_MAXIMUM_BIT_RATE, + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, in template (omit) LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit ) := { uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, @@ -10690,10 +10463,11 @@ module LibNGAP_Templates { } // End of template m_nRFrequencyInfo template (omit) NRV2XServicesAuthorized m_nRV2XServicesAuthorized( - in template (omit) VehicleUE p_vehicleUE := omit, - in template (omit) PedestrianUE p_pedestrianUE := omit, - in template (omit) NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit - ) := { + in template (omit) VehicleUE p_vehicleUE := omit, + in template (omit) PedestrianUE p_pedestrianUE := omit, + in template (omit) NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := omit + + ) := { vehicleUE := p_vehicleUE, pedestrianUE := p_pedestrianUE, iE_Extensions := p_iE_Extensions @@ -10704,9 +10478,9 @@ module LibNGAP_Templates { template (value) PedestrianUE m_pedestrianUE(in PedestrianUE p_value := authorized) := p_value; template (omit) NRUESidelinkAggregateMaximumBitrate m_nRUESidelinkAggregateMaximumBitrate( - in template (value) BitRate p_uESidelinkAggregateMaximumBitRate := PX_UE_SIDELINK_AGGREGATE_MAXIMUM_BIT_RATE, - in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, + in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit + ) := { uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, iE_Extensions := p_iE_Extensions } // End of template m_nRUESidelinkAggregateMaximumBitrate @@ -10944,7 +10718,7 @@ module LibNGAP_Templates { } // End of template m_pC5QoSParameters template (omit) PC5QoSFlowItem m_pC5QoSFlowItem( - in template (value) FiveQI p_pQI := PX_FIVE_QI, + in template (value) FiveQI p_pQI, in template (omit) PC5FlowBitRates p_pc5FlowBitRates := omit, in template (omit) Range p_range := omit, in template (omit) PC5QoSFlowItem.iE_Extensions p_iE_Extensions := omit @@ -13628,8 +13402,8 @@ module LibNGAP_Templates { } // End of template m_tooearlyIntersystemHO template (omit) TraceActivation m_traceActivation( - in template (value) NGRANTraceID p_nGRANTraceID := PX_NGRAN_TRACE_ID, - in template (value) InterfacesToTrace p_interfacesToTrace := PX_INTERFACES_TO_TRACE, + in template (value) NGRANTraceID p_nGRANTraceID, + in template (value) InterfacesToTrace p_interfacesToTrace, in template (value) TraceDepth p_traceDepth, in template (value) TransportLayerAddress p_traceCollectionEntityIPAddress := PX_TRANSPORT_LAYER_ADDRESS, in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit @@ -13858,8 +13632,8 @@ module LibNGAP_Templates { } // End of template m_uE_DifferentiationInfo template (value) UEHistoryInformationFromTheUE m_uEHistoryInformationFromTheUE_nR( - in template (value) NRMobilityHistoryReport p_nR - ) := { + in template (value) NRMobilityHistoryReport p_nR + ) := { nR := p_nR } // End of template m_uEHistoryInformationFromTheUE_nR @@ -13870,14 +13644,14 @@ module LibNGAP_Templates { } // End of template m_uEHistoryInformationFromTheUE_choice_Extensions template (value) UEIdentityIndexValue m_uEIdentityIndexValue_indexLength10( - in template (value) UEIdentityIndexValue.indexLength10 p_indexLength10 - ) := { + in template (value) UEIdentityIndexValue.indexLength10 p_indexLength10 + ) := { indexLength10 := p_indexLength10 } // End of template m_uEIdentityIndexValue_indexLength10 template (value) UEIdentityIndexValue m_uEIdentityIndexValue_choice_Extensions( - in template (value) UEIdentityIndexValue.choice_Extensions p_choice_Extensions - ) := { + in template (value) UEIdentityIndexValue.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_uEIdentityIndexValue_choice_Extensions @@ -14503,7 +14277,7 @@ module LibNGAP_Templates { template (present) S_NSSAI p_s_NSSAI := ?, template AllowedNSSAI_Item.iE_Extensions p_iE_Extensions := * ) := { - s_NSSAI := p_s_NSSAI, + s_NSSAI := p_s_NSSAI, iE_Extensions := p_iE_Extensions } // End of template mw_allowedNSSAI_Item @@ -18240,20 +18014,20 @@ module LibNGAP_Templates { } // End of template mw_nRFrequencyBandItem template (present) NRFrequencyInfo mw_nRFrequencyInfo( - template (present) NRARFCN p_nrARFCN := ?, - template (present) NRFrequencyBand_List p_frequencyBand_List, - template NRFrequencyInfo.iE_Extension p_iE_Extension := * - ) := { + template (present) NRARFCN p_nrARFCN := ?, + template (present) NRFrequencyBand_List p_frequencyBand_List, + template NRFrequencyInfo.iE_Extension p_iE_Extension := * + ) := { nrARFCN := p_nrARFCN, frequencyBand_List := p_frequencyBand_List, iE_Extension := p_iE_Extension } // End of template mw_nRFrequencyInfo template (present) NRV2XServicesAuthorized mw_nRV2XServicesAuthorized( - template VehicleUE p_vehicleUE := *, - template PedestrianUE p_pedestrianUE := *, - template NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * - ) := { + template VehicleUE p_vehicleUE := *, + template PedestrianUE p_pedestrianUE := *, + template NRV2XServicesAuthorized.iE_Extensions p_iE_Extensions := * + ) := { vehicleUE := p_vehicleUE, pedestrianUE := p_pedestrianUE, iE_Extensions := p_iE_Extensions @@ -18264,9 +18038,9 @@ module LibNGAP_Templates { template (present) PedestrianUE mw_pedestrianUE(template (present) PedestrianUE p_value := ?) := p_value; template (present) NRUESidelinkAggregateMaximumBitrate mw_nRUESidelinkAggregateMaximumBitrate( - template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, - template NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * - ) := { + template (present) BitRate p_uESidelinkAggregateMaximumBitRate := ?, + template NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := * + ) := { uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, iE_Extensions := p_iE_Extensions } // End of template mw_nRUESidelinkAggregateMaximumBitrate @@ -21940,7 +21714,7 @@ module LibNGAP_Templates { } // End of group Information_elements - } // End of group g_NGAP + // FIXME Parenthesis issue } // End of group g_NGAP group Functions_For_Templates{ } // End of group functionsForTemplates -- GitLab From 8dc54a25cd75790ab3ac3a7b6525e7f4cb05a1b8 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 15:52:03 +0200 Subject: [PATCH 247/365] Bug fixed into TC_NGAP_GNB_CMP_08/11 --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 36 +++++++-- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 118 +++++++++++++++++++++++++++-- 2 files changed, 140 insertions(+), 14 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 607f27f..3dcf04b 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -164,43 +164,63 @@ module NGAP_Steps { */ function f_NGAP_amf_UE_Register() runs on NGAPComponent { //FIXME: Implementation of UE registration - } // End of function f_NGAP_amf_UE_Register() + } // End of function f_NGAP_amf_UE_Register /** * @desc */ function f_NGAP_amf_UE_PDU_ResourceSetup() runs on NGAPComponent { //FIXME: Implementation of PDU session resource setup - } // End of function f_NGAP_amf_UE_PDU_ResourceSetup() + } // End of function f_NGAP_amf_UE_PDU_ResourceSetup /** * @desc */ function f_NGAP_amf_UE_NoLongerAvailable() runs on NGAPComponent { //FIXME: Implementation of PDU session resource setup - } // End of function f_NGAP_amf_UE_NoLongerAvailable() + } // End of function f_NGAP_amf_UE_NoLongerAvailable /** * @desc The IUT entity indicate the initiation "of a Handover Required procedure" */ function f_NGAP_amf_UE_MMP_Initiate_Handover() runs on NGAPComponent { //FIXME: Implementation of Handover init - } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover() + } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover /** * @desc */ function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed() runs on NGAPComponent { //FIXME: Implementation of Handover init - } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed() + } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed /** * @desc */ function f_NGAP_amf_UE_MMP_Handover_Completed() runs on NGAPComponent { //FIXME: Implementation of Handover init - } // End of function f_NGAP_amf_UE_MMP_Handover_Completed() + } // End of function f_NGAP_amf_UE_MMP_Handover_Completed + /** + * @desc + */ + function f_NGAP_amf_UE_MMP_Cancel_Initiated_Handover() runs on NGAPComponent { + //FIXME: Implementation of Handover init + } // End of function f_NGAP_amf_UE_MMP_Cancel_Initiated_Handover + + /** + * @desc + */ + function f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Status_Transfer() runs on NGAPComponent { + //FIXME: Implementation of Handover init + } // End of function f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Status_Transfer + + /** + * @desc + */ + function f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Early_Status_Transfer() runs on NGAPComponent { + //FIXME: Implementation of Handover init + } // End of function f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Early_Status_Transfer /******************************************************************/ @@ -209,14 +229,14 @@ module NGAP_Steps { */ function f_NGAP_gnb_UE_Register() runs on NGAPComponent { //FIXME: Implementation of UE registration - } // End of function f_NGAP_gnb_UE_Register() + } // End of function f_NGAP_gnb_UE_Register /** * @desc */ function f_NGAP_gnb_UE_PDU_ResourceSetup() runs on NGAPComponent { //FIXME: Implementation of PDU session resource setup - } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup() + } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup }//end group BehaviorFunctions diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 9de4422..b84d66f 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1309,7 +1309,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_MMP_Initiate_Handover_Completed(); + f_NGAP_amf_UE_MMP_Initiate_Handover(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -1827,6 +1827,32 @@ module NGAP_TCFunctions { function f_TC_NGAP_GNB_MMP_08() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_NGAP_amf_UE_MMP_Handover_Completed() + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_PathSwitchRequest( + PX_RAN_UE_NGAP_ID, + PX_AMF_UE_NGAP_ID + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + } // End of function f_TC_NGAP_GNB_MMP_08 } // End of group Path_Switch_Request @@ -1834,6 +1860,32 @@ module NGAP_TCFunctions { group Handover_Cancellation{ function f_TC_NGAP_GNB_MMP_09() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_MMP_Initiate_Handover(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_NGAP_amf_UE_MMP_Cancel_Initiated_Handover(); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_HandoverCancel( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ))); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_MMP_09 @@ -1842,23 +1894,77 @@ module NGAP_TCFunctions { group Uplink_RAN_Status_Transfer{ function f_TC_NGAP_GNB_MMP_10() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Status_Transfer(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_NGAP_amf_UE_MMP_Cancel_Initiated_Handover(); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UplinkRANStatusTransfer( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + mw_rANStatusTransfer_TransparentContainer + ))); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_MMP_10 } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ - - function f_TC_NGAP_GNB_MMP_11() runs on aMFNGAPComponent { - - } // End of function f_TC_NGAP_GNB_MMP_11 - } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ + + function f_TC_NGAP_GNB_MMP_11() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Status_Transfer(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Early_Status_Transfer(); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UplinkRANEarlyStatusTransfer( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + mw_earlyStatusTransfer_TransparentContainer + ))); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_MMP_11 + } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ -- GitLab From c615a5bb6f8cd24c8733738311832ec9e4472347 Mon Sep 17 00:00:00 2001 From: ldtke Date: Tue, 28 May 2024 16:07:44 +0200 Subject: [PATCH 248/365] new TC for TC_NGAP_GNB_CMP_10, TC_NGAP_GNB_CMP_11, TC_NGAP_GNB_CMP_12 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 175 ++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 113 +++++++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 40 ++++++ 3 files changed, 328 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index b84d66f..1a7e963 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1272,6 +1272,181 @@ module NGAP_TCFunctions { } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ + + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_10 + */ + function f_TC_NGAP_GNB_CMP_10() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_NoLongerAvailable(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextModificationRequest + ( + -, + - + ))); + + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_UEContextModificationFailure + ( + -, + -, + - + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_10 + + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_11 + */ + function f_TC_NGAP_GNB_CMP_11() runs on aMFNGAPComponent { + + // Preamble + + // TODO: alreadyPreparedHandover + + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextModificationRequest + ( + -, + - + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContexModificationResponse + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_11 + + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_12 + */ + function f_TC_NGAP_GNB_CMP_12() runs on aMFNGAPComponent { + + // Preamble + + // TODO: hasEstablishedInitialContext + + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextModificationRequest_optional1 + ( + -, + -, + -, + m_uESecurityCapabilities + ))); + + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContexModificationResponse + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_12 + + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_13 + */ + function f_TC_NGAP_GNB_CMP_13() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + /* f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextReleaseCommand + ( + m_uE_NGAP_IDs_aMF_UE_NGAP_ID + ( + - + ), + - + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContextReleaseComplete + )); + */ + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_13 + + } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 336619e..e326b93 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -586,6 +586,119 @@ module NGAP_TestCases { } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE because the UE is no longer available." + */ + testcase TC_NGAP_GNB_CMP_10() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_10()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_10 + + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + */ + testcase TC_NGAP_GNB_CMP_11() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_11()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_11 + + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains optional fields Security Key and Security Capabilities and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + */ + testcase TC_NGAP_GNB_CMP_12() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_12()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_12 + + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains different optional fields and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + */ + testcase TC_NGAP_GNB_CMP_13() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_13()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_13 + + } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 1f59361..78a1307 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1619,6 +1619,46 @@ module LibNGAP_Templates { } } } // End of template m_n2_UEContextModificationRequest + + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.7 UE CONTEXT MODIFICATION REQUEST + */ + template (value) InitiatingMessage m_n2_UEContextModificationRequest_optional1( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + ) := { + procedureCode := id_UEContextModification, + criticality := reject, + value_ := { + UEContextModificationRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_SecurityKey, + criticality := reject, + value_ := { SecurityKey := p_nextHopNH } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + } + } + } + } + } // End of template m_n2_UEContextModificationRequest } // End of group Send -- GitLab From cf09de295a40f1545c7a03140e8fc963850f3753 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 16:29:06 +0200 Subject: [PATCH 249/365] Implement TC_NGAP_GNB_NAS_xx --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 77 +- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 393 +++--- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 1688 +++++++++++------------ 3 files changed, 1099 insertions(+), 1059 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 3dcf04b..dea2e43 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -7,7 +7,7 @@ * 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 +* @see ETSI TS */ module NGAP_Steps { @@ -84,7 +84,7 @@ module NGAP_Steps { group Preambles{ /** - * @desc + * @desc */ function f_preamble_NGAP_AMF() runs on NGAPComponent { var default v_def_ngap_; @@ -94,7 +94,7 @@ module NGAP_Steps { } // End of function f_preamble_NGAP_AMF /** - * @desc + * @desc */ function f_preamble_NGAP_gNB() runs on NGAPComponent { var default v_def_ngap_; @@ -104,7 +104,7 @@ module NGAP_Steps { } // End of function f_preamble_NGAP_gNB /** - * @desc + * @desc */ function f_preamble_NGAP_gNB2() runs on NGAPComponent { var default v_def_ngap_; @@ -118,7 +118,7 @@ module NGAP_Steps { group Postambles { /** - * @desc + * @desc */ function f_postamble_NGAP_AMF() runs on NGAPComponent { f_postambleNGAP_AMF(); @@ -128,7 +128,7 @@ module NGAP_Steps { } // End of function f_postamble_NGAP_AMF /** - * @desc + * @desc */ function f_postamble_NGAP_gNB() runs on NGAPComponent { f_postambleNGAP_gNB(); @@ -138,7 +138,7 @@ module NGAP_Steps { } // End of function f_postamble_NGAP_gNB /** - * @desc + * @desc */ function f_postamble_NGAP_gNB2() runs on NGAPComponent { f_postambleNGAP_gNB(); @@ -160,82 +160,103 @@ module NGAP_Steps { group BehaviorFunctions{ /** - * @desc + * @desc */ function f_NGAP_amf_UE_Register() runs on NGAPComponent { - //FIXME: Implementation of UE registration + //FIXME: Implementation of UE registration } // End of function f_NGAP_amf_UE_Register /** - * @desc + * @desc */ function f_NGAP_amf_UE_PDU_ResourceSetup() runs on NGAPComponent { - //FIXME: Implementation of PDU session resource setup + //FIXME: Implementation of PDU session resource setup } // End of function f_NGAP_amf_UE_PDU_ResourceSetup /** - * @desc + * @desc */ function f_NGAP_amf_UE_NoLongerAvailable() runs on NGAPComponent { - //FIXME: Implementation of PDU session resource setup + //FIXME: Implementation of PDU session resource setup } // End of function f_NGAP_amf_UE_NoLongerAvailable /** * @desc The IUT entity indicate the initiation "of a Handover Required procedure" */ function f_NGAP_amf_UE_MMP_Initiate_Handover() runs on NGAPComponent { - //FIXME: Implementation of Handover init + //FIXME: Implementation of Handover init } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover /** - * @desc + * @desc */ function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed() runs on NGAPComponent { - //FIXME: Implementation of Handover init + //FIXME: Implementation of Handover init completed } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed /** - * @desc + * @desc */ function f_NGAP_amf_UE_MMP_Handover_Completed() runs on NGAPComponent { - //FIXME: Implementation of Handover init + //FIXME: Implementation of Handover completed } // End of function f_NGAP_amf_UE_MMP_Handover_Completed /** - * @desc + * @desc */ function f_NGAP_amf_UE_MMP_Cancel_Initiated_Handover() runs on NGAPComponent { - //FIXME: Implementation of Handover init + //FIXME: Implementation of Handover init cancelled } // End of function f_NGAP_amf_UE_MMP_Cancel_Initiated_Handover /** - * @desc + * @desc */ function f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Status_Transfer() runs on NGAPComponent { - //FIXME: Implementation of Handover init + //FIXME: Implementation of initiate uplink RAN xfer } // End of function f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Status_Transfer /** - * @desc + * @desc */ function f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Early_Status_Transfer() runs on NGAPComponent { - //FIXME: Implementation of Handover init + //FIXME: Implementation of initiate an early uplink RAN xfer } // End of function f_NGAP_amf_UE_MMP_Initiate_UE_Uplink_RAN_Early_Status_Transfer + /** + * @desc + */ + function f_NGAP_amf_UE_NAS_Initiate() runs on NGAPComponent { + //FIXME: Implementation of a NAS procedure + } // End of function f_NGAP_amf_UE_NAS_Initiate + + /** + * @desc + */ + function f_NGAP_amf_UE_RRC_UL_Message() runs on NGAPComponent { + //FIXME: Implementation of an RRC UL message delivery + } // End of function f_NGAP_amf_UE_RRC_UL_Message + + /** + * @desc + */ + function f_NGAP_amf_UE_RRC_UL_Message_Failure() runs on NGAPComponent { + //FIXME: Implementation of an RRC UL message delivery failure + } // End of function f_NGAP_amf_UE_RRC_UL_Message_Failure + /******************************************************************/ /** - * @desc + * @desc */ function f_NGAP_gnb_UE_Register() runs on NGAPComponent { - //FIXME: Implementation of UE registration + //FIXME: Implementation of UE registration } // End of function f_NGAP_gnb_UE_Register /** - * @desc + * @desc */ function f_NGAP_gnb_UE_PDU_ResourceSetup() runs on NGAPComponent { - //FIXME: Implementation of PDU session resource setup + //FIXME: Implementation of PDU session resource setup } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup }//end group BehaviorFunctions diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 1a7e963..08d4ce5 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -244,7 +244,7 @@ module NGAP_TCFunctions { // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, // *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * // ),//template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, - ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer + ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer *//template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * ) } @@ -329,9 +329,9 @@ module NGAP_TCFunctions { // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * // ), //template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, - ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer + ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * - ) + ) } ) ) @@ -388,7 +388,7 @@ module NGAP_TCFunctions { // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, // *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * // ),//template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, - ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer + ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer *//template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * ) } @@ -471,7 +471,7 @@ module NGAP_TCFunctions { // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, // *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * // ),//template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, - ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer + ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer *//template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * ) } @@ -524,7 +524,7 @@ module NGAP_TCFunctions { ) ), - //in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit - ) + ) } ))); @@ -534,15 +534,15 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceReleaseResponse( -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - { - ( + { + ( mw_pDUSessionResourceReleasedItemRelRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, //(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, -, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceReleaseResponseTransfer -//template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * - ) - + ) + ) }//template (present) PDUSessionResourceReleasedListRelRes p_pDUSessionResourceReleasedListRelRes := ? ) @@ -603,7 +603,7 @@ module NGAP_TCFunctions { ) ), - //in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit - ) + ) } ))); @@ -613,15 +613,15 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceReleaseResponse( -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - { - ( + { + ( mw_pDUSessionResourceReleasedItemRelRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, //(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, -, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceReleaseResponseTransfer -//template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * - ) - + ) + ) }//template (present) PDUSessionResourceReleasedListRelRes p_pDUSessionResourceReleasedListRelRes := ? ) @@ -674,7 +674,7 @@ module NGAP_TCFunctions { //), -,//in template (omit) NAS_PDU p_nAS_PDU := omit, -//in template (omit) PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := omit - ) + ) } ))); @@ -683,8 +683,8 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceModifyResponse( -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - { - ( + { + ( mw_pDUSessionResourceModifyItemModRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, ?,//mw_pDUSessionResourceModifyResponseTransfer( @@ -697,8 +697,8 @@ module NGAP_TCFunctions { //),//FIXME: Decode&Match - In ASN1 it is OCTET STRING pDUSessionResourceModifyResponseTransfer -//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * - ) - + ) + ) } ) @@ -759,7 +759,7 @@ module NGAP_TCFunctions { //), -,//in template (omit) NAS_PDU p_nAS_PDU := omit, -//in template (omit) PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := omit - ) + ) } ))); @@ -768,7 +768,7 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceModifyResponseFailedToMod( -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - { + { mw_pDUSessionResourceFailedToModifyItemModRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, ?,//mw_pDUSessionResourceModifyUnsuccessfulTransfer( @@ -777,7 +777,7 @@ module NGAP_TCFunctions { // *//template PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * //),/FIXME: Decode&Match - In ASN1 it is OCTET STRING mw_pDUSessionResourceModifyUnsuccessfulTransfer * - ) + ) } ) @@ -819,7 +819,7 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceNotify( -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - { + { mw_pDUSessionResourceNotifyItem( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, ?,//template (present) PDUSessionResourceNotifyItem.pDUSessionResourceNotifyTransfer p_pDUSessionResourceNotifyTransfer, @@ -865,17 +865,17 @@ module NGAP_TCFunctions { mw_n2_PDUSessionResourceModifyIndication( -,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, -,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - { - ( + { + ( mw_pDUSessionResourceModifyItemModInd( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, ?,//mw_pDUSessionResourceModifyIndicationTransfer( //?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - //*,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + //*,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, //*//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * //),FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceModifyIndicationTransfer -//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * - ) + ) ) } ) @@ -898,29 +898,29 @@ module NGAP_TCFunctions { group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ - + /** * @desc Testcase function for TP_NGAP_GNB_CMP_01 */ function f_TC_NGAP_GNB_CMP_01() runs on aMFNGAPComponent { - + // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); f_NGAP_amf_UE_PDU_ResourceSetup(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - + + // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_InitialContextSetupRequest - ( + m_n2_InitialContextSetupRequest + ( -, -, m_gUAMI, - { + { { PX_PDU_SESSION_ID, omit, @@ -954,19 +954,19 @@ module NGAP_TCFunctions { ), omit } - + }, - { + { m_allowedNSSAI_Item( m_s_NSSAI('00'O, '000000'O) - ) + ) }, m_uESecurityCapabilities, - ) )); - - + + f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_InitialContextSetupResponse( @@ -981,7 +981,7 @@ module NGAP_TCFunctions { } ) )); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -989,40 +989,40 @@ module NGAP_TCFunctions { f_postamble_NGAP_gNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - + } // End of function f_TC_NGAP_GNB_CMP_01 - + /** * @desc Testcase function for TP_NGAP_GNB_CMP_02 */ function f_TC_NGAP_GNB_CMP_02() runs on aMFNGAPComponent { - + // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); f_NGAP_amf_UE_PDU_ResourceSetup(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - + + // Body f_send_NGAP_PDU( m_ngap_initMsg( m_n2_InitialContextSetupRequest_noPDUSessionResourceSetupListCxtReq - ( + ( -, -, m_gUAMI, - { + { m_allowedNSSAI_Item( m_s_NSSAI('00'O, '000000'O) - ) + ) }, m_uESecurityCapabilities, - - + - ))); - - + + f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_InitialContextSetupResponse_noPDUSessionResourceSetupListSURes( @@ -1030,7 +1030,7 @@ module NGAP_TCFunctions { - ) )); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -1038,31 +1038,31 @@ module NGAP_TCFunctions { f_postamble_NGAP_gNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - + } // End of function f_TC_NGAP_GNB_CMP_02 - + /** * @desc Testcase function for TP_NGAP_GNB_CMP_03 */ function f_TC_NGAP_GNB_CMP_03() runs on aMFNGAPComponent { - + // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); f_NGAP_amf_UE_PDU_ResourceSetup(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - + + // Body f_send_NGAP_PDU( m_ngap_initMsg( m_n2_InitialContextSetupRequest_optional_TraceActivation - ( + ( -, -, m_gUAMI, - { + { { PX_PDU_SESSION_ID, omit, @@ -1096,12 +1096,12 @@ module NGAP_TCFunctions { ), omit } - + }, - { + { m_allowedNSSAI_Item( m_s_NSSAI('00'O, '000000'O) - ) + ) }, m_uESecurityCapabilities, -, @@ -1111,10 +1111,10 @@ module NGAP_TCFunctions { m_traceDepth(minimum), PX_TRANSPORT_LAYER_ADDRESS, omit//in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit - ) + ) ))); - - + + f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_InitialContextSetupResponse( @@ -1129,7 +1129,7 @@ module NGAP_TCFunctions { } ) )); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -1137,33 +1137,33 @@ module NGAP_TCFunctions { f_postamble_NGAP_gNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - + } // End of function f_TC_NGAP_GNB_CMP_03 - + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ - + /** * @desc Testcase function for TC_NGAP_GNB_CMP_07 */ function f_TC_NGAP_GNB_CMP_07() runs on aMFNGAPComponent { - + // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); f_NGAP_amf_UE_PDU_ResourceSetup(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - + // TODO: hasEstablishedInitialContext - + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - + + // Body action("Trigger UE context release request"); - - + + f_recv_NGAP_PDU( mw_ngap_initMsg( mw_n2_UEContextReleaseRequest( @@ -1172,7 +1172,7 @@ module NGAP_TCFunctions { - ) )); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -1180,44 +1180,44 @@ module NGAP_TCFunctions { f_postamble_NGAP_gNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - + } // End of function f_TC_NGAP_GNB_CMP_07 - + } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ - + /** * @desc Testcase function for TP_NGAP_GNB_CMP_08 */ function f_TC_NGAP_GNB_CMP_08() runs on aMFNGAPComponent { - + // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); f_NGAP_amf_UE_PDU_ResourceSetup(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - + + // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_UEContextReleaseCommand - ( + m_n2_UEContextReleaseCommand + ( m_uE_NGAP_IDs_uE_NGAP_ID_pair ( m_uE_NGAP_ID_pair ), - ))); - - + + f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_UEContextReleaseComplete )); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -1225,40 +1225,40 @@ module NGAP_TCFunctions { f_postamble_NGAP_gNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - + } // End of function f_TC_NGAP_GNB_CMP_08 - + /** * @desc Testcase function for f_TC_NGAP_GNB_CMP_09 */ function f_TC_NGAP_GNB_CMP_09() runs on aMFNGAPComponent { - + // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); f_NGAP_amf_UE_PDU_ResourceSetup(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - + + // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_UEContextReleaseCommand - ( + m_n2_UEContextReleaseCommand + ( m_uE_NGAP_IDs_aMF_UE_NGAP_ID ( - ), - ))); - - + + f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_UEContextReleaseComplete )); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -1266,9 +1266,9 @@ module NGAP_TCFunctions { f_postamble_NGAP_gNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - + } // End of function f_TC_NGAP_GNB_CMP_09 - + } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ @@ -1506,7 +1506,6 @@ module NGAP_TCFunctions { } ))); - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -1570,10 +1569,10 @@ module NGAP_TCFunctions { m_gTPTunnel )))))) }, - { + { m_allowedNSSAI_Item( m_s_NSSAI('00'O, '000000'O) - ) + ) }, PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) m_gUAMI @@ -1654,10 +1653,10 @@ module NGAP_TCFunctions { m_gTPTunnel )))))) }, - { + { m_allowedNSSAI_Item( m_s_NSSAI('00'O, '000000'O) - ) + ) }, PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) m_gUAMI @@ -1729,10 +1728,10 @@ module NGAP_TCFunctions { m_gTPTunnel )))))) }, - { + { m_allowedNSSAI_Item( m_s_NSSAI('00'O, '000000'O) - ) + ) }, PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) m_gUAMI, @@ -1847,13 +1846,13 @@ module NGAP_TCFunctions { m_securityIndication( m_integrityProtectionIndication, m_confidentialityProtectionIndication, - m_maximumIntegrityProtectedDataRate + m_maximumIntegrityProtectedDataRate )))))) }, - { + { m_allowedNSSAI_Item( m_s_NSSAI('00'O, '000000'O) - ) + ) }, PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) m_gUAMI @@ -1935,10 +1934,10 @@ module NGAP_TCFunctions { m_directForwardingPathAvailability ))))) }, - { + { m_allowedNSSAI_Item( m_s_NSSAI('00'O, '000000'O) - ) + ) }, PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???)) m_gUAMI @@ -2162,10 +2161,16 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_NAS_Initiate(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_initialUeMessage( + PX_RAN_UE_NGAP_ID + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -2194,6 +2199,13 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_NGAP_amf_UE_RRC_UL_Message(); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UplinkNASTransport( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -2219,6 +2231,13 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_NGAP_amf_UE_RRC_UL_Message_Failure(); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_NASNonDeliveryIndication( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -2255,7 +2274,7 @@ module NGAP_TCFunctions { // Body action("Trigger NG SETUP REQUEST!"); - + f_recv_NGAP_PDU( mw_ngap_initMsg( mw_n2_NGSetupRequest( @@ -2295,7 +2314,7 @@ module NGAP_TCFunctions { // Body action("Trigger RAN CONFIGURATION UPDATE!"); - + f_recv_NGAP_PDU( mw_ngap_initMsg( mw_n2_RANConfigurationUpdate(//FIXME: prepare/update template IEs @@ -2379,7 +2398,7 @@ module NGAP_TCFunctions { ) ) ); - + f_recv_NGAP_PDU( mw_ngap_unsuccMsg( mw_n2_AMFConfigurationUpdateFailure( @@ -2421,12 +2440,12 @@ module NGAP_TCFunctions { m_n2_NGReset( m_cause_radioNetwork(PX_NG_SETUP_FAILURE), m_resetType_nG_Interface( - m_resetAll(reset_all) + m_resetAll(reset_all) ) ) ) ); - + f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_NGResetAcknowledge @@ -2446,7 +2465,7 @@ module NGAP_TCFunctions { } // End of group NG_Reset //8.7.5 group Error_Indication{ - + /** * @desc Testcase function for TC_NGAP_gNB_IMP_06 */ @@ -2462,7 +2481,7 @@ module NGAP_TCFunctions { // Body action("Trigger ERROR INDICATION!"); - + f_recv_NGAP_PDU( mw_ngap_initMsg( mw_n2_ErrorIndication @@ -2494,32 +2513,32 @@ module NGAP_TCFunctions { group Configuration_Transfer_Procedures{ //8.8.1 group Uplink_RAN_Configuration_Transfer{ - + /** * @desc Testcase function for TC_NGAP_gNB_CTP_01 */ function f_TC_NGAP_GNB_CTP_01() runs on aMFNGAPComponent { // Local variables - + // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - + // Body action("Trigger Uplink_RAN_Configuration_Transfer!"); - + f_recv_NGAP_PDU( mw_ngap_initMsg( mw_n2_UplinkRANConfigurationTransfer ) ); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - + // Postamble f_postamble_NGAP_gNB(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); @@ -2528,29 +2547,29 @@ module NGAP_TCFunctions { } // End of group Uplink_RAN_Configuration_Transfer //8.8.2 group Downlink_RAN_Configuration_Transfer{ - + /** * @desc Testcase function for TC_NGAP_aMF_CTP_01 */ function f_TC_NGAP_AMF_CTP_01() runs on gNBNGAPComponent { // Local variables - + // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - + // Body action("Trigger Downlink_RAN_Configuration_Transfer!"); - + f_recv_NGAP_PDU( mw_ngap_initMsg( mw_n2_DownlinkRANConfigurationTransfer ) ); - + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -2559,7 +2578,7 @@ module NGAP_TCFunctions { f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } - + } // End of group Downlink_RAN_Configuration_Transfer } // End of group Configuration_Transfer_Procedures //8.9 @@ -2596,7 +2615,7 @@ module NGAP_TCFunctions { mw_n2_WriteReplaceWarningResponse( PX_MESSAGE_IDENTIFIER, PX_SERIAL_NUMBER - ) + ) ) ); @@ -2639,7 +2658,7 @@ module NGAP_TCFunctions { mw_n2_WriteReplaceWarningResponse( PX_MESSAGE_IDENTIFIER, PX_SERIAL_NUMBER - ) + ) ) ); @@ -2675,7 +2694,7 @@ module NGAP_TCFunctions { m_ngap_initMsg( m_n2_PWSCancelRequest( PX_MESSAGE_IDENTIFIER, - PX_SERIAL_NUMBER + PX_SERIAL_NUMBER ) )); @@ -2684,7 +2703,7 @@ module NGAP_TCFunctions { /*mw*/m_n2_PWSCancelResponse( //missing template PX_MESSAGE_IDENTIFIER, PX_SERIAL_NUMBER - ) + ) ) ); @@ -2717,7 +2736,7 @@ module NGAP_TCFunctions { // Body action("Trigger PWS_Restart_Indication!"); - + f_recv_NGAP_PDU( mw_ngap_initMsg( ? @@ -2726,7 +2745,7 @@ module NGAP_TCFunctions { // ?,//in template (value) GlobalRANNodeID p_globalRANNodeID, // ?,//in template (value) TAIListForRestart p_tAIListForRestart, // ?//in template (value) EmergencyAreaIDListForRestart p_emergencyAreaIDListForRestart - // ) + // ) ) ); @@ -2767,7 +2786,7 @@ module NGAP_TCFunctions { // /*mw*/m_n2_PWSFailureIndication( //missing template // ?,//in template (value) PWSFailedCellList p_pWSFailedCellList, // ?//in template (value) GlobalRANNodeID p_globalRANNodeID - // ) + // ) ) ); @@ -2923,10 +2942,10 @@ module NGAP_TCFunctions { ?, ?, ?, - ?, - ?, - ?, - ? + ?, + ?, + ?, + ? ) ) ); @@ -2988,7 +3007,7 @@ module NGAP_TCFunctions { group Downlink_RIM_Information_Transfer{ } // End of group Downlink_RIM_Information_Transfer } // End of group RIM_Information_Transfer_Procedures - } // End of group gNB_Role + } // End of group gNB_Role group aMF_Role{ //8.2 @@ -3005,7 +3024,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -3025,7 +3044,7 @@ module NGAP_TCFunctions { -,//in template (omit) SD p_sD := omit, -//in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit ), - ?,//mw_pDUSessionResourceSetupRequestTransfer(?),OCTETSTRING + ?,//mw_pDUSessionResourceSetupRequestTransfer(?),OCTETSTRING -,//in template (omit) NAS_PDU p_pDUSessionNAS_PDU := omit, -//in template (omit) PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := omit ) @@ -3073,7 +3092,7 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceToReleaseItemRelCmd( PX_PDU_SESSION_ID, - ?,//mw_pDUSessionResourceReleaseCommandTransfer(?,-),OCTETSTRING + ?,//mw_pDUSessionResourceReleaseCommandTransfer(?,-),OCTETSTRING -//in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit ) } @@ -3166,7 +3185,7 @@ module NGAP_TCFunctions { m_n2_PDUSessionResourceModifyIndication( PX_AMF_UE_NGAP_ID,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, PX_RAN_UE_NGAP_ID,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - { + { m_pDUSessionResourceModifyItemModInd( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, bit2oct(encvalue( @@ -3185,14 +3204,14 @@ module NGAP_TCFunctions { omit, omit ) - },//in template (value) AssociatedQosFlowList p_associatedQosFlowList, + },//in template (value) AssociatedQosFlowList p_associatedQosFlowList, omit//in template (omit) QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := omit ),//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - omit,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + omit,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, omit//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * ))), omit//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * - ) + ) } ) ) @@ -3214,7 +3233,7 @@ module NGAP_TCFunctions { // -//template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * // ), OCTETSTRING -//template PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := * - ) + ) } ) ) @@ -3250,8 +3269,8 @@ module NGAP_TCFunctions { m_n2_PDUSessionResourceModifyIndication( PX_AMF_UE_NGAP_ID,//template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, PX_RAN_UE_NGAP_ID,//template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, - { - ( + { + ( m_pDUSessionResourceModifyItemModInd( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, bit2oct(encvalue( @@ -3270,14 +3289,14 @@ module NGAP_TCFunctions { omit, omit ) - },//in template (value) AssociatedQosFlowList p_associatedQosFlowList, + },//in template (value) AssociatedQosFlowList p_associatedQosFlowList, omit//in template (omit) QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := omit ),//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - omit,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + omit,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, omit//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * ))), omit//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * - ) + ) ) } ) @@ -3440,7 +3459,7 @@ module NGAP_TCFunctions { template (omit) SliceSupportItem m_ie_sliceSupportItem( in template (value) S_NSSAI p_S_NSSAI, in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit - ) := { + ) := { s_NSSAI := p_S_NSSAI, iE_Extensions :=p_iE_Extensions } // End of template m_ie_sliceSupportItem @@ -3503,7 +3522,7 @@ module NGAP_TCFunctions { // ) // }, // PX_PAGING_DRX - // ) + // ) // ) // ); @@ -3541,7 +3560,7 @@ module NGAP_TCFunctions { *//template PLMNSupportItem.iE_Extensions p_iE_Extensions := * ) }//template (present) PLMNSupportList p_plmnSuppList := ? - ) + ) ) ); @@ -3560,7 +3579,7 @@ module NGAP_TCFunctions { */ function f_TC_NGAP_AMF_IMP_02() runs on gNBNGAPComponent { // Local variables - + // Preamble f_NGAP_gnb_init(); //f_NGAP_gnb_UE_Register(); @@ -3604,7 +3623,7 @@ module NGAP_TCFunctions { // ) // }, // PX_PAGING_DRX - // ) + // ) // ) // ); @@ -3676,7 +3695,7 @@ module NGAP_TCFunctions { // }, // PX_PAGING_DRX, // FIXME:UERetention_Information template m_uERetentionInformation(in UERetentionInformation p_value := ues_retained) - // ) + // ) // ) // ); @@ -3715,7 +3734,7 @@ module NGAP_TCFunctions { ) }//template (present) PLMNSupportList p_plmnSuppList := ? //FIXME:UERetention_Information template mw_uERetentionInformation(template (present) UERetentionInformation p_value := ues_retained) - ) + ) ) ); @@ -3780,7 +3799,7 @@ module NGAP_TCFunctions { // PX_PAGING_DRX, // FIXME:NB_IoT_Default_Paging_DRX, // FIXME:Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; m_extended_RANNodeName... - // ) + // ) // ) // ); @@ -3819,7 +3838,7 @@ module NGAP_TCFunctions { ) }//template (present) PLMNSupportList p_plmnSuppList := ? // FIXME:Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; mw_extended_RANNodeName... - ) + ) ) ); @@ -3831,7 +3850,7 @@ module NGAP_TCFunctions { f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - } // End of function f_TC_NGAP_AMF_IMP_04 + } // End of function f_TC_NGAP_AMF_IMP_04 } // End of group NG_Setup //8.7.2 @@ -3905,7 +3924,7 @@ module NGAP_TCFunctions { mw_ngap_unsuccMsg( mw_n2_RANConfigurationUpdateFailure( ?//template (present) Cause p_cause := ? - ) + ) ) ); @@ -3983,9 +4002,9 @@ module NGAP_TCFunctions { m_n2_NGReset( m_cause_misc(m_causeMisc(-)),//in template (value) Cause p_cause, m_resetType_nG_Interface( - m_resetAll(reset_all) + m_resetAll(reset_all) )//in template (value) ResetType p_resetType - ) + ) ) ); @@ -4018,7 +4037,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4068,7 +4087,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4107,7 +4126,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4143,7 +4162,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4191,7 +4210,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4232,7 +4251,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4283,7 +4302,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4326,7 +4345,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4384,7 +4403,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4394,7 +4413,7 @@ module NGAP_TCFunctions { // f_recv_NGAP_PDU( // mw_ngap_initMsg( // mw_n2_UeTnlaBindingReleaseRequest( - + // ) // ) // ); @@ -4428,7 +4447,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4438,7 +4457,7 @@ module NGAP_TCFunctions { // f_recv_NGAP_PDU( // mw_ngap_initMsg( // mw_n2_Ue****( //FIXME: missing template - + // ) // ) // ); @@ -4466,7 +4485,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4480,7 +4499,7 @@ module NGAP_TCFunctions { // f_recv_NGAP_PDU( // mw_ngap_initMsg( // mw_n2_Ue****( //FIXME: missing template - + // ) // ) // ); @@ -4520,7 +4539,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4530,7 +4549,7 @@ module NGAP_TCFunctions { // f_recv_NGAP_PDU( // mw_ngap_initMsg( // mw_n2_Ue****( //FIXME: missing template - + // ) // ) // ); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 78a1307..6c79607 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -945,13 +945,13 @@ module LibNGAP_Templates { criticality := reject, value_ := { InitialContextSetupRequest := { - - - - - - - + + + + + + + protocolIEs := { { id := id_AMF_UE_NGAP_ID, @@ -992,7 +992,7 @@ module LibNGAP_Templates { } } } // End of template m_n2_InitialContextSetupRequest - + template (value) InitiatingMessage m_n2_InitialContextSetupRequest_noPDUSessionResourceSetupListCxtReq( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, @@ -1040,7 +1040,7 @@ module LibNGAP_Templates { } } } // End of template m_n2_InitialContextSetupRequest_noPDUSessionResourceSetupListCxtReq - + /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST */ @@ -1165,7 +1165,7 @@ module LibNGAP_Templates { criticality := reject, value_ := { SecurityKey := p_nextHopNH } } - + } } } @@ -1413,7 +1413,7 @@ module LibNGAP_Templates { */ template (present) InitiatingMessage mw_n2_UEContextReleaseRequest( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) Cause p_cause := ? ) := { procedureCode := id_UEContextReleaseRequest, @@ -1430,7 +1430,7 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, + }, { id := id_Cause, criticality := ignore, @@ -2570,7 +2570,7 @@ module LibNGAP_Templates { } // End of group Receive } // End of group UE_CONTEXT_RESUME_REQUEST - + group UE_CONTEXT_RESUME_RESPONSE { group Send { @@ -4450,94 +4450,94 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_RANUeNgapID } - }, + }, { id := id_NAS_PDU, criticality := reject, value_ := { NAS_PDU := p_nasPdu } - }, + }, { id := id_UserLocationInformation, criticality := reject, value_ := { UserLocationInformation := p_UeLocInf } - }, + }, { id := id_RRCEstablishmentCause, criticality := ignore, value_ := { RRCEstablishmentCause := p_rrcEstCause } - }//, + }//, /*{ id := NGAP_Constants.id_FiveG_S_TMSI, criticality := NGAP_CommonDataTypes.reject, Value := "NGAP_IEs.FiveG_S_TMSI", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_AMFSetID, criticality := NGAP_CommonDataTypes.ignore, Value := "NGAP_IEs.AMFSetID", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_UEContextRequest, criticality := NGAP_CommonDataTypes.ignore, Value := "NGAP_IEs.UEContextRequest", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_AllowedNSSAI, criticality := NGAP_CommonDataTypes.reject, Value := "NGAP_IEs.AllowedNSSAI", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_SourceToTarget_AMFInformationReroute, criticality := NGAP_CommonDataTypes.ignore, Value := "NGAP_IEs.SourceToTarget_AMFInformationReroute", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_SelectedPLMNIdentity, criticality := NGAP_CommonDataTypes.ignore, Value := "NGAP_IEs.PLMNIdentity", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_IABNodeIndication, criticality := NGAP_CommonDataTypes.reject, Value := "NGAP_IEs.IABNodeIndication", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_CEmodeBSupport_Indicator, criticality := NGAP_CommonDataTypes.reject, Value := "NGAP_IEs.CEmodeBSupport_Indicator", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_LTEM_Indication, criticality := NGAP_CommonDataTypes.ignore, Value := "NGAP_IEs.LTEM_Indication", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_EDT_Session, criticality := NGAP_CommonDataTypes.ignore, Value := "NGAP_IEs.EDT_Session", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_AuthenticatedIndication, criticality := NGAP_CommonDataTypes.ignore, Value := "NGAP_IEs.AuthenticatedIndication", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_NPN_AccessInformation, criticality := NGAP_CommonDataTypes.reject, Value := "NGAP_IEs.NPN_AccessInformation", presence := NGAP_CommonDataTypes.optional_ - }, + }, { id := NGAP_Constants.id_RedCapIndication, criticality := NGAP_CommonDataTypes.ignore, @@ -4571,17 +4571,17 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_RANUeNgapID } - }, + }, { id := id_NAS_PDU, criticality := reject, value_ := { NAS_PDU := p_nasPdu } - }, + }, { id := id_UserLocationInformation, criticality := reject, value_ := { UserLocationInformation := p_UeLocInf } - }, + }, { id := id_RRCEstablishmentCause, criticality := ignore, @@ -4622,7 +4622,7 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, + }, { id := id_NAS_PDU, criticality := reject, @@ -4659,7 +4659,7 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, + }, { id := id_NAS_PDU, criticality := reject, @@ -4701,12 +4701,12 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, + }, { id := id_NAS_PDU, criticality := reject, value_ := { NAS_PDU := p_nasPdu } - }, + }, { id := id_UserLocationInformation, criticality := ignore, @@ -4744,12 +4744,12 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, + }, { id := id_NAS_PDU, criticality := reject, value_ := { NAS_PDU := p_nasPdu } - }, + }, { id := id_UserLocationInformation, criticality := ignore, @@ -4791,12 +4791,12 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, + }, { id := id_NAS_PDU, criticality := reject, value_ := { NAS_PDU := p_nasPdu } - }, + }, { id := id_Cause, criticality := ignore, @@ -4834,12 +4834,12 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, + }, { id := id_NAS_PDU, criticality := reject, value_ := { NAS_PDU := p_nasPdu } - }, + }, { id := id_Cause, criticality := ignore, @@ -4881,12 +4881,12 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, + }, { id := id_NGAP_Message, criticality := reject, value_ := { nGAP_Message := p_nGAPMessage } - }, + }, { id := id_AMFSetID, criticality := ignore, @@ -4924,12 +4924,12 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, + }, { id := id_NGAP_Message, criticality := reject, value_ := { nGAP_Message := p_nGAPMessage } - }, + }, { id := id_AMFSetID, criticality := ignore, @@ -6718,10 +6718,10 @@ module LibNGAP_Templates { in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) NGRANTraceID p_NGRANTraceID, - in template (value) NGRAN_CGI p_nGRAN_CGI, - in template (value) TransportLayerAddress p_tla, - in template (value) PrivacyIndicator p_privacyInd, - in template (value) URI_address p_uRI_address + in template (value) NGRAN_CGI p_nGRAN_CGI, + in template (value) TransportLayerAddress p_tla, + in template (value) PrivacyIndicator p_privacyInd, + in template (value) URI_address p_uRI_address ) := { procedureCode := id_CellTrafficTrace, criticality := ignore, @@ -6790,10 +6790,10 @@ module LibNGAP_Templates { template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) NGRANTraceID p_NGRANTraceID := ?, - template (present) NGRAN_CGI p_nGRAN_CGI := ?, - template (present) TransportLayerAddress p_tla := ?, - template (present) PrivacyIndicator p_privacyInd := ?, - template (present) URI_address p_uRI_address := ? + template (present) NGRAN_CGI p_nGRAN_CGI := ?, + template (present) TransportLayerAddress p_tla := ?, + template (present) PrivacyIndicator p_privacyInd := ?, + template (present) URI_address p_uRI_address := ? ) := { procedureCode := id_CellTrafficTrace, criticality := ignore, @@ -7001,7 +7001,7 @@ module LibNGAP_Templates { in template (value) PLMNIdentity p_pLMNIdentity, in template (value) Allowed_PNI_NPN_Item.pNI_NPN_restricted p_pNI_NPN_restricted := restricted, in template (value) Allowed_CAG_List_per_PLMN p_allowed_CAG_List_per_PLMN, - in template (omit) Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := omit + in template (omit) Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, pNI_NPN_restricted := p_pNI_NPN_restricted, @@ -7061,7 +7061,7 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_aMF_TNLAssociationSetupItem - template (omit) AMF_TNLAssociationToAddItem m_aMF_TNLAssociationToAddItem( + template (omit) AMF_TNLAssociationToAddItem m_aMF_TNLAssociationToAddItem( in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, in template (value) TNLAddressWeightFactor p_tNLAddressWeightFactor, in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, @@ -7995,7 +7995,7 @@ module LibNGAP_Templates { template (omit) DRBStatusDL12 m_dRBStatusDL12( in template (value) COUNTValueForPDCP_SN12 p_dL_COUNTValue, - in template (omit) DRBStatusDL12.iE_Extension p_iE_Extension := omit + in template (omit) DRBStatusDL12.iE_Extension p_iE_Extension := omit ) := { dL_COUNTValue := p_dL_COUNTValue, iE_Extension := p_iE_Extension @@ -8030,7 +8030,7 @@ module LibNGAP_Templates { template (omit) DRBStatusUL12 m_dRBStatusUL12( in template (value) COUNTValueForPDCP_SN12 p_uL_COUNTValue, in template (omit) DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := omit, - in template (omit) DRBStatusUL12.iE_Extension p_iE_Extension := omit + in template (omit) DRBStatusUL12.iE_Extension p_iE_Extension := omit ) := { uL_COUNTValue := p_uL_COUNTValue, receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, @@ -8040,7 +8040,7 @@ module LibNGAP_Templates { template (omit) DRBStatusUL18 m_dRBStatusUL18( in template (value) COUNTValueForPDCP_SN18 p_uL_COUNTValue, in template (omit) DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := omit, - in template (omit) DRBStatusUL18.iE_Extension p_iE_Extension := omit + in template (omit) DRBStatusUL18.iE_Extension p_iE_Extension := omit ) := { uL_COUNTValue := p_uL_COUNTValue, receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, @@ -8602,7 +8602,7 @@ module LibNGAP_Templates { template (value) GBR_QosInformation.iE_Extensions m_gBR_QosInformation_id_AlternativeQoSParaSetList( in template (value) AlternativeQoSParaSetList p_alternativeQoSParaSetList ) := { - { + { id := id_AlternativeQoSParaSetList, criticality := ignore, extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} @@ -8650,10 +8650,10 @@ module LibNGAP_Templates { } // End of template m_globalLine_ID template (value) GlobalLine_ID.iE_Extensions m_globalLine_ID_id_TAI(in template (value) TAI p_tAI) := { - { + { id := id_TAI, criticality := ignore, - extensionValue := { TAI := p_tAI } + extensionValue := { TAI := p_tAI } } } // End of template m_globalLine_ID_id_TAI @@ -8820,50 +8820,50 @@ module LibNGAP_Templates { template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList ) := { - { + { id := id_AdditionalDLForwardingUPTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template m_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_ULForwardingUP_TNLInformation, criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_handoverCommandTransfer_id_ULForwardingUP_TNLInformation template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList ) := { - { + { id := id_AdditionalULForwardingUPTNLInformation, criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template m_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_DataForwardingResponseERABList( in template (value) DataForwardingResponseERABList p_dataForwardingResponseERABList ) := { - { + { id := id_DataForwardingResponseERABList, criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } } } // End of template m_handoverCommandTransfer_id_DataForwardingResponseERABList template (value) HandoverCommandTransfer.iE_Extensions m_handoverCommandTransfer_id_QosFlowFailedToSetupList( in template (value) QosFlowListWithCause p_qosFlowListWithCause ) := { - { + { id := id_QosFlowFailedToSetupList, criticality := ignore, - extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } + extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } } } // End of template m_handoverCommandTransfer_id_QosFlowFailedToSetupList @@ -8898,80 +8898,80 @@ module LibNGAP_Templates { template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( in template (value) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList ) := { - { + { id := id_AdditionalDLUPTNLInformationForHOList, criticality := reject, - extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } + extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } } } // End of template m_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_ULForwardingUP_TNLInformation, criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList ) := { - { + { id := id_AdditionalULForwardingUPTNLInformation, criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template m_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( in template (value) DataForwardingResponseERABList p_dataForwardingResponseERABList ) := { - { + { id := id_DataForwardingResponseERABList, criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } } } // End of template m_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation ) := { - { + { id := id_UsedRSNInformation, criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } } } // End of template m_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( in template (value) GlobalRANNodeID p_globalRANNodeID ) := { - { + { id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } } // End of template m_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID template (value) HandoverRequestAcknowledgeTransfer.iE_Extensions m_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( in template (value) MBS_SupportIndicator p_mBS_SupportIndicator ) := { - { + { id := id_MBS_SupportIndicator, criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } } } // End of template m_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator @@ -9157,7 +9157,7 @@ module LibNGAP_Templates { ) := { id := id_IntersystemSONInformationRequest, criticality := ignore, - value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } + value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } } // End of template m_intersystemSONInformation_id_IntersystemSONInformationRequest template (value) IntersystemSONInformation.choice_Extensions m_intersystemSONInformation_id_IntersystemSONInformationReply( @@ -9165,7 +9165,7 @@ module LibNGAP_Templates { ) := { id := id_IntersystemSONInformationReply, criticality := ignore, - value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } + value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } } // End of template m_intersystemSONInformation_id_IntersystemSONInformationReply template (value) IntersystemSONInformationRequest m_intersystemSONInformationRequest_nGRAN_CellActivation( @@ -9621,10 +9621,10 @@ module LibNGAP_Templates { template (value) LastVisitedNGRANCellInformation.iE_Extensions m_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( in template (value) LastVisitedPSCellList p_lastVisitedPSCellList ) := { - { + { id := id_LastVisitedPSCellList, criticality := ignore, - extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } + extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } } } // End of template m_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList @@ -9660,10 +9660,10 @@ module LibNGAP_Templates { template (value) LocationReportingRequestType.iE_Extensions m_locationReportingRequestType_id_LocationReportingAdditionalInfo( in template (value) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo ) := { - { + { id := id_LocationReportingAdditionalInfo, criticality := ignore, - extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } + extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } } } // End of template m_locationReportingRequestType_id_LocationReportingAdditionalInfo @@ -9894,30 +9894,30 @@ module LibNGAP_Templates { template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC ) := { - { + { id := id_MBS_SessionTNLInfo5GC, criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } } } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList ) := { - { + { id := id_MBS_QoSFlowsToBeSetupModList, criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } } } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( in template (value) MBS_SessionFSAIDList p_mBS_SessionFSAIDList ) := { - { + { id := id_MBS_SessionFSAIDList, criticality := ignore, - value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } } } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList @@ -10114,40 +10114,40 @@ module LibNGAP_Templates { template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( in template (value) PLMNIdentity p_pLMNIdentity ) := { - { + { id := id_LastEUTRAN_PLMNIdentity, criticality := ignore, - extensionValue := { PLMNIdentity := p_pLMNIdentity } + extensionValue := { PLMNIdentity := p_pLMNIdentity } } } // End of template m_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_CNTypeRestrictionsForServing( in template (value) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing ) := { - { + { id := id_CNTypeRestrictionsForServing, criticality := ignore, - extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } + extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } } } // End of template m_mobilityRestrictionList_id_CNTypeRestrictionsForServing template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( in template (value) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent ) := { - { + { id := id_CNTypeRestrictionsForEquivalent, criticality := ignore, - extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } + extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } } } // End of template m_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent template (value) MobilityRestrictionList.iE_Extensions m_mobilityRestrictionList_id_NPN_MobilityInformation( in template (value) NPN_MobilityInformation p_nPN_MobilityInformation ) := { - { + { id := id_NPN_MobilityInformation, criticality := reject, - extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } + extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } } } // End of template m_mobilityRestrictionList_id_NPN_MobilityInformation @@ -10246,50 +10246,50 @@ module LibNGAP_Templates { template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( in template (value) MBS_SessionID p_mBS_SessionID ) := { - { + { id := id_MBS_SessionID, criticality := reject, - value_ := { MBS_SessionID := p_mBS_SessionID } + value_ := { MBS_SessionID := p_mBS_SessionID } } } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_SessionID template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( in template (value) MBS_ServiceArea p_mBS_ServiceArea ) := { - { + { id := id_MBS_ServiceArea, criticality := reject, - value_ := { MBS_ServiceArea := p_mBS_ServiceArea } + value_ := { MBS_ServiceArea := p_mBS_ServiceArea } } } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList ) := { - { + { id := id_MBS_QoSFlowsToBeSetupModList, criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } } } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( in template (value) QosFlowListWithCause p_qosFlowListWithCause ) := { - { + { id := id_MBS_QoSFlowToReleaseList, criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } } } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList template (value) MulticastSessionUpdateRequestTransfer.protocolIEs m_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC ) := { - { + { id := id_MBS_SessionTNLInfo5GC, criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } } } // End of template m_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC @@ -10338,20 +10338,20 @@ module LibNGAP_Templates { template (value) M1Configuration.iE_Extensions m_m1Configuration_id_IncludeBeamMeasurementsIndication( in template (value) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication ) := { - { + { id := id_IncludeBeamMeasurementsIndication, criticality := ignore, - extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } + extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } } } // End of template m_m1Configuration_id_IncludeBeamMeasurementsIndication template (value) M1Configuration.iE_Extensions m_m1Configuration_id_BeamMeasurementsReportConfiguration( in template (value) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration ) := { - { + { id := id_BeamMeasurementsReportConfiguration, criticality := ignore, - extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } + extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } } } // End of template m_m1Configuration_id_BeamMeasurementsReportConfiguration @@ -10404,10 +10404,10 @@ module LibNGAP_Templates { template (value) M1PeriodicReporting.iE_Extensions m_m1PeriodicReporting_id_ExtendedReportIntervalMDT( in template (value) ExtendedReportIntervalMDT p_extendedReportIntervalMDT ) := { - { + { id := id_ExtendedReportIntervalMDT, criticality := ignore, - extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } + extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } } } // End of template m_m1PeriodicReporting_id_ExtendedReportIntervalMDT @@ -10424,10 +10424,10 @@ module LibNGAP_Templates { template (value) M4Configuration.iE_Extensions m_m4Configuration_id_M4ReportAmount( in template (value) M4ReportAmountMDT p_m4ReportAmountMDT ) := { - { + { id := id_ExtendedReportIntervalMDT, criticality := ignore, - extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } + extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } } } // End of template m_m4Configuration_id_M4ReportAmount @@ -10448,10 +10448,10 @@ module LibNGAP_Templates { template (value) M5Configuration.iE_Extensions m_m5Configuration_id_M5ReportAmount( in template (value) M5ReportAmountMDT p_m5ReportAmountMDT ) := { - { + { id := id_M5ReportAmount, criticality := ignore, - extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } + extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } } } // End of template m_m5Configuration_id_M5ReportAmount @@ -10472,20 +10472,20 @@ module LibNGAP_Templates { template (value) M6Configuration.iE_Extensions m_m6Configuration_id_M6ReportAmount( in template (value) M6ReportAmountMDT p_m6ReportAmountMDT ) := { - { + { id := id_M6ReportAmount, criticality := ignore, - extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } + extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } } } // End of template m_m6Configuration_id_M6ReportAmount template (value) M6Configuration.iE_Extensions m_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( in template (value) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration ) := { - { + { id := id_ExcessPacketDelayThresholdConfiguration, criticality := ignore, - extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } + extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } } } // End of template m_m6Configuration_id_ExcessPacketDelayThresholdConfiguration @@ -10506,10 +10506,10 @@ module LibNGAP_Templates { template (value) M7Configuration.iE_Extensions m_m7Configuration_id_M7ReportAmount( in template (value) M7ReportAmountMDT p_m7ReportAmountMDT ) := { - { + { id := id_M7ReportAmount, criticality := ignore, - extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } + extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } } } // End of template m_m7Configuration_id_M7ReportAmount @@ -10648,20 +10648,20 @@ module LibNGAP_Templates { template (value) NonDynamic5QIDescriptor.iE_Extensions m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget ) := { - { + { id := id_CNPacketDelayBudgetDL, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } } // End of template m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL template (value) NonDynamic5QIDescriptor.iE_Extensions m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget ) := { - { + { id := id_CNPacketDelayBudgetUL, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } } // End of template m_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL @@ -10884,40 +10884,40 @@ module LibNGAP_Templates { template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation( in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList ) := { - { + { id := id_AdditionalNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList ) := { - { + { id := id_AdditionalRedundantNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation template (value) PathSwitchRequestAcknowledgeTransfer.iE_Extensions m_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList( in template (value) QosFlowParametersList p_qosFlowParametersList ) := { - { + { id := id_QosFlowParametersList, criticality := ignore, - extensionValue := { QosFlowParametersList := p_qosFlowParametersList } + extensionValue := { QosFlowParametersList := p_qosFlowParametersList } } } // End of template m_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList @@ -10946,70 +10946,70 @@ module LibNGAP_Templates { template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation( in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList ) := { - { + { id := id_AdditionalDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template m_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused( in template (value) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused ) := { - { + { id := id_RedundantDL_NGU_TNLInformationReused, criticality := ignore, - extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } + extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } } } // End of template m_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation( in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList ) := { - { + { id := id_AdditionalRedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template m_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_UsedRSNInformation( in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation ) := { - { + { id := id_UsedRSNInformation, criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } } } // End of template m_pathSwitchRequestTransferr_id_UsedRSNInformation template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransferr_id_GlobalRANNodeID( in template (value) GlobalRANNodeID p_globalRANNodeID ) := { - { + { id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } } // End of template m_pathSwitchRequestTransferr_id_GlobalRANNodeID template (value) PathSwitchRequestTransfer.iE_Extensions m_pathSwitchRequestTransfer_id_MBS_SupportIndicator( in template (value) MBS_SupportIndicator p_mBS_SupportIndicator ) := { - { + { id := id_MBS_SupportIndicator, criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } } } // End of template m_pathSwitchRequestTransfer_id_MBS_SupportIndicator @@ -11137,17 +11137,17 @@ module LibNGAP_Templates { template (omit) PDUSessionResourceFailedToSetupItemHOAck m_pDUSessionResourceFailedToSetupItemHOAck( in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer, + in template (value) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer, in template (omit) PDUSessionResourceFailedToSetupItemHOAck.iE_Extensions p_iE_Extensions := omit ) := { - pDUSessionID := p_pDUSessionID, + pDUSessionID := p_pDUSessionID, handoverResourceAllocationUnsuccessfulTransfer := p_handoverResourceAllocationUnsuccessfulTransfer, iE_Extensions := p_iE_Extensions } // End of template m_pDUSessionResourceFailedToSetupItemHOAck template (omit) PDUSessionResourceFailedToSetupItemPSReq m_pDUSessionResourceFailedToSetupItemPSReq( in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (value) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer, + in template (value) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer, in template (omit) PDUSessionResourceFailedToSetupItemPSReq.iE_Extensions p_iE_Extensions := omit ) := { pDUSessionID := p_pDUSessionID, @@ -11198,10 +11198,10 @@ module LibNGAP_Templates { template (value) PDUSessionResourceItemCxtRelCpl.iE_Extensions m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer( in template (value) PDUSessionResourceReleaseResponseTransfer_OCTET_STRING p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING ) := { - { + { id := id_PDUSessionResourceReleaseResponseTransfer, criticality := ignore, - extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } + extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } } } // End of template m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer @@ -11240,20 +11240,20 @@ module LibNGAP_Templates { template (value) PDUSessionResourceModifyConfirmTransfer.iE_Extensions m_pDUSessionResourceModifyConfirmTransfer_id_RedundantUL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pDUSessionResourceModifyConfirmTransferr_id_RedundantUL_NGU_UP_TNLInformation template (value) PDUSessionResourceModifyConfirmTransfer.iE_Extensions m_pDUSessionResourceModifyConfirmTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList ) := { - { + { id := id_AdditionalRedundantNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template m_pDUSessionResourceModifyConfirmTransferr_id_AdditionalRedundantNGU_UP_TNLInformation @@ -11274,130 +11274,130 @@ module LibNGAP_Templates { template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate ) := { - { + { id := id_PDUSessionAggregateMaximumBitRate, criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( in template (value) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList ) := { - { + { id := id_UL_NGU_UP_TNLModifyList, criticality := reject, - value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } + value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( in template (value) NetworkInstance p_networkInstance ) := { - { + { id := id_NetworkInstance, criticality := reject, - value_ := { NetworkInstance := p_networkInstance } + value_ := { NetworkInstance := p_networkInstance } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( in template (value) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList ) := { - { + { id := id_QosFlowAddOrModifyRequestList, criticality := reject, - value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } + value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( in template (value) QosFlowListWithCause p_qosFlowListWithCause ) := { - { + { id := id_QosFlowToReleaseList, criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList ) := { - { + { id := id_AdditionalUL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( in template (value) CommonNetworkInstance p_commonNetworkInstance ) := { - { + { id := id_CommonNetworkInstance, criticality := reject, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } + value_ := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList ) := { - { + { id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( in template (value) CommonNetworkInstance p_commonNetworkInstance ) := { - { + { id := id_RedundantCommonNetworkInstance, criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } + value_ := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( in template (value) SecurityIndication p_securityIndication ) := { - { + { id := id_SecurityIndication, criticality := ignore, - value_ := { SecurityIndication := p_securityIndication } + value_ := { SecurityIndication := p_securityIndication } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( in template (value) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList ) := { - { + { id := id_MBSSessionSetuporModifyRequestList, criticality := ignore, - value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } + value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( in template (value) MBSSessionToReleaseList p_mBSSessionToReleaseList ) := { - { + { id := id_MBSSessionToReleaseList, criticality := ignore, - value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } + value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } } } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList @@ -11420,96 +11420,96 @@ module LibNGAP_Templates { template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation( in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList ) := { - { + { id := id_AdditionalNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList ) := { - { + { id := id_AdditionalRedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( in template (value) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList ) := { - { + { id := id_AdditionalRedundantNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template m_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation( in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template m_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator( in template (value) MBS_SupportIndicator p_mBS_SupportIndicator ) := { - { + { id := id_MBS_SupportIndicator, criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } } } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList( in template (value) MBSSessionSetupResponseList p_mBSSessionSetupResponseList ) := { - { + { id := id_MBSSessionSetuporModifyResponseList, criticality := ignore, - extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } } } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList template (value) PDUSessionResourceModifyResponseTransfer.iE_Extensions m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList( in template (value) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList ) := { - { + { id := id_MBSSessionFailedtoSetuporModifyList, criticality := ignore, - extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } } } // End of template m_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList template (omit) PDUSessionResourceModifyIndicationTransfer m_pDUSessionResourceModifyIndicationTransfer( in template (value) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation, - in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, + in template (omit) QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := omit, in template (omit) PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := omit ) := { dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, @@ -11520,50 +11520,50 @@ module LibNGAP_Templates { template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation( in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult( in template (value) SecurityResult p_securityResult ) := { - { + { id := id_SecurityResult, criticality := ignore, - extensionValue := { SecurityResult := p_securityResult } + extensionValue := { SecurityResult := p_securityResult } } } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation( in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation ) := { - { + { id := id_RedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } } } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList ) := { - { + { id := id_AdditionalRedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation template (value) PDUSessionResourceModifyIndicationTransfer.iE_Extensions m_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID( in template (value) GlobalRANNodeID p_globalRANNodeID ) := { - { + { id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } } // End of template m_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID @@ -11602,20 +11602,20 @@ module LibNGAP_Templates { template (value) PDUSessionResourceModifyItemModReq.iE_Extensions m_pDUSessionResourceModifyItemModReq_id_S_NSSAI( in template (value) S_NSSAI p_s_nSSAI ) := { - { + { id := id_S_NSSAI, criticality := reject, - extensionValue := { S_NSSAI := p_s_nSSAI } + extensionValue := { S_NSSAI := p_s_nSSAI } } } // End of template m_pDUSessionResourceModifyItemModReq_id_S_NSSAI template (value) PDUSessionResourceModifyItemModReq.iE_Extensions m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour( in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template m_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour @@ -11623,15 +11623,15 @@ module LibNGAP_Templates { in template (value) S_NSSAI p_s_nSSAI, in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour ) := { - { + { id := id_S_NSSAI, criticality := reject, - extensionValue := { S_NSSAI := p_s_nSSAI } + extensionValue := { S_NSSAI := p_s_nSSAI } }, - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template m_pDUSessionResourceModifyItemModReq_full @@ -11677,10 +11677,10 @@ module LibNGAP_Templates { template (value) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation( in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation @@ -11697,20 +11697,20 @@ module LibNGAP_Templates { template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceNotifyTransfer_id_SecondaryRATUsageInformation( in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceNotifyTransfer_id_QosFlowFeedbackList( in template (value) QosFlowFeedbackList p_qosFlowFeedbackList ) := { - { + { id := id_QosFlowFeedbackList, criticality := ignore, - extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } + extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } } } // End of template m_pDUSessionResourceNotifyReleasedTransfer_id_QosFlowFeedbackList @@ -11771,10 +11771,10 @@ module LibNGAP_Templates { template (value) PDUSessionResourceNotifyTransfer.iE_Extensions m_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation( in template (value) SecondaryRATUsageInformation p_secondaryRATUsageInformation ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template m_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation @@ -11825,10 +11825,10 @@ module LibNGAP_Templates { template (value) PDUSessionResourceSetupItemCxtReq.iE_Extensions m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour( in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour @@ -11857,10 +11857,10 @@ module LibNGAP_Templates { template (value) PDUSessionResourceSetupItemHOReq.iE_Extensions m_pDUSessionResourceSetupItemHOReq_id_PduSessionExpectedUEActivityBehaviour( in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template m_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour @@ -11881,10 +11881,10 @@ module LibNGAP_Templates { template (value) PDUSessionResourceSetupItemSUReq.iE_Extensions m_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour( in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template m_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour @@ -11909,20 +11909,20 @@ module LibNGAP_Templates { in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList, in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_PDUSessionType, criticality := reject, - value_ := { PDUSessionType := p_pDUSessionType } + value_ := { PDUSessionType := p_pDUSessionType } }, - { + { id := id_QosFlowSetupRequestList, criticality := reject, - value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } }, - { + { id := id_UL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pDUSessionResourceSetupRequestTransfer_mandatories @@ -11933,32 +11933,32 @@ module LibNGAP_Templates { in template (value) DataForwardingNotPossible p_dataForwardingNotPossible, in template (value) SecurityIndication p_securityIndication ) := { - { + { id := id_PDUSessionType, criticality := reject, - value_ := { PDUSessionType := p_pDUSessionType } + value_ := { PDUSessionType := p_pDUSessionType } }, - { + { id := id_QosFlowSetupRequestList, criticality := reject, - value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } }, - { + { id := id_UL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } }, - { + { id := id_DataForwardingNotPossible, criticality := reject, - value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } }, - { + { id := id_SecurityIndication, criticality := reject, - value_ := { SecurityIndication := p_securityIndication } + value_ := { SecurityIndication := p_securityIndication } } - + } // End of template m_pDUSessionResourceSetupRequestTransfer_handover template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_handover_1( @@ -11967,166 +11967,166 @@ module LibNGAP_Templates { in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability ) := { - { + { id := id_PDUSessionType, criticality := reject, - value_ := { PDUSessionType := p_pDUSessionType } + value_ := { PDUSessionType := p_pDUSessionType } }, - { + { id := id_QosFlowSetupRequestList, criticality := reject, - value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } }, - { + { id := id_UL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } }, - { + { id := id_DirectForwardingPathAvailability, criticality := ignore, value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } } - + } // End of template m_pDUSessionResourceSetupRequestTransfer_handover_1 template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate ) := { - { + { id := id_PDUSessionAggregateMaximumBitRate, criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList ) := { - { + { id := id_UL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible( in template (value) DataForwardingNotPossible p_dataForwardingNotPossible ) := { - { + { id := id_DataForwardingNotPossible, criticality := reject, - value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType( in template (value) PDUSessionType p_pDUSessionType ) := { - { + { id := id_PDUSessionType, criticality := reject, - value_ := { PDUSessionType := p_pDUSessionType } + value_ := { PDUSessionType := p_pDUSessionType } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication( in template (value) SecurityIndication p_securityIndication ) := { - { + { id := id_SecurityIndication, criticality := reject, - value_ := { SecurityIndication := p_securityIndication } + value_ := { SecurityIndication := p_securityIndication } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance( in template (value) NetworkInstance p_networkInstance ) := { - { + { id := id_NetworkInstance, criticality := reject, - value_ := { NetworkInstance := p_networkInstance } + value_ := { NetworkInstance := p_networkInstance } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList( in template (value) QosFlowSetupRequestList p_qosFlowSetupRequestList ) := { - { + { id := id_QosFlowSetupRequestList, criticality := reject, - value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance( in template (value) CommonNetworkInstance p_commonNetworkInstance ) := { - { + { id := id_CommonNetworkInstance, criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } + value_ := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability( in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability ) := { - { + { id := id_DirectForwardingPathAvailability, criticality := ignore, - value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList ) := { - { + { id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstancen( in template (value) CommonNetworkInstance p_commonNetworkInstance ) := { - { + { id := id_RedundantCommonNetworkInstance, criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } + value_ := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstance template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation( in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation ) := { - { + { id := id_RedundantPDUSessionInformation, criticality := ignore, - value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation template (value) PDUSessionResourceSetupRequestTransfer.protocolIEs m_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList( in template (value) MBSSessionSetupRequestList p_mBSSessionSetupRequestList ) := { - { + { id := id_MBSSessionSetupRequestList, criticality := ignore, - value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } + value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } } } // End of template m_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList @@ -12147,70 +12147,70 @@ module LibNGAP_Templates { template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation( in template (value) QosFlowPerTNLInformation p_qosFlowPerTNLInformation ) := { - { + { id := id_RedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } } } // End of template m_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( in template (value) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList ) := { - { + { id := id_AdditionalRedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template m_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation( in template (value) RedundantPDUSessionInformation p_redundantPDUSessionInformation ) := { - { + { id := id_UsedRSNInformation, criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } } } // End of template m_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID( in template (value) GlobalRANNodeID p_globalRANNodeID ) := { - { + { id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } } // End of template m_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator( in template (value) MBS_SupportIndicator p_mBS_SupportIndicator ) := { - { + { id := id_MBS_SupportIndicator, criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } } } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList( in template (value) MBSSessionSetupResponseList p_mBSSessionSetupResponseList ) := { - { + { id := id_MBSSessionSetupResponseList, criticality := ignore, - extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } } } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList template (value) PDUSessionResourceSetupResponseTransfer.iE_Extensions m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList( in template (value) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList ) := { - { + { id := id_MBSSessionFailedtoSetupList, criticality := ignore, - extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } } } // End of template m_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList @@ -12247,10 +12247,10 @@ module LibNGAP_Templates { template (value) PDUSessionResourceSwitchedItem.iE_Extensions m_pDUSessionResourceSwitchedItem_id_PduSessionExpectedUEActivityBehaviour( in template (value) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template m_pDUSessionResourceSwitchedItem_id_PduSessionExpectedUEActivityBehaviour @@ -12325,30 +12325,30 @@ module LibNGAP_Templates { template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_NPN_Support( in template (value) NPN_Support p_nPN_Support ) := { - { + { id := id_NPN_Support, criticality := reject, - extensionValue := { NPN_Support := p_nPN_Support } + extensionValue := { NPN_Support := p_nPN_Support } } } // End of template m_pLMNSupportItem_id_NPN_Support template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_ExtendedSliceSupportList( in template (value) ExtendedSliceSupportList p_extendedSliceSupportList ) := { - { + { id := id_ExtendedSliceSupportList, criticality := reject, - extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } + extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } } } // End of template m_pLMNSupportItem_id_ExtendedSliceSupportList template (value) PLMNSupportItem.iE_Extensions m_pLMNSupportItem_id_OnboardingSupport( in template (value) OnboardingSupport p_onboardingSupport ) := { - { + { id := id_OnboardingSupport, criticality := ignore, - extensionValue := { OnboardingSupport := p_onboardingSupport } + extensionValue := { OnboardingSupport := p_onboardingSupport } } } // End of template m_pLMNSupportItem_id_OnboardingSupport @@ -12422,15 +12422,15 @@ module LibNGAP_Templates { ) := { qosFlowIdentifier := p_qosFlowIdentifier, iE_Extensions := p_iE_Extensions - } // End of template + } // End of template template (value) QosFlowAcceptedItem.iE_Extensions m_pLMNSupportItem_id_CurrentQoSParaSetIndex( in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } } } // End of template m_pLMNSupportItem_id_ExtendedSliceSupportList @@ -12449,20 +12449,20 @@ module LibNGAP_Templates { template (value) QosFlowAddOrModifyRequestItem.iE_Extensions m_qosFlowAddOrModifyRequestItem_id_TSCTrafficCharacteristics( in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics ) := { - { + { id := id_TSCTrafficCharacteristics, criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } } } // End of template m_qosFlowAddOrModifyRequestItem_id_TSCTrafficCharacteristics template (value) QosFlowAddOrModifyRequestItem.iE_Extensions m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator( in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator ) := { - { + { id := id_RedundantQosFlowIndicator, criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } } } // End of template m_qosFlowAddOrModifyRequestItem_id_RedundantQosFlowIndicator @@ -12470,15 +12470,15 @@ module LibNGAP_Templates { in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics, in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator ) := { - { + { id := id_TSCTrafficCharacteristics, criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } }, - { + { id := id_RedundantQosFlowIndicator, criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } } } // End of template m_qosFlowAddOrModifyRequestItem_full @@ -12493,10 +12493,10 @@ module LibNGAP_Templates { template (value) QosFlowAddOrModifyResponseItem.iE_Extensions m_qosFlowAddOrModifyResponseItem_id_CurrentQoSParaSetIndex( in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } } } // End of template m_qosFlowAddOrModifyResponseItem_id_CurrentQoSParaSetIndex @@ -12527,30 +12527,30 @@ module LibNGAP_Templates { template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_ULForwarding( in template (value) ULForwarding p_uLForwarding ) := { - { + { id := id_ULForwarding, criticality := ignore, - extensionValue := { ULForwarding := p_uLForwarding } + extensionValue := { ULForwarding := p_uLForwarding } } } // End of template m_qosFlowInformationItem_id_ULForwarding template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceTNLAddrInfo( in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS ) := { - { + { id := id_SourceTNLAddrInfo, criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } + extensionValue := { TransportLayerAddress := p_transportLayerAddress } } } // End of template m_qosFlowInformationItem_id_SourceTNLAddrInfo template (value) QosFlowInformationItem.iE_Extensions m_qosFlowInformationItem_id_SourceNodeTNLAddrInfo( in template (value) TransportLayerAddress p_transportLayerAddress := PX_SOURCE_TRANSPORT_LAYER_ADDRESS ) := { - { + { id := id_SourceNodeTNLAddrInfo, criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } + extensionValue := { TransportLayerAddress := p_transportLayerAddress } } } // End of template m_qosFlowInformationItem_id_SourceNodeTNLAddrInfo @@ -12573,20 +12573,20 @@ module LibNGAP_Templates { template (value) QosFlowLevelQosParameters.iE_Extensions m_qosFlowLevelQosParameters_id_QosMonitoringRequest( in template (value) QosMonitoringRequest p_qosMonitoringRequest ) := { - { + { id := id_QosMonitoringRequest, criticality := ignore, - extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } } } // End of template m_qosFlowLevelQosParameters_id_QosMonitoringRequest template (value) QosFlowLevelQosParameters.iE_Extensions m_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency( in template (value) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency ) := { - { + { id := id_QosMonitoringReportingFrequency, criticality := ignore, - extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } } } // End of template m_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency @@ -12594,15 +12594,15 @@ module LibNGAP_Templates { in template (value) QosMonitoringRequest p_qosMonitoringRequest, in template (value) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency ) := { - { + { id := id_QosMonitoringRequest, criticality := ignore, - extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } }, - { + { id := id_QosMonitoringReportingFrequency, criticality := ignore, - extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } } } // End of template m_qosFlowLevelQosParameters_full @@ -12639,10 +12639,10 @@ module LibNGAP_Templates { template (value) QosFlowNotifyItem.iE_Extensions m_qosFlowNotifyItem_id_CurrentQoSParaSetIndex( in template (value) AlternativeQoSParaSetNotifyIndex p_alternativeQoSParaSetNotifyIndex ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } + extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } } } // End of template m_qosFlowNotifyItem_id_CurrentQoSParaSetIndex @@ -12659,36 +12659,36 @@ module LibNGAP_Templates { template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_CNPacketDelayBudgetDL( in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget ) := { - { + { id := id_CNPacketDelayBudgetDL, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } } // End of template m_qosFlowParametersItem_id_CNPacketDelayBudgetDL template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_CNPacketDelayBudgetUL( in template (value) ExtendedPacketDelayBudget p_extendedPacketDelayBudget ) := { - { + { id := id_CNPacketDelayBudgetUL, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } } // End of template m_qosFlowParametersItem_id_CNPacketDelayBudgetUL template (value) QosFlowParametersItem.iE_Extensions m_qosFlowParametersItem_id_BurstArrivalTimeDownlink( in template (value) BurstArrivalTime p_burstArrivalTime ) := { - { + { id := id_BurstArrivalTimeDownlink, criticality := ignore, - extensionValue := { BurstArrivalTime := p_burstArrivalTime } + extensionValue := { BurstArrivalTime := p_burstArrivalTime } } } // End of template m_qosFlowParametersItem_id_BurstArrivalTimeDownlink template (omit) QosFlowPerTNLInformation m_qosFlowPerTNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation, - in template (value) AssociatedQosFlowList p_associatedQosFlowList, + in template (value) AssociatedQosFlowList p_associatedQosFlowList, in template (omit) QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := omit ) := { uPTransportLayerInformation := p_uPTransportLayerInformation, @@ -12719,20 +12719,20 @@ module LibNGAP_Templates { template (value) QosFlowSetupRequestItem.iE_Extensions m_qosFlowSetupRequestItem_id_TSCTrafficCharacteristics( in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics ) := { - { + { id := id_TSCTrafficCharacteristics, criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } } } // End of template m_qosFlowSetupRequestItem_id_TSCTrafficCharacteristics template (value) QosFlowSetupRequestItem.iE_Extensions m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator( in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator ) := { - { + { id := id_RedundantQosFlowIndicator, criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } } } // End of template m_qosFlowSetupRequestItem_id_RedundantQosFlowIndicator @@ -12740,15 +12740,15 @@ module LibNGAP_Templates { in template (value) TSCTrafficCharacteristics p_tSCTrafficCharacteristics, in template (value) RedundantQosFlowIndicator p_redundantQosFlowIndicator ) := { - { + { id := id_TSCTrafficCharacteristics, criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } }, - { + { id := id_RedundantQosFlowIndicator, criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } } } // End of template m_qosFlowSetupRequestItem_full @@ -12765,10 +12765,10 @@ module LibNGAP_Templates { template (value) QosFlowItemWithDataForwarding.iE_Extensions m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( in template (value) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } } } // End of template m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex @@ -12817,15 +12817,15 @@ module LibNGAP_Templates { template (value) RATRestrictions_Item.iE_Extensions m_rATRestrictions_Item_id_ExtendedRATRestrictionInformation( in template (value) ExtendedRATRestrictionInformation p_extendedRATRestrictionInformation ) := { - { + { id := id_ExtendedRATRestrictionInformation, criticality := ignore, - extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } + extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } } } // End of template m_rATRestrictions_Item_id_ExtendedRATRestrictionInformation template (omit) RecommendedCellsForPaging m_recommendedCellsForPaging( - in template (value) RecommendedCellList p_recommendedCellList, + in template (value) RecommendedCellList p_recommendedCellList, in template (omit) RecommendedCellsForPaging.iE_Extensions p_iE_Extensions := omit ) := { recommendedCellList := p_recommendedCellList, @@ -12843,7 +12843,7 @@ module LibNGAP_Templates { } // End of template m_recommendedCellItem template (omit) RecommendedRANNodesForPaging m_recommendedRANNodesForPaging( - in template (value) RecommendedRANNodeList p_recommendedRANNodeList, + in template (value) RecommendedRANNodeList p_recommendedRANNodeList, in template (omit) RecommendedRANNodesForPaging.iE_Extensions p_iE_Extensions := omit ) := { recommendedRANNodeList := p_recommendedRANNodeList, @@ -12873,10 +12873,10 @@ module LibNGAP_Templates { template (value) RedundantPDUSessionInformation.iE_Extensions m_redundantPDUSessionInformation_id_PDUSessionPairID( in template (value) PDUSessionPairID p_pDUSessionPairID ) := { - { + { id := id_PDUSessionPairID, criticality := ignore, - extensionValue := { PDUSessionPairID := p_pDUSessionPairID } + extensionValue := { PDUSessionPairID := p_pDUSessionPairID } } } // End of template m_redundantPDUSessionInformation_id_PDUSessionPairID @@ -12998,10 +12998,10 @@ module LibNGAP_Templates { template (value) SecurityIndication.iE_Extensions m_securityIndication_id_MaximumIntegrityProtectedDataRate_DL( in template (value) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate ) := { - { + { id := id_MaximumIntegrityProtectedDataRate_DL, criticality := ignore, - extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } + extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } } } // End of template m_securityIndication_id_MaximumIntegrityProtectedDataRate_DL @@ -13023,7 +13023,7 @@ module LibNGAP_Templates { sensorMeasConfig := p_sensorMeasConfig, sensorMeasConfigNameList := p_sensorMeasConfigNameList, iE_Extensions := p_iE_Extensions - } // End of template m_sensorMeasurementConfiguration + } // End of template m_sensorMeasurementConfiguration template (omit) SensorMeasConfigNameItem m_sensorMeasConfigNameItem( in template (value) SensorNameConfig p_sensorNameConfig, @@ -13072,10 +13072,10 @@ module LibNGAP_Templates { template (value) ServedGUAMIItem.iE_Extensions m_servedGUAMIItem_id_GUAMIType( in template (value) GUAMIType p_gUAMIType ) := { - { + { id := id_GUAMIType, criticality := ignore, - extensionValue := { GUAMIType := p_gUAMIType } + extensionValue := { GUAMIType := p_gUAMIType } } } // End of template m_servedGUAMIItem_id_GUAMIType @@ -13253,7 +13253,7 @@ module LibNGAP_Templates { template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID( in template (value) SgNB_UE_X2AP_ID p_sgNB_UE_X2AP_ID ) := { - { + { id := id_SgNB_UE_X2AP_ID, criticality := ignore, extensionValue := { SgNB_UE_X2AP_ID := p_sgNB_UE_X2AP_ID } @@ -13263,7 +13263,7 @@ module LibNGAP_Templates { template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE( in template (value) UEHistoryInformationFromTheUE p_uEHistoryInformationFromTheUE ) := { - { + { id := id_UEHistoryInformationFromTheUE, criticality := ignore, extensionValue := { UEHistoryInformationFromTheUE := p_uEHistoryInformationFromTheUE } @@ -13273,7 +13273,7 @@ module LibNGAP_Templates { template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID( in template (value) SourceNodeID p_sourceNodeID ) := { - { + { id := id_SourceNodeID, criticality := ignore, extensionValue := { SourceNodeID := p_sourceNodeID } @@ -13283,7 +13283,7 @@ module LibNGAP_Templates { template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource( in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := PX_RAN_UE_NGAP_ID ) := { - { + { id := id_UEContextReferenceAtSource, criticality := ignore, extensionValue := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } @@ -13293,7 +13293,7 @@ module LibNGAP_Templates { template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList( in template (value) MBS_ActiveSessionInformation_SourcetoTargetList p_mBS_ActiveSessionInformation_SourcetoTargetListD ) := { - { + { id := id_MBS_ActiveSessionInformation_SourcetoTargetList, criticality := ignore, extensionValue := { MBS_ActiveSessionInformation_SourcetoTargetList := p_mBS_ActiveSessionInformation_SourcetoTargetListD } @@ -13303,7 +13303,7 @@ module LibNGAP_Templates { template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo( in template (value) QMCConfigInfo p_qMCConfigInfo ) := { - { + { id := id_QMCConfigInfo, criticality := ignore, extensionValue := { QMCConfigInfo := p_qMCConfigInfo } @@ -13313,7 +13313,7 @@ module LibNGAP_Templates { template (value) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions m_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList( in template (value) NGAPIESupportInformationRequestList p_nGAPIESupportInformationRequestList ) := { - { + { id := id_NGAPIESupportInformationRequestList, criticality := ignore, extensionValue := { NGAPIESupportInformationRequestList := p_nGAPIESupportInformationRequestList } @@ -13377,20 +13377,20 @@ module LibNGAP_Templates { template (value) SupportedTAItem.iE_Extensions m_supportedTAItem_id_ConfiguredTACIndication( in template (value) ConfiguredTACIndication p_configuredTACIndication ) := { - { + { id := id_ConfiguredTACIndication, criticality := ignore, - extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } } } // End of template m_supportedTAItem_id_ConfiguredTACIndication template (value) SupportedTAItem.iE_Extensions m_supportedTAItem_id_RAT_Information( in template (value) RAT_Information p_rAT_Information ) := { - { + { id := id_RAT_Information, criticality := reject, - extensionValue := { RAT_Information := p_rAT_Information } + extensionValue := { RAT_Information := p_rAT_Information } } } // End of template m_supportedTAItem_id_RAT_Information @@ -13398,15 +13398,15 @@ module LibNGAP_Templates { in template (value) ConfiguredTACIndication p_configuredTACIndication, in template (value) RAT_Information p_rAT_Information ) := { - { + { id := id_ConfiguredTACIndication, criticality := ignore, - extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } }, - { + { id := id_RAT_Information, criticality := reject, - extensionValue := { RAT_Information := p_rAT_Information } + extensionValue := { RAT_Information := p_rAT_Information } } } // End of template m_supportedTAItem_full @@ -13419,7 +13419,7 @@ module LibNGAP_Templates { template (omit) TAI m_tAI( in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, in template (value) TAC p_tAC := PX_TAC, - in template (omit) TAI.iE_Extensions p_iE_Extensions := omit + in template (omit) TAI.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, tAC := p_tAC, @@ -13429,7 +13429,7 @@ module LibNGAP_Templates { template (omit) TAIBroadcastEUTRA_Item m_tAIBroadcastEUTRA_Item( in template (value) TAI p_tAI, in template (value) CompletedCellsInTAI_EUTRA p_completedCellsInTAI_EUTRA, - in template (omit) TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit + in template (omit) TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := omit ) := { tAI := p_tAI, completedCellsInTAI_EUTRA := p_completedCellsInTAI_EUTRA, @@ -13439,7 +13439,7 @@ module LibNGAP_Templates { template (omit) TAIBroadcastNR_Item m_tAIBroadcastNR_Item( in template (value) TAI p_tAI, in template (value) CompletedCellsInTAI_NR p_completedCellsInTAI_NR, - in template (omit) TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit + in template (omit) TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := omit ) := { tAI := p_tAI, completedCellsInTAI_NR := p_completedCellsInTAI_NR, @@ -13449,7 +13449,7 @@ module LibNGAP_Templates { template (omit) TAICancelledEUTRA_Item m_tAICancelledEUTRA_Item( in template (value) TAI p_tAI, in template (value) CancelledCellsInTAI_EUTRA p_cancelledCellsInTAI_EUTRA, - in template (omit) TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit + in template (omit) TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := omit ) := { tAI := p_tAI, cancelledCellsInTAI_EUTRA := p_cancelledCellsInTAI_EUTRA, @@ -13458,8 +13458,8 @@ module LibNGAP_Templates { template (omit) TAICancelledNR_Item m_tAICancelledNR_Item( in template (value) TAI p_tAI, - in template (value) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR, - in template (omit) TAICancelledNR_Item.iE_Extensions p_iE_Extensions := omit + in template (value) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR, + in template (omit) TAICancelledNR_Item.iE_Extensions p_iE_Extensions := omit ) := { tAI := p_tAI, cancelledCellsInTAI_NR := p_cancelledCellsInTAI_NR, @@ -13468,7 +13468,7 @@ module LibNGAP_Templates { template (omit) TAIListForInactiveItem m_tAIListForInactiveItem( in template (value) TAI p_tAI, - in template (omit) TAIListForInactiveItem.iE_Extensions p_iE_Extensions := omit + in template (omit) TAIListForInactiveItem.iE_Extensions p_iE_Extensions := omit ) := { tAI := p_tAI, iE_Extensions := p_iE_Extensions @@ -13476,7 +13476,7 @@ module LibNGAP_Templates { template (omit) TAIListForPagingItem m_tAIListForPagingItem( in template (value) TAI p_tAI, - in template (omit) TAIListForPagingItem.iE_Extensions p_iE_Extensions := omit + in template (omit) TAIListForPagingItem.iE_Extensions p_iE_Extensions := omit ) := { tAI := p_tAI, iE_Extensions := p_iE_Extensions @@ -13485,7 +13485,7 @@ module LibNGAP_Templates { template (omit) TAINSAGSupportItem m_tAINSAGSupportItem( in template (value) NSAG_ID p_nSAG_ID, in template (value) ExtendedSliceSupportList p_nSAGSliceSupportList, - in template (omit) TAINSAGSupportItem.iE_Extensions p_iE_Extensions := omit + in template (omit) TAINSAGSupportItem.iE_Extensions p_iE_Extensions := omit ) := { nSAG_ID := p_nSAG_ID, nSAGSliceSupportList := p_nSAGSliceSupportList, @@ -13495,7 +13495,7 @@ module LibNGAP_Templates { template (omit) TargeteNB_ID m_targeteNB_ID( in template (value) GlobalNgENB_ID p_globalENB_ID, in template (value) EPS_TAI p_selected_EPS_TAI, - in template (omit) TargeteNB_ID.iE_Extensions p_iE_Extensions := omit + in template (omit) TargeteNB_ID.iE_Extensions p_iE_Extensions := omit ) := { globalENB_ID := p_globalENB_ID, selected_EPS_TAI := p_selected_EPS_TAI, @@ -13559,40 +13559,40 @@ module LibNGAP_Templates { template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList( in template (value) DAPSResponseInfoList p_dAPSResponseInfoList ) := { - { + { id := id_ConfiguredTACIndication, criticality := ignore, - extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } + extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } } } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability( in template (value) DirectForwardingPathAvailability p_directForwardingPathAvailability ) := { - { + { id := id_DirectForwardingPathAvailability, criticality := ignore, - extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } } } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList( in template (value) MBS_ActiveSessionInformation_TargettoSourceList p_mBS_ActiveSessionInformation_TargettoSourceList ) := { - { + { id := id_MBS_ActiveSessionInformation_TargettoSourceList, criticality := ignore, - extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } + extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } } } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList template (value) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList( in template (value) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList ) := { - { + { id := id_NGAPIESupportInformationResponseList, criticality := ignore, - extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } } } // End of template m_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList @@ -13607,10 +13607,10 @@ module LibNGAP_Templates { template (value) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList( in template (value) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList ) := { - { + { id := id_NGAPIESupportInformationResponseList, criticality := ignore, - extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } } } // End of template m_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList @@ -13665,10 +13665,10 @@ module LibNGAP_Templates { template (value) TargetRANNodeID_SON.iE_Extensions m_targetRANNodeID_SON_id_NR_CGI( in template (value) NR_CGI p_nR_CGI ) := { - { + { id := id_NR_CGI, criticality := ignore, - extensionValue := { NR_CGI := p_nR_CGI } + extensionValue := { NR_CGI := p_nR_CGI } } } // End of template m_targetRANNodeID_SON_id_NR_CGI @@ -13752,20 +13752,20 @@ module LibNGAP_Templates { template (value) TraceActivation.iE_Extensions m_traceActivation_id_MDTConfiguration( in template (value) MDT_Configuration p_mDT_Configuration ) := { - { + { id := id_MDTConfiguration, criticality := ignore, - extensionValue := { MDT_Configuration := p_mDT_Configuration } + extensionValue := { MDT_Configuration := p_mDT_Configuration } } } // End of template m_traceActivation_id_MDTConfiguration template (value) TraceActivation.iE_Extensions m_traceActivation_id_TraceCollectionEntityURI( in template (value) URI_address p_uRI_address ) := { - { + { id := id_TraceCollectionEntityURI, criticality := ignore, - extensionValue := { URI_address := p_uRI_address } + extensionValue := { URI_address := p_uRI_address } } } // End of template m_traceActivation_id_TraceCollectionEntityURI @@ -13773,15 +13773,15 @@ module LibNGAP_Templates { in template (value) MDT_Configuration p_mDT_Configuration, in template (value) URI_address p_uRI_address ) := { - { + { id := id_MDTConfiguration, criticality := ignore, - extensionValue := { MDT_Configuration := p_mDT_Configuration } + extensionValue := { MDT_Configuration := p_mDT_Configuration } }, - { + { id := id_TraceCollectionEntityURI, criticality := ignore, - extensionValue := { URI_address := p_uRI_address } + extensionValue := { URI_address := p_uRI_address } } } // End of template m_traceActivation_full @@ -13848,10 +13848,10 @@ module LibNGAP_Templates { template (value) TSCAssistanceInformation.iE_Extensions m_tSCAssistanceInformation_id_SurvivalTime( in template (value) SurvivalTime p_survivalTime ) := { - { + { id := id_SurvivalTime, criticality := ignore, - extensionValue := { SurvivalTime := p_survivalTime } + extensionValue := { SurvivalTime := p_survivalTime } } } // End of template m_tSCAssistanceInformation_id_SurvivalTime @@ -14054,10 +14054,10 @@ module LibNGAP_Templates { template (value) UERadioCapabilityForPaging.iE_Extensions m_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT( in template (value) UERadioCapabilityForPagingOfNB_IoT p_uERadioCapabilityForPagingOfNB_IoT ) := { - { + { id := id_UERadioCapabilityForPagingOfNB_IoT, criticality := ignore, - extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } + extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } } } // End of template m_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT @@ -14117,7 +14117,7 @@ module LibNGAP_Templates { ul_NAS_MAC := p_ul_NAS_MAC, ul_NAS_Count := p_ul_NAS_Count, iE_Extensions := p_iE_Extensions - } // End of template + } // End of template template (omit) UL_NGU_UP_TNLModifyItem m_uL_NGU_UP_TNLModifyItem( in template (value) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation, @@ -14132,20 +14132,20 @@ module LibNGAP_Templates { template (value) UL_NGU_UP_TNLModifyItem.iE_Extensions m_uL_NGU_UP_TNLModifyItem_id_RedundantUL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_uL_NGU_UP_TNLModifyItem_id_RedundantUL_NGU_UP_TNLInformation template (value) UL_NGU_UP_TNLModifyItem.iE_Extensions m_uL_NGU_UP_TNLModifyItem_id_RedundantDL_NGU_UP_TNLInformation( in template (value) UPTransportLayerInformation p_uPTransportLayerInformation ) := { - { + { id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template m_uL_NGU_UP_TNLModifyItem_id_RedundantDL_NGU_UP_TNLInformation @@ -14153,15 +14153,15 @@ module LibNGAP_Templates { in template (value) UPTransportLayerInformation p_uPTransportLayerInformation_id_RedundantUL_NGU_UP_TNLInformation, in template (value) UPTransportLayerInformation p_uPTransportLayerInformation_id_RedundantDL_NGU_UP_TNLInformation ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation_id_RedundantUL_NGU_UP_TNLInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation_id_RedundantUL_NGU_UP_TNLInformation } }, - { + { id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation_id_RedundantDL_NGU_UP_TNLInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation_id_RedundantDL_NGU_UP_TNLInformation } } } // End of template m_uL_NGU_UP_TNLModifyItem_full @@ -14202,10 +14202,10 @@ module LibNGAP_Templates { template (value) UPTransportLayerInformationItem.iE_Extensions m_uPTransportLayerInformationItem_id_CommonNetworkInstance( in template (value) CommonNetworkInstance p_commonNetworkInstance ) := { - { + { id := id_CommonNetworkInstance, criticality := ignore, - extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } + extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template m_uPTransportLayerInformationItem_id_CommonNetworkInstance @@ -14282,10 +14282,10 @@ module LibNGAP_Templates { template (value) UserLocationInformationEUTRA.iE_Extensions m_userLocationInformationEUTRA_id_PSCellInformation( in template (value) NGRAN_CGI p_nGRAN_CGI ) := { - { + { id := id_PSCellInformation, criticality := ignore, - extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } } } // End of template m_userLocationInformationEUTRA_id_PSCellInformation @@ -14302,10 +14302,10 @@ module LibNGAP_Templates { template (value) UserLocationInformationN3IWF.iE_Extensions m_userLocationInformationN3IWF_id_TAI( in template (value) TAI p_tAI ) := { - { + { id := id_TAI, criticality := ignore, - extensionValue := { TAI := p_tAI } + extensionValue := { TAI := p_tAI } } } // End of template m_userLocationInformationN3IWF_id_TAI @@ -14324,10 +14324,10 @@ module LibNGAP_Templates { template (value) UserLocationInformationTNGF.iE_Extensions m_userLocationInformationTNGF_id_TAI( in template (value) TAI p_tAI ) := { - { + { id := id_TAI, criticality := ignore, - extensionValue := { TAI := p_tAI } + extensionValue := { TAI := p_tAI } } } // End of template m_userLocationInformationTNGF_id_TAI @@ -14346,10 +14346,10 @@ module LibNGAP_Templates { template (value) UserLocationInformationTWIF.iE_Extensions m_userLocationInformationTWIF_id_TAI( in template (value) TAI p_tAI ) := { - { + { id := id_TAI, criticality := ignore, - extensionValue := { TAI := p_tAI } + extensionValue := { TAI := p_tAI } } } // End of template m_userLocationInformationTWIF_id_TAI @@ -14412,30 +14412,30 @@ module LibNGAP_Templates { template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_PSCellInformation( in template (value) NGRAN_CGI p_nGRAN_CGI ) := { - { + { id := id_PSCellInformation, criticality := ignore, - extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } } } // End of template m_userLocationInformationNR_id_PSCellInformation template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_NID( in template (value) NID p_nID ) := { - { + { id := id_NID, criticality := reject, - extensionValue := { NID := p_nID } + extensionValue := { NID := p_nID } } } // End of template m_userLocationInformationNR_id_NID template (value) UserLocationInformationNR.iE_Extensions m_userLocationInformationNR_id_NRNTNTAIInformation( in template (value) NRNTNTAIInformation p_nRNTNTAIInformation ) := { - { + { id := id_NRNTNTAIInformation, criticality := ignore, - extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } + extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } } } // End of template m_userLocationInformationNR_id_NRNTNTAIInformation @@ -14550,10 +14550,10 @@ module LibNGAP_Templates { template (value) XnExtTLA_Item.iE_Extensions m_xnExtTLA_Item_id_SCTP_TLAs( in template (value) SCTP_TLAs p_sCTP_TLAs ) := { - { + { id := id_SCTP_TLAs, criticality := ignore, - extensionValue := { SCTP_TLAs := p_sCTP_TLAs } + extensionValue := { SCTP_TLAs := p_sCTP_TLAs } } } // End of template m_xnExtTLA_Item_id_SCTP_TLAs @@ -14619,7 +14619,7 @@ module LibNGAP_Templates { template (present) PLMNIdentity p_pLMNIdentity := ?, template (present) Allowed_PNI_NPN_Item.pNI_NPN_restricted p_pNI_NPN_restricted := ?, template (present) Allowed_CAG_List_per_PLMN p_allowed_CAG_List_per_PLMN := ?, - template Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := * + template Allowed_PNI_NPN_Item.iE_Extensions p_iE_Extensions := * ) := { pLMNIdentity := p_pLMNIdentity, pNI_NPN_restricted := p_pNI_NPN_restricted, @@ -14679,7 +14679,7 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_aMF_TNLAssociationSetupItem - template (present) AMF_TNLAssociationToAddItem mw_aMF_TNLAssociationToAddItem( + template (present) AMF_TNLAssociationToAddItem mw_aMF_TNLAssociationToAddItem( template (present) CPTransportLayerInformation p_aMF_TNLAssociationAddress := ?, template (present) TNLAddressWeightFactor p_tNLAddressWeightFactor := ?, template TNLAssociationUsage p_tNLAssociationUsage := *, @@ -15608,7 +15608,7 @@ module LibNGAP_Templates { template (present) DRBStatusDL12 mw_dRBStatusDL12( template (present) COUNTValueForPDCP_SN12 p_dL_COUNTValue := ?, - template DRBStatusDL12.iE_Extension p_iE_Extension := * + template DRBStatusDL12.iE_Extension p_iE_Extension := * ) := { dL_COUNTValue := p_dL_COUNTValue, iE_Extension := p_iE_Extension @@ -15616,7 +15616,7 @@ module LibNGAP_Templates { template (present) DRBStatusDL18 mw_dRBStatusDL18( template (present) COUNTValueForPDCP_SN18 p_dL_COUNTValue := ?, - template DRBStatusDL18.iE_Extension p_iE_Extension := * + template DRBStatusDL18.iE_Extension p_iE_Extension := * ) := { dL_COUNTValue := p_dL_COUNTValue, iE_Extension := p_iE_Extension @@ -15643,7 +15643,7 @@ module LibNGAP_Templates { template (present) DRBStatusUL12 mw_dRBStatusUL12( template (present) COUNTValueForPDCP_SN12 p_uL_COUNTValue := ?, template DRBStatusUL12.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, - template DRBStatusUL12.iE_Extension p_iE_Extension := * + template DRBStatusUL12.iE_Extension p_iE_Extension := * ) := { uL_COUNTValue := p_uL_COUNTValue, receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, @@ -15653,7 +15653,7 @@ module LibNGAP_Templates { template (present) DRBStatusUL18 mw_dRBStatusUL18( template (present) COUNTValueForPDCP_SN18 p_uL_COUNTValue := ?, template DRBStatusUL18.receiveStatusOfUL_PDCP_SDUs p_receiveStatusOfUL_PDCP_SDUs := *, - template DRBStatusUL18.iE_Extension p_iE_Extension := * + template DRBStatusUL18.iE_Extension p_iE_Extension := * ) := { uL_COUNTValue := p_uL_COUNTValue, receiveStatusOfUL_PDCP_SDUs := p_receiveStatusOfUL_PDCP_SDUs, @@ -16215,7 +16215,7 @@ module LibNGAP_Templates { template (present) GBR_QosInformation.iE_Extensions mw_gBR_QosInformation_id_AlternativeQoSParaSetList( template (present) AlternativeQoSParaSetList p_alternativeQoSParaSetList := ? ) := { - { + { id := id_AlternativeQoSParaSetList, criticality := ignore, extensionValue := { AlternativeQoSParaSetList := p_alternativeQoSParaSetList} @@ -16263,10 +16263,10 @@ module LibNGAP_Templates { } // End of template mw_globalLine_ID template (present) GlobalLine_ID.iE_Extensions mw_globalLine_ID_id_TAI(template TAI p_tAI := *) := { - { + { id := id_TAI, criticality := ignore, - extensionValue := { TAI := p_tAI } + extensionValue := { TAI := p_tAI } } } // End of template mw_globalLine_ID_id_TAI @@ -16411,50 +16411,50 @@ module LibNGAP_Templates { template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation( template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? ) := { - { + { id := id_AdditionalDLForwardingUPTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template mw_handoverCommandTransfer_id_AdditionalDLForwardingUPTNLInformation template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_ULForwardingUP_TNLInformation, criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_handoverCommandTransfer_id_ULForwardingUP_TNLInformation template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation( template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? ) := { - { + { id := id_AdditionalULForwardingUPTNLInformation, criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template mw_handoverCommandTransfer_id_AdditionalULForwardingUPTNLInformation template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_DataForwardingResponseERABList( template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? ) := { - { + { id := id_DataForwardingResponseERABList, criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } } } // End of template mw_handoverCommandTransfer_id_DataForwardingResponseERABList template (present) HandoverCommandTransfer.iE_Extensions mw_handoverCommandTransfer_id_QosFlowFailedToSetupList( template (present) QosFlowListWithCause p_qosFlowListWithCause := ? ) := { - { + { id := id_QosFlowFailedToSetupList, criticality := ignore, - extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } + extensionValue := { QosFlowListWithCause := p_qosFlowListWithCause } } } // End of template mwhandoverCommandTransfer_id_QosFlowFailedToSetupList @@ -16489,80 +16489,80 @@ module LibNGAP_Templates { template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList( template (present) AdditionalDLUPTNLInformationForHOList p_additionalDLUPTNLInformationForHOList := ? ) := { - { + { id := id_AdditionalDLUPTNLInformationForHOList, criticality := reject, - extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } + extensionValue := { AdditionalDLUPTNLInformationForHOList := p_additionalDLUPTNLInformationForHOList } } } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalDLUPTNLInformationForHOList template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_ULForwardingUP_TNLInformation, criticality := reject, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_handoverRequestAcknowledgeTransfer_id_ULForwardingUP_TNLInformation template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation( template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? ) := { - { + { id := id_AdditionalULForwardingUPTNLInformation, criticality := reject, - extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + extensionValue := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template mw_handoverRequestAcknowledgeTransfer_id_AdditionalULForwardingUPTNLInformation template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList( template (present) DataForwardingResponseERABList p_dataForwardingResponseERABList := ? ) := { - { + { id := id_DataForwardingResponseERABList, criticality := ignore, - extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } + extensionValue := { DataForwardingResponseERABList := p_dataForwardingResponseERABList } } } // End of template mw_handoverRequestAcknowledgeTransfer_id_DataForwardingResponseERABList template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_handoverRequestAcknowledgeTransfer_id_RedundantDL_NGU_UP_TNLInformation template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation( template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? ) := { - { + { id := id_UsedRSNInformation, criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } } } // End of template mw_handoverRequestAcknowledgeTransfer_id_UsedRSNInformation template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID( template (present) GlobalRANNodeID p_globalRANNodeID := ? ) := { - { + { id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } } // End of template mw_handoverRequestAcknowledgeTransfer_id_GlobalRANNodeID template (present) HandoverRequestAcknowledgeTransfer.iE_Extensions mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator( template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? ) := { - { + { id := id_MBS_SupportIndicator, criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } } } // End of template mw_handoverRequestAcknowledgeTransfer_id_MBS_SupportIndicator @@ -16748,7 +16748,7 @@ module LibNGAP_Templates { ) := { id := id_IntersystemSONInformationRequest, criticality := ignore, - value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } + value_ := { IntersystemSONInformationRequest := p_intersystemSONInformationRequest } } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationRequest template (present) IntersystemSONInformation.choice_Extensions mw_intersystemSONInformation_id_IntersystemSONInformationReply( @@ -16756,7 +16756,7 @@ module LibNGAP_Templates { ) := { id := id_IntersystemSONInformationReply, criticality := ignore, - value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } + value_ := { IntersystemSONInformationReply := p_intersystemSONInformationReply } } // End of template mw_intersystemSONInformation_id_IntersystemSONInformationReply template (present) IntersystemSONInformationRequest mw_intersystemSONInformationRequest_nGRAN_CellActivation( @@ -17200,10 +17200,10 @@ module LibNGAP_Templates { template (present) LastVisitedNGRANCellInformation.iE_Extensions mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList( template (present) LastVisitedPSCellList p_lastVisitedPSCellList := ? ) := { - { + { id := id_LastVisitedPSCellList, criticality := ignore, - extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } + extensionValue := { LastVisitedPSCellList := p_lastVisitedPSCellList } } } // End of template mw_lastVisitedNGRANCellInformation_id_LastVisitedPSCellList @@ -17239,10 +17239,10 @@ module LibNGAP_Templates { template (present) LocationReportingRequestType.iE_Extensions mw_locationReportingRequestType_id_LocationReportingAdditionalInfo( template (present) LocationReportingAdditionalInfo p_locationReportingAdditionalInfo := ? ) := { - { + { id := id_LocationReportingAdditionalInfo, criticality := ignore, - extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } + extensionValue := { LocationReportingAdditionalInfo := p_locationReportingAdditionalInfo } } } // End of template mw_locationReportingRequestType_id_LocationReportingAdditionalInfo @@ -17473,30 +17473,30 @@ module LibNGAP_Templates { template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? ) := { - { + { id := id_MBS_SessionTNLInfo5GC, criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } } } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? ) := { - { + { id := id_MBS_QoSFlowsToBeSetupModList, criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } } } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( template (present) MBS_SessionFSAIDList p_mBS_SessionFSAIDList := ? ) := { - { + { id := id_MBS_SessionFSAIDList, criticality := ignore, - value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } } } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList @@ -17694,40 +17694,40 @@ module LibNGAP_Templates { template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity( template (present) PLMNIdentity p_pLMNIdentity := ? ) := { - { + { id := id_LastEUTRAN_PLMNIdentity, criticality := ignore, - extensionValue := { PLMNIdentity := p_pLMNIdentity } + extensionValue := { PLMNIdentity := p_pLMNIdentity } } } // End of template mw_mobilityRestrictionList_id_LastEUTRAN_PLMNIdentity template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing( template (present) CNTypeRestrictionsForServing p_cNTypeRestrictionsForServing := ? ) := { - { + { id := id_CNTypeRestrictionsForServing, criticality := ignore, - extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } + extensionValue := { CNTypeRestrictionsForServing := p_cNTypeRestrictionsForServing } } } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForServing template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent( template (present) CNTypeRestrictionsForEquivalent p_cNTypeRestrictionsForEquivalent := ? ) := { - { + { id := id_CNTypeRestrictionsForEquivalent, criticality := ignore, - extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } + extensionValue := { CNTypeRestrictionsForEquivalent := p_cNTypeRestrictionsForEquivalent } } } // End of template mw_mobilityRestrictionList_id_CNTypeRestrictionsForEquivalent template (present) MobilityRestrictionList.iE_Extensions mw_mobilityRestrictionList_id_NPN_MobilityInformation( template (present) NPN_MobilityInformation p_nPN_MobilityInformation := ? ) := { - { + { id := id_NPN_MobilityInformation, criticality := reject, - extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } + extensionValue := { NPN_MobilityInformation := p_nPN_MobilityInformation } } } // End of template mw_mobilityRestrictionList_id_NPN_MobilityInformation @@ -17826,50 +17826,50 @@ module LibNGAP_Templates { template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID( template (present) MBS_SessionID p_mBS_SessionID := ? ) := { - { + { id := id_MBS_SessionID, criticality := reject, - value_ := { MBS_SessionID := p_mBS_SessionID } + value_ := { MBS_SessionID := p_mBS_SessionID } } } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionID template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea( template (present) MBS_ServiceArea p_mBS_ServiceArea := ? ) := { - { + { id := id_MBS_ServiceArea, criticality := reject, - value_ := { MBS_ServiceArea := p_mBS_ServiceArea } + value_ := { MBS_ServiceArea := p_mBS_ServiceArea } } } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_ServiceArea template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? ) := { - { + { id := id_MBS_QoSFlowsToBeSetupModList, criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } } } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowsToBeSetupModList template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList( template (present) QosFlowListWithCause p_qosFlowListWithCause := ? ) := { - { + { id := id_MBS_QoSFlowToReleaseList, criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } } } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_QoSFlowToReleaseList template (present) MulticastSessionUpdateRequestTransfer.protocolIEs mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC( template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? ) := { - { + { id := id_MBS_SessionTNLInfo5GC, criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } } } // End of template mw_multicastSessionUpdateRequestTransfer_id_MBS_SessionTNLInfo5GC @@ -17918,20 +17918,20 @@ module LibNGAP_Templates { template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_IncludeBeamMeasurementsIndication( template (present) IncludeBeamMeasurementsIndication p_includeBeamMeasurementsIndication := ? ) := { - { + { id := id_IncludeBeamMeasurementsIndication, criticality := ignore, - extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } + extensionValue := { IncludeBeamMeasurementsIndication := p_includeBeamMeasurementsIndication } } } // End of template mw_m1Configuration_id_IncludeBeamMeasurementsIndication template (present) M1Configuration.iE_Extensions mw_m1Configuration_id_BeamMeasurementsReportConfiguration( template (present) BeamMeasurementsReportConfiguration p_beamMeasurementsReportConfiguration := ? ) := { - { + { id := id_BeamMeasurementsReportConfiguration, criticality := ignore, - extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } + extensionValue := { BeamMeasurementsReportConfiguration := p_beamMeasurementsReportConfiguration } } } // End of template mw_m1Configuration_id_BeamMeasurementsReportConfiguration @@ -17984,10 +17984,10 @@ module LibNGAP_Templates { template (present) M1PeriodicReporting.iE_Extensions mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT( template (present) ExtendedReportIntervalMDT p_extendedReportIntervalMDT := ? ) := { - { + { id := id_ExtendedReportIntervalMDT, criticality := ignore, - extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } + extensionValue := { ExtendedReportIntervalMDT := p_extendedReportIntervalMDT } } } // End of template mw_m1PeriodicReporting_id_ExtendedReportIntervalMDT @@ -18004,10 +18004,10 @@ module LibNGAP_Templates { template (present) M4Configuration.iE_Extensions mw_m4Configuration_id_M4ReportAmount( template (present) M4ReportAmountMDT p_m4ReportAmountMDT := ? ) := { - { + { id := id_ExtendedReportIntervalMDT, criticality := ignore, - extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } + extensionValue := { M4ReportAmountMDT := p_m4ReportAmountMDT } } } // End of template mw_m4Configuration_id_M4ReportAmount @@ -18028,10 +18028,10 @@ module LibNGAP_Templates { template (present) M5Configuration.iE_Extensions mw_m5Configuration_id_M5ReportAmount( template (present) M5ReportAmountMDT p_m5ReportAmountMDT := ? ) := { - { + { id := id_M5ReportAmount, criticality := ignore, - extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } + extensionValue := { M5ReportAmountMDT := p_m5ReportAmountMDT } } } // End of template mw_m5Configuration_id_M5ReportAmount @@ -18052,20 +18052,20 @@ module LibNGAP_Templates { template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_M6ReportAmount( template (present) M6ReportAmountMDT p_m6ReportAmountMDT := ? ) := { - { + { id := id_M6ReportAmount, criticality := ignore, - extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } + extensionValue := { M6ReportAmountMDT := p_m6ReportAmountMDT } } } // End of template mw_m6Configuration_id_M6ReportAmount template (present) M6Configuration.iE_Extensions mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration( template (present) ExcessPacketDelayThresholdConfiguration p_excessPacketDelayThresholdConfiguration := ? ) := { - { + { id := id_ExcessPacketDelayThresholdConfiguration, criticality := ignore, - extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } + extensionValue := { ExcessPacketDelayThresholdConfiguration := p_excessPacketDelayThresholdConfiguration } } } // End of template mw_m6Configuration_id_ExcessPacketDelayThresholdConfiguration @@ -18086,10 +18086,10 @@ module LibNGAP_Templates { template (present) M7Configuration.iE_Extensions mw_m7Configuration_id_M7ReportAmount( template (present) M7ReportAmountMDT p_m7ReportAmountMDT := ? ) := { - { + { id := id_M7ReportAmount, criticality := ignore, - extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } + extensionValue := { M7ReportAmountMDT := p_m7ReportAmountMDT } } } // End of template mw_m7Configuration_id_M7ReportAmount @@ -18228,20 +18228,20 @@ module LibNGAP_Templates { template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL( template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? ) := { - { + { id := id_CNPacketDelayBudgetDL, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetDL template (present) NonDynamic5QIDescriptor.iE_Extensions mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL( template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? ) := { - { + { id := id_CNPacketDelayBudgetUL, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } } // End of template mw_nonDynamic5QIDescriptor_id_CNPacketDelayBudgetUL @@ -18465,40 +18465,40 @@ module LibNGAP_Templates { template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation( template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? ) := { - { + { id := id_AdditionalNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalNGU_UP_TNLInformation template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_RedundantUL_NGU_UP_TNLInformation template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? ) := { - { + { id := id_AdditionalRedundantNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_AdditionalRedundantNGU_UP_TNLInformation template (present) PathSwitchRequestAcknowledgeTransfer.iE_Extensions mw_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList( template (present) QosFlowParametersList p_qosFlowParametersList := ? ) := { - { + { id := id_QosFlowParametersList, criticality := ignore, - extensionValue := { QosFlowParametersList := p_qosFlowParametersList } + extensionValue := { QosFlowParametersList := p_qosFlowParametersList } } } // End of template mw_pathSwitchRequestAcknowledgeTransfer_id_QosFlowParametersList @@ -18527,70 +18527,70 @@ module LibNGAP_Templates { template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation( template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? ) := { - { + { id := id_AdditionalDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template mw_pathSwitchRequestTransferr_id_AdditionalDLQosFlowPerTNLInformation template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_UP_TNLInformation template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused( template (present) DL_NGU_TNLInformationReused p_dL_NGU_TNLInformationReused := ? ) := { - { + { id := id_RedundantDL_NGU_TNLInformationReused, criticality := ignore, - extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } + extensionValue := { DL_NGU_TNLInformationReused := p_dL_NGU_TNLInformationReused } } } // End of template mw_pathSwitchRequestTransferr_id_RedundantDL_NGU_TNLInformationReused template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation( template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? ) := { - { + { id := id_AdditionalRedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template mw_pathSwitchRequestTransferr_id_AdditionalRedundantDLQosFlowPerTNLInformation template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_UsedRSNInformation( template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? ) := { - { + { id := id_UsedRSNInformation, criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } } } // End of template mw_pathSwitchRequestTransferr_id_UsedRSNInformation template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransferr_id_GlobalRANNodeID( template (present) GlobalRANNodeID p_globalRANNodeID := ? ) := { - { + { id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } } // End of template mw_pathSwitchRequestTransferr_id_GlobalRANNodeID template (present) PathSwitchRequestTransfer.iE_Extensions mw_pathSwitchRequestTransfer_id_MBS_SupportIndicator( template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? ) := { - { + { id := id_MBS_SupportIndicator, criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } } } // End of template mw_pathSwitchRequestTransfer_id_MBS_SupportIndicator @@ -18718,17 +18718,17 @@ module LibNGAP_Templates { template (present) PDUSessionResourceFailedToSetupItemHOAck mw_pDUSessionResourceFailedToSetupItemHOAck( template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer := ?, + template (present) PDUSessionResourceFailedToSetupItemHOAck.handoverResourceAllocationUnsuccessfulTransfer p_handoverResourceAllocationUnsuccessfulTransfer := ?, template PDUSessionResourceFailedToSetupItemHOAck.iE_Extensions p_iE_Extensions := * ) := { - pDUSessionID := p_pDUSessionID, + pDUSessionID := p_pDUSessionID, handoverResourceAllocationUnsuccessfulTransfer := p_handoverResourceAllocationUnsuccessfulTransfer, iE_Extensions := p_iE_Extensions } // End of template mw_pDUSessionResourceFailedToSetupItemHOAck template (present) PDUSessionResourceFailedToSetupItemPSReq mw_pDUSessionResourceFailedToSetupItemPSReq( template (present) PDUSessionID p_pDUSessionID := ?, - template (present) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer := ?, + template (present) PDUSessionResourceFailedToSetupItemPSReq.pathSwitchRequestSetupFailedTransfer p_pathSwitchRequestSetupFailedTransfer := ?, template PDUSessionResourceFailedToSetupItemPSReq.iE_Extensions p_iE_Extensions := * ) := { pDUSessionID := p_pDUSessionID, @@ -18779,10 +18779,10 @@ module LibNGAP_Templates { template (present) PDUSessionResourceItemCxtRelCpl.iE_Extensions mw_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer( template (present) PDUSessionResourceReleaseResponseTransfer_OCTET_STRING p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING := ? ) := { - { + { id := id_PDUSessionResourceReleaseResponseTransfer, criticality := ignore, - extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } + extensionValue := { PDUSessionResourceReleaseResponseTransfer_OCTET_STRING := p_pDUSessionResourceReleaseResponseTransfer_OCTET_STRING } } } // End of template mw_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer @@ -18821,20 +18821,20 @@ module LibNGAP_Templates { template (present) PDUSessionResourceModifyConfirmTransfer.iE_Extensions mw_pDUSessionResourceModifyConfirmTransfer_id_RedundantUL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_pDUSessionResourceModifyConfirmTransferr_id_RedundantUL_NGU_UP_TNLInformation template (present) PDUSessionResourceModifyConfirmTransfer.iE_Extensions mw_pDUSessionResourceModifyConfirmTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? ) := { - { + { id := id_AdditionalRedundantNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template mw_pDUSessionResourceModifyConfirmTransferr_id_AdditionalRedundantNGU_UP_TNLInformation @@ -18855,130 +18855,130 @@ module LibNGAP_Templates { template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? ) := { - { + { id := id_PDUSessionAggregateMaximumBitRate, criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( template (present) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList := ? ) := { - { + { id := id_UL_NGU_UP_TNLModifyList, criticality := reject, - value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } + value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( template (present) NetworkInstance p_networkInstance := ? ) := { - { + { id := id_NetworkInstance, criticality := reject, - value_ := { NetworkInstance := p_networkInstance } + value_ := { NetworkInstance := p_networkInstance } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( template (present) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList := ? ) := { - { + { id := id_QosFlowAddOrModifyRequestList, criticality := reject, - value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } + value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( template (present) QosFlowListWithCause p_qosFlowListWithCause := ? ) := { - { + { id := id_QosFlowToReleaseList, criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } + value_ := { QosFlowListWithCause := p_qosFlowListWithCause } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? ) := { - { + { id := id_AdditionalUL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( template (present) CommonNetworkInstance p_commonNetworkInstance := ? ) := { - { + { id := id_CommonNetworkInstance, criticality := reject, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } + value_ := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? ) := { - { + { id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( template (present) CommonNetworkInstance p_commonNetworkInstance := ? ) := { - { + { id := id_RedundantCommonNetworkInstance, criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } + value_ := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( template (present) SecurityIndication p_securityIndication := ? ) := { - { + { id := id_SecurityIndication, criticality := ignore, - value_ := { SecurityIndication := p_securityIndication } + value_ := { SecurityIndication := p_securityIndication } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( template (present) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList := ? ) := { - { + { id := id_MBSSessionSetuporModifyRequestList, criticality := ignore, - value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } + value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( template (present) MBSSessionToReleaseList p_mBSSessionToReleaseList := ? ) := { - { + { id := id_MBSSessionToReleaseList, criticality := ignore, - value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } + value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } } } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList @@ -19001,96 +19001,96 @@ module LibNGAP_Templates { template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation( template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? ) := { - { + { id := id_AdditionalNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalNGU_UP_TNLInformation template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_RedundantDL_NGU_UP_TNLInformation template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_RedundantUL_NGU_UP_TNLInformation template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? ) := { - { + { id := id_AdditionalRedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation( template (present) UPTransportLayerInformationPairList p_uPTransportLayerInformationPairList := ? ) := { - { + { id := id_AdditionalRedundantNGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } + extensionValue := { UPTransportLayerInformationPairList := p_uPTransportLayerInformationPairList } } } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_AdditionalRedundantNGU_UP_TNLInformation template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation( template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_SecondaryRATUsageInformation template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator( template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? ) := { - { + { id := id_MBS_SupportIndicator, criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } } } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBS_SupportIndicator template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList( template (present) MBSSessionSetupResponseList p_mBSSessionSetupResponseList := ? ) := { - { + { id := id_MBSSessionSetuporModifyResponseList, criticality := ignore, - extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } } } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionSetuporModifyResponseList template (present) PDUSessionResourceModifyResponseTransfer.iE_Extensions mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList( template (present) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList := ? ) := { - { + { id := id_MBSSessionFailedtoSetuporModifyList, criticality := ignore, - extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } } } // End of template mw_pDUSessionResourceModifyResponseTransfer_id_MBSSessionFailedtoSetuporModifyList template (present) PDUSessionResourceModifyIndicationTransfer mw_pDUSessionResourceModifyIndicationTransfer( template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * ) := { dLQosFlowPerTNLInformation := p_dLQosFlowPerTNLInformation, @@ -19101,50 +19101,50 @@ module LibNGAP_Templates { template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation( template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_SecondaryRATUsageInformation template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult( template (present) SecurityResult p_securityResult := ? ) := { - { + { id := id_SecurityResult, criticality := ignore, - extensionValue := { SecurityResult := p_securityResult } + extensionValue := { SecurityResult := p_securityResult } } } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_SecurityResult template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation( template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ? ) := { - { + { id := id_RedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } } } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_RedundantDLQosFlowPerTNLInformation template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? ) := { - { + { id := id_AdditionalRedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation template (present) PDUSessionResourceModifyIndicationTransfer.iE_Extensions mw_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID( template (present) GlobalRANNodeID p_globalRANNodeID := ? ) := { - { + { id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } } // End of template mw_pDUSessionResourceModifyIndicationTransfer_id_GlobalRANNodeID @@ -19183,20 +19183,20 @@ module LibNGAP_Templates { template (present) PDUSessionResourceModifyItemModReq.iE_Extensions mw_pDUSessionResourceModifyItemModReq_id_S_NSSAI( template (present) S_NSSAI p_s_nSSAI := ? ) := { - { + { id := id_S_NSSAI, criticality := reject, - extensionValue := { S_NSSAI := p_s_nSSAI } + extensionValue := { S_NSSAI := p_s_nSSAI } } } // End of template mw_pDUSessionResourceModifyItemModReq_id_S_NSSAI template (present) PDUSessionResourceModifyItemModReq.iE_Extensions mw_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour( template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template mw_pDUSessionResourceModifyItemModReq_id_PduSessionExpectedUEActivityBehaviour @@ -19204,15 +19204,15 @@ module LibNGAP_Templates { template (present) S_NSSAI p_s_nSSAI := ?, template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? ) := { - { + { id := id_S_NSSAI, criticality := reject, - extensionValue := { S_NSSAI := p_s_nSSAI } + extensionValue := { S_NSSAI := p_s_nSSAI } }, - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template mw_pDUSessionResourceModifyItemModReq_full @@ -19258,10 +19258,10 @@ module LibNGAP_Templates { template (present) PDUSessionResourceNotifyReleasedTransfer.iE_Extensions mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation( template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation @@ -19278,20 +19278,20 @@ module LibNGAP_Templates { template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceNotifyTransfer_id_SecondaryRATUsageInformation( template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_SecondaryRATUsageInformation template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceNotifyTransfer_id_QosFlowFeedbackList( template (present) QosFlowFeedbackList p_qosFlowFeedbackList := ? ) := { - { + { id := id_QosFlowFeedbackList, criticality := ignore, - extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } + extensionValue := { QosFlowFeedbackList := p_qosFlowFeedbackList } } } // End of template mw_pDUSessionResourceNotifyReleasedTransfer_id_QosFlowFeedbackList @@ -19352,10 +19352,10 @@ module LibNGAP_Templates { template (present) PDUSessionResourceNotifyTransfer.iE_Extensions mw_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation( template (present) SecondaryRATUsageInformation p_secondaryRATUsageInformation := ? ) := { - { + { id := id_SecondaryRATUsageInformation, criticality := ignore, - extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } + extensionValue := { SecondaryRATUsageInformation := p_secondaryRATUsageInformation } } } // End of template mw_pDUSessionResourceReleaseResponseTransfer_id_SecondaryRATUsageInformation @@ -19406,10 +19406,10 @@ module LibNGAP_Templates { template (present) PDUSessionResourceSetupItemCxtReq.iE_Extensions mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour( template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour @@ -19438,10 +19438,10 @@ module LibNGAP_Templates { template (present) PDUSessionResourceSetupItemHOReq.iE_Extensions mw_pDUSessionResourceSetupItemHOReq_id_PduSessionExpectedUEActivityBehaviour( template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template mw_pDUSessionResourceSetupItemCxtReq_id_PduSessionExpectedUEActivityBehaviour @@ -19462,10 +19462,10 @@ module LibNGAP_Templates { template (present) PDUSessionResourceSetupItemSUReq.iE_Extensions mw_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour( template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template mw_pDUSessionResourceSetupItemSUReq_id_PduSessionExpectedUEActivityBehaviour @@ -19490,20 +19490,20 @@ module LibNGAP_Templates { template (present) QosFlowSetupRequestList p_qosFlowSetupRequestList := ?, template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_PDUSessionType, criticality := reject, - value_ := { PDUSessionType := p_pDUSessionType } + value_ := { PDUSessionType := p_pDUSessionType } }, - { + { id := id_QosFlowSetupRequestList, criticality := reject, - value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } }, - { + { id := id_UL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_mandatories @@ -19514,171 +19514,171 @@ module LibNGAP_Templates { template (present) DataForwardingNotPossible p_dataForwardingNotPossible := ?, template (present) SecurityIndication p_securityIndication := ? ) := { - { + { id := id_PDUSessionType, criticality := reject, - value_ := { PDUSessionType := p_pDUSessionType } + value_ := { PDUSessionType := p_pDUSessionType } }, - { + { id := id_QosFlowSetupRequestList, criticality := reject, - value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } }, - { + { id := id_UL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } }, - { + { id := id_DataForwardingNotPossible, criticality := reject, - value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } }, - { + { id := id_SecurityIndication, criticality := reject, - value_ := { SecurityIndication := p_securityIndication } + value_ := { SecurityIndication := p_securityIndication } } - + } // End of template mw_pDUSessionResourceSetupRequestTransfer_optionals template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate( template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? ) := { - { + { id := id_PDUSessionAggregateMaximumBitRate, criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } + value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionAggregateMaximumBitRate template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? ) := { - { + { id := id_UL_NGU_UP_TNLInformation, criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_UL_NGU_UP_TNLInformation template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible( template (present) DataForwardingNotPossible p_dataForwardingNotPossible := ? ) := { - { + { id := id_DataForwardingNotPossible, criticality := reject, - value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } + value_ := { DataForwardingNotPossible := p_dataForwardingNotPossible } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_DataForwardingNotPossible template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType( template (present) PDUSessionType p_pDUSessionType := ? ) := { - { + { id := id_PDUSessionType, criticality := reject, - value_ := { PDUSessionType := p_pDUSessionType } + value_ := { PDUSessionType := p_pDUSessionType } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_PDUSessionType template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication( template (present) SecurityIndication p_securityIndication := ? ) := { - { + { id := id_SecurityIndication, criticality := reject, - value_ := { SecurityIndication := p_securityIndication } + value_ := { SecurityIndication := p_securityIndication } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_SecurityIndication template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance( template (present) NetworkInstance p_networkInstance := ? ) := { - { + { id := id_NetworkInstance, criticality := reject, - value_ := { NetworkInstance := p_networkInstance } + value_ := { NetworkInstance := p_networkInstance } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_NetworkInstance template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList( template (present) QosFlowSetupRequestList p_qosFlowSetupRequestList := ? ) := { - { + { id := id_QosFlowSetupRequestList, criticality := reject, - value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } + value_ := { QosFlowSetupRequestList := p_qosFlowSetupRequestList } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_QosFlowSetupRequestList template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance( template (present) CommonNetworkInstance p_commonNetworkInstance := ? ) := { - { + { id := id_CommonNetworkInstance, criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } + value_ := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_CommonNetworkInstance template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability( template (present) DirectForwardingPathAvailability p_directForwardingPathAvailability := ? ) := { - { + { id := id_DirectForwardingPathAvailability, criticality := ignore, - value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + value_ := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_DirectForwardingPathAvailability template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } + value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? ) := { - { + { id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } + value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstancen( template (present) CommonNetworkInstance p_commonNetworkInstance := ? ) := { - { + { id := id_RedundantCommonNetworkInstance, criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } + value_ := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantCommonNetworkInstance template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation( template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? ) := { - { + { id := id_RedundantPDUSessionInformation, criticality := ignore, - value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + value_ := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_RedundantPDUSessionInformation template (present) PDUSessionResourceSetupRequestTransfer.protocolIEs mw_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList( template (present) MBSSessionSetupRequestList p_mBSSessionSetupRequestList := ? ) := { - { + { id := id_MBSSessionSetupRequestList, criticality := ignore, - value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } + value_ := { MBSSessionSetupRequestList := p_mBSSessionSetupRequestList } } } // End of template mw_pDUSessionResourceSetupRequestTransfer_id_MBSSessionSetupRequestList @@ -19699,70 +19699,70 @@ module LibNGAP_Templates { template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation( template (present) QosFlowPerTNLInformation p_qosFlowPerTNLInformation := ? ) := { - { + { id := id_RedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } + extensionValue := { QosFlowPerTNLInformation := p_qosFlowPerTNLInformation } } } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_RedundantDLQosFlowPerTNLInformation template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation( template (present) QosFlowPerTNLInformationList p_qosFlowPerTNLInformationList := ? ) := { - { + { id := id_AdditionalRedundantDLQosFlowPerTNLInformation, criticality := ignore, - extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } + extensionValue := { QosFlowPerTNLInformationList := p_qosFlowPerTNLInformationList } } } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_AdditionalRedundantDLQosFlowPerTNLInformation template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation( template (present) RedundantPDUSessionInformation p_redundantPDUSessionInformation := ? ) := { - { + { id := id_UsedRSNInformation, criticality := ignore, - extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } + extensionValue := { RedundantPDUSessionInformation := p_redundantPDUSessionInformation } } } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_UsedRSNInformation template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID( template (present) GlobalRANNodeID p_globalRANNodeID := ? ) := { - { + { id := id_GlobalRANNodeID, criticality := ignore, - extensionValue := { GlobalRANNodeID := p_globalRANNodeID } + extensionValue := { GlobalRANNodeID := p_globalRANNodeID } } } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_GlobalRANNodeID template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator( template (present) MBS_SupportIndicator p_mBS_SupportIndicator := ? ) := { - { + { id := id_MBS_SupportIndicator, criticality := ignore, - extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } + extensionValue := { MBS_SupportIndicator := p_mBS_SupportIndicator } } } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBS_SupportIndicator template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList( template (present) MBSSessionSetupResponseList p_mBSSessionSetupResponseList := ? ) := { - { + { id := id_MBSSessionSetupResponseList, criticality := ignore, - extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } + extensionValue := { MBSSessionSetupResponseList := p_mBSSessionSetupResponseList } } } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionSetupResponseList template (present) PDUSessionResourceSetupResponseTransfer.iE_Extensions mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList( template (present) MBSSessionFailedtoSetupList p_mBSSessionFailedtoSetupList := ? ) := { - { + { id := id_MBSSessionFailedtoSetupList, criticality := ignore, - extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } + extensionValue := { MBSSessionFailedtoSetupList := p_mBSSessionFailedtoSetupList } } } // End of template mw_pDUSessionResourceSetupResponseTransfer_id_MBSSessionFailedtoSetupList @@ -19799,10 +19799,10 @@ module LibNGAP_Templates { template (present) PDUSessionResourceSwitchedItem.iE_Extensions mw_pDUSessionResourceSwitchedItemw_id_PduSessionExpectedUEActivityBehaviour( template (present) ExpectedUEActivityBehaviour p_expectedUEActivityBehaviour := ? ) := { - { + { id := id_PduSessionExpectedUEActivityBehaviour, criticality := ignore, - extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } + extensionValue := { ExpectedUEActivityBehaviour := p_expectedUEActivityBehaviour } } } // End of template mw_pDUSessionResourceSwitchedItemw_id_PduSessionExpectedUEActivityBehaviour @@ -19877,30 +19877,30 @@ module LibNGAP_Templates { template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_NPN_Support( template (present) NPN_Support p_nPN_Support := ? ) := { - { + { id := id_NPN_Support, criticality := reject, - extensionValue := { NPN_Support := p_nPN_Support } + extensionValue := { NPN_Support := p_nPN_Support } } } // End of template mw_pLMNSupportItemw_id_NPN_Support template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_ExtendedSliceSupportList( template (present) ExtendedSliceSupportList p_extendedSliceSupportList := ? ) := { - { + { id := id_ExtendedSliceSupportList, criticality := reject, - extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } + extensionValue := { ExtendedSliceSupportList := p_extendedSliceSupportList } } } // End of template mw_pLMNSupportItemw_id_ExtendedSliceSupportList template (present) PLMNSupportItem.iE_Extensions mw_pLMNSupportItemw_id_OnboardingSupport( template (present) OnboardingSupport p_onboardingSupport := ? ) := { - { + { id := id_OnboardingSupport, criticality := ignore, - extensionValue := { OnboardingSupport := p_onboardingSupport } + extensionValue := { OnboardingSupport := p_onboardingSupport } } } // End of template mw_pLMNSupportItemw_id_OnboardingSupport @@ -19974,15 +19974,15 @@ module LibNGAP_Templates { ) := { qosFlowIdentifier := p_qosFlowIdentifier, iE_Extensions := p_iE_Extensions - } // End of template + } // End of template template (present) QosFlowAcceptedItem.iE_Extensions mw_pLMNSupportItemw_id_CurrentQoSParaSetIndex( template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } } } // End of template mw_pLMNSupportItemw_id_ExtendedSliceSupportList @@ -20001,20 +20001,20 @@ module LibNGAP_Templates { template (present) QosFlowAddOrModifyRequestItem.iE_Extensions mw_qosFlowAddOrModifyRequestItemw_id_TSCTrafficCharacteristics( template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ? ) := { - { + { id := id_TSCTrafficCharacteristics, criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } } } // End of template mw_qosFlowAddOrModifyRequestItemw_id_TSCTrafficCharacteristics template (present) QosFlowAddOrModifyRequestItem.iE_Extensions mw_qosFlowAddOrModifyRequestItemw_id_RedundantQosFlowIndicator( template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? ) := { - { + { id := id_RedundantQosFlowIndicator, criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } } } // End of template mw_qosFlowAddOrModifyRequestItemw_id_RedundantQosFlowIndicator @@ -20022,15 +20022,15 @@ module LibNGAP_Templates { template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ?, template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? ) := { - { + { id := id_TSCTrafficCharacteristics, criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } }, - { + { id := id_RedundantQosFlowIndicator, criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } } } // End of template mw_qosFlowAddOrModifyRequestItemw_full @@ -20045,10 +20045,10 @@ module LibNGAP_Templates { template (present) QosFlowAddOrModifyResponseItem.iE_Extensions mw_qosFlowAddOrModifyResponseItemw_id_CurrentQoSParaSetIndex( template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } } } // End of template mw_qosFlowAddOrModifyResponseItemw_id_CurrentQoSParaSetIndex @@ -20079,30 +20079,30 @@ module LibNGAP_Templates { template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_ULForwarding( template (present) ULForwarding p_uLForwarding := ? ) := { - { + { id := id_ULForwarding, criticality := ignore, - extensionValue := { ULForwarding := p_uLForwarding } + extensionValue := { ULForwarding := p_uLForwarding } } } // End of template mw_qosFlowInformationItemw_id_ULForwarding template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_SourceTNLAddrInfo( template (present) TransportLayerAddress p_transportLayerAddress := ? ) := { - { + { id := id_SourceTNLAddrInfo, criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } + extensionValue := { TransportLayerAddress := p_transportLayerAddress } } } // End of template mw_qosFlowInformationItemw_id_SourceTNLAddrInfo template (present) QosFlowInformationItem.iE_Extensions mw_qosFlowInformationItemw_id_SourceNodeTNLAddrInfo( template (present) TransportLayerAddress p_transportLayerAddress := ? ) := { - { + { id := id_SourceNodeTNLAddrInfo, criticality := ignore, - extensionValue := { TransportLayerAddress := p_transportLayerAddress } + extensionValue := { TransportLayerAddress := p_transportLayerAddress } } } // End of template mw_qosFlowInformationItemw_id_SourceNodeTNLAddrInfo @@ -20125,20 +20125,20 @@ module LibNGAP_Templates { template (present) QosFlowLevelQosParameters.iE_Extensions mw_qosFlowLevelQosParameters_id_QosMonitoringRequest( template (present) QosMonitoringRequest p_qosMonitoringRequest := ? ) := { - { + { id := id_QosMonitoringRequest, criticality := ignore, - extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } } } // End of template mw_qosFlowLevelQosParameters_id_QosMonitoringRequest template (present) QosFlowLevelQosParameters.iE_Extensions mw_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency( template (present) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency := ? ) := { - { + { id := id_QosMonitoringReportingFrequency, criticality := ignore, - extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } } } // End of template mw_qosFlowLevelQosParameters_id_QosMonitoringReportingFrequency @@ -20146,15 +20146,15 @@ module LibNGAP_Templates { template (present) QosMonitoringRequest p_qosMonitoringRequest := ?, template (present) QosMonitoringReportingFrequency p_qosMonitoringReportingFrequency := ? ) := { - { + { id := id_QosMonitoringRequest, criticality := ignore, - extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } + extensionValue := { QosMonitoringRequest := p_qosMonitoringRequest } }, - { + { id := id_QosMonitoringReportingFrequency, criticality := ignore, - extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } + extensionValue := { QosMonitoringReportingFrequency := p_qosMonitoringReportingFrequency } } } // End of template mw_qosFlowLevelQosParameters_full @@ -20191,10 +20191,10 @@ module LibNGAP_Templates { template (present) QosFlowNotifyItem.iE_Extensions mw_qosFlowNotifyItemw_id_CurrentQoSParaSetIndex( template (present) AlternativeQoSParaSetNotifyIndex p_alternativeQoSParaSetNotifyIndex := ? ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } + extensionValue := { AlternativeQoSParaSetNotifyIndex := p_alternativeQoSParaSetNotifyIndex } } } // End of template mw_qosFlowNotifyItemw_id_CurrentQoSParaSetIndex @@ -20211,36 +20211,36 @@ module LibNGAP_Templates { template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_CNPacketDelayBudgetDL( template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? ) := { - { + { id := id_CNPacketDelayBudgetDL, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } } // End of template mw_qosFlowParametersItemw_id_CNPacketDelayBudgetDL template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_CNPacketDelayBudgetUL( template (present) ExtendedPacketDelayBudget p_extendedPacketDelayBudget := ? ) := { - { + { id := id_CNPacketDelayBudgetUL, criticality := ignore, - extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } + extensionValue := { ExtendedPacketDelayBudget := p_extendedPacketDelayBudget } } } // End of template mw_qosFlowParametersItemw_id_CNPacketDelayBudgetUL template (present) QosFlowParametersItem.iE_Extensions mw_qosFlowParametersItemw_id_BurstArrivalTimeDownlink( template (present) BurstArrivalTime p_burstArrivalTime := ? ) := { - { + { id := id_BurstArrivalTimeDownlink, criticality := ignore, - extensionValue := { BurstArrivalTime := p_burstArrivalTime } + extensionValue := { BurstArrivalTime := p_burstArrivalTime } } } // End of template mw_qosFlowParametersItemw_id_BurstArrivalTimeDownlink template (present) QosFlowPerTNLInformation mw_qosFlowPerTNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ?, - template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, + template (present) AssociatedQosFlowList p_associatedQosFlowList := ?, template QosFlowPerTNLInformation.iE_Extensions p_iE_Extensions := * ) := { uPTransportLayerInformation := p_uPTransportLayerInformation, @@ -20271,20 +20271,20 @@ module LibNGAP_Templates { template (present) QosFlowSetupRequestItem.iE_Extensions mw_qosFlowSetupRequestItemw_id_TSCTrafficCharacteristics( template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ? ) := { - { + { id := id_TSCTrafficCharacteristics, criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } } } // End of template mw_qosFlowSetupRequestItemw_id_TSCTrafficCharacteristics template (present) QosFlowSetupRequestItem.iE_Extensions mw_qosFlowSetupRequestItemw_id_RedundantQosFlowIndicator( template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? ) := { - { + { id := id_RedundantQosFlowIndicator, criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } } } // End of template mw_qosFlowSetupRequestItemw_id_RedundantQosFlowIndicator @@ -20292,15 +20292,15 @@ module LibNGAP_Templates { template (present) TSCTrafficCharacteristics p_tSCTrafficCharacteristics := ?, template (present) RedundantQosFlowIndicator p_redundantQosFlowIndicator := ? ) := { - { + { id := id_TSCTrafficCharacteristics, criticality := ignore, - extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } + extensionValue := { TSCTrafficCharacteristics := p_tSCTrafficCharacteristics } }, - { + { id := id_RedundantQosFlowIndicator, criticality := ignore, - extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } + extensionValue := { RedundantQosFlowIndicator := p_redundantQosFlowIndicator } } } // End of template mw_qosFlowSetupRequestItemw_full @@ -20317,10 +20317,10 @@ module LibNGAP_Templates { template (present) QosFlowItemWithDataForwarding.iE_Extensions mw_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( template (present) AlternativeQoSParaSetIndex p_alternativeQoSParaSetIndex := ? ) := { - { + { id := id_CurrentQoSParaSetIndex, criticality := ignore, - extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } + extensionValue := { AlternativeQoSParaSetIndex := p_alternativeQoSParaSetIndex } } } // End of template mw_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex @@ -20370,15 +20370,15 @@ module LibNGAP_Templates { template (present) RATRestrictions_Item.iE_Extensions mw_rATRestrictions_Item_id_ExtendedRATRestrictionInformation( template (present) ExtendedRATRestrictionInformation p_extendedRATRestrictionInformation := ? ) := { - { + { id := id_ExtendedRATRestrictionInformation, criticality := ignore, - extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } + extensionValue := { ExtendedRATRestrictionInformation := p_extendedRATRestrictionInformation } } } // End of template mw_rATRestrictions_Item_id_ExtendedRATRestrictionInformation template (present) RecommendedCellsForPaging mw_recommendedCellsForPaging( - template (present) RecommendedCellList p_recommendedCellList := ?, + template (present) RecommendedCellList p_recommendedCellList := ?, template RecommendedCellsForPaging.iE_Extensions p_iE_Extensions := * ) := { recommendedCellList := p_recommendedCellList, @@ -20396,7 +20396,7 @@ module LibNGAP_Templates { } // End of template mw_recommendedCellItem template (present) RecommendedRANNodesForPaging mw_recommendedRANNodesForPaging( - template (present) RecommendedRANNodeList p_recommendedRANNodeList := ?, + template (present) RecommendedRANNodeList p_recommendedRANNodeList := ?, template RecommendedRANNodesForPaging.iE_Extensions p_iE_Extensions := * ) := { recommendedRANNodeList := p_recommendedRANNodeList, @@ -20426,10 +20426,10 @@ module LibNGAP_Templates { template (present) RedundantPDUSessionInformation.iE_Extensions mw_redundantPDUSessionInformation_id_PDUSessionPairID( template (present) PDUSessionPairID p_pDUSessionPairID := ? ) := { - { + { id := id_PDUSessionPairID, criticality := ignore, - extensionValue := { PDUSessionPairID := p_pDUSessionPairID } + extensionValue := { PDUSessionPairID := p_pDUSessionPairID } } } // End of template m_redundantPDUSessionInformation_id_PDUSessionPairID @@ -20551,10 +20551,10 @@ module LibNGAP_Templates { template (present) SecurityIndication.iE_Extensions mw_securityIndication_id_MaximumIntegrityProtectedDataRate_DL( template (present) MaximumIntegrityProtectedDataRate p_maximumIntegrityProtectedDataRate := ? ) := { - { + { id := id_MaximumIntegrityProtectedDataRate_DL, criticality := ignore, - extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } + extensionValue := { MaximumIntegrityProtectedDataRate := p_maximumIntegrityProtectedDataRate } } } // End of template mw_securityIndication_id_MaximumIntegrityProtectedDataRate_DL @@ -20576,7 +20576,7 @@ module LibNGAP_Templates { sensorMeasConfig := p_sensorMeasConfig, sensorMeasConfigNameList := p_sensorMeasConfigNameList, iE_Extensions := p_iE_Extensions - } // End of template mw_sensorMeasurementConfiguration + } // End of template mw_sensorMeasurementConfiguration template (present) SensorMeasConfigNameItem mw_sensorMeasConfigNameItem( template (present) SensorNameConfig p_sensorNameConfig := ?, @@ -20625,10 +20625,10 @@ module LibNGAP_Templates { template (present) ServedGUAMIItem.iE_Extensions mw_servedGUAMIItemw_id_GUAMIType( template (present) GUAMIType p_gUAMIType := ? ) := { - { + { id := id_GUAMIType, criticality := ignore, - extensionValue := { GUAMIType := p_gUAMIType } + extensionValue := { GUAMIType := p_gUAMIType } } } // End of template mw_servedGUAMIItemw_id_GUAMIType @@ -20806,7 +20806,7 @@ module LibNGAP_Templates { template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SgNB_UE_X2AP_ID( template (present) SgNB_UE_X2AP_ID p_sgNB_UE_X2AP_ID := ? ) := { - { + { id := id_SgNB_UE_X2AP_ID, criticality := ignore, extensionValue := { SgNB_UE_X2AP_ID := p_sgNB_UE_X2AP_ID } @@ -20816,7 +20816,7 @@ module LibNGAP_Templates { template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEHistoryInformationFromTheUE( template (present) UEHistoryInformationFromTheUE p_uEHistoryInformationFromTheUE := ? ) := { - { + { id := id_UEHistoryInformationFromTheUE, criticality := ignore, extensionValue := { UEHistoryInformationFromTheUE := p_uEHistoryInformationFromTheUE } @@ -20826,7 +20826,7 @@ module LibNGAP_Templates { template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_SourceNodeID( template (present) SourceNodeID p_sourceNodeID := ? ) := { - { + { id := id_SourceNodeID, criticality := ignore, extensionValue := { SourceNodeID := p_sourceNodeID } @@ -20836,7 +20836,7 @@ module LibNGAP_Templates { template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_UEContextReferenceAtSource( template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ? ) := { - { + { id := id_UEContextReferenceAtSource, criticality := ignore, extensionValue := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } @@ -20846,7 +20846,7 @@ module LibNGAP_Templates { template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_SourcetoTargetList( template (present) MBS_ActiveSessionInformation_SourcetoTargetList p_mBS_ActiveSessionInformation_SourcetoTargetListD := ? ) := { - { + { id := id_MBS_ActiveSessionInformation_SourcetoTargetList, criticality := ignore, extensionValue := { MBS_ActiveSessionInformation_SourcetoTargetList := p_mBS_ActiveSessionInformation_SourcetoTargetListD } @@ -20856,7 +20856,7 @@ module LibNGAP_Templates { template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_QMCConfigInfo( template (present) QMCConfigInfo p_qMCConfigInfo := ? ) := { - { + { id := id_QMCConfigInfo, criticality := ignore, extensionValue := { QMCConfigInfo := p_qMCConfigInfo } @@ -20866,7 +20866,7 @@ module LibNGAP_Templates { template (present) SourceNGRANNode_ToTargetNGRANNode_TransparentContainer.iE_Extensions mw_sourceNGRANNode_ToTargetNGRANNode_TransparentContainer_id_NGAPIESupportInformationRequestList( template (present) NGAPIESupportInformationRequestList p_nGAPIESupportInformationRequestList := ? ) := { - { + { id := id_NGAPIESupportInformationRequestList, criticality := ignore, extensionValue := { NGAPIESupportInformationRequestList := p_nGAPIESupportInformationRequestList } @@ -20930,20 +20930,20 @@ module LibNGAP_Templates { template (present) SupportedTAItem.iE_Extensions mw_supportedTAItemw_id_ConfiguredTACIndication( template (present) ConfiguredTACIndication p_configuredTACIndication := ? ) := { - { + { id := id_ConfiguredTACIndication, criticality := ignore, - extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } } } // End of template mw_supportedTAItemw_id_ConfiguredTACIndication template (present) SupportedTAItem.iE_Extensions mw_supportedTAItemw_id_RAT_Information( template (present) RAT_Information p_rAT_Information := ? ) := { - { + { id := id_RAT_Information, criticality := reject, - extensionValue := { RAT_Information := p_rAT_Information } + extensionValue := { RAT_Information := p_rAT_Information } } } // End of template mw_supportedTAItemw_id_RAT_Information @@ -20951,15 +20951,15 @@ module LibNGAP_Templates { template (present) ConfiguredTACIndication p_configuredTACIndication := ?, template (present) RAT_Information p_rAT_Information := ? ) := { - { + { id := id_ConfiguredTACIndication, criticality := ignore, - extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } + extensionValue := { ConfiguredTACIndication := p_configuredTACIndication } }, - { + { id := id_RAT_Information, criticality := reject, - extensionValue := { RAT_Information := p_rAT_Information } + extensionValue := { RAT_Information := p_rAT_Information } } } // End of template mw_supportedTAItemw_full @@ -20972,7 +20972,7 @@ module LibNGAP_Templates { template (present) TAI mw_tAI( template (present) PLMNIdentity p_pLMNIdentity := ?, template (present) TAC p_tAC := ?, - template TAI.iE_Extensions p_iE_Extensions := * + template TAI.iE_Extensions p_iE_Extensions := * ) := { pLMNIdentity := p_pLMNIdentity, tAC := p_tAC, @@ -20982,7 +20982,7 @@ module LibNGAP_Templates { template (present) TAIBroadcastEUTRA_Item mw_tAIBroadcastEUTRA_Item( template (present) TAI p_tAI := ?, template (present) CompletedCellsInTAI_EUTRA p_completedCellsInTAI_EUTRA := ?, - template TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * + template TAIBroadcastEUTRA_Item.iE_Extensions p_iE_Extensions := * ) := { tAI := p_tAI, completedCellsInTAI_EUTRA := p_completedCellsInTAI_EUTRA, @@ -20992,7 +20992,7 @@ module LibNGAP_Templates { template (present) TAIBroadcastNR_Item mw_tAIBroadcastNR_Item( template (present) TAI p_tAI := ?, template (present) CompletedCellsInTAI_NR p_completedCellsInTAI_NR := ?, - template TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := * + template TAIBroadcastNR_Item.iE_Extensions p_iE_Extensions := * ) := { tAI := p_tAI, completedCellsInTAI_NR := p_completedCellsInTAI_NR, @@ -21002,7 +21002,7 @@ module LibNGAP_Templates { template (present) TAICancelledEUTRA_Item mw_tAICancelledEUTRA_Item( template (present) TAI p_tAI := ?, template (present) CancelledCellsInTAI_EUTRA p_cancelledCellsInTAI_EUTRA := ?, - template TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * + template TAICancelledEUTRA_Item.iE_Extensions p_iE_Extensions := * ) := { tAI := p_tAI, cancelledCellsInTAI_EUTRA := p_cancelledCellsInTAI_EUTRA, @@ -21011,8 +21011,8 @@ module LibNGAP_Templates { template (present) TAICancelledNR_Item mw_tAICancelledNR_Item( template (present) TAI p_tAI := ?, - template (present) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR := ?, - template TAICancelledNR_Item.iE_Extensions p_iE_Extensions := * + template (present) CancelledCellsInTAI_NR p_cancelledCellsInTAI_NR := ?, + template TAICancelledNR_Item.iE_Extensions p_iE_Extensions := * ) := { tAI := p_tAI, cancelledCellsInTAI_NR := p_cancelledCellsInTAI_NR, @@ -21021,7 +21021,7 @@ module LibNGAP_Templates { template (present) TAIListForInactiveItem mw_tAIListForInactiveItem( template (present) TAI p_tAI := ?, - template TAIListForInactiveItem.iE_Extensions p_iE_Extensions := * + template TAIListForInactiveItem.iE_Extensions p_iE_Extensions := * ) := { tAI := p_tAI, iE_Extensions := p_iE_Extensions @@ -21029,7 +21029,7 @@ module LibNGAP_Templates { template (present) TAIListForPagingItem mw_tAIListForPagingItem( template (present) TAI p_tAI := ?, - template TAIListForPagingItem.iE_Extensions p_iE_Extensions := * + template TAIListForPagingItem.iE_Extensions p_iE_Extensions := * ) := { tAI := p_tAI, iE_Extensions := p_iE_Extensions @@ -21038,7 +21038,7 @@ module LibNGAP_Templates { template (present) TAINSAGSupportItem mw_tAINSAGSupportItem( template (present) NSAG_ID p_nSAG_ID := ?, template (present) ExtendedSliceSupportList p_nSAGSliceSupportList := ?, - template TAINSAGSupportItem.iE_Extensions p_iE_Extensions := * + template TAINSAGSupportItem.iE_Extensions p_iE_Extensions := * ) := { nSAG_ID := p_nSAG_ID, nSAGSliceSupportList := p_nSAGSliceSupportList, @@ -21048,7 +21048,7 @@ module LibNGAP_Templates { template (present) TargeteNB_ID mw_targeteNB_ID( template (present) GlobalNgENB_ID p_globalENB_ID := ?, template (present) EPS_TAI p_selected_EPS_TAI := ?, - template TargeteNB_ID.iE_Extensions p_iE_Extensions := * + template TargeteNB_ID.iE_Extensions p_iE_Extensions := * ) := { globalENB_ID := p_globalENB_ID, selected_EPS_TAI := p_selected_EPS_TAI, @@ -21112,40 +21112,40 @@ module LibNGAP_Templates { template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList( template (present) DAPSResponseInfoList p_dAPSResponseInfoList := ? ) := { - { + { id := id_ConfiguredTACIndication, criticality := ignore, - extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } + extensionValue := { DAPSResponseInfoList := p_dAPSResponseInfoList } } } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DAPSResponseInfoList template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability( template (present) DirectForwardingPathAvailability p_directForwardingPathAvailability := ? ) := { - { + { id := id_DirectForwardingPathAvailability, criticality := ignore, - extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } + extensionValue := { DirectForwardingPathAvailability := p_directForwardingPathAvailability } } } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_DirectForwardingPathAvailability template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList( template (present) MBS_ActiveSessionInformation_TargettoSourceList p_mBS_ActiveSessionInformation_TargettoSourceList := ? ) := { - { + { id := id_MBS_ActiveSessionInformation_TargettoSourceList, criticality := ignore, - extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } + extensionValue := { MBS_ActiveSessionInformation_TargettoSourceList := p_mBS_ActiveSessionInformation_TargettoSourceList } } } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_MBS_ActiveSessionInformation_TargettoSourceList template (present) TargetNGRANNode_ToSourceNGRANNode_TransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList( template (present) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList := ? ) := { - { + { id := id_NGAPIESupportInformationResponseList, criticality := ignore, - extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } } } // End of template mw_targetNGRANNode_ToSourceNGRANNode_TransparentContainer_id_NGAPIESupportInformationResponseList @@ -21160,10 +21160,10 @@ module LibNGAP_Templates { template (present) TargetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer.iE_Extensions mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList( template (present) NGAPIESupportInformationResponseList p_nGAPIESupportInformationResponseList := ? ) := { - { + { id := id_NGAPIESupportInformationResponseList, criticality := ignore, - extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } + extensionValue := { NGAPIESupportInformationResponseList := p_nGAPIESupportInformationResponseList } } } // End of template mw_targetNGRANNode_ToSourceNGRANNode_FailureTransparentContainer_id_NGAPIESupportInformationResponseList @@ -21218,10 +21218,10 @@ module LibNGAP_Templates { template (present) TargetRANNodeID_SON.iE_Extensions mw_targetRANNodeID_SON_id_NR_CGI( template (present) NR_CGI p_nR_CGI := ? ) := { - { + { id := id_NR_CGI, criticality := ignore, - extensionValue := { NR_CGI := p_nR_CGI } + extensionValue := { NR_CGI := p_nR_CGI } } } // End of template mw_targetRANNodeID_SON_id_NR_CGI @@ -21305,20 +21305,20 @@ module LibNGAP_Templates { template (present) TraceActivation.iE_Extensions mw_traceActivation_id_MDTConfiguration( template (present) MDT_Configuration p_mDT_Configuration := ? ) := { - { + { id := id_MDTConfiguration, criticality := ignore, - extensionValue := { MDT_Configuration := p_mDT_Configuration } + extensionValue := { MDT_Configuration := p_mDT_Configuration } } } // End of template mw_traceActivation_id_MDTConfiguration template (present) TraceActivation.iE_Extensions mw_traceActivation_id_TraceCollectionEntityURI( template (present) URI_address p_uRI_address := ? ) := { - { + { id := id_TraceCollectionEntityURI, criticality := ignore, - extensionValue := { URI_address := p_uRI_address } + extensionValue := { URI_address := p_uRI_address } } } // End of template mw_traceActivation_id_TraceCollectionEntityURI @@ -21326,14 +21326,14 @@ module LibNGAP_Templates { template (present) MDT_Configuration p_mDT_Configuration := ?, template (present) URI_address p_uRI_address := ? ) := { - { + { id := id_MDTConfiguration, criticality := ignore, - extensionValue := { MDT_Configuration := p_mDT_Configuration } - },{ + extensionValue := { MDT_Configuration := p_mDT_Configuration } + },{ id := id_TraceCollectionEntityURI, criticality := ignore, - extensionValue := { URI_address := p_uRI_address } + extensionValue := { URI_address := p_uRI_address } } } // End of template mw_traceActivation_full @@ -21400,10 +21400,10 @@ module LibNGAP_Templates { template (present) TSCAssistanceInformation.iE_Extensions mw_tSCAssistanceInformation_id_SurvivalTime( template (present) SurvivalTime p_survivalTime := ? ) := { - { + { id := id_SurvivalTime, criticality := ignore, - extensionValue := { SurvivalTime := p_survivalTime } + extensionValue := { SurvivalTime := p_survivalTime } } } // End of template mw_tSCAssistanceInformation_id_SurvivalTime @@ -21606,10 +21606,10 @@ module LibNGAP_Templates { template (present) UERadioCapabilityForPaging.iE_Extensions mw_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT( template (present) UERadioCapabilityForPagingOfNB_IoT p_uERadioCapabilityForPagingOfNB_IoT := ? ) := { - { + { id := id_UERadioCapabilityForPagingOfNB_IoT, criticality := ignore, - extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } + extensionValue := { UERadioCapabilityForPagingOfNB_IoT := p_uERadioCapabilityForPagingOfNB_IoT } } } // End of template mw_uERadioCapabilityForPaging_id_UERadioCapabilityForPagingOfNB_IoT @@ -21669,7 +21669,7 @@ module LibNGAP_Templates { ul_NAS_MAC := p_ul_NAS_MAC, ul_NAS_Count := p_ul_NAS_Count, iE_Extensions := p_iE_Extensions - } // End of template + } // End of template template (present) UL_NGU_UP_TNLModifyItem mw_uL_NGU_UP_TNLModifyItem( template (present) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := ?, @@ -21684,20 +21684,20 @@ module LibNGAP_Templates { template (present) UL_NGU_UP_TNLModifyItem.iE_Extensions mw_uL_NGU_UP_TNLModifyItemw_id_RedundantUL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantUL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_uL_NGU_UP_TNLModifyItemw_id_RedundantUL_NGU_UP_TNLInformation template (present) UL_NGU_UP_TNLModifyItem.iE_Extensions mw_uL_NGU_UP_TNLModifyItemw_id_RedundantDL_NGU_UP_TNLInformation( template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? ) := { - { + { id := id_RedundantDL_NGU_UP_TNLInformation, criticality := ignore, - extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } + extensionValue := { UPTransportLayerInformation := p_uPTransportLayerInformation } } } // End of template mw_uL_NGU_UP_TNLModifyItemw_id_RedundantDL_NGU_UP_TNLInformation @@ -21738,10 +21738,10 @@ module LibNGAP_Templates { template (present) UPTransportLayerInformationItem.iE_Extensions mw_uPTransportLayerInformationItemw_id_CommonNetworkInstance( template (present) CommonNetworkInstance p_commonNetworkInstance := ? ) := { - { + { id := id_CommonNetworkInstance, criticality := ignore, - extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } + extensionValue := { CommonNetworkInstance := p_commonNetworkInstance } } } // End of template mw_uPTransportLayerInformationItemw_id_CommonNetworkInstance @@ -21818,10 +21818,10 @@ module LibNGAP_Templates { template (present) UserLocationInformationEUTRA.iE_Extensions mw_userLocationInformationEUTRA_id_PSCellInformation( template (present) NGRAN_CGI p_nGRAN_CGI := ? ) := { - { + { id := id_PSCellInformation, criticality := ignore, - extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } } } // End of template mw_userLocationInformationEUTRA_id_PSCellInformation @@ -21838,10 +21838,10 @@ module LibNGAP_Templates { template (present) UserLocationInformationN3IWF.iE_Extensions mw_userLocationInformationN3IWF_id_TAI( template (present) TAI p_tAI := ? ) := { - { + { id := id_TAI, criticality := ignore, - extensionValue := { TAI := p_tAI } + extensionValue := { TAI := p_tAI } } } // End of template mw_userLocationInformationN3IWF_id_TAI @@ -21860,10 +21860,10 @@ module LibNGAP_Templates { template (present) UserLocationInformationTNGF.iE_Extensions mw_userLocationInformationTNGF_id_TAI( template (present) TAI p_tAI := ? ) := { - { + { id := id_TAI, criticality := ignore, - extensionValue := { TAI := p_tAI } + extensionValue := { TAI := p_tAI } } } // End of template mw_userLocationInformationTNGF_id_TAI @@ -21882,10 +21882,10 @@ module LibNGAP_Templates { template (present) UserLocationInformationTWIF.iE_Extensions mw_userLocationInformationTWIF_id_TAI( template (present) TAI p_tAI := ? ) := { - { + { id := id_TAI, criticality := ignore, - extensionValue := { TAI := p_tAI } + extensionValue := { TAI := p_tAI } } } // End of template mw_userLocationInformationTWIF_id_TAI @@ -21946,30 +21946,30 @@ module LibNGAP_Templates { template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_PSCellInformation( template (present) NGRAN_CGI p_nGRAN_CGI := ? ) := { - { + { id := id_PSCellInformation, criticality := ignore, - extensionValue := { NGRAN_CGI := p_nGRAN_CGI } + extensionValue := { NGRAN_CGI := p_nGRAN_CGI } } } // End of template mw_userLocationInformationNR_id_PSCellInformation template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_NID( template (present) NID p_nID := ? ) := { - { + { id := id_NID, criticality := reject, - extensionValue := { NID := p_nID } + extensionValue := { NID := p_nID } } } // End of template mw_userLocationInformationNR_id_NID template (present) UserLocationInformationNR.iE_Extensions mw_userLocationInformationNR_id_NRNTNTAIInformation( template (present) NRNTNTAIInformation p_nRNTNTAIInformation := ? ) := { - { + { id := id_NRNTNTAIInformation, criticality := ignore, - extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } + extensionValue := { NRNTNTAIInformation := p_nRNTNTAIInformation } } } // End of template mw_userLocationInformationNR_id_NRNTNTAIInformation @@ -22084,10 +22084,10 @@ module LibNGAP_Templates { template (present) XnExtTLA_Item.iE_Extensions mw_xnExtTLA_Item_id_SCTP_TLAs( template (present) SCTP_TLAs p_sCTP_TLAs := ? ) := { - { + { id := id_SCTP_TLAs, criticality := ignore, - extensionValue := { SCTP_TLAs := p_sCTP_TLAs } + extensionValue := { SCTP_TLAs := p_sCTP_TLAs } } } // End of template mw_xnExtTLA_Item_id_SCTP_TLAs @@ -22105,7 +22105,7 @@ module LibNGAP_Templates { } // End of group Information_elements - } // End of group g_NGAP + } // End of group g_NGAP group Functions_For_Templates{ } // End of group functionsForTemplates -- GitLab From 5898250fa1337aa120c16f36b4dfa335b327df1f Mon Sep 17 00:00:00 2001 From: juvancic Date: Tue, 28 May 2024 16:32:42 +0200 Subject: [PATCH 250/365] added template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 58 +++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 898ed4e..99d6fd6 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -5077,6 +5077,64 @@ module LibNGAP_Templates { } } // End of template m_n2_AMFConfigurationUpdate + template (value) InitiatingMessage m_n2_AMFConfigurationUpdate_tnl( + //in template (value) AMFName p_AMFName, + in template (value) ServedGUAMIList p_servedGUAMIList, + //in template (value) RelativeAMFCapacity p_relativeAMFCapacity, + in template (value) PLMNSupportList p_pLMNSupportList, + in template (value) AMF_TNLAssociationToAddList p_aMF_TNLAssociationToAddList, + //in template (value) AMF_TNLAssociationToRemoveList p_aMF_TNLAssociationToRemoveList, + in template (value) AMF_TNLAssociationToUpdateList p_aMF_TNLAssociationToUpdateList//, + //in template (value) Extended_AMFName p_extended_AMFName + ):={ + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdate := { + protocolIEs := { + //{ + // id := id_AMFName, + // criticality := ignore, + // value_ := { AMFName := p_aMFName } + //}, + { + id := id_ServedGUAMIList, + criticality := reject, + value_ := { ServedGUAMIList := p_servedGUAMIList } + }, + //{ id := id_RelativeAMFCapacity, + // criticality := ignore, + // value_ := { RelativeAMFCapacity := p_relativeAMFCapacity} + //}, + { + id := id_PLMNSupportList, + criticality := reject, + value_ := { PLMNSupportList := p_pLMNSupportList } + }, + { + id := id_AMF_TNLAssociationToAddList, + criticality := ignore, + value_ := { AMF_TNLAssociationToAddList := p_aMF_TNLAssociationToAddList } + }, + //{ + // id := id_AMF_TNLAssociationToRemoveList, + // criticality := ignore, + // value_ := { AMF_TNLAssociationToRemoveList := p_aMF_TNLAssociationToRemoveList} + //}, + { + id := id_AMF_TNLAssociationToUpdateList, + criticality := ignore, + value_ := { AMF_TNLAssociationToUpdateList := p_aMF_TNLAssociationToUpdateList} + }//, + //{ + // id := id_Extended_AMFName, + // criticality := ignore, + // value_ := { Extended_AMFName := p_extended_AMFName} + //} + } + } + } + } // End of template m_n2_AMFConfigurationUpdate_tnl } // End of group Send group Receive { -- GitLab From d98292ccbb1cb3a7de43421dfd0a82e9af68be33 Mon Sep 17 00:00:00 2001 From: garciay Date: Tue, 28 May 2024 17:19:36 +0200 Subject: [PATCH 251/365] Create skeletons for TC_NGAP_AMF_MMP_xx; Re-organize etc files --- etc/AtsNGAP/AtsNGAP_AMF.cfg | 140 ++ etc/AtsNGAP/{AtsNGAP.cfg => AtsNGAP_GNB.cfg} | 70 +- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 1808 +++++++++--------- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 235 ++- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 251 +++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 10 +- 6 files changed, 1539 insertions(+), 975 deletions(-) create mode 100644 etc/AtsNGAP/AtsNGAP_AMF.cfg rename etc/AtsNGAP/{AtsNGAP.cfg => AtsNGAP_GNB.cfg} (70%) diff --git a/etc/AtsNGAP/AtsNGAP_AMF.cfg b/etc/AtsNGAP/AtsNGAP_AMF.cfg new file mode 100644 index 0000000..b9785b3 --- /dev/null +++ b/etc/AtsNGAP/AtsNGAP_AMF.cfg @@ -0,0 +1,140 @@ +[MODULE_PARAMETERS] +# This section shall contain the values of all parameters that are defined in your TTCN-3 modules. + +NGAP_Pics.PICS_NGAP_AMF_IUT := false +NGAP_Pics.PICS_NGAP_AMF_IUT := true + +[LOGGING] +# In this section you can specify the name of the log file and the classes of events +# you want to log into the file or display on console (standard error). + +LogFile := "../logs/AtsNGAP_N/%e.%h-%r.%s" +FileMask := LOG_ALL | USER | DEBUG | MATCHING +ConsoleMask := LOG_ALL | USER | DEBUG | MATCHING +#FileMask := ERROR | WARNING | USER | MATCHING | EXECUTOR_RUNTIME | VERDICTOP | PORTEVENT | TESTCASE +#ConsoleMask := ERROR | WARNING | USER | MATCHING | EXECUTOR_RUNTIME | VERDICTOP | PORTEVENT | TESTCASE +LogSourceInfo := Stack +LogEntityName:= Yes +LogEventTypes:= Yes +#TimeStampFormat := DateTime + +[TESTPORT_PARAMETERS] +# In this section you can specify parameters that are passed to Test Ports. +system.N2_gNBaMF_P.params := "SCTP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=test.pcap)" + +[DEFINE] +# In this section you can create macro definitions, +# that can be used in other configuration file sections except [INCLUDE] and [ORDERED_INCLUDE]. + +[INCLUDE] +# To use configuration settings given in other configuration files, +# the configuration files just need to be listed in this section, with their full or relative pathnames. + +[ORDERED_INCLUDE] +# To use configuration settings given in other configuration files, +# the configuration files just need to be listed in this section, with their full or relative pathnames. + +[EXTERNAL_COMMANDS] +# This section can define external commands (shell scripts) to be executed by the ETS +# whenever a control part or test case is started or terminated. + +#BeginTestCase := "" +#EndTestCase := "" +#BeginControlPart := "" +#EndControlPart := "" + +[EXECUTE] +# In this section you can specify what parts of your test suite you want to execute. +#AtsImsIot_TestControl.control + +# Verify that the IUT can send a PDU SESSION RESOURCE SETUP REQUEST with at least one PDU session resource list to established PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_01 +# Verify that the IUT can send a PDU_SESSION_RESOURCE_RELEASE_COMMAND to release PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_02 +# Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_REQUEST to modify PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_03 +# Verify that the AMF node successfully processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for successfully modified PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_04 +# Verify that the AMF node processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for not successfully modified PDU session. +#NGAP_TestCases.TC_NGAP_AMF_PDU_05 + +# Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER COMMAND with successfully handover. +#NGAP_TestCases.TC_NGAP_AMF_MMP_01 +# Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER PREPARATION FAILURE because the UE is not longer available. +#NGAP_TestCases.TC_NGAP_AMF_MMP_02 +# Verify that the AMF node successfully sends a HANDOVER REQUEST message that contains mandatory IEs to the GNB. +#NGAP_TestCases.TC_NGAP_AMF_MMP_03 +# Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and answers with PATH SWITCH REQUEST ACKNOWLEDGE to acknowledge the path switch. +#NGAP_TestCases.TC_NGAP_AMF_MMP_04 +# Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with same ID and answers with PATH SWITCH REQUEST FAILURE. +#NGAP_TestCases.TC_NGAP_AMF_MMP_05 +# Verify that the AMF node successfully processes a HANDOVER CANCEL message that contains mandatory IEs and answers with HANDOVER CANCEL ACKNOWLEDGE to confirm that the ongoing handover was cancelled. +#NGAP_TestCases.TC_NGAP_AMF_MMP_06 +# Verify that the AMF node successfully sends a DOWNLINK RAN STATUS TRANSFER message that contains mandatory IEs. +#NGAP_TestCases.TC_NGAP_AMF_MMP_07 +# Verify that the NG-RAN node successfully sends a Handover Success message to the AMF. +#NGAP_TestCases.TC_NGAP_AMF_MMP_08 +# Verify that the AMF node successfully sends a DOWNLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs. +#NGAP_TestCases.TC_NGAP_AMF_MMP_09 + +# Verify that the IUT can send an DOWNLINK NAS TRANSPORT message to carry NAS information over the NG interface. +#NGAP_TestCases.TC_NGAP_AMF_NAS_01 +# Verify that the IUT can send an REROUTE NAS REQUEST message to reroute the INITIAL UE MESSAGE message to another AMF. +#NGAP_TestCases.TC_NGAP_AMF_NAS_02 + +# Verify that the AMF node successfully processes a NG SETUP REQEST message that contains mandatory IEs and answers with NG SETUP RESPONSE to acknowledge the setup. +#NGAP_TestCases.TC_NGAP_AMF_IMP_01 +# Verify that the AMF node successfully processes a NG SETUP REQEST message that contains mandatory IEs and answers with NG SETUP RESPONSE to acknowledge the setup. +#NGAP_TestCases.TC_NGAP_AMF_IMP_02 +# Verify that the AMF node successfully processes a NG SETUP REQEST message with optional field UE Retention Information and answers with NG SETUP RESPONSE to acknowledge the setup. +#NGAP_TestCases.TC_NGAP_AMF_IMP_03 +# Verify that the AMF node successfully processes a NG SETUP REQEST message with different optional fields and answers with NG SETUP RESPONSE to acknowledge the setup. +#NGAP_TestCases.TC_NGAP_AMF_IMP_04 +# Verify that the AMF node successfully processes a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update. +#NGAP_TestCases.TC_NGAP_AMF_IMP_05 +# Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request. +#NGAP_TestCases.TC_NGAP_AMF_IMP_06 +# Verify that the IUT can send a AMF CONFIGURATION UPDATE message to the AMF. +#NGAP_TestCases.TC_NGAP_AMF_IMP_07 +# Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset. +#NGAP_TestCases.TC_NGAP_AMF_IMP_08 +# Verify that the AMF can send a ERROR INDICATION to the GNB when a error occurs. +#NGAP_TestCases.TC_NGAP_AMF_IMP_09 +# Verify that the AMF can send a AMF STATUS INDICATION to the GNB when a error occurs. +#NGAP_TestCases.TC_NGAP_AMF_IMP_10 +# Verify that the AMF can send a OVERLOAD START to the GNB. +#NGAP_TestCases.TC_NGAP_AMF_IMP_11 +# Verify that the AMF can send a OVERLOAD STOP to the GNB. +#NGAP_TestCases.TC_NGAP_AMF_IMP_12 + +# Verify that the IUT can send a WRITE REPLACE WARNING REQUEST to start broadcasting of warning messages. +#NGAP_TestCases.TC_NGAP_AMF_WTP_01 +#Verify that the IUT can send a PWS CANCEL REQUEST to cancel broadcasting of warning messages. +#NGAP_TestCases.TC_NGAP_AMF_WTP_02 + +# Verify that the IUT can send a TRACE_START to initiate a trace session for a UE. +#NGAP_TestCases.TC_NGAP_AMF_TRP_01 +# Verify that the IUT can send a DEACTIVATE_TRACE to deactivate a trace session for a UE. +#NGAP_TestCases.TC_NGAP_AMF_TRP_02 + +# Verify that the IUT can send a UE TNLA BINDING RELEASE REQUEST to initiate a UE TNLA Binding Release procedure. +#NGAP_TestCases.TC_NGAP_AMF_UBP_01 +# Verify that the IUT can send a UE RADIO CAPABILITY ID MAPPING RESPONSE message that contains mandatory IEs to provide the UE radio capabilities id mapping. +#NGAP_TestCases.TC_NGAP_AMF_URP_02 + +# Verify that the IUT can send a DOWNLINK RIM INFORMATION TRANSFER. +#NGAP_TestCases.TC_NGAP_AMF_RIP_01 + +[GROUPS] +# In this section you can specify groups of hosts. These groups can be used inside the +# [COMPONENTS] section to restrict the creation of certain PTCs to a given set of hosts. + +[COMPONENTS] +# This section consists of rules restricting the location of created PTCs. + +[MAIN_CONTROLLER] +# The options herein control the behavior of MC. +KillTimer := 10.0 +LocalAddress := 127.0.0.1 +TCPPort := 12000 +NumHCs := 1 diff --git a/etc/AtsNGAP/AtsNGAP.cfg b/etc/AtsNGAP/AtsNGAP_GNB.cfg similarity index 70% rename from etc/AtsNGAP/AtsNGAP.cfg rename to etc/AtsNGAP/AtsNGAP_GNB.cfg index 63e1cb0..625dc21 100644 --- a/etc/AtsNGAP/AtsNGAP.cfg +++ b/etc/AtsNGAP/AtsNGAP_GNB.cfg @@ -1,11 +1,14 @@ [MODULE_PARAMETERS] # This section shall contain the values of all parameters that are defined in your TTCN-3 modules. +NGAP_Pics.PICS_NGAP_GNB_IUT := true +NGAP_Pics.PICS_NGAP_AMF_IUT := false + [LOGGING] # In this section you can specify the name of the log file and the classes of events # you want to log into the file or display on console (standard error). -LogFile := "../logs/AtsNGAP/%e.%h-%r.%s" +LogFile := "../logs/AtsNGAP_N/%e.%h-%r.%s" FileMask := LOG_ALL | USER | DEBUG | MATCHING ConsoleMask := LOG_ALL | USER | DEBUG | MATCHING #FileMask := ERROR | WARNING | USER | MATCHING | EXECUTOR_RUNTIME | VERDICTOP | PORTEVENT | TESTCASE @@ -47,7 +50,7 @@ system.N2_gNBaMF_P.params := "SCTP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=test # Test System testing NGAP_TestCases.TC_NGAP_gNB_or_aMF_testcaseName_01 -# Emergency Network Attachment and Establishment of the Emergency Bearer with USIM. +# Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE for successfully established PDU session. #NGAP_TestCases.TC_NGAP_GNB_PDU_01 # Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains several PDU Session ID IEs set to the same value. #NGAP_TestCases.TC_NGAP_GNB_PDU_02 @@ -96,8 +99,6 @@ NGAP_TestCases.TC_NGAP_gNB_or_aMF_testcaseName_01 # Verify that the IUT can send a NAS NON DELIVERY INDICATION message to t.he AMF #NGAP_TestCases.TC_NGAP_GNB_NAS_03 - - # Verify that the GNB node successfully sends a NG SETUP REQEST message to the AMF. #NGAP_TestCases.TC_NGAP_GNB_IMP_01 # Verify that the IUT can send a RAN CONFIGURATION UPDATE message to the AMF. @@ -129,67 +130,6 @@ NGAP_TestCases.TC_NGAP_gNB_or_aMF_testcaseName_01 # Verify that the IUT can send a CELL_TRAFFIC_TRACE to send the allocated Trace Recording Session Reference and Trace Reference to AMF. #NGAP_TestCases.TC_NGAP_GNB_TRP_03 -# Verify that the IUT can send a PDU SESSION RESOURCE SETUP REQUEST with at least one PDU session resource list to established PDU session. -#NGAP_TestCases.TC_NGAP_AMF_PDU_01 -# Verify that the IUT can send a PDU_SESSION_RESOURCE_RELEASE_COMMAND to release PDU session. -#NGAP_TestCases.TC_NGAP_AMF_PDU_02 -# Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_REQUEST to modify PDU session. -#NGAP_TestCases.TC_NGAP_AMF_PDU_03 -# Verify that the AMF node successfully processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for successfully modified PDU session. -#NGAP_TestCases.TC_NGAP_AMF_PDU_04 -# Verify that the AMF node processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for not successfully modified PDU session. -#NGAP_TestCases.TC_NGAP_AMF_PDU_05 - -# Verify that the AMF node successfully processes a NG SETUP REQEST message that contains mandatory IEs and answers with NG SETUP RESPONSE to acknowledge the setup. -#NGAP_TestCases.TC_NGAP_AMF_IMP_01 -# Verify that the AMF node successfully decline a NG RESET REQEST message and answers with NG SETUP FAILURE when the AMF is not able to handle the request. -#NGAP_TestCases.TC_NGAP_AMF_IMP_02 -# Verify that the AMF node successfully processes a NG SETUP REQEST message with optional field UE Retention Information and answers with NG SETUP RESPONSE to acknowledge the setup. -#NGAP_TestCases.TC_NGAP_AMF_IMP_03 -# Verify that the AMF node successfully processes a NG SETUP REQEST message with different optional fields and answers with NG SETUP RESPONSE to acknowledge the setup. -#NGAP_TestCases.TC_NGAP_AMF_IMP_04 -# Verify that the AMF node successfully processes a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update. -#NGAP_TestCases.TC_NGAP_AMF_IMP_05 -# Verify that the AMF node successfully declines a RAN CONFIGURATION UPDATE message with RAN CONFIGURATION UPDATE FAILURE when the AMF is not able to handle the request. -#NGAP_TestCases.TC_NGAP_AMF_IMP_06 -# Verify that the IUT can send a AMF CONFIGURATION UPDATE message to the AMF. -#NGAP_TestCases.TC_NGAP_AMF_IMP_07 -# Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset. -#NGAP_TestCases.TC_NGAP_AMF_IMP_08 -# Verify that the AMF can send a ERROR INDICATION to the GNB when a error occurs. -#NGAP_TestCases.TC_NGAP_AMF_IMP_09 -# Verify that the AMF can send a AMF STATUS INDICATION to the GNB when a error occurs. -#NGAP_TestCases.TC_NGAP_AMF_IMP_10 -# Verify that the AMF can send a OVERLOAD START to the GNB. -#NGAP_TestCases.TC_NGAP_AMF_IMP_11 -# Verify that the AMF can send a OVERLOAD STOP to the GNB. -#NGAP_TestCases.TC_NGAP_AMF_IMP_12 - -# Verify that the IUT can send a WRITE REPLACE WARNING REQUEST to start broadcasting of warning messages. -#NGAP_TestCases.TC_NGAP_AMF_WTP_01 -#Verify that the IUT can send a PWS CANCEL REQUEST to cancel broadcasting of warning messages. -#NGAP_TestCases.TC_NGAP_AMF_WTP_02 - -# Verify that the IUT can send a TRACE_START to initiate a trace session for a UE. -#NGAP_TestCases.TC_NGAP_AMF_TRP_01 -# Verify that the IUT can send a DEACTIVATE_TRACE to deactivate a trace session for a UE. -#NGAP_TestCases.TC_NGAP_AMF_TRP_02 - -# Verify that the IUT can send a UE TNLA BINDING RELEASE REQUEST to initiate a UE TNLA Binding Release procedure. -#NGAP_TestCases.TC_NGAP_AMF_UBP_01 -# Verify that the IUT can send a UE RADIO CAPABILITY ID MAPPING RESPONSE message that contains mandatory IEs to provide the UE radio capabilities id mapping. -#NGAP_TestCases.TC_NGAP_AMF_URP_02 - -# Verify that the IUT can send a DOWNLINK RIM INFORMATION TRANSFER. -#NGAP_TestCases.TC_NGAP_AMF_RIP_01 - - - - - - - - [GROUPS] # In this section you can specify groups of hosts. These groups can be used inside the # [COMPONENTS] section to restrict the creation of certain PTCs to a given set of hosts. diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 73ee3ba..15753ea 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -15,32 +15,32 @@ file and shall not imply any sub-license right. /* interface at GNB */ Package TP_GNB { - + Group "8.2 PDU Session Management Procedures" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_PDU_01 - + + TP Id TP_NGAP_GNB_PDU_01 + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE for successfully established PDU session." - - Reference - "ETSI TS 138 413 [1], Clause 8.2.1.2" - + + Reference + "ETSI TS 138 413 [1], Clause 8.2.1.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/1_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Request_List containing @@ -68,30 +68,30 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_PDU_01 - + Test Purpose { - - TP Id TP_NGAP_GNB_PDU_02 - + + TP Id TP_NGAP_GNB_PDU_02 + Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains several PDU Session ID IEs set to the same value." - - Reference - "ETSI TS 138 413 [1], Clause 8.2.1.4" - + + Reference + "ETSI TS 138 413 [1], Clause 8.2.1.4" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/1_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Request_List containing @@ -129,30 +129,30 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_PDU_02 - + Test Purpose { - - TP Id TP_NGAP_GNB_PDU_03 - + + TP Id TP_NGAP_GNB_PDU_03 + Test objective "Verify that the NG-RAN node reports the establishment of the new PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a PDU Session ID IE set to value that identifies an active PDU Session. NOTE: Run TP_NGAP_GNB_PDU_01 before this TP " - - Reference - "ETSI TS 138 413 [1], Clause 8.2.1.4" - + + Reference + "ETSI TS 138 413 [1], Clause 8.2.1.4" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/1_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Request_List containing @@ -180,30 +180,30 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_PDU_03 - + Test Purpose { - - TP Id TP_NGAP_GNB_PDU_04 - + + TP Id TP_NGAP_GNB_PDU_04 + Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a QoS Flow Setup Request List IE in the PDU Session Resource Setup Request Transfer IE including at least one Non-GBR QoS flow but the PDU Session Aggregate Maximum Bit Rate IE is not present. " - - Reference - "ETSI TS 138 413 [1], Clause 8.2.1.4" - + + Reference + "ETSI TS 138 413 [1], Clause 8.2.1.4" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/1_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing + the IUT entity receives a PDU_SESSION_RESOURCE_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Request_List containing @@ -232,32 +232,32 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_PDU_04 - + //TODO:possible to add 2 tests from 8.2.1.4 paragraph 4 - + Test Purpose { - - TP Id TP_NGAP_GNB_PDU_05 - + + TP Id TP_NGAP_GNB_PDU_05 + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND contains mandatory IEs and answers with PDU SESSION RESOURCE RELEASE RESPONSE to release PDU session." - - Reference - "ETSI TS 138 413 [1], Clause 8.2.2.2" - + + Reference + "ETSI TS 138 413 [1], Clause 8.2.2.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/1_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a PDU_SESSION_RESOURCE_RELEASE_COMMAND containing + the IUT entity receives a PDU_SESSION_RESOURCE_RELEASE_COMMAND containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_To_Release_List containing @@ -279,30 +279,30 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_PDU_05 - + Test Purpose { - - TP Id TP_NGAP_GNB_PDU_06 - + + TP Id TP_NGAP_GNB_PDU_06 + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND containing multiple PDU Session ID IEs set to the same value and ignore the duplication." - - Reference - "ETSI TS 138 413 [1], Clause 8.2.2.2" - + + Reference + "ETSI TS 138 413 [1], Clause 8.2.2.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/1_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a PDU_SESSION_RESOURCE_RELEASE_COMMAND containing + the IUT entity receives a PDU_SESSION_RESOURCE_RELEASE_COMMAND containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_To_Release_List containing @@ -330,30 +330,30 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_PDU_06 - + Test Purpose { - - TP Id TP_NGAP_GNB_PDU_07 - + + TP Id TP_NGAP_GNB_PDU_07 + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE MODIFY REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE MODIFY RESPONSE for successfully modified PDU session." - - Reference - "ETSI TS 138 413 [1], Clause 8.2.3.2" - + + Reference + "ETSI TS 138 413 [1], Clause 8.2.3.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/1_3 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a PDU_SESSION_RESOURCE_MODIFY_REQUEST containing + the IUT entity receives a PDU_SESSION_RESOURCE_MODIFY_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Modify_Request_List containing @@ -385,35 +385,35 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_PDU_07 - + //TODO:possible to add tests from 8.2.3.4 for failed actions - + Test Purpose { - - TP Id TP_NGAP_GNB_PDU_08 - + + TP Id TP_NGAP_GNB_PDU_08 + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_NOTIFY that already established QoS flow or PDU session for given UE are release." - - Reference - "ETSI TS 138 413 [1], Clauses 8.2.4.2" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.4.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/1_4 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { the IUT entity indicate a PDU session resource notify procedure } then { - the IUT entity sends a PDU_SESSION_RESOURCE_NOTIFY containing + the IUT entity sends a PDU_SESSION_RESOURCE_NOTIFY containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Notify_List containing @@ -421,33 +421,33 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_PDU_08 - + Test Purpose { - - TP Id TP_NGAP_GNB_PDU_09 - + + TP Id TP_NGAP_GNB_PDU_09 + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_MODIFY_INDICATION to request modification of established PDU session." - - Reference - "ETSI TS 138 413 [1], Clauses 8.2.5.2" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.2.5.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/1_5 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { the IUT entity indicate a PDU session resource modify indicationy procedure } then { - the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_INDICATION containing + the IUT entity sends a PDU_SESSION_RESOURCE_MODIFY_INDICATION containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Modify_Indication_List containing @@ -458,44 +458,44 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_PDU_09 - + } // end Group 8.2 PDU Session Management Procedures - + Group "8.3 UE Context Management Procedures" { import all from Ngap_Common; - - Group "Initial Context Setup" + + Group "Initial Context Setup" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_01 - + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains optional PDU Session Resource Setup Request List field mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;, @@ -528,34 +528,34 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_CMP_01 - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_02 - + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing - AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + AMF_UE_NGAP_ID, + RAN_UE_NGAP_ID, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;, @@ -575,38 +575,38 @@ Package TP_GNB { then { the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID; + RAN_UE_NGAP_ID; to the AMF entity } } - + } // end TP_NGAP_GNB_CMP_02 - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_03 - + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Trace Activation and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;, @@ -645,34 +645,34 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_CMP_03 - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_04 - + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Mobility Restriction List and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;, @@ -707,34 +707,34 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_CMP_04 - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_05 - + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with different optional fields and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;, @@ -755,8 +755,8 @@ Package TP_GNB { E_UTRA_Encryption_Algorithms, E_UTRA_Integrity_Protection_Algorithms;, Security_Key, - UE_Radio_Capability, - Index_to_RAT_Frequency_Selection_Priority, + UE_Radio_Capability, + Index_to_RAT_Frequency_Selection_Priority, Masked_IMEISV, NAS_PDU, Emergency_Fallback_Indicator, @@ -771,7 +771,7 @@ Package TP_GNB { Extended_Connected_Time, UE Differentiation Information containing Periodic_Communication_Indicator, - Periodic_Time;, + Periodic_Time;, NR_UE_Sidelink_Aggregate_Maximum_Bit_Rate, LTE_UE_Sidelink_Aggregate_Maximum_Bit_Rate, UE_Radio_Capability_ID; @@ -787,36 +787,36 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_CMP_05 - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_06 - + Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." - - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - + + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedContextInproperly } - + Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;, @@ -849,79 +849,79 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_CMP_06 } // end Group Initial Context Setup - + Group "UE Context Release (NG-RAN node initiated)" { - + import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_07 - + Test objective "Verify that the NG-RAN node successfully requests the AMF to release the UE-associated logical NG-connection." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.2.2 and 9.2.2.4" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.2.2 and 9.2.2.4" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedInitialContext } - + Expected behaviour ensure that { - when { + when { the IUT entity indicate a UE context release request } then { - the IUT entity sends a UE_CONTEXT_RELEASE_REQUEST containing + the IUT entity sends a UE_CONTEXT_RELEASE_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Cause; to the AMF entity } - + } - + } // End TP TP_NGAP_GNB_CMP_07 - + } // End Group "UE Context Release (NG-RAN node initiated)" - + Group "UE Context Release (AMF initiated)" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_08 - + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.3, 9.2.2.6 and 9.2.2.5" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.3, 9.2.2.6 and 9.2.2.5" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_3 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedInitialContext } - + Expected behaviour ensure that { when { - the IUT entity receives a UE_CONTEXT_RELEASE_COMMAND containing - CHOICE_UE_NGAP_IDs containing + the IUT entity receives a UE_CONTEXT_RELEASE_COMMAND containing + CHOICE_UE_NGAP_IDs containing UE_NGAP_ID_pair containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID;;; @@ -934,32 +934,32 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_CMP_08 - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_09 - + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT RELEASE COMMAND where only the AMF UE NGAP ID IE is available and answers with UE CONTEXT RELEASE COMPLETE with successfully release UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.3, 9.2.2.6 and 9.2.2.5" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.3, 9.2.2.6 and 9.2.2.5" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_3 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedInitialContext } - + Expected behaviour ensure that { when { - the IUT entity receives a UE_CONTEXT_RELEASE_COMMAND containing - CHOICE_UE_NGAP_IDs containing + the IUT entity receives a UE_CONTEXT_RELEASE_COMMAND containing + CHOICE_UE_NGAP_IDs containing AMF_UE_NGAP_ID containing AMF_UE_NGAP_ID;;; from the AMF entity @@ -967,40 +967,40 @@ Package TP_GNB { then { the IUT entity sends a UE_CONTEXT_RELEASE_COMPLETE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID; + RAN_UE_NGAP_ID; to the AMF entity } } - + } // end TP_NGAP_GNB_CMP_09 - + } // End Group "UE Context Release (AMF initiated)" - + Group "UE Context Modification" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_10 - + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE because the UE is no longer available." - Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.3, 9.2.2.7 and 9.2.2.9" - + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.3, 9.2.2.7 and 9.2.2.9" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_4 - + Initial conditions with { the UE entity isNoLongerAvailable } - + Expected behaviour ensure that { when { - the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; from the AMF entity @@ -1013,32 +1013,32 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_CMP_10 - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_11 - + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs after the preparation of a handover and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_4 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedInitialContext and the GNB entity alreadyPreparedHandover } - + Expected behaviour ensure that { when { - the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; from the AMF entity @@ -1050,34 +1050,34 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_CMP_11 - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_12 - + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains optional fields Security Key and Security Capabilities and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_4 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedInitialContext } - + Expected behaviour ensure that { when { - the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Security_Key, + Security_Key, UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, @@ -1092,31 +1092,31 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_CMP_12 - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_13 - + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains different optional fields and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_4 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedInitialContext } - + Expected behaviour ensure that { when { - the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing + the IUT entity receives a UE_CONTEXT_MODIFICATION_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, RAN_Paging_Priority, @@ -1131,7 +1131,7 @@ Package TP_GNB { E_UTRA_Integrity_Protection_Algorithms;, Emergency_Fallback_Indicator, New_GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;, @@ -1139,7 +1139,7 @@ Package TP_GNB { PC5_QoS_Parameters containing PC5_QoS_Flow_List containing PC5_QoS_Flow_Item containing - PQI;;;, + PQI;;;, UE_Radio_Capability_ID, RG_Level_Wireline_Access_Characteristics; from the AMF entity @@ -1151,40 +1151,40 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_CMP_13 - + } // end Group UE Context Modification - + Group "RRC Inactive Transition Report" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_14 - + Test objective "Verify that the IUT can send a RRC INACTIVE TRANSITION REPORT that contains mandatory IEs" - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.5 and 9.2.2.10" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.5 and 9.2.2.10" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/2_5 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity isTransitioningTo the RRC_INACTIVE } - + Expected behaviour ensure that { when { the IUT entity indicate a RRC inactive transition report } then { - the IUT entity sends a RRC_INACTIVE_TRANSITION_REPORT containing + the IUT entity sends a RRC_INACTIVE_TRANSITION_REPORT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, RRC_State, @@ -1192,178 +1192,178 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_CMP_14 - + } // End Group "RRC Inactive Transition Report" - + Group "RAN CP Relocation Indication" { - + import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_CMP_15 - + Test objective "Verify that the IUT can send a RAN CP Relocation Indication that contains mandatory IEs." - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.8.2 and 9.2.2.13" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.8.2 and 9.2.2.13" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1_2 and PICS_A3/2_8 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedInitialContext } - + Expected behaviour ensure that { - when { + when { the IUT entity indicate a RAN CP relocation indication procedure } then { - the IUT entity sends a RAN_CP_RELOCATION_INDICATION containing + the IUT entity sends a RAN_CP_RELOCATION_INDICATION containing RAN_UE_NGAP_ID, 5G_S_TMSI containing AMF_Set_ID, AMF_Pointer, 5G_TMSI;, E_ULTRA_CGI containing - PLMN_Identity, + PLMN_Identity, E_UTRA_Cell_Identity;, TAI containing - PLMN_Identity, + PLMN_Identity, TAC;, UL_CP_Security_Information containing UL_NAS_MAC, UL_NAS_Count;; to the AMF entity } - + } - + } // End TP TP_NGAP_GNB_CMP_15 - + } // End Group "RAN CP Relocation Indication" - + Group "UE Context Suspend" { import all from Ngap_Common; - + Test Purpose { - + // This TP applies only if the NG-RAN node is an ng-eNB TP Id TP_NGAP_GNB_CMP_16 - + Test objective "Verify that the IUT can send a UE CONTEXT SUSPEND REQUEST contains mandatory IEs" - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.11.2 and 9.2.2.16" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.11.2 and 9.2.2.16" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1_2 and PICS_A3/2_11 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedInitialContext } - + Expected behaviour ensure that { when { the IUT entity indicate a UE context suspend request } then { - the IUT entity sends a UE_CONTEXT_SUSPEND_REQUEST containing + the IUT entity sends a UE_CONTEXT_SUSPEND_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; to the AMF entity } } - + } // end TP TP_NGAP_GNB_CMP_16 - + }// end Group UE Context Suspend - + Group "UE Context Resume" { import all from Ngap_Common; - + Test Purpose { - + // This TP applies only if the NG-RAN node is an ng-eNB TP Id TP_NGAP_GNB_CMP_17 - + Test objective "Verify that the IUT can send a UE CONTEXT RESUME REQUEST contains mandatory IEs" - - Reference - "ETSI TS 138 413 [1], Clauses 8.3.12.2 and 9.2.2.19" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.3.12.2 and 9.2.2.19" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1_2 and PICS_A3/2_12 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasSuspendedContext } - + Expected behaviour ensure that { when { the IUT entity indicate a UE context resume request } then { - the IUT entity sends a UE_CONTEXT_RESUME_REQUEST containing + the IUT entity sends a UE_CONTEXT_RESUME_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, RRC_Resume_Cause; to the AMF entity } } - + } // end TP TP_NGAP_GNB_CMP_17 - + } // End Group "UE Context Resume" - + } // end Group 8.3 UE Context Management Procedures - + Group "8.4 UE Mobility Management Procedures" { - + Group "Handover Preparation" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_MMP_01 - + Test objective "Verify that the IUT can send a HANDOVER REQUIRED message containing mandatory IEs." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.1.2 and 9.2.3.1" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.1.2 and 9.2.3.1" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { the IUT entity indicate the initiation "of a Handover Required procedure" } then { - the IUT entity sends a HANDOVER_REQUIRED containing + the IUT entity sends a HANDOVER_REQUIRED containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Handover_Typ, @@ -1373,50 +1373,50 @@ Package TP_GNB { PDU_Session_Resource_Item containing PDU_SessionId indicating value PX_PDU_ID, Handover_Required_Transfer;;, - Source_to_Target_Transparent_Container; + Source_to_Target_Transparent_Container; to the AMF entity } } - + } // end TP TP_NGAP_GNB_MMP_01 - + } // End Group "Handover Preparation" - + Group "Handover Resource Allocation" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_MMP_02 - + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a HANDOVER_REQUEST containing + the IUT entity receives a HANDOVER_REQUEST containing AMF_UE_NGAP_ID, Handover_Typ, Cause, UE_Aggregate_Maximum_Bit_Rate, // 9.3.1.58 - UE_Security_Capabilities containing + UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, E_UTRA_Integrity_Protection_Algorithms;, - Security_Context containing + Security_Context containing Next_Hop_Chaining_Count, Next_Hop_NH;, PDU_Session_Resource_Setup_List containing @@ -1425,7 +1425,7 @@ Package TP_GNB { S_NSSAI containing SST;, Handover_Request_Transfer containing - DL_NG_U_UP_TNL_Information containing + DL_NG_U_UP_TNL_Information containing CHOICE_UP_Transport_Layer_Information containing GTP_tunnel containing Endpoint_IP_Address;;;, @@ -1441,7 +1441,7 @@ Package TP_GNB { SST;;;;, Source_to_Target_Transparent_Container, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;; @@ -1466,42 +1466,42 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_MMP_02 - + Test Purpose { - + TP Id TP_NGAP_GNB_MMP_03 - + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains mandatory IEs and answers with HANDOVER REQUEST FAILURE because the UE is not longer available." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.2.3, 9.2.3.4, 9.2.3.6 and 9.3.4.1" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.3, 9.2.3.4, 9.2.3.6 and 9.3.4.1" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_2 - + Initial conditions with { the UE entity isNoLongerAvailable } - + Expected behaviour ensure that { when { - the IUT entity receives a HANDOVER_REQUEST containing + the IUT entity receives a HANDOVER_REQUEST containing AMF_UE_NGAP_ID, Handover_Typ, Cause, UE_Aggregate_Maximum_Bit_Rate containing UE_Aggregate_Maximum_Bit_Rate_Downlink, UE_Aggregate_Maximum_Bit_Rate_Uplink;, - UE_Security_Capabilities containing + UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms;, - Security_Context containing + E_UTRA_Integrity_Protection_Algorithms;, + Security_Context containing Next_Hop_Chaining_Count, Next_Hop_NH;, PDU_Session_Resource_Setup_List containing @@ -1526,7 +1526,7 @@ Package TP_GNB { SST;;;;, Source_to_Target_Transparent_Container, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;; @@ -1539,31 +1539,31 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_MMP_03 - + // TP covers important optional IE. Can be used as blueprint to create further TPs or reduce the optional IEs within this TP. Test Purpose { - + TP Id TP_NGAP_GNB_MMP_04 - + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a HANDOVER_REQUEST containing + the IUT entity receives a HANDOVER_REQUEST containing AMF_UE_NGAP_ID, Handover_Typ, Cause, @@ -1620,7 +1620,7 @@ Package TP_GNB { Source_to_Target_Transparent_Container, RRC_Inactive_Transition_Report_Request, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;, @@ -1667,42 +1667,42 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_MMP_04 - + Test Purpose { - + TP Id TP_NGAP_GNB_MMP_05 - + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message that contains optional IEs within the Handover Request Transfer IEs and answers with correct HANDOVER REQUEST ACKNOWLEDGE." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a HANDOVER_REQUEST containing + the IUT entity receives a HANDOVER_REQUEST containing AMF_UE_NGAP_ID, Handover_Typ, Cause, UE_Aggregate_Maximum_Bit_Rate containing UE_Aggregate_Maximum_Bit_Rate_Downlink, UE_Aggregate_Maximum_Bit_Rate_Uplink;, - UE_Security_Capabilities containing + UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms;, - Security_Context containing + E_UTRA_Integrity_Protection_Algorithms;, + Security_Context containing Next_Hop_Chaining_Count, Next_Hop_NH;, PDU_Session_Resource_Setup_List containing @@ -1732,7 +1732,7 @@ Package TP_GNB { SST;;;;, Source_to_Target_Transparent_Container, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;; @@ -1764,43 +1764,43 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_MMP_05 - - // The TP cover intra-system handover (e.g. from 4G to 5G). + + // The TP cover intra-system handover (e.g. from 4G to 5G). Test Purpose { - + TP Id TP_NGAP_GNB_MMP_06 - + Test objective "Verify that the GNB node successfully processes a HANDOVER REQUEST message for an intra-system handover and answers with HANDOVER REQUEST ACKNOWLEDGE to acknowledge the handover." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a HANDOVER_REQUEST containing + the IUT entity receives a HANDOVER_REQUEST containing AMF_UE_NGAP_ID, Handover_Typ, Cause, UE_Aggregate_Maximum_Bit_Rate containing UE_Aggregate_Maximum_Bit_Rate_Downlink, UE_Aggregate_Maximum_Bit_Rate_Uplink;, - UE_Security_Capabilities containing + UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, E_UTRA_Integrity_Protection_Algorithms;, - Security_Context containing + Security_Context containing Next_Hop_Chaining_Count, Next_Hop_NH;, PDU_Session_Resource_Setup_List containing @@ -1843,7 +1843,7 @@ Package TP_GNB { NR containing NR_Mobility_History_Report;;;;, GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;; @@ -1876,123 +1876,123 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_MMP_06 - + } // End Group "Handover Resource Allocation" - + Group "Handover Notification" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_MMP_07 - + Test objective "Verify that the AMF node successfully sends a HANDOVER NOTIFICATION message that contains mandatory IEs to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.3.2 and 9.2.3.7" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.3.2 and 9.2.3.7" + Config Id CFG_AMF_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_3 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { the IUT entity indicate the initiation "of a Handover Notify procedure" } then { - the IUT entity sends a HANDOVER_NOTIFY containing + the IUT entity sends a HANDOVER_NOTIFY containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - User_Location_Information; + User_Location_Information; to the AMF entity } - + } - + } // End TP_NGAP_GNB_MMP_07 - + } // End Group "Handover Notification" - + Group "Path Switch Request" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_MMP_08 - + Test objective "Verify that the AMF node successfully sends a PATH SWITCH REQUEST message that contains mandatory IEs to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.4.2 and 9.2.3.8" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.4.2 and 9.2.3.8" + Config Id CFG_AMF_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_4 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity hasEstablishedInitialContext } - + Expected behaviour ensure that { when { the IUT entity indicate the initiation "of a Path Switch Request procedure" } then { - the IUT entity sends a PATH_SWITCH_REQUEST containing + the IUT entity sends a PATH_SWITCH_REQUEST containing RAN_UE_NGAP_ID, Source_AMF_UE_NGAP_ID, User_Location_Information, - UE_Security_Capabilities containing + UE_Security_Capabilities containing NR_Encryption_Algorithms, NR_Integrity_Protection_Algorithms, E_UTRA_Encryption_Algorithms, - E_UTRA_Integrity_Protection_Algorithms;, + E_UTRA_Integrity_Protection_Algorithms;, PDU_Session_Resources_to_be_Switched_in_Downlink_List containing PDU_Session_Resources_to_be_Switched_in_Downlink_Item containing PDU_SessionId indicating value PX_PDU_ID, - Path_Switch_Request_Transfer;;; + Path_Switch_Request_Transfer;;; to the AMF entity } - + } - + } // End TP_NGAP_GNB_MMP_08 - + } // End Group "Path Switch Request" - + Group "Handover Cancellation" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_MMP_09 - + Test objective "Verify that the GNB node successfully sends a HANDOVER CANCEL message that contains mandatory IEs to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.5.2 and 9.2.3.11" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.5.2 and 9.2.3.11" + Config Id CFG_AMF_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_5 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the GNB entity alreadyPreparedHandover } - + Expected behaviour ensure that { when { @@ -2002,83 +2002,83 @@ Package TP_GNB { the IUT entity sends a HANDOVER_CANCEL containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Cause; + Cause; to the AMF entity } } - + } // End TP_NGAP_GNB_MMP_09 } // End Group "Handover Cancellation" - + Group "Uplink RAN Status Transfer" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_MMP_10 - + Test objective "Verify that the NG-RAN node successfully send a UPLINK RAN STATUS TRANSFER message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.6.2 and 9.2.3.13" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.6.2 and 9.2.3.13" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_6 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the GNB entity alreadyPreparedHandover } - + Expected behaviour ensure that { - when { + when { the IUT entity indicate the initiation "of an UE Uplink RAN Status Transfer procedure" } then { - the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing + the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, RAN_Status_Transfer_Transparent_Container; to the AMF entity } - - } + + } } // End TP_NGAP_GNB_MMP_10 } // End Group "Uplink RAN Status Transfer" - - + + Group "Uplink RAN Early Status Transfer" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_MMP_11 - + Test objective "Verify that the NG-RAN node successfully sends a UPLINK RAN EARLY STATUS TRANSFER message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.4.9.2 and 9.2.3.16" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.4.9.2 and 9.2.3.16" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/3_9 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the GNB entity alreadyPreparedHandover } - + Expected behaviour ensure that { - when { + when { the IUT entity indicate the initiation "of an Uplink RAN Early Status Transfer" } then { - the IUT entity sends a UPLINK_RAN_EARLY_STATUS_TRANSFER containing + the IUT entity sends a UPLINK_RAN_EARLY_STATUS_TRANSFER containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Early_Status_Transfer_Transparent_Container; @@ -2086,36 +2086,36 @@ Package TP_GNB { } } } // End TP_NGAP_GNB_MMP_11 - + } // End Group "Uplink RAN Early Status Transfer" - + } // End Group "8.4 UE Mobility Management Procedures" - + Group "8.6 Transport of NAS Messages Procedures" { Group "Initial UE Message" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_NAS_01 - + + TP Id TP_NGAP_GNB_NAS_01 + Test objective "Verify that the IUT can send an INITIAL UE MESSAGE to indicate the initiation of a NAS Transport procedure" - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.6.1.2 and 9.2.5.1" , "ETSI TS 123 502 [6], Clause 4.24.1" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/5_1 - + Initial conditions with { the UE entity isCMIDLE and the UE entity hasEstablishedRRCConnection } - + Expected behaviour ensure that { when { @@ -2130,36 +2130,36 @@ Package TP_GNB { to the AMF entity } } - + } // end TP_NGAP_GNB_NAS_01 } // end "Initial UE Message" - + Group "Uplink NAS Transport" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_NAS_02 - + + TP Id TP_NGAP_GNB_NAS_02 + Test objective "Verify that the IUT can send an UPLINK NAS TRANSPORT message to the AMF." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.6.3.2 and 9.2.5.3", "ETSI TS 123 502 [6], Clause 4.24.1" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/5_3 - + Initial conditions with { the UE entity isCMCONNECTED in the GNB entity } - + Expected behaviour ensure that { when { - the IUT entity receives an RRC_UL_MESSAGE + the IUT entity receives an RRC_UL_MESSAGE from the UE entity } then { @@ -2167,36 +2167,36 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NAS_PDU, - User_Location_Information; - to the AMF entity + User_Location_Information; + to the AMF entity } } - + } // end TP_NGAP_GNB_NAS_02 - + } // end "Uplink NAS Transport" - + Group "NAS Non Delivery Indication" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_NAS_03 - + + TP Id TP_NGAP_GNB_NAS_03 + Test objective "Verify that the IUT can send a NAS NON DELIVERY INDICATION message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.6.4.2 and 9.2.5.4" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.6.4.2 and 9.2.5.4" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/5_4 - + Initial conditions with { the UE entity isNoLongerAvailable to the GNB entity } - + Expected behaviour ensure that { when { @@ -2207,43 +2207,43 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NAS_PDU, - Cause; - to the AMF entity + Cause; + to the AMF entity } } - + } // end TP_NGAP_GNB_NAS_03 - + } // end "NAS Non Delivery Indication" - + } // end Group "8.6 Transport of NAS Messages Procedures" - + Group "8.7 Interface Management Procedures" { Group "NG Setup" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_IMP_01 - + Test objective "Verify that the GNB node successfully sends a NG SETUP REQUEST message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.1.2 and 9.2.6.1" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.1.2 and 9.2.6.1" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/6_1 - + Expected behaviour ensure that { when { the IUT entity indicate the initiation "of a NG SETUP REQUEST" } then { - the IUT entity sends a NG_SETUP_REQUEST containing + the IUT entity sends a NG_SETUP_REQUEST containing Global_RAN_Node_ID, Supported_TA_List containing Supported_TA_Item containing @@ -2254,87 +2254,87 @@ Package TP_GNB { TAI_Slice_Support_List containing S_NSSAI containing SST;;;;;;, - Default_Paging_DRX; + Default_Paging_DRX; to the AMF entity } } } // end TP TP_NGAP_GNB_IMP_01 } // End Group "NG Setup" - + Group "RAN Configuration Update" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_IMP_02 - + Test objective "Verify that the IUT can send a RAN CONFIGURATION UPDATE message to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.2.2 and 9.2.6.4" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.2.2 and 9.2.6.4" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/2 and PICS_A3/6_2 - + Initial conditions with { - the UE entity isRegisteredTo the AMF + the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { the IUT entity indicate the initiation "of a RAN CONFIGURATION UPDATE procedure" } then { - the IUT entity sends a RAN_CONFIGURATION_UPDATE containing + the IUT entity sends a RAN_CONFIGURATION_UPDATE containing Supported_TA_List containing - Supported_TA_Item containing + Supported_TA_Item containing TAC, Broadcast_PLMN_List containing Broadcast_PLMN_Item containing PLMN_Identity, TAI_Slice_Support_List containing S_NSSAI containing - SST;;;;;;; + SST;;;;;;; to the AMF entity } } } // End TP_NGAP_GNB_IMP_02 } // End Group RAN Configuration Update - + Group "AMF Configuration Update" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_IMP_03 - + Test objective "Verify that the GNB node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.8" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/6_3 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity isCMIDLE and the UE entity hasReceivedPAGINGMessage } - + Expected behaviour ensure that { when { - the IUT entity receives a AMF_CONFIGURATION_UPDATE containing + the IUT entity receives a AMF_CONFIGURATION_UPDATE containing Served_GUAMI_List containing Served_GUAMI_Item containing GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;;;, @@ -2348,9 +2348,9 @@ Package TP_GNB { AMF_TNL_Association_to_Add_item containing AMF_TNL_Association_Address, TNL_Address_Weight_Factor;;, - AMF_TNL_Association_to_Update_List containing + AMF_TNL_Association_to_Update_List containing AMF_TNL_Association_to_Update_Item containing - AMF_TNL_Association_Address;;; + AMF_TNL_Association_Address;;; from the AMF entity } then { @@ -2361,36 +2361,36 @@ Package TP_GNB { to the AMF entity } } - + } // end TP TP_NGAP_GNB_IMP_03 - + Test Purpose { - + TP Id TP_NGAP_GNB_IMP_04 - + Test objective "Verify that the GNB node can send a AMF CONFIGURATION UPDATE FAILURE." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.9" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/6_3 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity isCMIDLE and - the UE entity hasReceivedPAGINGMessage + the UE entity hasReceivedPAGINGMessage } - + Expected behaviour ensure that { when { - the IUT entity receives a AMF_CONFIGURATION_UPDATE containing + the IUT entity receives a AMF_CONFIGURATION_UPDATE containing Served_GUAMI_List containing Served_GUAMI_Item containing GUAMI containing - PLMN_Identity, + PLMN_Identity, AMF_Region_ID, AMF_Set_ID, AMF_Pointer;;;, @@ -2404,9 +2404,9 @@ Package TP_GNB { AMF_TNL_Association_to_Add_item containing AMF_TNL_Association_Address, TNL_Address_Weight_Factor;;, - AMF_TNL_Association_to_Update_List containing + AMF_TNL_Association_to_Update_List containing AMF_TNL_Association_to_Update_Item containing - AMF_TNL_Association_Address;;; + AMF_TNL_Association_Address;;; from the AMF entity } then { @@ -2416,112 +2416,112 @@ Package TP_GNB { } } } // end TP TP_NGAP_GNB_IMP_04 - + } //End Group AMF Configuration Update - + Group "NG Reset" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_IMP_05 - + Test objective "Verify that the GNB node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.4.2.1, 9.2.6.11 and 9.2.6.12" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.4.2.1, 9.2.6.11 and 9.2.6.12" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/6_4 - + Initial conditions with { the UE entity isRegisteredTo the AMF and the UE entity isRequestedToDetachfromNetwork } - + Expected behaviour ensure that { when { - the IUT entity receives a NG_RESET containing + the IUT entity receives a NG_RESET containing Cause, CHOICE_Reset_Type containing NG_interface containing - Reset_All;;; + Reset_All;;; from the AMF entity } then { - the IUT entity sends a NG_RESET_ACKNOWLEDGE + the IUT entity sends a NG_RESET_ACKNOWLEDGE to the AMF entity } } } // end TP TP_NGAP_GNB_IMP_05 - + } // End Group NG Reset - + Group "Error Indication" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_IMP_06 - + + TP Id TP_NGAP_GNB_IMP_06 + Test objective "Verify that the GNB can send a ERROR INDICATION to the AMF when a error occurs." - - Reference - "ETSI TS 138 413 [1], Clauses 8.7.5.2 and 9.2.6.13" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.7.5.2 and 9.2.6.13" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/6_5 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { - when { + when { the IUT entity indicate a ERROR INDICATION } then { - the IUT entity sends a ERROR_INDICATION + the IUT entity sends a ERROR_INDICATION to the AMF entity } } } // end TP_NGAP_GNB_IMP_06 } // End Group Error Indication } // End Group "8.7 Interface Management Procedures" - + Group "8.8 Configuration Transfer Procedure" - { + { Group "Uplink RAN Configuration Transfer" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_CTP_01 - + Test objective "Verify that the IUT can send an Uplink RAN Configuration Transfer message to transfer RAN configuration information to the AMF." - - Reference - "ETSI TS 138 413 [1], Clauses 8.8.1 and 9.2.7.1" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.8.1 and 9.2.7.1" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/7_1 - + Expected behaviour ensure that { when { the IUT entity indicate the initiation "of a Uplink RAN Configuration Transfer" } then { - the IUT entity sends an NAS_NON_DELIVERY_INDICATION - to the AMF entity + the IUT entity sends an NAS_NON_DELIVERY_INDICATION + to the AMF entity } } } // end TP_NGAP_GNB_CTP_01 @@ -2529,30 +2529,30 @@ Package TP_GNB { } // end Group "8.8 Configuration Transfer Procedure" Group "8.9 Warning Message Transmission Procedures" - { + { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_WTP_01 - + + TP Id TP_NGAP_GNB_WTP_01 + Test objective "Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing mandatory IEs and answers with WRITE-REPLACE WARNING RESPONSE to start broadcasting of warning messages." - - Reference - "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.2" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.2" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/8_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing + the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing Message_Identifier, Serial_Number, Repetition_Period, @@ -2567,28 +2567,28 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_WTP_01 - + Test Purpose { - - TP Id TP_NGAP_GNB_WTP_02 - + + TP Id TP_NGAP_GNB_WTP_02 + Test objective "Verify that the NG-RAN node successfully processes a WRITE-REPLACE WARNING REQUEST containing Message Identifier IE and/or Serial Number IE different from those in the warning message being broadcast and if Concurent Warning Message Indicator is not present then IUT node answers with WRITE-REPLACE WARNING RESPONSE and replaces the warning message being broadcast with newly received one for that area." - - Reference - "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.2" //paragraph 3 - + + Reference + "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.2" //paragraph 3 + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/8_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing + the IUT entity receives a WRITE_REPLACE_WARNING_REQUEST containing Message_Identifier indicating value "different from already being broadcasted", Serial_Number indicating value "different from already being broadcasted", Repetition_Period, @@ -2604,30 +2604,30 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_WTP_02 - + //TODO:possible to add additional tests from 8.9.1.2 paragraph 4 and on - + Test Purpose { - - TP Id TP_NGAP_GNB_WTP_03 - + + TP Id TP_NGAP_GNB_WTP_03 + Test objective "Verify that the NG-RAN node successfully processes a PWS CANCEL REQUEST containing mandatory IEs and answers with PWS CANCEL RESPONSE to cancel an already ongoing broadcast warning messages in all of the cells in the NG-RAN." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.9.2.2 and 9.2.8.4" //paragraph 3 - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/8_2 - + Initial conditions with { the UE entity isNotRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a PWS_CANCEL_REQUEST containing + the IUT entity receives a PWS_CANCEL_REQUEST containing Message_Identifier, Serial_Number; from the AMF entity @@ -2640,26 +2640,26 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_WTP_03 - + //TODO:possible to add additional tests from 8.9.2.2 paragraph 3, 5 and on - + Test Purpose { - - TP Id TP_NGAP_GNB_WTP_04 - + + TP Id TP_NGAP_GNB_WTP_04 + Test objective "Verify that the IUT can send a PWS RESTART INDICATION to inform AMF that PWS information for some or all cells may be reloaded from the CBC if needed." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.9.3.2 and 9.2.8.5" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/8_3 - + Initial conditions with { the UE entity isNotRegisteredTo the AMF } - + Expected behaviour ensure that { when { @@ -2675,24 +2675,24 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_WTP_04 - + Test Purpose { - - TP Id TP_NGAP_GNB_WTP_05 - + + TP Id TP_NGAP_GNB_WTP_05 + Test objective "Verify that the IUT can send a PWS FAILURE INDICATION to inform AMF that ongoing PWS operation for one or more cells has failed." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.9.4.2 and 9.2.8.6" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/8_4 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { @@ -2707,35 +2707,35 @@ Package TP_GNB { } } // end TP_NGAP_GNB_WTP_05 } // end "8.9 Warning Message Transmission Procedures" - + Group "8.10 NRPPa Transport Procedures" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_NTP_01 - + + TP Id TP_NGAP_GNB_NTP_01 + Test objective "Verify that the IUT can send a UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.10.2.2 and 9.2.9.2" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/9_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { the IUT entity indicate a NRPPA transport procedure } then { - the IUT entity sends a UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT containing + the IUT entity sends a UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Routing_ID, @@ -2743,66 +2743,66 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_NTP_01 - + } // end TP_NGAP_GNB_NTP_01 + Test Purpose { - - TP Id TP_NGAP_GNB_NTP_02 - + + TP Id TP_NGAP_GNB_NTP_02 + Test objective "Verify that the IUT can send a UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.10.2.4 and 9.2.9.4" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/9_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { the IUT entity indicate a NRPPA transport procedure } then { - the IUT entity sends a UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT containing + the IUT entity sends a UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT containing Routing_ID, NRPPa_PDU; to the AMF entity } } } // end TP_NGAP_GNB_NTP_02 - + } // end "8.10 NRPPa Transport Procedures" - + Group "8.11 Trace Procedures" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_TRP_01 - + + TP Id TP_NGAP_GNB_TRP_01 + Test objective "Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that Trace Start procedure has failed due to an interaction with handover procedure." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.11.1.2, 8.11.2.2, 9.2.10.1 and 9.2.10.2" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/10_1 and PICS_A3/10_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a TRACE_START containing + the IUT entity receives a TRACE_START containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Trace_Activation containing @@ -2813,7 +2813,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a TRACE_FAILURE_INDICATIONT containing + the IUT entity sends a TRACE_FAILURE_INDICATIONT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NG_RAN_Trace_ID, @@ -2821,36 +2821,36 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_TRP_01 - + } // end TP_NGAP_GNB_TRP_01 + Test Purpose { - - TP Id TP_NGAP_GNB_TRP_02 - + + TP Id TP_NGAP_GNB_TRP_02 + Test objective "Verify that the IUT can send a TRACE_FAILURE_INDICATION to inform AMF that a Deactivate Trace procedure has failed due to an interaction with handover procedure." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.11.2.2, 8.11.3.2, 9.2.10.2 and 9.2.10.3" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/10_2 and PICS_A3/10_3 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity receives a DEACTIVATE_TRACE containing + the IUT entity receives a DEACTIVATE_TRACE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NG_RAN_Trace_ID; from the AMF entity } then { - the IUT entity sends a TRACE_FAILURE_INDICATIONT containing + the IUT entity sends a TRACE_FAILURE_INDICATIONT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NG_RAN_Trace_ID, @@ -2858,33 +2858,33 @@ Package TP_GNB { to the AMF entity } } - } // end TP_NGAP_GNB_TRP_02 - + } // end TP_NGAP_GNB_TRP_02 + Test Purpose { - + TP Id TP_NGAP_GNB_TRP_03 - + Test objective "Verify that the IUT can send a CELL_TRAFFIC_TRACE to send the allocated Trace Recording Session Reference and Trace Reference to AMF." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.11.4.2 and 9.2.10.4" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/10_4 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - + the IUT entity indicate a cell traffic trace procedure } then { - the IUT entity sends a CELL_TRAFFIC_TRACE containing + the IUT entity sends a CELL_TRAFFIC_TRACE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NG_RAN_Trace_ID, @@ -2894,32 +2894,32 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_TRP_03 - + } // end "8.11 Trace Procedures" - + Group "8.12 Location Reporting Procedures" { Group "Location Reporting Failure Indication" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_LRP_01 - + Test objective "Verify that the IUT can send a LOCATION REPORTING FAILURE INDICATION message after that contains mandatory IEs receiving a LOCATION REPORTING CONTROL message with two identical Location Reporting Reference IDs." - - Reference - "ETSI TS 138 413 [1], Clauses 8.12.2, 9.2.11.1, 9.2.11.2 and 9.3.1.65" - + + Reference + "ETSI TS 138 413 [1], Clauses 8.12.2, 9.2.11.1, 9.2.11.2 and 9.3.1.65" + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/11_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { @@ -2944,35 +2944,35 @@ Package TP_GNB { RAN_UE_NGAP_ID, Cause containing CHOICE_Cause_Group containing - Radio_Network_Layer_Cause indicating value Multiple_Location_Reporting_Reference_ID_instances;;; - to the AMF entity + Radio_Network_Layer_Cause indicating value Multiple_Location_Reporting_Reference_ID_instances;;; + to the AMF entity } } } // end TP_NGAP_GNB_LRP_01 - + } // end "Location Reporting Failure Indication" - + Group "Location Report" { import all from Ngap_Common; - + Test Purpose { - + TP Id TP_NGAP_GNB_LRP_02 - + Test objective "Verify that the IUT can send a LOCATION REPORT message that contains mandatory IEs to provide the UE's current location." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.12.2 and 9.2.11.3" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/11_3 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { @@ -2987,50 +2987,50 @@ Package TP_GNB { AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, User_Location_Information, - Location_Reporting_Request_Type; - to the AMF entity + Location_Reporting_Request_Type; + to the AMF entity } } } // end TP_NGAP_GNB_LRP_02 - + } // end "Location Report" - + } // end "8.12 Location Reporting Procedures" - + Group "8.13 UE TNLA Binding Procedures" { - + } // end Group "8.13 UE TNLA Binding Procedures" - + Group "8.14 UE Radio Capability Management Procedures" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_URP_01 - + + TP Id TP_NGAP_GNB_URP_01 + Test objective "Verify that the IUT can send a UE_RADIO_CAPABILITY_INFO_INDICATION." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.14.1.2 and 9.2.13.1" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/13_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - + the IUT entity indicate a UE Radio Capability Management procedure } then { - the IUT entity sends a UE_RADIO_CAPABILITY_INFO_INDICATION containing + the IUT entity sends a UE_RADIO_CAPABILITY_INFO_INDICATION containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, UE_Radio_Capability; @@ -3038,34 +3038,34 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_URP_01 - + Test Purpose { - + TP Id TP_NGAP_GNB_URP_02 - + Test objective "Verify that the IUT can send a UE RADIO CAPABILITY CHECK RESPONSE message that contains mandatory IEs to provide the UE radio capabilities." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.14.2.2, 9.2.13.2 and 9.2.13.3" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/13_2 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - the IUT entity sends a UE_RADIO_CAPABILITY_CHECK_REQUEST containing + the IUT entity sends a UE_RADIO_CAPABILITY_CHECK_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; from the AMF entity } then { - the IUT entity sends a UE_RADIO_CAPABILITY_CHECK_RESPONSE containing + the IUT entity sends a UE_RADIO_CAPABILITY_CHECK_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, IMS_Voice_Support_Indicator; @@ -3073,28 +3073,28 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_URP_02 - + Test Purpose { - - TP Id TP_NGAP_GNB_URP_03 - + + TP Id TP_NGAP_GNB_URP_03 + Test objective "Verify that the IUT can send a UE RADIO CAPABILITY ID MAPPING REQUEST." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.14.3.2 and 9.2.13.4" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/13_3 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - + the IUT entity indicate a UE Radio Capability Management procedure } then { @@ -3104,38 +3104,38 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_URP_03 - + } // end Group "8.14 UE Radio Capability Management Procedures" - + Group "8.15 Data Usage Reporting Procedures" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_DRP_01 - + + TP Id TP_NGAP_GNB_DRP_01 + Test objective "Verify that the IUT can send a SECONDARY RAT DATA USAGE REPORT." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.15.1.2 and 9.2.14.1" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/14_1 - + Initial conditions with { the UE entity isRegisteredTo the AMF } - + Expected behaviour ensure that { when { - + the IUT entity indicate a Data_Usage_Reporting_procedure } then { - the IUT entity sends a SECONDARY_RAT_DATA_USAGE_REPORT containing + the IUT entity sends a SECONDARY_RAT_DATA_USAGE_REPORT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Secondary_RAT_Usage_List containing @@ -3146,34 +3146,34 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_DRP_01 - + } // end Group "8.15 Data Usage Reporting Procedures" - + Group "8.16 RIM Information Transfer Procedures" { import all from Ngap_Common; - + Test Purpose { - - TP Id TP_NGAP_GNB_RIP_01 - + + TP Id TP_NGAP_GNB_RIP_01 + Test objective "Verify that the IUT can send a UPLINK RIM INFORMATION TRANSFER." - - Reference + + Reference "ETSI TS 138 413 [1], Clauses 8.16.1.2 and 9.2.15.1" - + Config Id CFG_GNB_01 - + PICS Selection PICS_A2/1 and PICS_A3/15_1 - + Initial conditions with { the UE entity isNotRegisteredTo the AMF } - + Expected behaviour ensure that { when { - + the IUT entity indicate a RIM Information Transfer procedure } then { @@ -3182,7 +3182,7 @@ Package TP_GNB { } } } // end TP_NGAP_GNB_RIP_01 - + } // end Group "8.16 RIM Information Transfer Procedures" - + } // End of Package TP_GNB diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 08d4ce5..d7b7865 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3378,34 +3378,267 @@ module NGAP_TCFunctions { group UE_Mobility_Management_Procedures{ //8.4.1 group Handover_Preparation{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_01 + */ + function f_TC_NGAP_AMF_MMP_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_01 + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_02 + */ + function f_TC_NGAP_AMF_MMP_02() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_02 + } // End of group Handover_Preparation //8.4.2 group Handover_Resource_Allocation{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_03 + */ + function f_TC_NGAP_AMF_MMP_03() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_03 + } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_04 + */ + function f_TC_NGAP_AMF_MMP_04() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_04 + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_05 + */ + function f_TC_NGAP_AMF_MMP_05() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_05 + } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_06 + */ + function f_TC_NGAP_AMF_MMP_06() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_06 + } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_07 + */ + function f_TC_NGAP_AMF_MMP_07() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_07 + } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_08 + */ + function f_TC_NGAP_AMF_MMP_08() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_08 + } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ - } // End of group Downlink_RAN_Early_Status_Transfer + + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_09 + */ + function f_TC_NGAP_AMF_MMP_09() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_09 + + } // End of group Downlink_RAN_Early_Status_Transfer } // End of group UE_Mobility_Management_Procedures //8.5 group Paging_Procedures{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index e326b93..7c75c79 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1933,34 +1933,285 @@ module NGAP_TestCases { group UE_Mobility_Management_Procedures{ //8.4.1 group Handover_Preparation{ + + /** + * @desc "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER COMMAND with successfully handover." + */ + testcase TC_NGAP_AMF_MMP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_01 + + /** + * @desc "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER PREPARATION FAILURE because the UE is not longer available." + */ + testcase TC_NGAP_AMF_MMP_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_02 + } // End of group Handover_Preparation //8.4.2 group Handover_Resource_Allocation{ + + /** + * @desc "Verify that the AMF node successfully sends a HANDOVER REQUEST message that contains mandatory IEs to the GNB." + */ + testcase TC_NGAP_AMF_MMP_03() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_03 + } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ + + /** + * @desc "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and answers with PATH SWITCH REQUEST ACKNOWLEDGE to acknowledge the path switch." + */ + testcase TC_NGAP_AMF_MMP_04() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_04 + + /** + * @desc "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with same ID and answers with PATH SWITCH REQUEST FAILURE." + */ + testcase TC_NGAP_AMF_MMP_05() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_05 + } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ + + /** + * @desc "Verify that the AMF node successfully processes a HANDOVER CANCEL message that contains mandatory IEs and answers with HANDOVER CANCEL ACKNOWLEDGE to confirm that the ongoing handover was cancelled." + */ + testcase TC_NGAP_AMF_MMP_06() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_06()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_06 + } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ + + /** + * @desc "Verify that the AMF node successfully sends a DOWNLINK RAN STATUS TRANSFER message that contains mandatory IEs." + */ + testcase TC_NGAP_AMF_MMP_07() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_6)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_6' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_07()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_07 + } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ + + /** + * @desc "Verify that the NG-RAN node successfully sends a Handover Success message to the AMF." + */ + testcase TC_NGAP_AMF_MMP_08() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A3_3_8)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A3_3_8' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_08()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_08 + } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ + + /** + * @desc "Verify that the AMF node successfully sends a DOWNLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." + */ + testcase TC_NGAP_AMF_MMP_09() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_9)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_9' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_09()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_09 + } // End of group Downlink_RAN_Early_Status_Transfer + } // End of group UE_Mobility_Management_Procedures //8.5 group Paging_Procedures{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 6c79607..a25b259 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1625,11 +1625,11 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.7 UE CONTEXT MODIFICATION REQUEST */ template (value) InitiatingMessage m_n2_UEContextModificationRequest_optional1( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, - in template (value) UESecurityCapabilities p_uESecurityCapabilities, - ) := { + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, + in template (value) UESecurityCapabilities p_uESecurityCapabilities + ) := { procedureCode := id_UEContextModification, criticality := reject, value_ := { -- GitLab From c5557ddec112901d15267e9ab439efd940327a49 Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 29 May 2024 09:24:59 +0200 Subject: [PATCH 252/365] new function and templates for TC_NGAP_GNB_CMP_13 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 27 ++++-- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 109 ++++++++++++++++++++++-- 2 files changed, 124 insertions(+), 12 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index f4a6c18..3bdf8e3 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1384,7 +1384,7 @@ module NGAP_TCFunctions { -, -, -, - m_uESecurityCapabilities + - ))); @@ -1421,16 +1421,31 @@ module NGAP_TCFunctions { // Body /* f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_UEContextReleaseCommand - ( - m_uE_NGAP_IDs_aMF_UE_NGAP_ID + m_n2_UEContextModificationRequest_optional2 + ( + -, // AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + -, // RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + + // RANPagingPriority p_rANPagingPriority, // RAN_Paging_Priority + // IndexToRFSP p_indexToRFSP, // Index_to_RAT_Frequency_Selection_Priority, + m_uEAggregateMaximumBitRate, // UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, // UE_Aggregate_Maximum_Bit_Rate containing + m_uESecurityCapabilities, // UESecurityCapabilities p_uESecurityCapabilities, // UE_Security_Capabilities containing + // EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator, + m_gUAMI, // GUAMI p_gUAMI, // New_GUAMI containing + // IAB_Authorized p_iAB_Authorized, // IAB_Authorized, + m_pC5QoSParameters( + { m_pC5QoSFlowItem } + ),// PC5QoSParameters p_pC5QoSParameters, // PC5_QoS_Parameters containing + -, // UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, // UE_Radio_Capability_ID, + // RGLevelWirelineAccessCharacteristics p_rGLevelWirelineAccessCharacteristics // RG_Level_Wireline_Access_Characteristics + ( - ), - - ))); - + ))); */ + /* f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_UEContextReleaseComplete diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 3241ad0..825f0f8 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1560,11 +1560,11 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.7 UE CONTEXT MODIFICATION REQUEST */ template (value) InitiatingMessage m_n2_UEContextModificationRequest_optional1( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, - in template (value) UESecurityCapabilities p_uESecurityCapabilities - ) := { + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, + in template (value) UESecurityCapabilities p_uESecurityCapabilities := m_uESecurityCapabilities, + ) := { procedureCode := id_UEContextModification, criticality := reject, value_ := { @@ -1593,7 +1593,104 @@ module LibNGAP_Templates { } } } - } // End of template m_n2_UEContextModificationRequest + } // End of template m_n2_UEContextModificationRequest_optional1 + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.7 UE CONTEXT MODIFICATION REQUEST + */ + template (value) InitiatingMessage m_n2_UEContextModificationRequest_optional2( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) RANPagingPriority p_rANPagingPriority, // RAN_Paging_Priority + in template (value) IndexToRFSP p_indexToRFSP, // Index_to_RAT_Frequency_Selection_Priority, + in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, // UE_Aggregate_Maximum_Bit_Rate containing + in template (value) UESecurityCapabilities p_uESecurityCapabilities, // UE_Security_Capabilities containing + in template (value) EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator, + in template (value) GUAMI p_gUAMI, // New_GUAMI containing + in template (value) IAB_Authorized p_iAB_Authorized, // IAB_Authorized, + in template (value) PC5QoSParameters p_pC5QoSParameters, // PC5_QoS_Parameters containing + in template (value) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, // UE_Radio_Capability_ID, + in template (value) RGLevelWirelineAccessCharacteristics p_rGLevelWirelineAccessCharacteristics // RG_Level_Wireline_Access_Characteristics + ) := { + procedureCode := id_UEContextModification, + criticality := reject, + value_ := { + UEContextModificationRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + // in template (value) RANPagingPriority p_rANPagingPriority, // RAN_Paging_Priority + { + id := id_RANPagingPriority, + criticality := ignore, + value_ := { RANPagingPriority := p_rANPagingPriority } + }, + // in template (value) IndexToRFSP p_indexToRFSP, // Index_to_RAT_Frequency_Selection_Priority, + { + id := id_IndexToRFSP, + criticality := ignore, + value_ := { IndexToRFSP := p_indexToRFSP } + }, + // in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, // UE_Aggregate_Maximum_Bit_Rate containing + { + id := id_UEAggregateMaximumBitRate, + criticality := ignore, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + // in template (value) UESecurityCapabilities p_uESecurityCapabilities, // UE_Security_Capabilities containing + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + // in template (value) EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator, + { + id := id_EmergencyFallbackIndicator, + criticality := reject, + value_ := { EmergencyFallbackIndicator := p_emergencyFallbackIndicator } + }, + // in template (value) GUAMI p_gUAMI, // New_GUAMI containing + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, + // in template (value) IAB_Authorized p_iAB_Authorized, // IAB_Authorized, + { + id := id_IAB_Authorized, + criticality := ignore, + value_ := { IAB_Authorized := p_iAB_Authorized } + }, + // in template (value) PC5QoSParameters p_pC5QoSParameters, // PC5_QoS_Parameters containing + { + id := id_PC5QoSParameters, + criticality := ignore, + value_ := { PC5QoSParameters := p_pC5QoSParameters } + }, + // in template (value) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, // UE_Radio_Capability_ID, + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + // in template (value) RGLevelWirelineAccessCharacteristics p_rGLevelWirelineAccessCharacteristics // RG_Level_Wireline_Access_Characteristics + { + id := id_RGLevelWirelineAccessCharacteristics, + criticality := ignore, + value_ := { RGLevelWirelineAccessCharacteristics := p_rGLevelWirelineAccessCharacteristics } + }, + } + } + } + } // End of template m_n2_UEContextModificationRequest_optional2 } // End of group Send -- GitLab From b60954cef19bd9e44083aca7b8665ddfe21258e3 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 09:52:41 +0200 Subject: [PATCH 253/365] Restoring code lost by git :( --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 173 ++++++++++++++++++++---- 1 file changed, 143 insertions(+), 30 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 825f0f8..25b7950 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1208,6 +1208,30 @@ module LibNGAP_Templates { } } // End of template mw_n2_PDUInitialContextSetupResponse + template (present) SuccessfulOutcome mw_n2_InitialContextSetupResponse_noPDUSessionResourceSetupListSURes( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_InitialContextSetupResponse_noPDUSessionResourceSetupListSURes + } // End of group Receive } // End of group INITIAL_CONTEXT_SETUP_RESPONSE @@ -3116,6 +3140,81 @@ module LibNGAP_Templates { id := id_GUAMI, criticality := reject, value_ := { GUAMI := p_gUAMI } + }, + { + id := id_RedirectionVoiceFallback, + criticality := ignore, + value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } + }, + { + id := id_CNAssistedRANTuning, + criticality := ignore, + value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } + }, + { + id := id_SRVCCOperationPossible, + criticality := ignore, + value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } + }, + { + id := id_Enhanced_CoverageRestriction, + criticality := ignore, + value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } + }, + { + id := id_UE_DifferentiationInfo, + criticality := ignore, + value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } + }, + { + id := id_NRV2XServicesAuthorized, + criticality := ignore, + value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } + }, + { + id := id_LTEV2XServicesAuthorized, + criticality := ignore, + value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } + }, + { + id := id_NRUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } + }, + { + id := id_LTEUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } + }, + { + id := id_PC5QoSParameters, + criticality := ignore, + value_ := { PC5QoSParameters := p_pC5QoSParameters } + }, + { + id := id_CEmodeBrestricted, + criticality := ignore, + value_ := { CEmodeBrestricted := p_cEmodeBrestricted } + }, + { + id := id_UE_UP_CIoT_Support, + criticality := ignore, + value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } + }, + { + id := id_ManagementBasedMDTPLMNList, + criticality := ignore, + value_ := { MDTPLMNList := p_mDTPLMNList } + }, + { + id := id_UERadioCapabilityID, + criticality := ignore, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_Extended_ConnectedTime, + criticality := ignore, + value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } } } } @@ -3136,12 +3235,26 @@ module LibNGAP_Templates { in template (value) AllowedNSSAI p_allowedNSSAI, in template (value) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer, in template (value) GUAMI p_gUAMI, - in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, - in template (value) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive, - in template (value) NewSecurityContextInd p_newSecurityContextInd, - in template (value) NAS_PDU p_nAS_PDU, - in template (value) TraceActivation p_traceActivation, - in template (value) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest + in template (value) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive, + in template (value) NewSecurityContextInd p_newSecurityContextInd, + in template (value) NAS_PDU p_nAS_PDU, + in template (value) TraceActivation p_traceActivation, + in template (value) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest, + in template (value) RedirectionVoiceFallback p_redirectionVoiceFallback, + in template (value) CNAssistedRANTuning p_cNAssistedRANTuning, + in template (value) SRVCCOperationPossible p_sRVCCOperationPossible, + in template (value) Enhanced_CoverageRestriction p_enhanced_CoverageRestriction, + in template (value) UE_DifferentiationInfo p_uE_DifferentiationInfo, + in template (value) NRV2XServicesAuthorized p_nRV2XServicesAuthorized, + in template (value) LTEV2XServicesAuthorized p_lTEV2XServicesAuthorized, + in template (value) NRUESidelinkAggregateMaximumBitrate p_nRUESidelinkAggregateMaximumBitrate, + in template (value) LTEUESidelinkAggregateMaximumBitrate p_lTEUESidelinkAggregateMaximumBitrate, + in template (value) PC5QoSParameters p_pC5QoSParameters, + in template (value) CEmodeBrestricted p_cEmodeBrestricted, + in template (value) UE_UP_CIoT_Support p_uE_UP_CIoT_Support, + in template (value) MDTPLMNList p_mDTPLMNList, + in template (value) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, + in template (value) Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME ) modifies m_n2_HandoverRequest := { procedureCode := id_HandoverResourceAllocation, criticality := reject, @@ -7792,14 +7905,14 @@ module LibNGAP_Templates { template (value) ConfiguredTACIndication m_configuredTACIndication(in ConfiguredTACIndication p_value := true_) := p_value; template (omit) CoreNetworkAssistanceInformationForInactive m_coreNetworkAssistanceInformationForInactive( - in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, - in template (value) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer, - in template (value) TAIListForInactive p_tAIListForInactive, - in template (omit) PagingDRX p_uESpecificDRX := omit, - in template (omit) MICOModeIndication p_mICOModeIndication := omit, - in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, - in template (omit) CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) UEIdentityIndexValue p_uEIdentityIndexValue, + in template (value) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := PX_PERIODIC_REGISTRATION_UPDATE_TIMER, + in template (value) TAIListForInactive p_tAIListForInactive, + in template (omit) PagingDRX p_uESpecificDRX := omit, + in template (omit) MICOModeIndication p_mICOModeIndication := omit, + in template (omit) ExpectedUEBehaviour p_expectedUEBehaviour := omit, + in template (omit) CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := omit + ) := { uEIdentityIndexValue := p_uEIdentityIndexValue, uESpecificDRX := p_uESpecificDRX, periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, @@ -9761,7 +9874,7 @@ module LibNGAP_Templates { } // End of template m_lTEV2XServicesAuthorized template (omit) LTEUESidelinkAggregateMaximumBitrate m_lTEUESidelinkAggregateMaximumBitrate( - in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate := PX_UE_SIDELINK_AGGREGATE_MAXIMUM_BIT_RATE, in template (omit) LTEUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit ) := { uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, @@ -10836,9 +10949,9 @@ module LibNGAP_Templates { template (value) PedestrianUE m_pedestrianUE(in PedestrianUE p_value := authorized) := p_value; template (omit) NRUESidelinkAggregateMaximumBitrate m_nRUESidelinkAggregateMaximumBitrate( - in template (value) BitRate p_uESidelinkAggregateMaximumBitRate, - in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) BitRate p_uESidelinkAggregateMaximumBitRate := PX_UE_SIDELINK_AGGREGATE_MAXIMUM_BIT_RATE, + in template (omit) NRUESidelinkAggregateMaximumBitrate.iE_Extensions p_iE_Extensions := omit + ) := { uESidelinkAggregateMaximumBitRate := p_uESidelinkAggregateMaximumBitRate, iE_Extensions := p_iE_Extensions } // End of template m_nRUESidelinkAggregateMaximumBitrate @@ -11076,7 +11189,7 @@ module LibNGAP_Templates { } // End of template m_pC5QoSParameters template (omit) PC5QoSFlowItem m_pC5QoSFlowItem( - in template (value) FiveQI p_pQI, + in template (value) FiveQI p_pQI := PX_FIVE_QI, in template (omit) PC5FlowBitRates p_pc5FlowBitRates := omit, in template (omit) Range p_range := omit, in template (omit) PC5QoSFlowItem.iE_Extensions p_iE_Extensions := omit @@ -13768,11 +13881,11 @@ module LibNGAP_Templates { template (value) TNLAssociationUsage m_TNLAssociationUsage(in TNLAssociationUsage p_value := ue) := p_value; template (omit) TooearlyIntersystemHO m_tooearlyIntersystemHO( - in template (value) EUTRA_CGI p_sourcecellID, - in template (value) NGRAN_CGI p_failurecellID, - in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, - in template (omit) TooearlyIntersystemHO.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) EUTRA_CGI p_sourcecellID, + in template (value) NGRAN_CGI p_failurecellID, + in template (omit) UERLFReportContainer p_uERLFReportContainer := omit, + in template (omit) TooearlyIntersystemHO.iE_Extensions p_iE_Extensions := omit + ) := { sourcecellID := p_sourcecellID, failurecellID := p_failurecellID, uERLFReportContainer := p_uERLFReportContainer, @@ -13780,12 +13893,12 @@ module LibNGAP_Templates { } // End of template m_tooearlyIntersystemHO template (omit) TraceActivation m_traceActivation( - in template (value) NGRANTraceID p_nGRANTraceID, - in template (value) InterfacesToTrace p_interfacesToTrace, - in template (value) TraceDepth p_traceDepth, - in template (value) TransportLayerAddress p_traceCollectionEntityIPAddress := PX_TRANSPORT_LAYER_ADDRESS, - in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) NGRANTraceID p_nGRANTraceID := PX_NGRAN_TRACE_ID, + in template (value) InterfacesToTrace p_interfacesToTrace := PX_INTERFACES_TO_TRACE, + in template (value) TraceDepth p_traceDepth, + in template (value) TransportLayerAddress p_traceCollectionEntityIPAddress := PX_TRANSPORT_LAYER_ADDRESS, + in template (omit) TraceActivation.iE_Extensions p_iE_Extensions := omit + ) := { nGRANTraceID := p_nGRANTraceID, interfacesToTrace := p_interfacesToTrace, traceDepth := p_traceDepth, -- GitLab From f1aaa336026c56ad8475c8a183579b6f96641ba3 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 09:55:11 +0200 Subject: [PATCH 254/365] Remove useless ',' --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 25b7950..fba5675 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1587,7 +1587,7 @@ module LibNGAP_Templates { in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, - in template (value) UESecurityCapabilities p_uESecurityCapabilities := m_uESecurityCapabilities, + in template (value) UESecurityCapabilities p_uESecurityCapabilities := m_uESecurityCapabilities ) := { procedureCode := id_UEContextModification, criticality := reject, @@ -1710,7 +1710,7 @@ module LibNGAP_Templates { id := id_RGLevelWirelineAccessCharacteristics, criticality := ignore, value_ := { RGLevelWirelineAccessCharacteristics := p_rGLevelWirelineAccessCharacteristics } - }, + } } } } -- GitLab From 3d84e150e1d14e2531a8b4bf21b1726e2249fe2c Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 29 May 2024 10:05:25 +0200 Subject: [PATCH 255/365] add TCs --- ttcn/AtsNGAP/NGAP_Pics.ttcn | 1 + ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 72 +++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 53 ++++++++++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 35 ++++++++++++ 4 files changed, 161 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_Pics.ttcn b/ttcn/AtsNGAP/NGAP_Pics.ttcn index 341b666..4706723 100644 --- a/ttcn/AtsNGAP/NGAP_Pics.ttcn +++ b/ttcn/AtsNGAP/NGAP_Pics.ttcn @@ -128,6 +128,7 @@ module NGAP_Pics { modulepar boolean PICS_A4_10_2 := false; //AMF - Trace procedure - TRACE FAILURE INDICATION messages modulepar boolean PICS_A4_10_3 := false; //AMF - Trace procedure - DEACTIVATE TRACE messages modulepar boolean PICS_A4_10_4 := false; //AMF - Trace procedure - CELL TRAFFIC TRACE messages + modulepar boolean PICS_A4_11_1 := false; //AMF - Location Reporting Procedures - LOCATION REPORTING CONTROL modulepar boolean PICS_A4_11_2 := false; //AMF - Location Reporting Procedures - LOCATION REPORTING FAILURE INDICATION modulepar boolean PICS_A4_11_3 := false; //AMF - Location Reporting Procedures - LOCATION REPORT modulepar boolean PICS_A4_12_1 := false; //AMF - TNLA procedure - UE TNLA BINDING RELEASE REQUEST messages diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index c742a64..ff8b8f3 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -2448,6 +2448,45 @@ module NGAP_TCFunctions { group Paging_Procedures{ //8.5.1 group Paging{ + + /** + * @desc Testcase function for TC_NGAP_AMF_PAG_01 + */ + function f_TC_NGAP_AMF_PAG_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger Paging!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_Paging( + mw_uEPagingIdentity_fiveG_S_TMSI( + mw_fiveG_S_TMSI(-,-,-,-) + ),{ + mw_tAIListForPagingItem( + mw_tAI(-,-,-) + )} + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + } + } // End of group Paging } // End of group Paging_Procedures //8.6 @@ -3418,6 +3457,39 @@ module NGAP_TCFunctions { group Location_Reporting_Procedures{ //8.12.1 group Location_Reporting_Control{ + + /** + * @desc Testcase function for TC_NGAP_AMF_LRP_01 + */ + function f_TC_NGAP_AMF_LRP_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger Location Reporting Control procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_LocationReportingControl(-,-,-) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_LRP_01 + } // End of group Location_Reporting_Control //8.12.2 group Location_Reporting_Failure_Indication{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 46afe25..7ad0e16 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1635,6 +1635,32 @@ module NGAP_TestCases { group Paging_Procedures{ //8.5.1 group Paging{ + + /** + * @desc "Verify that the IUT can send a PAGING message to enable the AMF to page a UE." + */ + testcase TC_NGAP_aMF_PAG_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_4_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_4_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_PAG_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + } // End of group Paging } // End of group Paging_Procedures //8.6 @@ -2172,6 +2198,33 @@ module NGAP_TestCases { group Location_Reporting_Procedures{ //8.12.1 group Location_Reporting_Control{ + + /** + * @desc "Verify that the IUT can send a LOCATION REPORTING CONTROL message that contains mandatory IEs to request a report of the UE's current location." + */ + testcase TC_NGAP_AMF_LRP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_11_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_11_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_LRP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } } // End of group Location_Reporting_Control //8.12.2 group Location_Reporting_Failure_Indication{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index dd4cc25..6237e88 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -6405,6 +6405,41 @@ module LibNGAP_Templates { group Send { } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.1 LOCATION REPORTING CONTROL + */ + template (present) InitiatingMessage mw_n2_LocationReportingControl( + template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct, + cell) //TODO: do we need PX here? + ) := { + procedureCode := id_LocationReportingControl, + criticality := ignore, + value_ := { + LocationReportingControl := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_LocationReportingRequestType, + criticality := ignore, + value_ := { id_LocationReportingRequestType := p_locationReportingRequestType} + } + } + } + } + } // End of template mw_n2_LocationReportingControl + } } //9.2.11.2 -- GitLab From 954462a3501edbe71e5606de4839f84f4b24e6b1 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 10:18:15 +0200 Subject: [PATCH 256/365] Restoring code lost by git :( --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 269 ++++++++---------------- 1 file changed, 85 insertions(+), 184 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 983ed67..74862b0 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3140,81 +3140,6 @@ module LibNGAP_Templates { id := id_GUAMI, criticality := reject, value_ := { GUAMI := p_gUAMI } - }, - { - id := id_RedirectionVoiceFallback, - criticality := ignore, - value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } - }, - { - id := id_CNAssistedRANTuning, - criticality := ignore, - value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } - }, - { - id := id_SRVCCOperationPossible, - criticality := ignore, - value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } - }, - { - id := id_Enhanced_CoverageRestriction, - criticality := ignore, - value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } - }, - { - id := id_UE_DifferentiationInfo, - criticality := ignore, - value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } - }, - { - id := id_NRV2XServicesAuthorized, - criticality := ignore, - value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } - }, - { - id := id_LTEV2XServicesAuthorized, - criticality := ignore, - value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } - }, - { - id := id_NRUESidelinkAggregateMaximumBitrate, - criticality := ignore, - value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } - }, - { - id := id_LTEUESidelinkAggregateMaximumBitrate, - criticality := ignore, - value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } - }, - { - id := id_PC5QoSParameters, - criticality := ignore, - value_ := { PC5QoSParameters := p_pC5QoSParameters } - }, - { - id := id_CEmodeBrestricted, - criticality := ignore, - value_ := { CEmodeBrestricted := p_cEmodeBrestricted } - }, - { - id := id_UE_UP_CIoT_Support, - criticality := ignore, - value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } - }, - { - id := id_ManagementBasedMDTPLMNList, - criticality := ignore, - value_ := { MDTPLMNList := p_mDTPLMNList } - }, - { - id := id_UERadioCapabilityID, - criticality := ignore, - value_ := { UERadioCapabilityID := p_uERadioCapabilityID } - }, - { - id := id_Extended_ConnectedTime, - criticality := ignore, - value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } } } } @@ -3340,6 +3265,81 @@ module LibNGAP_Templates { id := id_GUAMI, criticality := reject, value_ := { GUAMI := p_gUAMI } + }, + { + id := id_RedirectionVoiceFallback, + criticality := ignore, + value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } + }, + { + id := id_CNAssistedRANTuning, + criticality := ignore, + value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } + }, + { + id := id_SRVCCOperationPossible, + criticality := ignore, + value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } + }, + { + id := id_Enhanced_CoverageRestriction, + criticality := ignore, + value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } + }, + { + id := id_UE_DifferentiationInfo, + criticality := ignore, + value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } + }, + { + id := id_NRV2XServicesAuthorized, + criticality := ignore, + value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } + }, + { + id := id_LTEV2XServicesAuthorized, + criticality := ignore, + value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } + }, + { + id := id_NRUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } + }, + { + id := id_LTEUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } + }, + { + id := id_PC5QoSParameters, + criticality := ignore, + value_ := { PC5QoSParameters := p_pC5QoSParameters } + }, + { + id := id_CEmodeBrestricted, + criticality := ignore, + value_ := { CEmodeBrestricted := p_cEmodeBrestricted } + }, + { + id := id_UE_UP_CIoT_Support, + criticality := ignore, + value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } + }, + { + id := id_ManagementBasedMDTPLMNList, + criticality := ignore, + value_ := { MDTPLMNList := p_mDTPLMNList } + }, + { + id := id_UERadioCapabilityID, + criticality := ignore, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_Extended_ConnectedTime, + criticality := ignore, + value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } } } } @@ -3351,68 +3351,35 @@ module LibNGAP_Templates { group Receive { /** - * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.6 HANDOVER FAILURE */ - template (present) InitiatingMessage mw_n2_HandoverRequest( - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) HandoverType p_handoverType := ?, - template (present) Cause p_cause := ?, - template (present) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := ?, - template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, - template (present) SecurityContext p_securityContext := ?, - template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ?, - template (present) AllowedNSSAI p_allowedNSSAI := ?, - template (present) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer := ?, - template (present) GUAMI p_gUAMI := ? - ) := { - procedureCode := id_HandoverResourceAllocation, + template (present) UnsuccessfulOutcome mw_n2_HandoverFailure( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_HandoverPreparation, criticality := reject, value_ := { - HandoverRequest := { + HandoverFailure := { protocolIEs := { { id := id_AMF_UE_NGAP_ID, - criticality := reject, + criticality := ignore, value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, - { - id := id_HandoverType, - criticality := reject, - value_ := { HandoverType := p_handoverType } - }, { id := id_Cause, criticality := ignore, value_ := { Cause := p_cause } - }, - { - id := id_UEAggregateMaximumBitRate, - criticality := reject, - value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } - }, - { - id := id_UESecurityCapabilities, - criticality := reject, - value_ := { UESecurityCapabilities := p_uESecurityCapabilities } - }, - { - id := id_SecurityContext, - criticality := reject, - value_ := { SecurityContext := p_securityContext } - }, - { - id := id_PDUSessionResourceListHORqd, - criticality := reject, - value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } } } } } - } // End of template mw_n2_HandoverRequest + } // End of template mw_n2_HandoverFailure } // End of group Receive - } // End of group HANDOVER_REQUEST + } // End of group HANDOVER_FAILURE group HANDOVER_REQUEST_ACKNOWLEDGE { @@ -3492,72 +3459,6 @@ module LibNGAP_Templates { } // End of group HANDOVER_REQUEST_ACKNOWLEDGE - group HANDOVER_FAILURE { - - group Send { - - /** - * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.6 HANDOVER FAILURE - */ - template (value) UnsuccessfulOutcome m_n2_HandoverFailure( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_FAILURE) - ) := { - procedureCode := id_HandoverPreparation, - criticality := reject, - value_ := { - HandoverFailure := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := ignore, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_Cause, - criticality := ignore, - value_ := { Cause := p_cause } - } - } - } - } - } // End of template m_n2_HandoverFailure - - } // End of group Send - - group Receive { - - /** - * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.6 HANDOVER FAILURE - */ - template (present) UnsuccessfulOutcome mw_n2_HandoverFailure( - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) Cause p_cause := ? - ) := { - procedureCode := id_HandoverPreparation, - criticality := reject, - value_ := { - HandoverFailure := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := ignore, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_Cause, - criticality := ignore, - value_ := { Cause := p_cause } - } - } - } - } - } // End of template mw_n2_HandoverFailure - - } // End of group Receive - - } // End of group HANDOVER_FAILURE - group HANDOVER_NOTIFY { group Send { -- GitLab From fe4d4eb9de6e7da6bed193ee2d932bb7f0f26fa9 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 10:29:33 +0200 Subject: [PATCH 257/365] Add missimg parenthesis in TC_NGAP_AMF_PAG_01 --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 76 +------------------------------- 1 file changed, 2 insertions(+), 74 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 762fbdc..ba19967 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -33,79 +33,6 @@ module NGAP_TestCases { import from NGAP_TCFunctions all; import from NGAP_Pics all; - - group TC_testcase_template{ - - /** - * @desc Verify ... - *
-         * Pics Selection: 
-         * Configuration: 
-         *     
-         * 
- * - * @see ETSI TS - * @reference ETSI TS - */ - testcase TC_NGAP_gNB_or_aMF_testcaseName_01() runs on /*aMFNGAPComponent*/gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb_or_amf; //or v_ngap_amf - - var AdditionalDLUPTNLInformationForHOItem v_test, v_test1; - - // Test control - if (not PICS_NGAP_AMF_IUT) { - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up/*aMF_Up*/(v_ngap_gnb_or_amf); - - // Start - v_test := valueof( - m_additionalDLUPTNLInformationForHOItem( - m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel - ), - { - m_qosFlowItemWithDataForwarding( - -, - m_dataForwardingAccepted - ) - } - )); - v_test1 := valueof( - m_additionalDLUPTNLInformationForHOItem( - m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel - ), - { - m_qosFlowItemWithDataForwarding( - -, - m_dataForwardingAccepted, - m_qosFlowItemWithDataForwarding_id_CurrentQoSParaSetIndex( - m_alternativeQoSParaSetIndex - )) - }, - -, - m_additionalDLUPTNLInformationForHOItem_uPTransportLayerInformation( - m_uPTransportLayerInformation_gTPTunnel( - m_gTPTunnel - - )))); - v_ngap_gnb_or_amf.start(f_TC_NGAP_gNB_or_aMF_functionName_01()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_gNB_or_aMF_testcaseName_01 - - } // End of group TC_testcase_template - group gNB_Role{ /** @@ -2242,7 +2169,8 @@ module NGAP_TestCases { f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down/*gNBoraMF*/(); - + } // End of testcase TC_NGAP_aMF_PAG_01 + } // End of group Paging } // End of group Paging_Procedures //8.6 -- GitLab From 00c69d4f2bed4aec45adc1398a83b541965ab601 Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 29 May 2024 10:46:21 +0200 Subject: [PATCH 258/365] add function and template for TC_NGAP_GNB_CMP_13 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 35 +++++++++++-------------- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 6 ++--- 2 files changed, 19 insertions(+), 22 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 9e4af45..4871bec 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1390,8 +1390,8 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( - mw_ngap_succMsg( - mw_n2_UEContexModificationResponse + mw_ngap_succMsg( + mw_n2_UEContexModificationResponse )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); @@ -1419,38 +1419,35 @@ module NGAP_TCFunctions { // Body - /* f_send_NGAP_PDU( + f_send_NGAP_PDU( m_ngap_initMsg( m_n2_UEContextModificationRequest_optional2 ( -, // AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - -, // RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - - // RANPagingPriority p_rANPagingPriority, // RAN_Paging_Priority - // IndexToRFSP p_indexToRFSP, // Index_to_RAT_Frequency_Selection_Priority, + -, // RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + -, // RANPagingPriority p_rANPagingPriority, // RAN_Paging_Priority + -, // IndexToRFSP p_indexToRFSP, // Index_to_RAT_Frequency_Selection_Priority, m_uEAggregateMaximumBitRate, // UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, // UE_Aggregate_Maximum_Bit_Rate containing m_uESecurityCapabilities, // UESecurityCapabilities p_uESecurityCapabilities, // UE_Security_Capabilities containing - // EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator, + m_emergencyFallbackIndicator, // EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator, m_gUAMI, // GUAMI p_gUAMI, // New_GUAMI containing - // IAB_Authorized p_iAB_Authorized, // IAB_Authorized, + m_iAB_Authorized, // IAB_Authorized p_iAB_Authorized, // IAB_Authorized, m_pC5QoSParameters( { m_pC5QoSFlowItem } ),// PC5QoSParameters p_pC5QoSParameters, // PC5_QoS_Parameters containing -, // UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, // UE_Radio_Capability_ID, - // RGLevelWirelineAccessCharacteristics p_rGLevelWirelineAccessCharacteristics // RG_Level_Wireline_Access_Characteristics - - ( - - - ), - - - ))); */ - - /* + - // RGLevelWirelineAccessCharacteristics p_rGLevelWirelineAccessCharacteristics // RG_Level_Wireline_Access_Characteristics + ))); + f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_UEContextReleaseComplete + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) )); - */ + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 74862b0..5ce4213 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1625,8 +1625,8 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_UEContextModificationRequest_optional2( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) RANPagingPriority p_rANPagingPriority, // RAN_Paging_Priority - in template (value) IndexToRFSP p_indexToRFSP, // Index_to_RAT_Frequency_Selection_Priority, + in template (value) RANPagingPriority p_rANPagingPriority := 1, // RAN_Paging_Priority // TODO: do we need PIXIT here? + in template (value) IndexToRFSP p_indexToRFSP := 1, // Index_to_RAT_Frequency_Selection_Priority, // TODO: do we need PIXIT here? in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, // UE_Aggregate_Maximum_Bit_Rate containing in template (value) UESecurityCapabilities p_uESecurityCapabilities, // UE_Security_Capabilities containing in template (value) EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator, @@ -1634,7 +1634,7 @@ module LibNGAP_Templates { in template (value) IAB_Authorized p_iAB_Authorized, // IAB_Authorized, in template (value) PC5QoSParameters p_pC5QoSParameters, // PC5_QoS_Parameters containing in template (value) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, // UE_Radio_Capability_ID, - in template (value) RGLevelWirelineAccessCharacteristics p_rGLevelWirelineAccessCharacteristics // RG_Level_Wireline_Access_Characteristics + in template (value) RGLevelWirelineAccessCharacteristics p_rGLevelWirelineAccessCharacteristics := '00'O // RG_Level_Wireline_Access_Characteristics // TODO: do we need a PIXIT here? ) := { procedureCode := id_UEContextModification, criticality := reject, -- GitLab From b51e63c596772adadfcdedfa60b2c25746c9f9e5 Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 29 May 2024 10:51:59 +0200 Subject: [PATCH 259/365] bugfix template for TC_NGAP_GNB_CMP_13 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 4871bec..adc20ad 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1429,7 +1429,7 @@ module NGAP_TCFunctions { -, // IndexToRFSP p_indexToRFSP, // Index_to_RAT_Frequency_Selection_Priority, m_uEAggregateMaximumBitRate, // UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, // UE_Aggregate_Maximum_Bit_Rate containing m_uESecurityCapabilities, // UESecurityCapabilities p_uESecurityCapabilities, // UE_Security_Capabilities containing - m_emergencyFallbackIndicator, // EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator, + m_emergencyFallbackIndicator(emergency_fallback_requested), // EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator, m_gUAMI, // GUAMI p_gUAMI, // New_GUAMI containing m_iAB_Authorized, // IAB_Authorized p_iAB_Authorized, // IAB_Authorized, m_pC5QoSParameters( -- GitLab From ee75029d02fe34f25f1d55941498859955fe9459 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 29 May 2024 11:02:57 +0200 Subject: [PATCH 260/365] added tc_NTP01-02 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 420 +++++++++++++---------------- 1 file changed, 181 insertions(+), 239 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index f4a6c18..68ef6e1 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -2377,8 +2377,59 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_AMFConfigurationUpdate(//FIXME: prepare/update template IEs - PX_AMF_NAME//in template (value) AMFName p_aMFName := PX_AMF_NAME + m_n2_AMFConfigurationUpdate_tnl( + //NOTUSED in template (value) AMFName p_AMFName, + { m_servedGUAMIItem( + m_gUAMI( + PX_PLMN_IDENTITY, + PX_AMF_REGION_ID, + PX_AMF_SET_ID, + PX_AMF_POINTER, + -//in template (omit) GUAMI.iE_Extensions p_iE_Extensions := omit + ),//in template (value) GUAMI p_gUAMI, + -,//in template (omit) AMFName p_backupAMFName := omit, + -//in template (omit) ServedGUAMIItem.iE_Extensions p_iE_Extensions := omit + ) + },//in template (value) ServedGUAMIList p_servedGUAMIList, + //NOT USED in template (value) RelativeAMFCapacity p_relativeAMFCapacity, + { + m_pLMNSupportItem( + PX_PLMN_IDENTITY, + { + m_sliceSupportItem( + m_s_NSSAI( + PX_SST, + -,//in template (omit) SD p_sD := omit, + -//in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ), + -//in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) + },//in template (value) SliceSupportList p_sliceSupportList, + -//in template (omit) PLMNSupportItem.iE_Extensions p_iE_Extensions := omit + ) + },//in template (value) PLMNSupportList p_pLMNSupportList, + { + m_aMF_TNLAssociationToAddItem( + m_cPTransportLayerInformation_endpointIPAddress( + PX_TRANSPORT_LAYER_ADDRESS + ),//in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + 0,//in template (value) TNLAddressWeightFactor p_tNLAddressWeightFactor,TNLAddressWeightFactor ::= INTEGER (0..255) + -,//in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, + -//in template (omit) AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := omit + ) + },//in template (value) AMF_TNLAssociationToAddList p_aMF_TNLAssociationToAddList, + //NOT USED in template (value) AMF_TNLAssociationToRemoveList p_aMF_TNLAssociationToRemoveList, + { + m_aMF_TNLAssociationToUpdateItem( + m_cPTransportLayerInformation_endpointIPAddress( + PX_TRANSPORT_LAYER_ADDRESS + ),//in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + -,//in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, + -,//in template (omit) TNLAddressWeightFactor p_tNLAddressWeightFactor := omit, + -//in template (omit) AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := omit + ) + }//in template (value) AMF_TNLAssociationToUpdateList p_aMF_TNLAssociationToUpdateList//, + //NOT USED in template (value) Extended_AMFName p_extended_AMFName ) ) ); @@ -2417,9 +2468,60 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_AMFConfigurationUpdate(//FIXME: prepare/update template IEs - PX_AMF_NAME//in template (value) AMFName p_aMFName := PX_AMF_NAME - ) + m_n2_AMFConfigurationUpdate_tnl( + //NOTUSED in template (value) AMFName p_AMFName, + { m_servedGUAMIItem( + m_gUAMI( + PX_PLMN_IDENTITY, + PX_AMF_REGION_ID, + PX_AMF_SET_ID, + PX_AMF_POINTER, + -//in template (omit) GUAMI.iE_Extensions p_iE_Extensions := omit + ),//in template (value) GUAMI p_gUAMI, + -,//in template (omit) AMFName p_backupAMFName := omit, + -//in template (omit) ServedGUAMIItem.iE_Extensions p_iE_Extensions := omit + ) + },//in template (value) ServedGUAMIList p_servedGUAMIList, + //NOT USED in template (value) RelativeAMFCapacity p_relativeAMFCapacity, + { + m_pLMNSupportItem( + PX_PLMN_IDENTITY, + { + m_sliceSupportItem( + m_s_NSSAI( + PX_SST, + -,//in template (omit) SD p_sD := omit, + -//in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ), + -//in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) + },//in template (value) SliceSupportList p_sliceSupportList, + -//in template (omit) PLMNSupportItem.iE_Extensions p_iE_Extensions := omit + ) + },//in template (value) PLMNSupportList p_pLMNSupportList, + { + m_aMF_TNLAssociationToAddItem( + m_cPTransportLayerInformation_endpointIPAddress( + PX_TRANSPORT_LAYER_ADDRESS + ),//in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + 0,//in template (value) TNLAddressWeightFactor p_tNLAddressWeightFactor,TNLAddressWeightFactor ::= INTEGER (0..255) + -,//in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, + -//in template (omit) AMF_TNLAssociationToAddItem.iE_Extensions p_iE_Extensions := omit + ) + },//in template (value) AMF_TNLAssociationToAddList p_aMF_TNLAssociationToAddList, + //NOT USED in template (value) AMF_TNLAssociationToRemoveList p_aMF_TNLAssociationToRemoveList, + { + m_aMF_TNLAssociationToUpdateItem( + m_cPTransportLayerInformation_endpointIPAddress( + PX_TRANSPORT_LAYER_ADDRESS + ),//in template (value) CPTransportLayerInformation p_aMF_TNLAssociationAddress, + -,//in template (omit) TNLAssociationUsage p_tNLAssociationUsage := omit, + -,//in template (omit) TNLAddressWeightFactor p_tNLAddressWeightFactor := omit, + -//in template (omit) AMF_TNLAssociationToUpdateItem.iE_Extensions p_iE_Extensions := omit + ) + }//in template (value) AMF_TNLAssociationToUpdateList p_aMF_TNLAssociationToUpdateList//, + //NOT USED in template (value) Extended_AMFName p_extended_AMFName + ) ) ); @@ -2827,6 +2929,79 @@ module NGAP_TCFunctions { } // End of group Warning_Message_Transmission_Procedures //8.10 group NRPPa_Transport_Procedures{ + + /** + * @desc Testcase function for TC_NGAP_gNB_NTP_01 + */ + function f_TC_NGAP_GNB_NTP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger NRPPA transport procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + ? + // /*mw*/m_n2_PWSFailureIndication( //missing template + // ?,//in template (value) PWSFailedCellList p_pWSFailedCellList, + // ?//in template (value) GlobalRANNodeID p_globalRANNodeID + // ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_NTP_01 + + /** + * @desc Testcase function for TC_NGAP_gNB_NTP_02 + */ + function f_TC_NGAP_GNB_NTP_02() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger NRPPA transport procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + ? + // /*mw*/m_n2_PWSFailureIndication( //missing template + // ?,//in template (value) PWSFailedCellList p_pWSFailedCellList, + // ?//in template (value) GlobalRANNodeID p_globalRANNodeID + // ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_NTP_02 + } // End of group NRPPa_Transport_Procedures //8.11 group Trace_Procedures{ @@ -3401,267 +3576,34 @@ module NGAP_TCFunctions { group UE_Mobility_Management_Procedures{ //8.4.1 group Handover_Preparation{ - - /** - * @desc Testcase function for TC_NGAP_aMF_MMP_01 - */ - function f_TC_NGAP_AMF_MMP_01() runs on gNBNGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Body - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_AMF(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_MMP_01 - - /** - * @desc Testcase function for TC_NGAP_aMF_MMP_02 - */ - function f_TC_NGAP_AMF_MMP_02() runs on gNBNGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Body - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_AMF(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_MMP_02 - } // End of group Handover_Preparation //8.4.2 group Handover_Resource_Allocation{ - - /** - * @desc Testcase function for TC_NGAP_aMF_MMP_03 - */ - function f_TC_NGAP_AMF_MMP_03() runs on gNBNGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Body - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_AMF(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_MMP_03 - } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ - - /** - * @desc Testcase function for TC_NGAP_aMF_MMP_04 - */ - function f_TC_NGAP_AMF_MMP_04() runs on gNBNGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Body - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_AMF(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_MMP_04 - - /** - * @desc Testcase function for TC_NGAP_aMF_MMP_05 - */ - function f_TC_NGAP_AMF_MMP_05() runs on gNBNGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Body - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_AMF(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_MMP_05 - } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ - - /** - * @desc Testcase function for TC_NGAP_aMF_MMP_06 - */ - function f_TC_NGAP_AMF_MMP_06() runs on gNBNGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Body - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_AMF(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_MMP_06 - } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ - - /** - * @desc Testcase function for TC_NGAP_aMF_MMP_07 - */ - function f_TC_NGAP_AMF_MMP_07() runs on gNBNGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Body - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_AMF(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_MMP_07 - } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ - - /** - * @desc Testcase function for TC_NGAP_aMF_MMP_08 - */ - function f_TC_NGAP_AMF_MMP_08() runs on gNBNGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Body - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_AMF(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_MMP_08 - } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ - - - /** - * @desc Testcase function for TC_NGAP_aMF_MMP_09 - */ - function f_TC_NGAP_AMF_MMP_09() runs on gNBNGAPComponent { - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - // Body - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_AMF(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_MMP_09 - - } // End of group Downlink_RAN_Early_Status_Transfer + } // End of group Downlink_RAN_Early_Status_Transfer } // End of group UE_Mobility_Management_Procedures //8.5 group Paging_Procedures{ -- GitLab From c90aa5c401fb6302c217bff7af453353b49f26fd Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 29 May 2024 11:03:19 +0200 Subject: [PATCH 261/365] added tc_NTP01-02 --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 306 ++++++------------------------- 1 file changed, 55 insertions(+), 251 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 7c75c79..0ce53dd 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1585,6 +1585,61 @@ module NGAP_TestCases { //8.10 group NRPPa_Transport_Procedures{ + + /** + * @desc "Verify that the IUT can send a UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + */ + testcase TC_NGAP_GNB_NTP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_9_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_9_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_NTP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_NTP_01 + + /** + * @desc "Verify that the IUT can send a UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + */ + testcase TC_NGAP_GNB_NTP_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_9_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_9_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_NTP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_NTP_02 + } // End of group NRPPa_Transport_Procedures //8.11 group Trace_Procedures{ @@ -1933,285 +1988,34 @@ module NGAP_TestCases { group UE_Mobility_Management_Procedures{ //8.4.1 group Handover_Preparation{ - - /** - * @desc "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER COMMAND with successfully handover." - */ - testcase TC_NGAP_AMF_MMP_01() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_1)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_1' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_01()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_MMP_01 - - /** - * @desc "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER PREPARATION FAILURE because the UE is not longer available." - */ - testcase TC_NGAP_AMF_MMP_02() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_1)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_1' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_02()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_MMP_02 - } // End of group Handover_Preparation //8.4.2 group Handover_Resource_Allocation{ - - /** - * @desc "Verify that the AMF node successfully sends a HANDOVER REQUEST message that contains mandatory IEs to the GNB." - */ - testcase TC_NGAP_AMF_MMP_03() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_2)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_2' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_03()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_MMP_03 - } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ - - /** - * @desc "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and answers with PATH SWITCH REQUEST ACKNOWLEDGE to acknowledge the path switch." - */ - testcase TC_NGAP_AMF_MMP_04() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_4)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_4' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_04()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_MMP_04 - - /** - * @desc "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with same ID and answers with PATH SWITCH REQUEST FAILURE." - */ - testcase TC_NGAP_AMF_MMP_05() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_4)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_4' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_05()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_MMP_05 - } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ - - /** - * @desc "Verify that the AMF node successfully processes a HANDOVER CANCEL message that contains mandatory IEs and answers with HANDOVER CANCEL ACKNOWLEDGE to confirm that the ongoing handover was cancelled." - */ - testcase TC_NGAP_AMF_MMP_06() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_5)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_5' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_06()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_MMP_06 - } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ - - /** - * @desc "Verify that the AMF node successfully sends a DOWNLINK RAN STATUS TRANSFER message that contains mandatory IEs." - */ - testcase TC_NGAP_AMF_MMP_07() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_6)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_6' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_07()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_MMP_07 - } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ - - /** - * @desc "Verify that the NG-RAN node successfully sends a Handover Success message to the AMF." - */ - testcase TC_NGAP_AMF_MMP_08() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A3_3_8)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A3_3_8' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_08()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_MMP_08 - } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ - - /** - * @desc "Verify that the AMF node successfully sends a DOWNLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." - */ - testcase TC_NGAP_AMF_MMP_09() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_9)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_9' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_09()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_MMP_09 - } // End of group Downlink_RAN_Early_Status_Transfer - } // End of group UE_Mobility_Management_Procedures //8.5 group Paging_Procedures{ -- GitLab From 17f960da417c13664b4e3e7dab624e3439c6670e Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 29 May 2024 11:20:23 +0200 Subject: [PATCH 262/365] add testcase and function TC_NGAP_GNB_CMP_14 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 40 ++++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 28 +++++++++++++++++++++ 2 files changed, 68 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index adc20ad..3be6ce1 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1462,6 +1462,46 @@ module NGAP_TCFunctions { } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_14 + */ + function f_TC_NGAP_GNB_CMP_14() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + // TODO: isTransitioningTo the RRC_INACTIVE + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a RRC inactive transition report"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_RRCInactiveTransitionReport + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + m_rRCState, + ? + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_14 + } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index ba19967..83a1779 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -629,6 +629,34 @@ module NGAP_TestCases { } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ + + /** + * @desc Test objective "Verify that the IUT can send a RRC INACTIVE TRANSITION REPORT that contains mandatory IEs" + */ + testcase TC_NGAP_GNB_CMP_14() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_14()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_14 + } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ -- GitLab From cf87009a5092aa95ad69b623d7bf3a7411d4ab85 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 11:29:27 +0200 Subject: [PATCH 263/365] Add Up/Down link [Non] UEAssociatedNRPPaTransport tamplates --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 2 + ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 333 +++++++++++++++++++++--- 2 files changed, 306 insertions(+), 29 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 22ca5e3..f95817f 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -430,6 +430,8 @@ module LibNGAP_Pixits { modulepar FiveQI PX_FIVE_QI; + modulepar bitstring PX_GNB_ID; + /** * @desc eNB Identity. * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 5ce4213..7b95977 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -6371,19 +6371,19 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.5 PWS RESTART INDICATION */ - /*template (value) UnsuccessfulOutcome m_n2_PWSFailureIndication( - in template (value) PWSFailedCellList p_pWSFailedCellList, - in template (value) GlobalRANNodeID p_globalRANNodeID - ) := { + template (value) InitiatingMessage m_n2_PWSFailureIndication( + in template (value) PWSFailedCellIDList p_pWSFailedCellIDList, + in template (value) GlobalRANNodeID p_globalRANNodeID + ) := { procedureCode := id_PWSRestartIndication, criticality := ignore, value_ := { PWSFailureIndication := { protocolIEs := { { - id := id_PWSFailedCellList, + id := id_PWSFailedCellIDList, criticality := reject, - value_ := { PWSFailedCellList := p_pWSFailedCellList } + value_ := { PWSFailedCellIDList := p_pWSFailedCellIDList } }, { id := id_GlobalRANNodeID, @@ -6393,12 +6393,39 @@ module LibNGAP_Templates { } } } - }*/ // End of template m_n2_PWSFailureIndication + } // End of template m_n2_PWSFailureIndication } // End of group Send group Receive { + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.8.5 PWS RESTART INDICATION + */ + template (present) InitiatingMessage mw_n2_PWSFailureIndication( + template (present) PWSFailedCellIDList p_pWSFailedCellIDList := ?, + template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) := { + procedureCode := id_PWSRestartIndication, + criticality := ignore, + value_ := { + PWSFailureIndication := { + protocolIEs := { + { + id := id_PWSFailedCellIDList, + criticality := reject, + value_ := { PWSFailedCellIDList := p_pWSFailedCellIDList } + }, + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + } + } + } + } + } // End of template mw_n2_PWSFailureIndication + } // End of group Receive } // End of group PWS_FAILURE_INDICATION @@ -6410,29 +6437,277 @@ module LibNGAP_Templates { //9.2.9.1 group DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.1 DOWNLINK UE ASSOCIATED NRPPA TRANSPORT + */ + template (value) InitiatingMessage m_n2_DownlinkUEAssociatedNRPPaTransport( + in template (value) AMF_UE_NGAP_ID p_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID, + in template (value) RoutingID p_routingID, + in template (value) NRPPa_PDU p_nRPPa_PDU + ) := { + procedureCode := id_DownlinkUEAssociatedNRPPaTransport, + criticality := ignore, + value_ := { + DownlinkUEAssociatedNRPPaTransport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_AMF_UE_NGAP_ID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } + }, + { + id := id_RoutingID, + criticality := reject, + value_ := { RoutingID := p_routingID } + }, + { + id := id_NRPPa_PDU, + criticality := reject, + value_ := { NRPPa_PDU := p_nRPPa_PDU } + } + } + } + } + } // End of template m_n2_DownlinkUEAssociatedNRPPaTransport + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.1 DOWNLINK UE ASSOCIATED NRPPA TRANSPORT + */ + template (present) InitiatingMessage mw_n2_DownlinkUEAssociatedNRPPaTransport( + template (present) AMF_UE_NGAP_ID p_AMF_UE_NGAP_ID := ?, + template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ?, + template (present) RoutingID p_routingID := ?, + template (present) NRPPa_PDU p_nRPPa_PDU := ? + ) := { + procedureCode := id_DownlinkUEAssociatedNRPPaTransport, + criticality := ignore, + value_ := { + DownlinkUEAssociatedNRPPaTransport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_AMF_UE_NGAP_ID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } + }, + { + id := id_RoutingID, + criticality := reject, + value_ := { RoutingID := p_routingID } + }, + { + id := id_NRPPa_PDU, + criticality := reject, + value_ := { NRPPa_PDU := p_nRPPa_PDU } + } + } + } + } + } // End of template mw_n2_DownlinkUEAssociatedNRPPaTransport + } } //9.2.9.2 group UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.2 UPLINK UE ASSOCIATED NRPPA TRANSPORT + */ + template (value) InitiatingMessage m_n2_UplinkUEAssociatedNRPPaTransport( + in template (value) RoutingID p_routingID, + in template (value) NRPPa_PDU p_nRPPa_PDU + ) := { + procedureCode := id_UplinkUEAssociatedNRPPaTransport, + criticality := ignore, + value_ := { + UplinkUEAssociatedNRPPaTransport := { + protocolIEs := { + { + id := id_RoutingID, + criticality := reject, + value_ := { RoutingID := p_routingID } + }, + { + id := id_NRPPa_PDU, + criticality := reject, + value_ := { NRPPa_PDU := p_nRPPa_PDU } + } + } + } + } + } // End of template m_n2_UplinkUEAssociatedNRPPaTransport + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.2 UPLINK UE ASSOCIATED NRPPA TRANSPORT + */ + template (present) InitiatingMessage mw_n2_UplinkUEAssociatedNRPPaTransport( + template (present) RoutingID p_routingID := ?, + template (present) NRPPa_PDU p_nRPPa_PDU := ? + ) := { + procedureCode := id_UplinkUEAssociatedNRPPaTransport, + criticality := ignore, + value_ := { + UplinkUEAssociatedNRPPaTransport := { + protocolIEs := { + { + id := id_RoutingID, + criticality := reject, + value_ := { RoutingID := p_routingID } + }, + { + id := id_NRPPa_PDU, + criticality := reject, + value_ := { NRPPa_PDU := p_nRPPa_PDU } + } + } + } + } + } // End of template mw_n2_UplinkUEAssociatedNRPPaTransport + } } //9.2.9.3 group DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.3 DOWNLINK NON UE ASSOCIATED NRPPA TRANSPORT + */ + template (value) InitiatingMessage m_n2_DownlinkNonUEAssociatedNRPPaTransport( + in template (value) RoutingID p_routingID, + in template (value) NRPPa_PDU p_nRPPa_PDU + ) := { + procedureCode := id_DownlinkNonUEAssociatedNRPPaTransport, + criticality := ignore, + value_ := { + DownlinkNonUEAssociatedNRPPaTransport := { + protocolIEs := { + { + id := id_RoutingID, + criticality := reject, + value_ := { RoutingID := p_routingID } + }, + { + id := id_NRPPa_PDU, + criticality := reject, + value_ := { NRPPa_PDU := p_nRPPa_PDU } + } + } + } + } + } // End of template m_n2_DownlinkNonUEAssociatedNRPPaTransport + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.1 DOWNLINK UE ASSOCIATED NRPPA TRANSPORT + */ + template (present) InitiatingMessage mw_n2_DownlinkNonUEAssociatedNRPPaTransport( + template (present) RoutingID p_routingID := ?, + template (present) NRPPa_PDU p_nRPPa_PDU := ? + ) := { + procedureCode := id_DownlinkNonUEAssociatedNRPPaTransport, + criticality := ignore, + value_ := { + DownlinkNonUEAssociatedNRPPaTransport := { + protocolIEs := { + { + id := id_RoutingID, + criticality := reject, + value_ := { RoutingID := p_routingID } + }, + { + id := id_NRPPa_PDU, + criticality := reject, + value_ := { NRPPa_PDU := p_nRPPa_PDU } + } + } + } + } + } // End of template mw_n2_DownlinkNonUEAssociatedNRPPaTransport + } } //9.2.9.4 group UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.4 UPLINK NON UE ASSOCIATED NRPPA TRANSPORT + */ + template (value) InitiatingMessage m_n2_UplinkNonUEAssociatedNRPPaTransport( + in template (value) RoutingID p_routingID, + in template (value) NRPPa_PDU p_nRPPa_PDU + ) := { + procedureCode := id_UplinkNonUEAssociatedNRPPaTransport, + criticality := ignore, + value_ := { + UplinkNonUEAssociatedNRPPaTransport := { + protocolIEs := { + { + id := id_RoutingID, + criticality := reject, + value_ := { RoutingID := p_routingID } + }, + { + id := id_NRPPa_PDU, + criticality := reject, + value_ := { NRPPa_PDU := p_nRPPa_PDU } + } + } + } + } + } // End of template m_n2_UplinkNonUEAssociatedNRPPaTransport + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.4 UPLINK NON UE ASSOCIATED NRPPA TRANSPORT + */ + template (present) InitiatingMessage mw_n2_UplinkNonUEAssociatedNRPPaTransport( + template (present) RoutingID p_routingID := ?, + template (present) NRPPa_PDU p_nRPPa_PDU := ? + ) := { + procedureCode := id_UplinkNonUEAssociatedNRPPaTransport, + criticality := ignore, + value_ := { + UplinkNonUEAssociatedNRPPaTransport := { + protocolIEs := { + { + id := id_RoutingID, + criticality := reject, + value_ := { RoutingID := p_routingID } + }, + { + id := id_NRPPa_PDU, + criticality := reject, + value_ := { NRPPa_PDU := p_nRPPa_PDU } + } + } + } + } + } // End of template mw_n2_UplinkNonUEAssociatedNRPPaTransport + } } } // End of group NRPPa_Transport_Messages @@ -6935,7 +7210,7 @@ module LibNGAP_Templates { { id := id_LocationReportingRequestType, criticality := ignore, - value_ := { id_LocationReportingRequestType := p_locationReportingRequestType} + value_ := { LocationReportingRequestType := p_locationReportingRequestType} } } } @@ -8712,10 +8987,10 @@ module LibNGAP_Templates { } // End of template m_globalCable_ID_new template (omit) GlobalGNB_ID m_ie_globalGnbId( - in template (value) PLMNIdentity p_plmnId := PX_PLMN_IDENTITY, - in template (value) bitstring p_gnbId, - in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) PLMNIdentity p_plmnId := PX_PLMN_IDENTITY, + in template (value) bitstring p_gnbId := PX_GNB_ID, + in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + ) := { pLMNIdentity := p_plmnId,//'010001'O, gNB_ID := { gNB_ID := p_gnbId/*'0000000000000000000000'B*/}, iE_Extensions := p_iE_Extensions @@ -11299,9 +11574,9 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceItemCxtRelCpl_id_PDUSessionResourceReleaseResponseTransfer template (omit) PDUSessionResourceItemCxtRelReq m_pDUSessionResourceItemCxtRelReq( - in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, - in template (omit) PDUSessionResourceItemCxtRelReq.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) PDUSessionID p_pDUSessionID := PX_PDU_SESSION_ID, + in template (omit) PDUSessionResourceItemCxtRelReq.iE_Extensions p_iE_Extensions := omit + ) := { pDUSessionID := p_pDUSessionID, iE_Extensions := p_iE_Extensions } // End of template m_pDUSessionResourceItemCxtRelReq @@ -13726,38 +14001,38 @@ module LibNGAP_Templates { } // End of template m_targetNSSAIInformation template (omit) TargetRANNodeID m_targetRANNodeID( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) TAI p_selectedTAI, - in template (omit) TargetRANNodeID.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) TargetRANNodeID.iE_Extensions p_iE_Extensions := omit + ) := { globalRANNodeID := p_globalRANNodeID, selectedTAI := p_selectedTAI, iE_Extensions := p_iE_Extensions } // End of template m_targetRANNodeID template (omit) TargetRANNodeID_RIM m_targetRANNodeID_RIM( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) TAI p_selectedTAI, - in template (omit) TargetRANNodeID_RIM.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) TargetRANNodeID_RIM.iE_Extensions p_iE_Extensions := omit + ) := { globalRANNodeID := p_globalRANNodeID, selectedTAI := p_selectedTAI, iE_Extensions := p_iE_Extensions } // End of template m_targetRANNodeID_RIM template (omit) TargetRANNodeID_SON m_targetRANNodeID_SON( - in template (value) GlobalRANNodeID p_globalRANNodeID, - in template (value) TAI p_selectedTAI, - in template (omit) TargetRANNodeID_SON.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) TAI p_selectedTAI, + in template (omit) TargetRANNodeID_SON.iE_Extensions p_iE_Extensions := omit + ) := { globalRANNodeID := p_globalRANNodeID, selectedTAI := p_selectedTAI, iE_Extensions := p_iE_Extensions } // End of template m_targetRANNodeID_SON template (value) TargetRANNodeID_SON.iE_Extensions m_targetRANNodeID_SON_id_NR_CGI( - in template (value) NR_CGI p_nR_CGI - ) := { + in template (value) NR_CGI p_nR_CGI + ) := { { id := id_NR_CGI, criticality := ignore, -- GitLab From f2cb200808e5b9aef1b0bcb2595ca60bcb1189b4 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 11:30:51 +0200 Subject: [PATCH 264/365] Implement f_TC_NGAP_AMF_MMP_01/02 --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 7 ++++ ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 61 ++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index dea2e43..ca7e70f 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -252,6 +252,13 @@ module NGAP_Steps { //FIXME: Implementation of UE registration } // End of function f_NGAP_gnb_UE_Register + /** + * @desc + */ + function f_NGAP_gnb_UE_Not_Available() runs on NGAPComponent { + //FIXME: Implementation of UE registration + } // End of function f_NGAP_gnb_UE_Not_Available + /** * @desc */ diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 3be6ce1..dab8999 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3468,6 +3468,39 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_HandoverRequired( + -, -, -, -, + m_targetID_targetRANNodeID( + m_targetRANNodeID( + m_globalRANNodeID_globalGNB_ID( + m_ie_globalGnbId( + -, + PX_GNB_ID + )), + m_tAI + )), + { + m_pDUSessionResourceItemHORqd( + -, + ''O // FIXME FSCOM Shall be bit2oct(encvalue(???)) + ) + }, + ''O // FIXME FSCOM Shall be bit2oct(encvalue(???)) + ))); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_HandoverCommand( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + -, + ?/* FIXME FSCOM { + m_pDUSessionResourceHandoverItem( + bit2oct(encvalue(m_handoverCommandTransfer(???)))) + }*/ + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -3493,6 +3526,34 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_NGAP_gnb_UE_Not_Available(); + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_HandoverRequired( + -, -, -, -, + m_targetID_targetRANNodeID( + m_targetRANNodeID( + m_globalRANNodeID_globalGNB_ID( + m_ie_globalGnbId( + -, + PX_GNB_ID + )), + m_tAI + )), + { + m_pDUSessionResourceItemHORqd( + -, + ''O // FIXME FSCOM Shall be bit2oct(encvalue(???)) + ) + }, + ''O // FIXME FSCOM Shall be bit2oct(encvalue(???)) + ))); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_HandoverFailure( + PX_AMF_UE_NGAP_ID + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From d75a63110bbf0a52a5d8b5ff6bd1e6fdfd20483c Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 29 May 2024 11:38:06 +0200 Subject: [PATCH 265/365] add testcase and function TC_NGAP_GNB_CMP_15 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 41 ++++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 28 ++++++++++++++++++++ 2 files changed, 69 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index dab8999..086022a 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1511,6 +1511,47 @@ module NGAP_TCFunctions { } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_15 + */ + function f_TC_NGAP_GNB_CMP_15() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a RAN CP relocation indication procedure"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_RANCPRelocationIndication + ( + PX_RAN_UE_NGAP_ID, + ?, + ?, + ?, + ? + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_15 + } // End of group RAN_CP_Relocation_Indication //8.3.9 group Retrieve_UE_Information{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 83a1779..bc92a27 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -666,6 +666,34 @@ module NGAP_TestCases { } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ + + /** + * @desc Test objective "Verify that the IUT can send a RAN CP Relocation Indication that contains mandatory IEs" + */ + testcase TC_NGAP_GNB_CMP_15() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_8)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_8' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_15()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_15 + } // End of group RAN_CP_Relocation_Indication //8.3.9 group Retrieve_UE_Information{ -- GitLab From f106a9577b63db58f3c66e0fb9619dc614519790 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 29 May 2024 11:54:53 +0200 Subject: [PATCH 266/365] add TC_NGAP_GNB_LRP_02 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 37 +++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 28 +++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 82 +++++++++++++++++++++++-- 3 files changed, 143 insertions(+), 4 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 9e4af45..41b7c86 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3010,6 +3010,43 @@ module NGAP_TCFunctions { } // End of group Location_Reporting_Failure_Indication //8.12.3 group Location_Report{ + + /** + * @desc Testcase function for TC_NGAP_GNB_TRP_03 + */ + function f_TC_NGAP_GNB_LRP_02() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_LocationReportingControl(-,-,-) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_LocationReport(-,-,-,-) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_LRP_03 + } // End of group Location_Report } // End of group Location_Reporting_Procedures //8.13 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index ba19967..b74a3b4 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1622,6 +1622,34 @@ module NGAP_TestCases { } // End of group Location_Reporting_Failure_Indication //8.12.3 group Location_Report{ + + /** + * @desc "Verify that the IUT can send a LOCATION REPORT message that contains mandatory IEs to provide the UE's current location." + */ + testcase TC_NGAP_GNB_LRP_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_11_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_11_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_LRP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_LRP_02 + } // End of group Location_Report } // End of group Location_Reporting_Procedures //8.13 diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 74862b0..dc61e86 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -6905,6 +6905,41 @@ module LibNGAP_Templates { //9.2.11.1 group LOCATION_REPORTING_CONTROL{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.1 LOCATION REPORTING CONTROL + */ + template (value) InitiatingMessage m_n2_LocationReportingControl( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct, + cell) //TODO: do we need PX here? + ) := { + procedureCode := id_LocationReportingControl, + criticality := ignore, + value_ := { + LocationReportingControl := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_LocationReportingRequestType, + criticality := ignore, + value_ := { id_LocationReportingRequestType := p_locationReportingRequestType} + } + } + } + } + } // End of template m_n2_LocationReportingControl + } group Receive { @@ -6912,10 +6947,9 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.1 LOCATION REPORTING CONTROL */ template (present) InitiatingMessage mw_n2_LocationReportingControl( - template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct, - cell) //TODO: do we need PX here? + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) LocationReportingRequestType p_locationReportingRequestType := ? ) := { procedureCode := id_LocationReportingControl, criticality := ignore, @@ -6956,6 +6990,46 @@ module LibNGAP_Templates { group Send { } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.3 LOCATION REPORT + */ + template (present) InitiatingMessage mw_n2_LocationReport( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) UserLocationInformation p_userLocationInformation := ?, + template (present) LocationReportingRequestType p_locationReportingRequestType := ? + ) := { + procedureCode := id_LocationReport, + criticality := ignore, + value_ := { + LocationReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { id_LocationReportingRequestType := p_userLocationInformation} + }, + { + id := id_LocationReportingRequestType, + criticality := ignore, + value_ := { id_LocationReportingRequestType := p_locationReportingRequestType} + } + } + } + } + } // End of template mw_n2_LocationReport + } } } // End of group Location_Reporting_Messages -- GitLab From ca0a93a5387c3a95a90d37519105a88fbe8b20f9 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 29 May 2024 12:00:20 +0200 Subject: [PATCH 267/365] added tc_URP01-03, DRP01 --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 112 +++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 0ce53dd..1b81ae7 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1762,18 +1762,130 @@ module NGAP_TestCases { group UE_Radio_Capability_Management_Procedures{ //8.14.1 group UE_Radio_Capability_Info_Indication{ + + /** + * @desc Test objective "Verify that the IUT can send a UE_RADIO_CAPABILITY_INFO_INDICATION." + */ + testcase TC_NGAP_GNB_URP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_13_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_13_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_URP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_URP_01 + } // End of group UE_Radio_Capability_Info_Indication //8.14.2 group UE_Radio_Capability_Check{ + + /** + * @desc Test objective "Verify that the IUT can send a UE RADIO CAPABILITY CHECK RESPONSE message that contains mandatory IEs to provide the UE radio capabilities." + */ + testcase TC_NGAP_GNB_URP_02() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_13_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_13_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_URP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_URP_02 + } // End of group UE_Radio_Capability_Check //8.14.3 group UE_Radio_Capability_ID_Mapping{ + + /** + * @desc Test objective "Verify that the IUT can send a UE RADIO CAPABILITY ID MAPPING REQUEST." + */ + testcase TC_NGAP_GNB_URP_03() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_13_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_13_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_URP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_URP_03 + } // End of group UE_Radio_Capability_ID_Mapping } // End of group UE_Radio_Capability_Management_Procedures //8.15 group Data_Usage_Reporting_Procedures{ //8.15.1 group Secondary_RAT_Data_Usage_Report{ + + /** + * @desc Test objective "Verify that the IUT can send a SECONDARY RAT DATA USAGE REPORT." + */ + testcase TC_NGAP_GNB_DRP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_14_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_14_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_DRP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_DRP_01 + } // End of group Secondary_RAT_Data_Usage_Report } // End of group Data_Usage_Reporting_Procedures //8.16 -- GitLab From fea193d05a9bd476bd33da1d2fb1299f0685004d Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 29 May 2024 12:00:36 +0200 Subject: [PATCH 268/365] added tc_URP01-03, DRP01 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 168 +++++++++++++++++++++++++++++ 1 file changed, 168 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 68ef6e1..75ae7c2 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3182,18 +3182,186 @@ module NGAP_TCFunctions { group UE_Radio_Capability_Management_Procedures{ //8.14.1 group UE_Radio_Capability_Info_Indication{ + + /** + * @desc Testcase function for TC_NGAP_gNB_URP_01 + */ + function f_TC_NGAP_GNB_URP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + //f_NGAP_amf_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // action("Trigger CELL TRAFFIC TRACE!"); + + // f_recv_NGAP_PDU( + // mw_ngap_initMsg( + // mw_n2_CellTrafficTrace( + // ?, + // ?, + // ?, + // ?, + // ?, + // ?, + // ? + // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_URP_01 + } // End of group UE_Radio_Capability_Info_Indication //8.14.2 group UE_Radio_Capability_Check{ + + /** + * @desc Testcase function for TC_NGAP_gNB_URP_02 + */ + function f_TC_NGAP_GNB_URP_02() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + //f_NGAP_amf_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // action("Trigger CELL TRAFFIC TRACE!"); + + // f_recv_NGAP_PDU( + // mw_ngap_initMsg( + // mw_n2_CellTrafficTrace( + // ?, + // ?, + // ?, + // ?, + // ?, + // ?, + // ? + // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_URP_02 + } // End of group UE_Radio_Capability_Check //8.14.3 group UE_Radio_Capability_ID_Mapping{ + + /** + * @desc Testcase function for TC_NGAP_gNB_URP_03 + */ + function f_TC_NGAP_GNB_URP_03() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + //f_NGAP_amf_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // action("Trigger CELL TRAFFIC TRACE!"); + + // f_recv_NGAP_PDU( + // mw_ngap_initMsg( + // mw_n2_CellTrafficTrace( + // ?, + // ?, + // ?, + // ?, + // ?, + // ?, + // ? + // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_URP_03 + } // End of group UE_Radio_Capability_ID_Mapping } // End of group UE_Radio_Capability_Management_Procedures //8.15 group Data_Usage_Reporting_Procedures{ //8.15.1 group Secondary_RAT_Data_Usage_Report{ + + /** + * @desc Testcase function for TC_NGAP_gNB_DRP_01 + */ + function f_TC_NGAP_GNB_DRP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + //f_NGAP_amf_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + // action("Trigger CELL TRAFFIC TRACE!"); + + // f_recv_NGAP_PDU( + // mw_ngap_initMsg( + // mw_n2_CellTrafficTrace( + // ?, + // ?, + // ?, + // ?, + // ?, + // ?, + // ? + // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_DRP_01 + } // End of group Secondary_RAT_Data_Usage_Report } // End of group Data_Usage_Reporting_Procedures //8.16 -- GitLab From 557e1b037dc1c1b4bd32193791374e0bd6efe3b2 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 13:21:17 +0200 Subject: [PATCH 269/365] Add missing templates (1/2) --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 496 +++++++++++++++++++++++- 1 file changed, 491 insertions(+), 5 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 7b95977..62717f1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -7180,6 +7180,40 @@ module LibNGAP_Templates { //9.2.11.1 group LOCATION_REPORTING_CONTROL{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.1 LOCATION REPORTING CONTROL + */ + template (value) InitiatingMessage m_n2_LocationReportingControl( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct, cell) //TODO: do we need PX here? + ) := { + procedureCode := id_LocationReportingControl, + criticality := ignore, + value_ := { + LocationReportingControl := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_LocationReportingRequestType, + criticality := ignore, + value_ := { LocationReportingRequestType := p_locationReportingRequestType} + } + } + } + } + } // End of template m_n2_LocationReportingControl + } group Receive { @@ -7187,11 +7221,10 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.1 LOCATION REPORTING CONTROL */ template (present) InitiatingMessage mw_n2_LocationReportingControl( - template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct, - cell) //TODO: do we need PX here? - ) := { + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct, cell) //TODO: do we need PX here? + ) := { procedureCode := id_LocationReportingControl, criticality := ignore, value_ := { @@ -7222,15 +7255,253 @@ module LibNGAP_Templates { //9.2.11.2 group LOCATION_REPORTING_FAILURE_INDICATION{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.2 LOCATION REPORTING FAILURE INDICATION + */ + template (value) InitiatingMessage m_n2_LocationReportingFailureIndication( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) Cause p_cause + ) := { + procedureCode := id_LocationReportingFailureIndication, + criticality := ignore, + value_ := { + LocationReportingFailureIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause} + } + } + } + } + } // End of template m_n2_LocationReportingFailureIndication + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.2 LOCATION REPORTING FAILURE INDICATION + */ + template (present) InitiatingMessage mw_n2_LocationReportingFailureIndication( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) Cause p_cause := ? + ) := { + procedureCode := id_LocationReportingFailureIndication, + criticality := ignore, + value_ := { + LocationReportingFailureIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause} + } + } + } + } + } // End of template mw_n2_LocationReportingFailureIndication + } } //9.2.11.3 group LOCATION_REPORT{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.3 LOCATION REPORT + */ + template (value) InitiatingMessage m_n2_LocationReport( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) UserLocationInformation p_userLocationInformation, + in template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct, cell) //TODO: do we need PX here? + ) := { + procedureCode := id_LocationReport, + criticality := ignore, + value_ := { + LocationReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + }, + { + id := id_LocationReportingRequestType, + criticality := ignore, + value_ := { LocationReportingRequestType := p_locationReportingRequestType} + } + } + } + } + } // End of template m_n2_LocationReport + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.3 LOCATION REPORT + */ + template (value) InitiatingMessage m_n2_LocationReport_options( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) UserLocationInformation p_userLocationInformation, + in template (value) UEPresenceInAreaOfInterestList p_uEPresenceInAreaOfInterestList, + in template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct, cell) //TODO: do we need PX here? + ) := { + procedureCode := id_LocationReport, + criticality := ignore, + value_ := { + LocationReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + }, + { + id := id_UEPresenceInAreaOfInterestList, + criticality := ignore, + value_ := { UEPresenceInAreaOfInterestList := p_uEPresenceInAreaOfInterestList } + }, + { + id := id_LocationReportingRequestType, + criticality := ignore, + value_ := { LocationReportingRequestType := p_locationReportingRequestType} + } + } + } + } + } // End of template m_n2_LocationReport_options + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.3 LOCATION REPORT + */ + template (present) InitiatingMessage mw_n2_LocationReport( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) UserLocationInformation p_userLocationInformation := ?, + template (present) LocationReportingRequestType p_locationReportingRequestType := ? + ) := { + procedureCode := id_LocationReport, + criticality := ignore, + value_ := { + LocationReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + }, + { + id := id_LocationReportingRequestType, + criticality := ignore, + value_ := { LocationReportingRequestType := p_locationReportingRequestType} + } + } + } + } + } // End of template mw_n2_LocationReport + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.3 LOCATION REPORT + */ + template (present) InitiatingMessage mw_n2_LocationReport_options( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) UserLocationInformation p_userLocationInformation := ?, + template (present) UEPresenceInAreaOfInterestList p_uEPresenceInAreaOfInterestList := ?, + template (present) LocationReportingRequestType p_locationReportingRequestType := ? + ) := { + procedureCode := id_LocationReport, + criticality := ignore, + value_ := { + LocationReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + }, + { + id := id_UEPresenceInAreaOfInterestList, + criticality := ignore, + value_ := { UEPresenceInAreaOfInterestList := p_uEPresenceInAreaOfInterestList } + }, + { + id := id_LocationReportingRequestType, + criticality := ignore, + value_ := { LocationReportingRequestType := p_locationReportingRequestType} + } + } + } + } + } // End of template mw_n2_LocationReport_options + } } } // End of group Location_Reporting_Messages @@ -7240,8 +7511,65 @@ module LibNGAP_Templates { //9.2.12.1 group UE_TNLA_BINDING_RELEASE_REQUEST{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.12.1 UE TNLA BINDING RELEASE REQUEST + */ + template (value) InitiatingMessage m_n2_UETNLABindingReleaseRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_UETNLABindingRelease, + criticality := ignore, + value_ := { + UETNLABindingReleaseRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_UETNLABindingReleaseRequest + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.12.1 UE TNLA BINDING RELEASE REQUEST + */ + template (present) InitiatingMessage mw_n2_UETNLABindingReleaseRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_UETNLABindingRelease, + criticality := ignore, + value_ := { + UETNLABindingReleaseRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_UETNLABindingReleaseRequest + + } } } // End of group UE_TNLA_Binding_Messages @@ -7251,8 +7579,166 @@ module LibNGAP_Templates { //9.2.13.1 group UE_RADIO_CAPABILITY_INFO_INDICATION{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.1 UE RADIO CAPABILITY INFO INDICATION + */ + template (value) InitiatingMessage m_n2_UERadioCapabilityInfoIndication( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) UERadioCapability p_uERadioCapability + ) := { + procedureCode := id_UERadioCapabilityInfoIndication, + criticality := ignore, + value_ := { + UERadioCapabilityInfoIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + } + } + } + } + } // End of template m_n2_UERadioCapabilityInfoIndication + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.1 UE RADIO CAPABILITY INFO INDICATION + */ + template (value) InitiatingMessage m_n2_UERadioCapabilityInfoIndication_options( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) UERadioCapability p_uERadioCapability, + in template (value) UERadioCapabilityForPaging p_uERadioCapabilityForPaging, + in template (value) UERadioCapability p_uERadioCapability_EUTRA_Format + ) := { + procedureCode := id_UERadioCapabilityInfoIndication, + criticality := ignore, + value_ := { + UERadioCapabilityInfoIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + }, + { + id := id_UERadioCapabilityForPaging, + criticality := reject, + value_ := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } + }, + { + id := id_UERadioCapability_EUTRA_Format, + criticality := reject, + value_ := { UERadioCapability := p_uERadioCapability_EUTRA_Format } + } + } + } + } + } // End of template m_n2_UERadioCapabilityInfoIndication_options + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.1 UE RADIO CAPABILITY INFO INDICATION + */ + template (present) InitiatingMessage mw_n2_UERadioCapabilityInfoIndication( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) UERadioCapability p_uERadioCapability := ? + ) := { + procedureCode := id_UERadioCapabilityInfoIndication, + criticality := ignore, + value_ := { + UERadioCapabilityInfoIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + } + } + } + } + } // End of template mw_n2_UERadioCapabilityInfoIndication + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.1 UE RADIO CAPABILITY INFO INDICATION + */ + template (present) InitiatingMessage mw_n2_UERadioCapabilityInfoIndication_options( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) UERadioCapability p_uERadioCapability := ?, + template (present) UERadioCapabilityForPaging p_uERadioCapabilityForPaging := ?, + template (present) UERadioCapability p_uERadioCapability_EUTRA_Format := ? + ) := { + procedureCode := id_UERadioCapabilityInfoIndication, + criticality := ignore, + value_ := { + UERadioCapabilityInfoIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + }, + { + id := id_UERadioCapabilityForPaging, + criticality := reject, + value_ := { UERadioCapabilityForPaging := p_uERadioCapabilityForPaging } + }, + { + id := id_UERadioCapability_EUTRA_Format, + criticality := reject, + value_ := { UERadioCapability := p_uERadioCapability_EUTRA_Format } + } + } + } + } + } // End of template mw_n2_UERadioCapabilityInfoIndication_options + } } //9.2.13.2 -- GitLab From 7addf1b936c2b30298925a1390cb74e21d4710bc Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 29 May 2024 13:36:53 +0200 Subject: [PATCH 270/365] add new testcase, function and template for TC_NGAP_GNB_CMP_16 and TC_NGAP_GNB_CMP_17 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 78 ++++++++++++++++++++++++- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 55 +++++++++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 27 +++++++++ 3 files changed, 159 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 08fa323..061b872 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1487,7 +1487,7 @@ module NGAP_TCFunctions { ( PX_AMF_UE_NGAP_ID, PX_RAN_UE_NGAP_ID, - m_rRCState, + mw_rRCState(inactive), ? ) )); @@ -1561,9 +1561,85 @@ module NGAP_TCFunctions { } // End of group UE_Information_Transfer //8.3.11 group UE_Context_Suspend{ + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_16 + */ + function f_TC_NGAP_GNB_CMP_16() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a UE context suspend request"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEContextSuspendRequest_noPDUSession + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_16 + } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ + + /** + * @desc Testcase function for f_TC_NGAP_GNB_CMP_17 + */ + function f_TC_NGAP_GNB_CMP_17() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + // TODO: hasSuspendedContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a UE context resume request"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEContextResumeRequest + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + ? + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_17 } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index d86aa15..18dd7cd 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -703,9 +703,64 @@ module NGAP_TestCases { } // End of group UE_Information_Transfer //8.3.11 group UE_Context_Suspend{ + + /** + * @desc Test objective "Verify that the IUT can send a UE CONTEXT SUSPEND REQUEST contains mandatory IEs" + */ + testcase TC_NGAP_GNB_CMP_16() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_11)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_11' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_16()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_16 } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ + + /** + * @desc Test objective "Verify that the IUT can send a UE CONTEXT RESUME REQUEST contains mandatory IEs" + */ + testcase TC_NGAP_GNB_CMP_17() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_12){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_12' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_17()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_17 + } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 62717f1..726ebb9 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2400,6 +2400,33 @@ module LibNGAP_Templates { } } } // End of template mw_n2_UEContextSuspendRequest + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.16 UE CONTEXT SUSPEND REQUEST + */ + template (present) InitiatingMessage mw_n2_UEContextSuspendRequest_noPDUSession( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + ) := { + procedureCode := id_UEContextSuspend, + criticality := reject, + value_ := { + UEContextSuspendRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_UEContextSuspendRequest_noPDUSession } // End of group Receive -- GitLab From a33c027bd5e47e25444537e0330b417f81860d86 Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 29 May 2024 13:48:30 +0200 Subject: [PATCH 271/365] bugfix --- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 2 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 18dd7cd..192bdf0 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -743,7 +743,7 @@ module NGAP_TestCases { var aMFNGAPComponent v_ngap_amf; // Test control - if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_12){ + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_12)){ log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_12' shall be set to true for executing the TC. ***"); stop; } diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 726ebb9..42cff41 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -2406,7 +2406,7 @@ module LibNGAP_Templates { */ template (present) InitiatingMessage mw_n2_UEContextSuspendRequest_noPDUSession( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? ) := { procedureCode := id_UEContextSuspend, criticality := reject, -- GitLab From 36caf66a49d7783270d9d3d8c885c02377c56627 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 29 May 2024 14:54:16 +0200 Subject: [PATCH 272/365] add TC_NGAP_GNB_LRP_01 fix type in templates m_reaOfInterest -> m_areaOfInterest --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 68 +++++++++++++++++++++++-- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 28 ++++++++++ ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 6 +++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 45 +++++++++++++--- 4 files changed, 138 insertions(+), 9 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 9674b08..2ec54f1 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3085,12 +3085,70 @@ module NGAP_TCFunctions { } // End of group Location_Reporting_Control //8.12.2 group Location_Reporting_Failure_Indication{ + + /** + * @desc Testcase function for TC_NGAP_LRP_01 + */ + function f_TC_NGAP_GNB_LRP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_LocationReportingControl( + -, + -, + m_locationReportingRequestType( + direct, + cell, + { + m_areaOfInterestItem( + m_areaOfInterest, + 1, + - + ), + m_areaOfInterestItem( + m_areaOfInterest, + 1, + - + ) + }, + -, + - + ) + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_LocationReportingFailureIndication(-,-,PX_CAUSE_MULTIPLE_LOCATION_REPORTING) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_LRP_01 + } // End of group Location_Reporting_Failure_Indication //8.12.3 group Location_Report{ /** - * @desc Testcase function for TC_NGAP_GNB_TRP_03 + * @desc Testcase function for TC_NGAP_LRP_02 */ function f_TC_NGAP_GNB_LRP_02() runs on aMFNGAPComponent { // Local variables @@ -3105,7 +3163,11 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_LocationReportingControl(-,-,-) + m_n2_LocationReportingControl( + -, + -, + m_locationReportingRequestType(direct,cell) + ) ) ); @@ -3123,7 +3185,7 @@ module NGAP_TCFunctions { f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - } // End of function f_TC_NGAP_GNB_LRP_03 + } // End of function f_TC_NGAP_LRP_02 } // End of group Location_Report } // End of group Location_Reporting_Procedures diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 506cb0a..18efd1c 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1675,6 +1675,34 @@ module NGAP_TestCases { } // End of group Location_Reporting_Control //8.12.2 group Location_Reporting_Failure_Indication{ + + /** + * @desc "Verify that the IUT can send a LOCATION REPORTING FAILURE INDICATION message after that contains mandatory IEs receiving a LOCATION REPORTING CONTROL message with two identical Location Reporting Reference IDs." + */ + testcase TC_NGAP_GNB_LRP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_11_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_11_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_LRP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_LRP_01 + } // End of group Location_Reporting_Failure_Indication //8.12.3 group Location_Report{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index f95817f..e2735c2 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -217,6 +217,12 @@ module LibNGAP_Pixits { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause */ modulepar CauseRadioNetwork PX_CAUSE_HANDOVER_CANCEL := unspecified; + + /** + * @desc To indicate the reason for a particular event for the NGAP protocol + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.2 Cause + */ + modulepar CauseRadioNetwork PX_CAUSE_MULTIPLE_LOCATION_REPORTING := unspecified; /** * @desc To indicate the reason for a particular event for the NGAP protocol diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index e208df9..9110921 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -7187,8 +7187,7 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_LocationReportingControl( in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct, - cell) //TODO: do we need PX here? + in template (value) LocationReportingRequestType p_locationReportingRequestType ) := { procedureCode := id_LocationReportingControl, criticality := ignore, @@ -7258,6 +7257,40 @@ module LibNGAP_Templates { group Send { } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.2 LOCATION REPORTING FAILURE INDICATION + */ + template (present) InitiatingMessage mw_n2_LocationReportingFailureIndication( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) CauseRadioNetwork p_cause + ) := { + procedureCode := id_LocationReportingFailureIndication, + criticality := ignore, + value_ := { + LocationReportingFailureIndication := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_CauseRadioNetwork, + criticality := ignore, + value_ := { id_CauseRadioNetwork := p_causeRadioNetwork} + } + } + } + } + } // End of template mw_n2_LocationReportingFailureIndication + } } //9.2.11.3 @@ -7554,7 +7587,7 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template m_areaOfInterestCellItem - template (omit) AreaOfInterestItem m_reaOfInterestItem( + template (omit) AreaOfInterestItem m_areaOfInterestItem( in template (value) AreaOfInterest p_areaOfInterest, in template (value) LocationReportingReferenceID p_locationReportingReferenceID, in template (omit) AreaOfInterestItem.iE_Extensions p_iE_Extensions := omit @@ -7562,7 +7595,7 @@ module LibNGAP_Templates { areaOfInterest := p_areaOfInterest, locationReportingReferenceID := p_locationReportingReferenceID, iE_Extensions := p_iE_Extensions - } // End of template m_reaOfInterestItem + } // End of template m_areaOfInterestItem template (omit) AreaOfInterestRANNodeItem m_areaOfInterestRANNodeItem( in template (value) GlobalRANNodeID p_globalRANNodeID, @@ -15173,7 +15206,7 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_areaOfInterestCellItem - template (present) AreaOfInterestItem mw_reaOfInterestItem( + template (present) AreaOfInterestItem mw_areaOfInterestItem( template (present) AreaOfInterest p_areaOfInterest := ?, template (present) LocationReportingReferenceID p_locationReportingReferenceID := ?, template AreaOfInterestItem.iE_Extensions p_iE_Extensions := * @@ -15181,7 +15214,7 @@ module LibNGAP_Templates { areaOfInterest := p_areaOfInterest, locationReportingReferenceID := p_locationReportingReferenceID, iE_Extensions := p_iE_Extensions - } // End of template mw_reaOfInterestItem + } // End of template mw_areaOfInterestItem template (present) AreaOfInterestRANNodeItem mw_areaOfInterestRANNodeItem( template (present) GlobalRANNodeID p_globalRANNodeID := ?, -- GitLab From e991575f19b816c47e4208b766528f83b6857501 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 29 May 2024 14:55:05 +0200 Subject: [PATCH 273/365] added tp _gnb_RIP_01 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 62 +++++++++++++++++++++++------- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 28 ++++++++++++++ 2 files changed, 76 insertions(+), 14 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 061b872..435d531 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3404,21 +3404,17 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // action("Trigger CELL TRAFFIC TRACE!"); + action("Trigger UE Radio Capability Management procedure!"); - // f_recv_NGAP_PDU( - // mw_ngap_initMsg( - // mw_n2_CellTrafficTrace( - // ?, - // ?, - // ?, - // ?, - // ?, - // ?, - // ? - // ) - // ) - // ); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UERadioCapabilityInfoIndication( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + ? + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -3574,6 +3570,44 @@ module NGAP_TCFunctions { group RIM_Information_Transfer_Procedures{ //8.16.1 group Uplink_RIM_Information_Transfer{ + + /** + * @desc Testcase function for TC_NGAP_gNB_RIP_01 + */ + function f_TC_NGAP_GNB_RIP_01() runs on aMFNGAPComponent { + // Local variables + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + //f_NGAP_amf_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger a RIM Information Transfer procedure!"); + + // f_recv_NGAP_PDU( + // mw_ngap_initMsg( + // mw_n2_UERadioCapabilityInfoIndication( + // PX_AMF_UE_NGAP_ID, + // PX_RAN_UE_NGAP_ID, + // ? + // ) + // ) + // ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_gNB_RIP_01 + } // End of group Uplink_RIM_Information_Transfer //8.16.2 group Downlink_RIM_Information_Transfer{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 192bdf0..d55cd27 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -1958,6 +1958,34 @@ module NGAP_TestCases { group RIM_Information_Transfer_Procedures{ //8.16.1 group Uplink_RIM_Information_Transfer{ + + /** + * @desc Test objective "Verify that the IUT can send a UPLINK RIM INFORMATION TRANSFER." + */ + testcase TC_NGAP_GNB_RIP_01() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_15_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_15_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_RIP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_RIP_01 + } // End of group Uplink_RIM_Information_Transfer //8.16.2 group Downlink_RIM_Information_Transfer{ -- GitLab From daebaccba19485456dfd2dabbf4fa852dc4abaaa Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 15:02:43 +0200 Subject: [PATCH 274/365] Restore lost code in TCs --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 181 +++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 251 +++++++++++++++++++++++++++++ 2 files changed, 432 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 435d531..d3cc853 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4099,30 +4099,211 @@ module NGAP_TCFunctions { } // End of group Handover_Preparation //8.4.2 group Handover_Resource_Allocation{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_03 + */ + function f_TC_NGAP_AMF_MMP_03() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_03 + } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_04 + */ + function f_TC_NGAP_AMF_MMP_04() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_04 + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_05 + */ + function f_TC_NGAP_AMF_MMP_05() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_05 + } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_06 + */ + function f_TC_NGAP_AMF_MMP_06() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_06 + } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_07 + */ + function f_TC_NGAP_AMF_MMP_07() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_07 + } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_08 + */ + function f_TC_NGAP_AMF_MMP_08() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_08 + } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ + + /** + * @desc Testcase function for TC_NGAP_aMF_MMP_09 + */ + function f_TC_NGAP_AMF_MMP_09() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_MMP_09 + } // End of group Downlink_RAN_Early_Status_Transfer } // End of group UE_Mobility_Management_Procedures //8.5 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index d55cd27..1196102 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -2194,34 +2194,285 @@ module NGAP_TestCases { group UE_Mobility_Management_Procedures{ //8.4.1 group Handover_Preparation{ + + /** + * @desc "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER COMMAND with successfully handover." + */ + testcase TC_NGAP_AMF_MMP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_01 + + /** + * @desc "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER PREPARATION FAILURE because the UE is not longer available." + */ + testcase TC_NGAP_AMF_MMP_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_02 + } // End of group Handover_Preparation //8.4.2 group Handover_Resource_Allocation{ + + /** + * @desc "Verify that the AMF node successfully sends a HANDOVER REQUEST message that contains mandatory IEs to the GNB." + */ + testcase TC_NGAP_AMF_MMP_03() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_03 + } // End of group Handover_Resource_Allocation //8.4.3 group Handover_Notification{ } // End of group Handover_Notification //8.4.4 group Path_Switch_Request{ + + /** + * @desc "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and answers with PATH SWITCH REQUEST ACKNOWLEDGE to acknowledge the path switch." + */ + testcase TC_NGAP_AMF_MMP_04() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_04 + + /** + * @desc "Verify that the AMF node successfully processes a PATH SWITCH REQUEST message that contains mandatory IEs and two PDU Sessions with same ID and answers with PATH SWITCH REQUEST FAILURE." + */ + testcase TC_NGAP_AMF_MMP_05() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_05 + } // End of group Path_Switch_Request //8.4.5 group Handover_Cancellation{ + + /** + * @desc "Verify that the AMF node successfully processes a HANDOVER CANCEL message that contains mandatory IEs and answers with HANDOVER CANCEL ACKNOWLEDGE to confirm that the ongoing handover was cancelled." + */ + testcase TC_NGAP_AMF_MMP_06() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_06()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_06 + } // End of group Handover_Cancellation //8.4.6 group Uplink_RAN_Status_Transfer{ } // End of group Uplink_RAN_Status_Transfer //8.4.7 group Downlink_RAN_Status_Transfer{ + + /** + * @desc "Verify that the AMF node successfully sends a DOWNLINK RAN STATUS TRANSFER message that contains mandatory IEs." + */ + testcase TC_NGAP_AMF_MMP_07() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_6)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_6' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_07()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_07 + } // End of group Downlink_RAN_Status_Transfer //8.4.8 group Handover_Success{ + + /** + * @desc "Verify that the NG-RAN node successfully sends a Handover Success message to the AMF." + */ + testcase TC_NGAP_AMF_MMP_08() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A3_3_8)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A3_3_8' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_08()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_08 + } // End of group Handover_Success //8.4.9 group Uplink_RAN_Early_Status_Transfer{ } // End of group Uplink_RAN_Early_Status_Transfer //8.4.10 group Downlink_RAN_Early_Status_Transfer{ + + /** + * @desc "Verify that the AMF node successfully sends a DOWNLINK RAN EARLY STATUS TRANSFER message that contains mandatory IEs." + */ + testcase TC_NGAP_AMF_MMP_09() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_3_9)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_3_9' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_MMP_09()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_MMP_09 + } // End of group Downlink_RAN_Early_Status_Transfer + } // End of group UE_Mobility_Management_Procedures //8.5 group Paging_Procedures{ -- GitLab From be98a3f02584d129b1e99dae02eca772a8026464 Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 29 May 2024 15:24:24 +0200 Subject: [PATCH 275/365] new Testcase, function and template for TC_NGAP_AMF_CMP_01 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 64 +++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 28 +++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 32 +++++++++---- 3 files changed, 115 insertions(+), 9 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 1ab0d6b..8215f23 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4007,6 +4007,70 @@ module NGAP_TCFunctions { group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_01 + */ + function f_TC_NGAP_AMF_CMP_01() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_gnb_UE_PDU_ResourceSetup(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a PDU initial context setup procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_InitialContextSetupRequest_withPDUSessionList( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + mw_gUAMI + ( + PX_PLMN_IDENTITY, + PX_AMF_REGION_ID, + PX_AMF_SET_ID, + PX_AMF_POINTER, + * + ), + { + mw_pDUSessionResourceSetupItemCxtReq + ( + PX_PDU_SESSION_ID, + mw_s_NSSAI + ( + PX_SST + ), + ?, + *, + * + ) + }, + ?, + ?, + ? + ))); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_01 + + + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 9794392..daaf899 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -2183,6 +2183,34 @@ module NGAP_TestCases { group UE_Context_Management_Procedures{ //8.3.1 group Initial_Context_Setup{ + + /** + * @desc "Verify that the IUT can send a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs." + */ + testcase TC_NGAP_AMF_CMP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_01 + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 4d479ee..ce60ed2 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1048,12 +1048,7 @@ module LibNGAP_Templates { id := id_RAN_UE_NGAP_ID, criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } - }, - { - id := id_PDUSessionResourceSetupListCxtReq, - criticality := reject, - value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } - }, + }, { id := id_GUAMI, criticality := reject, @@ -1095,15 +1090,14 @@ module LibNGAP_Templates { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST */ - template (present) InitiatingMessage mw_n2_InitialContextSetupRequest( + template (present) InitiatingMessage mw_n2_InitialContextSetupRequest_withPDUSessionList( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) GUAMI p_gUAMI := ?, template (present) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq := ?, template (present) AllowedNSSAI p_allowedNSSAI := ?, template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, - template (present) SecurityKey p_nextHopNH := ?, - template (present) TraceActivation p_traceActivation := ? + template (present) SecurityKey p_nextHopNH := ? ) := { procedureCode := id_InitialContextSetup, criticality := reject, @@ -1120,10 +1114,30 @@ module LibNGAP_Templates { criticality := reject, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, { id := id_PDUSessionResourceSetupListCxtReq, criticality := reject, value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityKey, + criticality := reject, + value_ := { SecurityKey := p_nextHopNH } } } } -- GitLab From faa9d734d555211373780f04ca876db0828e2c97 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 15:29:12 +0200 Subject: [PATCH 276/365] Add missing templates (2/2) --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 709 +++++++++++++++++++++++- 1 file changed, 692 insertions(+), 17 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index ce60ed2..de2257e 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -7337,17 +7337,10 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.2 LOCATION REPORTING FAILURE INDICATION */ template (present) InitiatingMessage mw_n2_LocationReportingFailureIndication( -<<<<<<< HEAD - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - template (present) CauseRadioNetwork p_cause - ) := { -======= template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, template (present) Cause p_cause := ? ) := { ->>>>>>> a33c027bd5e47e25444537e0330b417f81860d86 procedureCode := id_LocationReportingFailureIndication, criticality := ignore, value_ := { @@ -7364,15 +7357,6 @@ module LibNGAP_Templates { value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { -<<<<<<< HEAD - id := id_CauseRadioNetwork, - criticality := ignore, - value_ := { id_CauseRadioNetwork := p_causeRadioNetwork} - } - } - } - } -======= id := id_Cause, criticality := ignore, value_ := { Cause := p_cause} @@ -7380,7 +7364,6 @@ module LibNGAP_Templates { } } } ->>>>>>> a33c027bd5e47e25444537e0330b417f81860d86 } // End of template mw_n2_LocationReportingFailureIndication } @@ -7802,29 +7785,475 @@ module LibNGAP_Templates { //9.2.13.2 group UE_RADIO_CAPABILITY_CHECK_REQUEST{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.2 UE RADIO CAPABILITY CHECK REQUEST + */ + template (value) InitiatingMessage m_n2_UERadioCapabilityCheckRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_UERadioCapabilityCheck, + criticality := ignore, + value_ := { + UERadioCapabilityCheckRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template m_n2_UERadioCapabilityCheckRequest + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.2 UE RADIO CAPABILITY CHECK REQUEST + */ + template (value) InitiatingMessage m_n2_UERadioCapabilityCheckRequest_options( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) UERadioCapability p_uERadioCapability, + in template (value) UERadioCapabilityID p_uERadioCapabilityID + ) := { + procedureCode := id_UERadioCapabilityCheck, + criticality := ignore, + value_ := { + UERadioCapabilityCheckRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + }, + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + } + } + } + } + } // End of template m_n2_UERadioCapabilityCheckRequest_options + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.2 UE RADIO CAPABILITY CHECK REQUEST + */ + template (present) InitiatingMessage mw_n2_UERadioCapabilityCheckRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID + ) := { + procedureCode := id_UERadioCapabilityCheck, + criticality := ignore, + value_ := { + UERadioCapabilityCheckRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_UERadioCapabilityCheckRequest + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.2 UE RADIO CAPABILITY CHECK REQUEST + */ + template (present) InitiatingMessage mw_n2_UERadioCapabilityCheckRequest_options( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) UERadioCapability p_uERadioCapability := ?, + template (present) UERadioCapabilityID p_uERadioCapabilityID := ? + ) := { + procedureCode := id_UERadioCapabilityCheck, + criticality := ignore, + value_ := { + UERadioCapabilityCheckRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + }, + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + } + } + } + } + } // End of template mw_n2_UERadioCapabilityCheckRequest_options + } } //9.2.13.3 group UE_RADIO_CAPABILITY_CHECK_RESPONSE{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (value) SuccessfulOutcome m_n2_UERadioCapabilityCheckResponse( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) IMSVoiceSupportIndicator p_iMSVoiceSupportIndicator + ) := { + procedureCode := id_UERadioCapabilityCheck, + criticality := ignore, + value_ := { + UERadioCapabilityCheckResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_IMSVoiceSupportIndicator, + criticality := reject, + value_ := { IMSVoiceSupportIndicator := p_iMSVoiceSupportIndicator } + } + } + } + } + } // End of template m_n2_UERadioCapabilityCheckResponse + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (value) SuccessfulOutcome m_n2_UERadioCapabilityCheckResponse_options( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) IMSVoiceSupportIndicator p_iMSVoiceSupportIndicator, + in template (value) CriticalityDiagnostics p_criticalityDiagnostics + ) := { + procedureCode := id_UERadioCapabilityCheck, + criticality := ignore, + value_ := { + UERadioCapabilityCheckResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_IMSVoiceSupportIndicator, + criticality := reject, + value_ := { IMSVoiceSupportIndicator := p_iMSVoiceSupportIndicator } + }, + { + id := id_CriticalityDiagnostics, + criticality := ignore, + value_ := { CriticalityDiagnostics := p_criticalityDiagnostics } + } + } + } + } + } // End of template m_n2_UERadioCapabilityCheckResponse_options + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_UERadioCapabilityCheckResponse( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) IMSVoiceSupportIndicator p_iMSVoiceSupportIndicator := ? + ) := { + procedureCode := id_UERadioCapabilityCheck, + criticality := ignore, + value_ := { + UERadioCapabilityCheckResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_IMSVoiceSupportIndicator, + criticality := reject, + value_ := { IMSVoiceSupportIndicator := p_iMSVoiceSupportIndicator } + } + } + } + } + } // End of template mw_n2_UERadioCapabilityCheckResponse + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_UERadioCapabilityCheckResponse_options( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) IMSVoiceSupportIndicator p_iMSVoiceSupportIndicator := ?, + template (present) CriticalityDiagnostics p_criticalityDiagnostics := ? + ) := { + procedureCode := id_UERadioCapabilityCheck, + criticality := ignore, + value_ := { + UERadioCapabilityCheckResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_IMSVoiceSupportIndicator, + criticality := reject, + value_ := { IMSVoiceSupportIndicator := p_iMSVoiceSupportIndicator } + }, + { + id := id_CriticalityDiagnostics, + criticality := ignore, + value_ := { CriticalityDiagnostics := p_criticalityDiagnostics } + } + } + } + } + } // End of template mw_n2_UERadioCapabilityCheckResponse_options + } } //9.2.13.4 group UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (value) InitiatingMessage m_n2_UERadioCapabilityIDMappingRequest( + in template (value) UERadioCapabilityID p_uERadioCapabilityID + ) := { + procedureCode := id_UERadioCapabilityIDMapping, + criticality := ignore, + value_ := { + UERadioCapabilityIDMappingRequest := { + protocolIEs := { + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + } + } + } + } + } // End of template m_n2_UERadioCapabilityIDMappingRequest + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (present) InitiatingMessage mw_n2_UERadioCapabilityIDMappingRequest( + template (present) UERadioCapabilityID p_uERadioCapabilityID := ? + ) := { + procedureCode := id_UERadioCapabilityIDMapping, + criticality := ignore, + value_ := { + UERadioCapabilityIDMappingRequest := { + protocolIEs := { + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + } + } + } + } + } // End of template mw_n2_UERadioCapabilityIDMappingRequest + } } //9.2.13.5 group UE_RADIO_CAPABILITY_ID_MAPPING_RESPONSE{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (value) SuccessfulOutcome m_n2_UERadioCapabilityIDMappingResponse( + in template (value) UERadioCapabilityID p_uERadioCapabilityID, + in template (value) UERadioCapability p_uERadioCapability + ) := { + procedureCode := id_UERadioCapabilityIDMapping, + criticality := ignore, + value_ := { + UERadioCapabilityIDMappingResponse := { + protocolIEs := { + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + } + } + } + } + } // End of template m_n2_UERadioCapabilityIDMappingResponse + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (value) SuccessfulOutcome m_n2_UERadioCapabilityIDMappingResponse_options( + in template (value) UERadioCapabilityID p_uERadioCapabilityID, + in template (value) UERadioCapability p_uERadioCapability, + in template (value) CriticalityDiagnostics p_criticalityDiagnostics + ) := { + procedureCode := id_UERadioCapabilityIDMapping, + criticality := ignore, + value_ := { + UERadioCapabilityIDMappingResponse := { + protocolIEs := { + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + }, + { + id := id_CriticalityDiagnostics, + criticality := ignore, + value_ := { CriticalityDiagnostics := p_criticalityDiagnostics } + } + } + } + } + } // End of template m_n2_UERadioCapabilityIDMappingResponse_options + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_UERadioCapabilityIDMappingResponse( + template (present) UERadioCapabilityID p_uERadioCapabilityID := ?, + template (present) UERadioCapability p_uERadioCapability := ? + ) := { + procedureCode := id_UERadioCapabilityIDMapping, + criticality := ignore, + value_ := { + UERadioCapabilityIDMappingResponse := { + protocolIEs := { + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + } + } + } + } + } // End of template mw_n2_UERadioCapabilityIDMappingResponse + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.13.3 UE RADIO CAPABILITY CHECK RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_UERadioCapabilityIDMappingResponse_options( + template (present) UERadioCapabilityID p_uERadioCapabilityID := ?, + template (present) UERadioCapability p_uERadioCapability := ?, + template (present) CriticalityDiagnostics p_criticalityDiagnostics := ? + ) := { + procedureCode := id_UERadioCapabilityIDMapping, + criticality := ignore, + value_ := { + UERadioCapabilityIDMappingResponse := { + protocolIEs := { + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + }, + { + id := id_CriticalityDiagnostics, + criticality := ignore, + value_ := { CriticalityDiagnostics := p_criticalityDiagnostics } + } + } + } + } + } // End of template mw_n2_UERadioCapabilityIDMappingResponse_options + } } } // End of group UE_Radio_Capability_Management_Messages @@ -7834,8 +8263,166 @@ module LibNGAP_Templates { //9.2.14.1 group SECONDARY_RAT_DATA_USAGE_REPORT{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.14.1 SECONDARY RAT DATA USAGE REPORT + */ + template (value) InitiatingMessage m_n2_SecondaryRATDataUsageReport( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceSecondaryRATUsageList p_pDUSessionResourceSecondaryRATUsageList + ) := { + procedureCode := id_SecondaryRATDataUsageReport, + criticality := ignore, + value_ := { + SecondaryRATDataUsageReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSecondaryRATUsageList, + criticality := ignore, + value_ := { PDUSessionResourceSecondaryRATUsageList := p_pDUSessionResourceSecondaryRATUsageList } + } + } + } + } + } // End of template m_n2_SecondaryRATDataUsageReport + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.14.1 SECONDARY RAT DATA USAGE REPORT + */ + template (value) InitiatingMessage m_n2_SecondaryRATDataUsageReport_options( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceSecondaryRATUsageList p_pDUSessionResourceSecondaryRATUsageList, + in template (value) HandoverFlag p_handoverFlag, + in template (value) UserLocationInformation p_userLocationInformation + ) := { + procedureCode := id_SecondaryRATDataUsageReport, + criticality := ignore, + value_ := { + SecondaryRATDataUsageReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSecondaryRATUsageList, + criticality := ignore, + value_ := { PDUSessionResourceSecondaryRATUsageList := p_pDUSessionResourceSecondaryRATUsageList } + }, + { + id := id_HandoverFlag, + criticality := ignore, + value_ := { HandoverFlag := p_handoverFlag } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template m_n2_SecondaryRATDataUsageReport + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.14.1 SECONDARY RAT DATA USAGE REPORT + */ + template (present) InitiatingMessage mw_n2_SecondaryRATDataUsageReport( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) PDUSessionResourceSecondaryRATUsageList p_pDUSessionResourceSecondaryRATUsageList := ? + ) := { + procedureCode := id_SecondaryRATDataUsageReport, + criticality := ignore, + value_ := { + SecondaryRATDataUsageReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSecondaryRATUsageList, + criticality := ignore, + value_ := { PDUSessionResourceSecondaryRATUsageList := p_pDUSessionResourceSecondaryRATUsageList } + } + } + } + } + } // End of template mw_n2_SecondaryRATDataUsageReport + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.14.1 SECONDARY RAT DATA USAGE REPORT + */ + template (present) InitiatingMessage mw_n2_SecondaryRATDataUsageReport_options( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) PDUSessionResourceSecondaryRATUsageList p_pDUSessionResourceSecondaryRATUsageList := ?, + template (present) HandoverFlag p_handoverFlag := ?, + template (present) UserLocationInformation p_userLocationInformation := ? + ) := { + procedureCode := id_SecondaryRATDataUsageReport, + criticality := ignore, + value_ := { + SecondaryRATDataUsageReport := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceSecondaryRATUsageList, + criticality := ignore, + value_ := { PDUSessionResourceSecondaryRATUsageList := p_pDUSessionResourceSecondaryRATUsageList } + }, + { + id := id_HandoverFlag, + criticality := ignore, + value_ := { HandoverFlag := p_handoverFlag } + }, + { + id := id_UserLocationInformation, + criticality := ignore, + value_ := { UserLocationInformation := p_userLocationInformation } + } + } + } + } + } // End of template mw_n2_SecondaryRATDataUsageReport + } } } // End of group Data_Usage_Reporting_Messages @@ -7845,15 +8432,103 @@ module LibNGAP_Templates { //9.2.15.1 group UPLINK_RIM_INFORMATION_TRANSFER{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.15.1 UPLINK RIM INFORMATION TRANSFER + */ + template (value) InitiatingMessage m_n2_UplinkRIMInformationTransfer( + in template (value) RIMInformationTransfer p_rIMInformationTransfer + ) := { + procedureCode := id_UplinkRIMInformationTransfer, + criticality := ignore, + value_ := { + UplinkRIMInformationTransfer := { + protocolIEs := { + { + id := id_RIMInformationTransfer, + criticality := ignore, + value_ := { RIMInformationTransfer := p_rIMInformationTransfer } + } + } + } + } + } // End of template m_n2_UplinkRIMInformationTransfer + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.15.1 UPLINK RIM INFORMATION TRANSFER + */ + template (present) InitiatingMessage mw_n2_UplinkRIMInformationTransfer( + template (present) RIMInformationTransfer p_rIMInformationTransfer := ? + ) := { + procedureCode := id_UplinkRIMInformationTransfer, + criticality := ignore, + value_ := { + UplinkRIMInformationTransfer := { + protocolIEs := { + { + id := id_RIMInformationTransfer, + criticality := ignore, + value_ := { RIMInformationTransfer := p_rIMInformationTransfer } + } + } + } + } + } // End of template mw_n2_UplinkRIMInformationTransfer + } } //9.2.15.2 group DOWNLINK_RIM_INFORMATION_TRANSFER{ group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.15.1 DownLINK RIM INFORMATION TRANSFER + */ + template (value) InitiatingMessage m_n2_DownlinkRIMInformationTransfer( + in template (value) RIMInformationTransfer p_rIMInformationTransfer + ) := { + procedureCode := id_DownlinkRIMInformationTransfer, + criticality := ignore, + value_ := { + DownlinkRIMInformationTransfer := { + protocolIEs := { + { + id := id_RIMInformationTransfer, + criticality := ignore, + value_ := { RIMInformationTransfer := p_rIMInformationTransfer } + } + } + } + } + } // End of template m_n2_DownlinkRIMInformationTransfer + } group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.15.1 DownLINK RIM INFORMATION TRANSFER + */ + template (present) InitiatingMessage mw_n2_DownlinkRIMInformationTransfer( + template (present) RIMInformationTransfer p_rIMInformationTransfer := ? + ) := { + procedureCode := id_DownlinkRIMInformationTransfer, + criticality := ignore, + value_ := { + DownlinkRIMInformationTransfer := { + protocolIEs := { + { + id := id_RIMInformationTransfer, + criticality := ignore, + value_ := { RIMInformationTransfer := p_rIMInformationTransfer } + } + } + } + } + } // End of template mw_n2_DownlinkRIMInformationTransfer + } } } // End of group RIM_Information_Transfer_Messages -- GitLab From befaf913ecbee3e264084965e8b603783dbcfc50 Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 15:30:38 +0200 Subject: [PATCH 277/365] Compiler bug fixed --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 8215f23..ba74a88 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3380,7 +3380,7 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_initMsg( - mw_n2_LocationReportingFailureIndication(-,-,PX_CAUSE_MULTIPLE_LOCATION_REPORTING) + mw_n2_LocationReportingFailureIndication(-,-,m_cause_radioNetwork(PX_CAUSE_MULTIPLE_LOCATION_REPORTING)) ) ); -- GitLab From 4de8d084141bdaaf30ce5fbfd4284376bbdbe0d9 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Wed, 29 May 2024 16:15:44 +0200 Subject: [PATCH 278/365] add TC_NGAP_AMF_CMP_10 and TC_NGAP_AMF_CMP_11 --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 7 +++ ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 90 ++++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 55 ++++++++++++++++++ 3 files changed, 152 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index ca7e70f..1c7589b 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -265,6 +265,13 @@ module NGAP_Steps { function f_NGAP_gnb_UE_PDU_ResourceSetup() runs on NGAPComponent { //FIXME: Implementation of PDU session resource setup } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup + + /** + * @desc + */ + function f_NGAP_amf_UE_Has_Suspended_Context() runs on NGAPComponent { + //FIXME: Implementation of UE has suspended context + } // End of function f_NGAP_amf_UE_hasSuspendedContext }//end group BehaviorFunctions diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index ba74a88..c742042 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4104,6 +4104,96 @@ module NGAP_TCFunctions { } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_10 + */ + function f_TC_NGAP_AMF_CMP_10() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_amf_UE_Has_Suspended_Context(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextResumeRequest( + -, + -, + - + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContextResumeResponse( + ?, + ? + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_10 + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_11 + */ + function f_TC_NGAP_AMF_CMP_11() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_amf_UE_Has_Suspended_Context(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextResumeRequest( + -, + -, + - + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_UEContextResumeFailure( + ?, + ?, + ? + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_11 + } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index daaf899..b8a5c92 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -2244,6 +2244,61 @@ module NGAP_TestCases { } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ + + /** + * @desc "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." + */ + testcase TC_NGAP_AMF_CMP_10() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_12)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_12' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_10()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_10 + + /** + * @desc "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME FAILURE with failing to resume UE context." + */ + testcase TC_NGAP_AMF_CMP_11() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_12)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_12' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_11()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_11 + } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 -- GitLab From c8709ace6ac6d5301e7921bb483ae837073a5e6d Mon Sep 17 00:00:00 2001 From: garciay Date: Wed, 29 May 2024 17:08:23 +0200 Subject: [PATCH 279/365] Implement f_TC_NGAP_AMF_MMP_03..05; Rename config file for ETSI forge CD/CD --- .../{AtsNGAP_AMF.cfg => AtsNGAP_AMF.cfg_} | 0 .../{AtsNGAP_GNB.cfg => AtsNGAP_GNB.cgf_} | 0 ttcn/AtsNGAP/NGAP_Steps.ttcn | 16 +- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 38 +- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 6 + ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 354 ++++++++++++++++-- 6 files changed, 388 insertions(+), 26 deletions(-) rename etc/AtsNGAP/{AtsNGAP_AMF.cfg => AtsNGAP_AMF.cfg_} (100%) rename etc/AtsNGAP/{AtsNGAP_GNB.cfg => AtsNGAP_GNB.cgf_} (100%) diff --git a/etc/AtsNGAP/AtsNGAP_AMF.cfg b/etc/AtsNGAP/AtsNGAP_AMF.cfg_ similarity index 100% rename from etc/AtsNGAP/AtsNGAP_AMF.cfg rename to etc/AtsNGAP/AtsNGAP_AMF.cfg_ diff --git a/etc/AtsNGAP/AtsNGAP_GNB.cfg b/etc/AtsNGAP/AtsNGAP_GNB.cgf_ similarity index 100% rename from etc/AtsNGAP/AtsNGAP_GNB.cfg rename to etc/AtsNGAP/AtsNGAP_GNB.cgf_ diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 1c7589b..6bbd0c5 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -256,9 +256,23 @@ module NGAP_Steps { * @desc */ function f_NGAP_gnb_UE_Not_Available() runs on NGAPComponent { - //FIXME: Implementation of UE registration + //FIXME: Implementation of UE not available } // End of function f_NGAP_gnb_UE_Not_Available + /** + * @desc + */ + function f_NGAP_gnb_UE_Handover_Required() runs on NGAPComponent { + //FIXME: Implementation of UE handover required + } // End of function f_NGAP_gnb_UE_Handover_Required + + /** + * @desc + */ + function f_NGAP_gnb_UE_EstablishedInitialContext() runs on NGAPComponent { + //FIXME: Implementation of UE handover required + } // End of function f_NGAP_gnb_UE_EstablishedInitialContext + /** * @desc */ diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index c742042..77e1383 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4325,11 +4325,15 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_NGAP_gnb_UE_Handover_Required(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_HandoverRequest + )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4357,11 +4361,25 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_NGAP_gnb_UE_EstablishedInitialContext(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PathSwitchRequest( + -, -, + m_uPTransportLayerInformation_userLocationInformationNR( + m_userLocationInformationNR( + m_nR_CGI, + m_tAI + ))))); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PathSwitchRequestAcknowledge + )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4382,11 +4400,25 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - + f_NGAP_gnb_UE_EstablishedInitialContext(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PathSwitchRequest( + -, -, + m_uPTransportLayerInformation_userLocationInformationNR( + m_userLocationInformationNR( + m_nR_CGI, + m_tAI + ))))); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_PathSwitchRequestFailure + )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index e2735c2..7a1e7e0 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -140,6 +140,12 @@ module LibNGAP_Pixits { */ modulepar EUTRACellIdentity PX_EUTRA_CELL_IDENTITY := hex2bit('1234501'H); + /** + * @desc The leftmost bits of the E-UTRA Cell Identity IE correspond to the ng-eNB ID + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.9 E-UTRA CGI + */ + modulepar NRCellIdentity PX_NR_CELL_IDENTITY := hex2bit('123450102'H); + /** * @desc * @see ETSI TS 138 413 V16.12.0 (2023-05) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index de2257e..26ddefc 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3221,7 +3221,7 @@ module LibNGAP_Templates { in template (value) MDTPLMNList p_mDTPLMNList, in template (value) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, in template (value) Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME - ) modifies m_n2_HandoverRequest := { + ) := { procedureCode := id_HandoverResourceAllocation, criticality := reject, value_ := { @@ -3389,6 +3389,292 @@ module LibNGAP_Templates { } // End of group Send + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST + */ + template (present) InitiatingMessage mw_n2_HandoverRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) HandoverType p_handoverType := PX_HANDOVER_TYPE, + template (present) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), + template (present) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := ?, + template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, + template (present) SecurityContext p_securityContext := ?, + template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ?, + template (present) AllowedNSSAI p_allowedNSSAI := ?, + template (present) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer := ?, + template (present) GUAMI p_gUAMI := ? + ) := { + procedureCode := id_HandoverResourceAllocation, + criticality := reject, + value_ := { + HandoverRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityContext, + criticality := reject, + value_ := { SecurityContext := p_securityContext } + }, + { + id := id_PDUSessionResourceListHORqd, + criticality := reject, + value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_SourceToTarget_TransparentContainer, + criticality := reject, + value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + } + } + } + } + } // End of template mw_n2_HandoverRequest + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST + */ + template (present) InitiatingMessage mw_n2_HandoverRequest_full( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) HandoverType p_handoverType := PX_HANDOVER_TYPE, + template (present) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), + template (present) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := ?, + template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, + template (present) SecurityContext p_securityContext := ?, + template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ?, + template (present) AllowedNSSAI p_allowedNSSAI := ?, + template (present) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer := ?, + template (present) GUAMI p_gUAMI := ?, + template (present) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive := ?, + template (present) NewSecurityContextInd p_newSecurityContextInd := ?, + template (present) NAS_PDU p_nAS_PDU := ?, + template (present) TraceActivation p_traceActivation := ?, + template (present) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest := ?, + template (present) RedirectionVoiceFallback p_redirectionVoiceFallback := ?, + template (present) CNAssistedRANTuning p_cNAssistedRANTuning := ?, + template (present) SRVCCOperationPossible p_sRVCCOperationPossible := ?, + template (present) Enhanced_CoverageRestriction p_enhanced_CoverageRestriction := ?, + template (present) UE_DifferentiationInfo p_uE_DifferentiationInfo := ?, + template (present) NRV2XServicesAuthorized p_nRV2XServicesAuthorized := ?, + template (present) LTEV2XServicesAuthorized p_lTEV2XServicesAuthorized := ?, + template (present) NRUESidelinkAggregateMaximumBitrate p_nRUESidelinkAggregateMaximumBitrate := ?, + template (present) LTEUESidelinkAggregateMaximumBitrate p_lTEUESidelinkAggregateMaximumBitrate := ?, + template (present) PC5QoSParameters p_pC5QoSParameters := ?, + template (present) CEmodeBrestricted p_cEmodeBrestricted := ?, + template (present) UE_UP_CIoT_Support p_uE_UP_CIoT_Support := ?, + template (present) MDTPLMNList p_mDTPLMNList := ?, + template (present) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, + template (present) Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME + ) := { + procedureCode := id_HandoverResourceAllocation, + criticality := reject, + value_ := { + HandoverRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + { + id := id_CoreNetworkAssistanceInformationForInactive, + criticality := ignore, + value_ := { CoreNetworkAssistanceInformationForInactive := p_coreNetworkAssistanceInformationForInactive } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityContext, + criticality := reject, + value_ := { SecurityContext := p_securityContext } + }, + { + id := id_NewSecurityContextInd, + criticality := reject, + value_ := { NewSecurityContextInd := p_newSecurityContextInd } + }, + { + id := id_NASC, + criticality := reject, + value_ := { NAS_PDU := p_nAS_PDU } + }, + { + id := id_PDUSessionResourceListHORqd, + criticality := reject, + value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_TraceActivation, + criticality := ignore, + value_ := { TraceActivation := p_traceActivation } + }, + { + id := id_SourceToTarget_TransparentContainer, + criticality := reject, + value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } + }, + { + id := id_RRCInactiveTransitionReportRequest, + criticality := ignore, + value_ := { RRCInactiveTransitionReportRequest := p_rRCInactiveTransitionReportRequest } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, + { + id := id_RedirectionVoiceFallback, + criticality := ignore, + value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } + }, + { + id := id_CNAssistedRANTuning, + criticality := ignore, + value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } + }, + { + id := id_SRVCCOperationPossible, + criticality := ignore, + value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } + }, + { + id := id_Enhanced_CoverageRestriction, + criticality := ignore, + value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } + }, + { + id := id_UE_DifferentiationInfo, + criticality := ignore, + value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } + }, + { + id := id_NRV2XServicesAuthorized, + criticality := ignore, + value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } + }, + { + id := id_LTEV2XServicesAuthorized, + criticality := ignore, + value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } + }, + { + id := id_NRUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } + }, + { + id := id_LTEUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } + }, + { + id := id_PC5QoSParameters, + criticality := ignore, + value_ := { PC5QoSParameters := p_pC5QoSParameters } + }, + { + id := id_CEmodeBrestricted, + criticality := ignore, + value_ := { CEmodeBrestricted := p_cEmodeBrestricted } + }, + { + id := id_UE_UP_CIoT_Support, + criticality := ignore, + value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } + }, + { + id := id_ManagementBasedMDTPLMNList, + criticality := ignore, + value_ := { MDTPLMNList := p_mDTPLMNList } + }, + { + id := id_UERadioCapabilityID, + criticality := ignore, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_Extended_ConnectedTime, + criticality := ignore, + value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } + } + } + } + } + } // End of template mw_n2_HandoverRequest + + } // End of group Receive + + } // End of group HANDOVER_REQUEST + + group HANDOVER_FAILURE { + group Send { + + } + group Receive { /** @@ -3588,7 +3874,9 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_PathSwitchRequest( in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) UserLocationInformation p_userLocationInformation + in template (value) UserLocationInformation p_userLocationInformation, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) PDUSessionResourceToBeSwitchedDLList p_pDUSessionResourceToBeSwitchedDLList ) := { procedureCode := id_PathSwitchRequest, criticality := reject, @@ -3609,6 +3897,16 @@ module LibNGAP_Templates { id := id_UserLocationInformation, criticality := ignore, value_ := { UserLocationInformation := p_userLocationInformation } + }, + { + id := id_UESecurityCapabilities, + criticality := ignore, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_PDUSessionResourceToBeSwitchedDLList, + criticality := reject, + value_ := { PDUSessionResourceToBeSwitchedDLList := p_pDUSessionResourceToBeSwitchedDLList } } } } @@ -3625,7 +3923,9 @@ module LibNGAP_Templates { template (present) InitiatingMessage mw_n2_PathSwitchRequest( template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) UserLocationInformation p_userLocationInformation := ? + template (present) UserLocationInformation p_userLocationInformation := ?, + template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, + template (present) PDUSessionResourceToBeSwitchedDLList p_pDUSessionResourceToBeSwitchedDLList := ? ) := { procedureCode := id_PathSwitchRequest, criticality := reject, @@ -3646,6 +3946,16 @@ module LibNGAP_Templates { id := id_UserLocationInformation, criticality := ignore, value_ := { UserLocationInformation := p_userLocationInformation } + }, + { + id := id_UESecurityCapabilities, + criticality := ignore, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_PDUSessionResourceToBeSwitchedDLList, + criticality := reject, + value_ := { PDUSessionResourceToBeSwitchedDLList := p_pDUSessionResourceToBeSwitchedDLList } } } } @@ -3972,9 +4282,6 @@ module LibNGAP_Templates { group Send { - } // End of group Send - - group Receive { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.13 UPLINK RAN STATUS TRANSFER */ @@ -4008,6 +4315,9 @@ module LibNGAP_Templates { } } // End of template m_n2_UplinkRANStatusTransfer + } // End of group Send + + group Receive { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.13 UPLINK RAN STATUS TRANSFER @@ -12274,14 +12584,14 @@ module LibNGAP_Templates { } // End of template m_nPN_MobilityInformation_sNPN_MobilityInformation template (value) NPN_MobilityInformation m_nPN_MobilityInformation_pNI_NPN_MobilityInformation( - in template (value) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation - ) := { + in template (value) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation + ) := { pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation } // End of template m_nPN_MobilityInformation_pNI_NPN_MobilityInformation template (value) NPN_MobilityInformation m_nPN_MobilityInformation_choice_Extensions( - in template (value) NPN_MobilityInformation.choice_Extensions p_choice_Extensions - ) := { + in template (value) NPN_MobilityInformation.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_nPN_MobilityInformation_choice_Extensions @@ -12292,26 +12602,26 @@ module LibNGAP_Templates { } // End of template m_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance template (value) NPN_PagingAssistanceInformation m_nPN_PagingAssistanceInformation_choice_Extensions( - in template (value) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions - ) := { + in template (value) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_nPN_PagingAssistanceInformation_choice_Extensions template (value) NPN_Support m_nPN_Support_sNPN( - in template (value) NID p_sNPN - ) := { + in template (value) NID p_sNPN + ) := { sNPN := p_sNPN } // End of template m_nPN_Support_sNPN template (value) NPN_Support m_nPN_Support_choice_Extensions( - in template (value) NPN_Support.choice_Extensions p_choice_Extensions - ) := { + in template (value) NPN_Support.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_nPN_Support_choice_Extensions template (omit) NR_CGI m_nR_CGI( in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) NRCellIdentity p_nRCellIdentity, + in template (value) NRCellIdentity p_nRCellIdentity := PX_NR_CELL_IDENTITY, in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, @@ -15985,11 +16295,11 @@ module LibNGAP_Templates { template (omit) UserLocationInformationNR m_userLocationInformationNR( - in template (value) NR_CGI p_nR_CGI, - in template (value) TAI p_tAI, - in template (omit) TimeStamp p_timeStamp := omit, - in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) NR_CGI p_nR_CGI, + in template (value) TAI p_tAI, + in template (omit) TimeStamp p_timeStamp := omit, + in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit + ) := { nR_CGI := p_nR_CGI, tAI := p_tAI, timeStamp := p_timeStamp, -- GitLab From cbea40b20ffce89ffd319740fa4f28349e12bbec Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 29 May 2024 17:15:10 +0200 Subject: [PATCH 280/365] modified tc function due to new available templates --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 199 ++++++++++++----------------- 1 file changed, 80 insertions(+), 119 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index ba74a88..2b07fc1 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -125,14 +125,15 @@ module NGAP_TCFunctions { { (mw_pDUSessionResourceSetupItemSURes( ?,//template (present) PDUSessionID p_pDUSessionID, - //mw_pDUSessionResourceSetupResponseTransfer( - // ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - // *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - // *,//template SecurityResult p_securityResult := *, - // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, - // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * - // ), FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer - ?,//template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, + decmatch ( + mw_pDUSessionResourceSetupResponseTransfer( + ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + *,//template SecurityResult p_securityResult := *, + *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + ) + ),// Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * ) ) @@ -3712,7 +3713,7 @@ module NGAP_TCFunctions { -,//in template (omit) SD p_sD := omit, -//in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit ), - ?,//mw_pDUSessionResourceSetupRequestTransfer(?),OCTETSTRING + ?,//decmatch(mw_pDUSessionResourceSetupRequestTransfer(?)),//OCTETSTRING -,//in template (omit) NAS_PDU p_pDUSessionNAS_PDU := omit, -//in template (omit) PDUSessionResourceSetupItemSUReq.iE_Extensions p_iE_Extensions := omit ) @@ -3760,7 +3761,7 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceToReleaseItemRelCmd( PX_PDU_SESSION_ID, - ?,//mw_pDUSessionResourceReleaseCommandTransfer(?,-),OCTETSTRING + ?,//decmatch(mw_pDUSessionResourceReleaseCommandTransfer(?,-)),OCTETSTRING -//in template (omit) PDUSessionResourceToReleaseItemRelCmd.iE_Extensions p_iE_Extensions := omit ) } @@ -3807,7 +3808,7 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceModifyItemModReq( PX_PDU_SESSION_ID, - ?,//mw_pDUSessionResourceModifyRequestTransfer(*),OCTETSTRING + ?,//decmatch(mw_pDUSessionResourceModifyRequestTransfer(*)),OCTETSTRING -,//template NAS_PDU p_nAS_PDU := *, -//template PDUSessionResourceModifyItemModReq.iE_Extensions p_iE_Extensions := * ) @@ -3893,13 +3894,13 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceModifyItemModCfm( PX_PDU_SESSION_ID, - ?,//mw_pDUSessionResourceModifyConfirmTransfer( + ?,//decmatch(mw_pDUSessionResourceModifyConfirmTransfer( // ?,//template (present) QosFlowModifyConfirmList p_qosFlowModifyConfirmList := ?, // ?,//template (present) UPTransportLayerInformation p_uLNGU_UP_TNLInformation := ?, // -,//template UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := *, // -,//template QosFlowListWithCause p_qosFlowFailedToModifyList := *, // -//template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * - // ), OCTETSTRING + // )), OCTETSTRING -//template PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := * ) } @@ -4505,44 +4506,6 @@ module NGAP_TCFunctions { function f_TC_NGAP_AMF_IMP_01() runs on gNBNGAPComponent { // Local variables - /*// type record SupportedTAItem { - template (omit) SupportedTAItem m_ie_supportedTAItem(in template (value) TAC p_tAC, - in template (value) BroadcastPLMNList p_broadcastPLMNList, - in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit - ) := { - tAC := p_tAC, - broadcastPLMNList := p_broadcastPLMNList, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_supportedTAItem - // type octetstring TAC length (3); - template (value) TAC m_ie_tAC(in template (value) TAC p_val) := p_val; - // type record length (1 .. NGAP_Constants.maxnoofSliceItems) of SliceSupportItem SliceSupportList; - template (value) SliceSupportList m_ie_sliceSupportList(in template (value) SliceSupportList p_list) := p_list; - - // type record SliceSupportItem { - template (omit) SliceSupportItem m_ie_sliceSupportItem( - in template (value) S_NSSAI p_S_NSSAI, - in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit - ) := { - s_NSSAI := p_S_NSSAI, - iE_Extensions :=p_iE_Extensions - } // End of template m_ie_sliceSupportItem - // type record S_NSSAI { - template (omit) S_NSSAI m_ie_sNSSAI( - in template (value) SST p_sST, - in template (value) SD p_sD, - in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit - ) := { - sST := p_sST,//'00'O, - sD := p_sD,//'000000'O, - iE_Extensions := p_iE_Extensions - } // End of template m_ie_sNSSAI - // type octetstring SST length (1); - template (value) SST m_ie_sST(in SST p_val := '00'O) := p_val; - // type octetstring SD length (3); - template (value) SD m_ie_sD(in SD p_val := '000000'O) := p_val; - */ - // Preamble f_NGAP_gnb_init(); //f_NGAP_gnb_UE_Register(); @@ -4552,81 +4515,79 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // f_send_NGAP_PDU( - // m_ngap_initMsg( - // m_n2_NGSetupRequest( - // m_globalRANNodeID_globalGNB_ID( - // m_ie_globalGnbId( - // PX_PLMN_IDENTITY, - // '0000000000000000000000'B,//in template (value) bitstring p_gnbId, - // -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit - // ) - // ), - // { - // m_ie_supportedTAItem( - // m_ie_tAC('000000'O), - // m_ie_broadcastPLMNList( - // { - // m_ie_broadcastPLMNItem( - // m_ie_pLMNIdentity('00f110'O), - // m_ie_sliceSupportList( - // { - // m_ie_sliceSupportItem( - // m_ie_sNSSAI( - // m_ie_sST('00'O), - // m_ie_sD('000000'O) - // ) - // ) - // } - // ) - - // ) - // } - // ) - // ) - // }, - // PX_PAGING_DRX - // ) - // ) - // ); - - f_recv_NGAP_PDU( - mw_ngap_succMsg( - mw_n2_NGSetupResponse( - ?, - { - mw_servedGUAMIItem( - mw_gUAMI( - ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, - ?,//template (present) AMFRegionID p_aMFRegionID := ?, - ?,//template (present) AMFSetID p_aMFSetID := ?, - ?,//template (present) AMFPointer p_aMFPointer := ?, - *//template GUAMI.iE_Extensions p_iE_Extensions := * - ),//template (present) GUAMI p_gUAMI := ?, - *,//template AMFName p_backupAMFName := *, - *//template ServedGUAMIItem.iE_Extensions p_iE_Extensions := * + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_NGSetupRequest( + m_globalRANNodeID_globalGNB_ID( + m_ie_globalGnbId( + PX_PLMN_IDENTITY, + '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit ) - },//template (present) ServedGUAMIList p_servedGUAMIList := ?, - ?,//template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + ), { - mw_pLMNSupportItem( - ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + m_supportedTAItem( + '000000'O,//PX_TAC, { - mw_sliceSupportItem( - mw_s_NSSAI( - ?,//template (present) SST p_sST := ?, - *,//template SD p_sD := *, - *//template S_NSSAI.iE_Extensions p_iE_Extensions := * - ),//template (present) S_NSSAI p_s_NSSAI := ?, - ?//template SliceSupportItem.iE_Extensions p_iE_Extensions := * + m_ie_broadcastPLMNItem( + PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), + { + m_sliceSupportItem( + m_s_NSSAI( + PX_SST, + -,// in template (omit) SD p_sD := omit, + -// in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ), + -//in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) + } ) - },//template (present) SliceSupportList p_sliceSupportList := ?, - *//template PLMNSupportItem.iE_Extensions p_iE_Extensions := * + },//in template (value) BroadcastPLMNList p_broadcastPLMNList, + -//in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit ) - }//template (present) PLMNSupportList p_plmnSuppList := ? + }, + PX_PAGING_DRX ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_NGSetupResponse( + ?, + { + mw_servedGUAMIItem( + mw_gUAMI( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + ?,//template (present) AMFRegionID p_aMFRegionID := ?, + ?,//template (present) AMFSetID p_aMFSetID := ?, + ?,//template (present) AMFPointer p_aMFPointer := ?, + *//template GUAMI.iE_Extensions p_iE_Extensions := * + ),//template (present) GUAMI p_gUAMI := ?, + *,//template AMFName p_backupAMFName := *, + *//template ServedGUAMIItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) ServedGUAMIList p_servedGUAMIList := ?, + ?,//template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + { + mw_pLMNSupportItem( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + { + mw_sliceSupportItem( + mw_s_NSSAI( + ?,//template (present) SST p_sST := ?, + *,//template SD p_sD := *, + *//template S_NSSAI.iE_Extensions p_iE_Extensions := * + ),//template (present) S_NSSAI p_s_NSSAI := ?, + ?//template SliceSupportItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) SliceSupportList p_sliceSupportList := ?, + *//template PLMNSupportItem.iE_Extensions p_iE_Extensions := * + ) + }//template (present) PLMNSupportList p_plmnSuppList := ? ) - ); + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From 1e651757ca0b7b0b72f21d3530f49269204145bb Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 29 May 2024 18:03:21 +0200 Subject: [PATCH 281/365] modified tc function due to new available templates --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 319 +++++++++++++---------------- 1 file changed, 138 insertions(+), 181 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 04c47d7..d8f4373 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4105,96 +4105,6 @@ module NGAP_TCFunctions { } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ - - /** - * @desc Testcase function for TP_NGAP_AMF_CMP_10 - */ - function f_TC_NGAP_AMF_CMP_10() runs on gNBNGAPComponent { - - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - f_NGAP_amf_UE_Has_Suspended_Context(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_UEContextResumeRequest( - -, - -, - - - ) - ) - ); - - f_recv_NGAP_PDU( - mw_ngap_succMsg( - mw_n2_UEContextResumeResponse( - ?, - ? - ))); - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_CMP_10 - - /** - * @desc Testcase function for TP_NGAP_AMF_CMP_11 - */ - function f_TC_NGAP_AMF_CMP_11() runs on gNBNGAPComponent { - - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - f_NGAP_amf_UE_Has_Suspended_Context(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_UEContextResumeRequest( - -, - -, - - - ) - ) - ); - - f_recv_NGAP_PDU( - mw_ngap_unsuccMsg( - mw_n2_UEContextResumeFailure( - ?, - ?, - ? - ))); - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_CMP_11 - } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 @@ -4326,15 +4236,11 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - f_NGAP_gnb_UE_Handover_Required(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - f_recv_NGAP_PDU( - mw_ngap_initMsg( - mw_n2_HandoverRequest - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4362,25 +4268,11 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - f_NGAP_gnb_UE_EstablishedInitialContext(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_PathSwitchRequest( - -, -, - m_uPTransportLayerInformation_userLocationInformationNR( - m_userLocationInformationNR( - m_nR_CGI, - m_tAI - ))))); - - f_recv_NGAP_PDU( - mw_ngap_succMsg( - mw_n2_PathSwitchRequestAcknowledge - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4401,25 +4293,11 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - f_NGAP_gnb_UE_EstablishedInitialContext(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_PathSwitchRequest( - -, -, - m_uPTransportLayerInformation_userLocationInformationNR( - m_userLocationInformationNR( - m_nR_CGI, - m_tAI - ))))); - - f_recv_NGAP_PDU( - mw_ngap_unsuccMsg( - mw_n2_PathSwitchRequestFailure - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4722,7 +4600,7 @@ module NGAP_TCFunctions { } // End of function f_TC_NGAP_AMF_IMP_01 /** - * @desc Testcase function for TC_NGAP_AMF_IMF_02 + * @desc Testcase function for TC_NGAP_AMF_IMP_02 */ function f_TC_NGAP_AMF_IMP_02() runs on gNBNGAPComponent { // Local variables @@ -4736,44 +4614,42 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // f_send_NGAP_PDU( - // m_ngap_initMsg( - // m_n2_NGSetupRequest( - // m_globalRANNodeID_globalGNB_ID( - // m_ie_globalGnbId( - // PX_PLMN_IDENTITY, - // '0000000000000000000000'B,//in template (value) bitstring p_gnbId, - // -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit - // ) - // ), - // { - // m_ie_supportedTAItem( - // m_ie_tAC('000000'O), - // m_ie_broadcastPLMNList( - // { - // m_ie_broadcastPLMNItem( - // m_ie_pLMNIdentity('00f110'O), - // m_ie_sliceSupportList( - // { - // m_ie_sliceSupportItem( - // m_ie_sNSSAI( - // m_ie_sST('00'O), - // m_ie_sD('000000'O) - // ) - // ) - // } - // ) - - // ) - // } - // ) - // ) - // }, - // PX_PAGING_DRX - // ) - // ) - // ); - + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_NGSetupRequest( + m_globalRANNodeID_globalGNB_ID( + m_ie_globalGnbId( + PX_PLMN_IDENTITY, + '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + ) + ), + { + m_supportedTAItem( + '000000'O,//PX_TAC, + { + m_ie_broadcastPLMNItem( + PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), + { + m_sliceSupportItem( + m_s_NSSAI( + PX_SST, + -,// in template (omit) SD p_sD := omit, + -// in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ), + -//in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) + } + ) + },//in template (value) BroadcastPLMNList p_broadcastPLMNList, + -//in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ) + }, + PX_PAGING_DRX + ) + ) + ); + f_recv_NGAP_PDU( mw_ngap_unsuccMsg( mw_n2_NGSetupFailure( @@ -5020,9 +4896,29 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_RANConfigurationUpdate( - PX_RAN_NODE_NAME - //FIXXME: mising template params due to TP , Supported_TA_list,.... + m_n2_RANConfigurationUpdate_SupportedTAList( + //template (value) SupportedTAList + { + m_supportedTAItem( + '000000'O,//PX_TAC, + { + m_ie_broadcastPLMNItem( + PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), + { + m_sliceSupportItem( + m_s_NSSAI( + PX_SST, + -,// in template (omit) SD p_sD := omit, + -// in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ), + -//in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) + } + ) + },//in template (value) BroadcastPLMNList p_broadcastPLMNList, + -//in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ) + } ) ) ); @@ -5060,9 +4956,29 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_RANConfigurationUpdate( - PX_RAN_NODE_NAME - //FIXXME: mising template params due to TP , Supported_TA_list,.... + m_n2_RANConfigurationUpdate_SupportedTAList( + //template (value) SupportedTAList + { + m_supportedTAItem( + '000000'O,//PX_TAC, + { + m_ie_broadcastPLMNItem( + PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), + { + m_sliceSupportItem( + m_s_NSSAI( + PX_SST, + -,// in template (omit) SD p_sD := omit, + -// in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ), + -//in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) + } + ) + },//in template (value) BroadcastPLMNList p_broadcastPLMNList, + -//in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ) + } ) ) ); @@ -5190,17 +5106,58 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // f_send_NGAP_PDU( - // m_ngap_initMsg( - // m_n2_InitialContextSetupRequest( - // PX_AMF_UE_NGAP_ID, - // PX_RAN_UE_NGAP_ID, - // *//in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq - //FIXME missing template for PDUSessionResourceSetupListCxtReq - // ) - // ) - // ); - + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_InitialContextSetupRequest( + -, + -, + m_gUAMI, + { + { + PX_PDU_SESSION_ID, + omit, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))) + ), + omit + } + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + m_uESecurityCapabilities, + - + ) + ) + ); + f_recv_NGAP_PDU( mw_ngap_initMsg( mw_n2_ErrorIndication_ids( -- GitLab From d3b1bc6dd852a292c0b76d84f49bbb4b902dd404 Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 29 May 2024 18:01:12 +0200 Subject: [PATCH 282/365] merge conflict mw_n2_LocationReportingFailureIndication --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 214 ++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 137 +++++++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 15 +- 3 files changed, 359 insertions(+), 7 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index d8f4373..c0a9b6b 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4078,18 +4078,232 @@ module NGAP_TCFunctions { } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_02 + */ + function f_TC_NGAP_AMF_CMP_02() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a UE context release command!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEContextReleaseCommand + ( + mw_uE_NGAP_IDs_uE_NGAP_ID_pair + ( + mw_uE_NGAP_ID_pair + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + * + ) + ), + ? + ))); + + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_02 + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_03 + */ + function f_TC_NGAP_AMF_CMP_03() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + // f_NGAP_gnb_UE_PDU_ResourceSetup(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a UE context release command!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEContextReleaseCommand + ( + mw_uE_NGAP_IDs_aMF_UE_NGAP_ID + ( + PX_AMF_UE_NGAP_ID + ), + ? + ) + )); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_03 } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_04 + */ + function f_TC_NGAP_AMF_CMP_04() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + // f_NGAP_gnb_UE_PDU_ResourceSetup(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a PDU UE context modification procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEContextModificationRequest + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + )); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_04 + } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_05 + */ + function f_TC_NGAP_AMF_CMP_05() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a PDU UE context modification procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_ConnectionEstablishmentIndication + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + )); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_05 } // End of group Connection_Establishment_Indication //8.3.7 group AMF_CP_Relocation_Indication{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_06 + */ + function f_TC_NGAP_AMF_CMP_06() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a AMF CP relocation indication procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_AMFCPRelocationIndication + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + )); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_06 } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index b8a5c92..497a612 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -2217,18 +2217,155 @@ module NGAP_TestCases { } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ + + /** + * @desc "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE." + */ + testcase TC_NGAP_AMF_CMP_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_02 + + /** + * @desc "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND where both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE are not available." + */ + testcase TC_NGAP_AMF_CMP_03() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_03 } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ + + /** + * @desc "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs." + */ + testcase TC_NGAP_AMF_CMP_04() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_04 + } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ + + /** + * @desc "Verify that the IUT can send a CONNECTION ESTABLISHMENT INDICATION that contains mandatory IEs." + */ + testcase TC_NGAP_AMF_CMP_05() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_6)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_6' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_05 } // End of group Connection_Establishment_Indication //8.3.7 group AMF_CP_Relocation_Indication{ + + /** + * @desc "Verify that the IUT can send a AMF CP RELOCATION INDICATION that contains mandatory IEs." + */ + testcase TC_NGAP_AMF_CMP_06() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_7)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_6' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_06()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_06 + } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 26ddefc..482944d 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -7647,10 +7647,10 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.2 LOCATION REPORTING FAILURE INDICATION */ template (present) InitiatingMessage mw_n2_LocationReportingFailureIndication( - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - template (present) Cause p_cause := ? - ) := { + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) CauseRadioNetwork p_cause + ) := { procedureCode := id_LocationReportingFailureIndication, criticality := ignore, value_ := { @@ -7667,13 +7667,14 @@ module LibNGAP_Templates { value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { - id := id_Cause, + id := id_CauseRadioNetwork, criticality := ignore, - value_ := { Cause := p_cause} + value_ := { id_CauseRadioNetwork := p_causeRadioNetwork} } - } } } + } +>>>>>>> 1e8a41e (new Testcase, function and template for TC_NGAP_AMF_CMP_02, TC_NGAP_AMF_CMP_03, TC_NGAP_AMF_CMP_04, TC_NGAP_AMF_CMP_05, TC_NGAP_AMF_CMP_06) } // End of template mw_n2_LocationReportingFailureIndication } -- GitLab From cf405583fd92aca33dcec279e0f301e14cbb2844 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 08:40:54 +0200 Subject: [PATCH 283/365] Restore lost code in Templates & test function --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 48 +++++++++++++++++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 15 ++++---- 2 files changed, 55 insertions(+), 8 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index c0a9b6b..4947b51 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4455,6 +4455,10 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_HandoverRequest + )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4487,6 +4491,28 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PathSwitchRequest( + -, -, + m_uPTransportLayerInformation_userLocationInformationNR( + m_userLocationInformationNR( + m_nR_CGI, + m_tAI + )), + m_uESecurityCapabilities, + { + m_pDUSessionResourceToBeSwitchedDLItem( + -, + ''O // FIXME FSCOM Shall be bit2oct(encvalue(m_pathSwitchRequestTransfer)) + ) + } + ))); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_PathSwitchRequestAcknowledge + )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4512,6 +4538,28 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_PathSwitchRequest( + -, -, + m_uPTransportLayerInformation_userLocationInformationNR( + m_userLocationInformationNR( + m_nR_CGI, + m_tAI + )), + m_uESecurityCapabilities, + { + m_pDUSessionResourceToBeSwitchedDLItem( + -, + ''O // FIXME FSCOM Shall be bit2oct(encvalue(m_pathSwitchRequestTransfer)) + ) + } + ))); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_PathSwitchRequestFailure + )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 482944d..e7b4c86 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -7633,7 +7633,7 @@ module LibNGAP_Templates { { id := id_Cause, criticality := ignore, - value_ := { Cause := p_cause} + value_ := { Cause := p_cause } } } } @@ -7647,10 +7647,10 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.2 LOCATION REPORTING FAILURE INDICATION */ template (present) InitiatingMessage mw_n2_LocationReportingFailureIndication( - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - template (present) CauseRadioNetwork p_cause - ) := { + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + template (present) Cause p_cause + ) := { procedureCode := id_LocationReportingFailureIndication, criticality := ignore, value_ := { @@ -7667,14 +7667,13 @@ module LibNGAP_Templates { value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { - id := id_CauseRadioNetwork, + id := id_Cause, criticality := ignore, - value_ := { id_CauseRadioNetwork := p_causeRadioNetwork} + value_ := { Cause := p_cause } } } } } ->>>>>>> 1e8a41e (new Testcase, function and template for TC_NGAP_AMF_CMP_02, TC_NGAP_AMF_CMP_03, TC_NGAP_AMF_CMP_04, TC_NGAP_AMF_CMP_05, TC_NGAP_AMF_CMP_06) } // End of template mw_n2_LocationReportingFailureIndication } -- GitLab From 0b3995b890a5d24e9f4ae17a5618fae926a37afd Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 30 May 2024 08:53:23 +0200 Subject: [PATCH 284/365] restore missing functions TC_NGAP_AMF_CMP_10 and TC_NGAP_AMF_CMP_11 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 90 ++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 4947b51..8f83fb0 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4319,6 +4319,96 @@ module NGAP_TCFunctions { } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_10 + */ + function f_TC_NGAP_AMF_CMP_10() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_amf_UE_Has_Suspended_Context(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextResumeRequest( + -, + -, + - + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContextResumeResponse( + ?, + ? + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_10 + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_11 + */ + function f_TC_NGAP_AMF_CMP_11() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_amf_UE_Has_Suspended_Context(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextResumeRequest( + -, + -, + - + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_UEContextResumeFailure( + ?, + ?, + ? + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_11 + } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 -- GitLab From 4e94816c14756c94a9e4c22fbe01ebd6b86d55ef Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 08:57:58 +0200 Subject: [PATCH 285/365] modified PX_TAC to PX_TACode --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index d8f4373..3b49b3d 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4527,7 +4527,7 @@ module NGAP_TCFunctions { ), { m_supportedTAItem( - '000000'O,//PX_TAC, + PX_TACode, { m_ie_broadcastPLMNItem( PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), @@ -4626,7 +4626,7 @@ module NGAP_TCFunctions { ), { m_supportedTAItem( - '000000'O,//PX_TAC, + PX_TACode, { m_ie_broadcastPLMNItem( PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), @@ -4900,7 +4900,7 @@ module NGAP_TCFunctions { //template (value) SupportedTAList { m_supportedTAItem( - '000000'O,//PX_TAC, + PX_TACode, { m_ie_broadcastPLMNItem( PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), @@ -4960,7 +4960,7 @@ module NGAP_TCFunctions { //template (value) SupportedTAList { m_supportedTAItem( - '000000'O,//PX_TAC, + PX_TACode, { m_ie_broadcastPLMNItem( PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), -- GitLab From dfed565c1a6f6ce527ddcb78b9e32de065b199e2 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 08:58:22 +0200 Subject: [PATCH 286/365] modified PX_TAC to PX_TACode --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 19 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 358 ++---------------------- 2 files changed, 30 insertions(+), 347 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 7a1e7e0..3ae8db2 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -140,12 +140,6 @@ module LibNGAP_Pixits { */ modulepar EUTRACellIdentity PX_EUTRA_CELL_IDENTITY := hex2bit('1234501'H); - /** - * @desc The leftmost bits of the E-UTRA Cell Identity IE correspond to the ng-eNB ID - * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.9 E-UTRA CGI - */ - modulepar NRCellIdentity PX_NR_CELL_IDENTITY := hex2bit('123450102'H); - /** * @desc * @see ETSI TS 138 413 V16.12.0 (2023-05) @@ -286,12 +280,6 @@ module LibNGAP_Pixits { */ modulepar AMFSetID PX_AMF_SET_ID:= '0000000100'B - /** - * @desc To uniquely identify a Tracking Area Code - * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.3.10 TAC - */ - modulepar TAC PX_TAC := '000000'O; - /** * @desc * @see ETSI TS 133 401 @@ -469,7 +457,12 @@ module LibNGAP_Pixits { * @desc The TAC is used to uniquely identify a Tracking Area Code. * @see ETSI TS 136 413 Clause 9.2.3.7 TAC */ - //modulepar TAC PX_TACode := '0000'O; + /** + * @desc To uniquely identify a Tracking Area Code + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.3.10 TAC + */ + //modulepar TAC PX_TAC := '000000'O; + modulepar TAC PX_TACode := '000000'O; /** * @desc The MME Group ID. diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 26ddefc..d561737 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3221,7 +3221,7 @@ module LibNGAP_Templates { in template (value) MDTPLMNList p_mDTPLMNList, in template (value) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, in template (value) Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME - ) := { + ) modifies m_n2_HandoverRequest := { procedureCode := id_HandoverResourceAllocation, criticality := reject, value_ := { @@ -3389,292 +3389,6 @@ module LibNGAP_Templates { } // End of group Send - group Receive { - - /** - * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST - */ - template (present) InitiatingMessage mw_n2_HandoverRequest( - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - template (present) HandoverType p_handoverType := PX_HANDOVER_TYPE, - template (present) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), - template (present) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := ?, - template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, - template (present) SecurityContext p_securityContext := ?, - template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ?, - template (present) AllowedNSSAI p_allowedNSSAI := ?, - template (present) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer := ?, - template (present) GUAMI p_gUAMI := ? - ) := { - procedureCode := id_HandoverResourceAllocation, - criticality := reject, - value_ := { - HandoverRequest := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_HandoverType, - criticality := reject, - value_ := { HandoverType := p_handoverType } - }, - { - id := id_Cause, - criticality := ignore, - value_ := { Cause := p_cause } - }, - { - id := id_UEAggregateMaximumBitRate, - criticality := reject, - value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } - }, - { - id := id_UESecurityCapabilities, - criticality := reject, - value_ := { UESecurityCapabilities := p_uESecurityCapabilities } - }, - { - id := id_SecurityContext, - criticality := reject, - value_ := { SecurityContext := p_securityContext } - }, - { - id := id_PDUSessionResourceListHORqd, - criticality := reject, - value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } - }, - { - id := id_AllowedNSSAI, - criticality := reject, - value_ := { AllowedNSSAI := p_allowedNSSAI } - }, - { - id := id_SourceToTarget_TransparentContainer, - criticality := reject, - value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } - }, - { - id := id_GUAMI, - criticality := reject, - value_ := { GUAMI := p_gUAMI } - } - } - } - } - } // End of template mw_n2_HandoverRequest - - /** - * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST - */ - template (present) InitiatingMessage mw_n2_HandoverRequest_full( - template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - template (present) HandoverType p_handoverType := PX_HANDOVER_TYPE, - template (present) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), - template (present) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := ?, - template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, - template (present) SecurityContext p_securityContext := ?, - template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ?, - template (present) AllowedNSSAI p_allowedNSSAI := ?, - template (present) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer := ?, - template (present) GUAMI p_gUAMI := ?, - template (present) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive := ?, - template (present) NewSecurityContextInd p_newSecurityContextInd := ?, - template (present) NAS_PDU p_nAS_PDU := ?, - template (present) TraceActivation p_traceActivation := ?, - template (present) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest := ?, - template (present) RedirectionVoiceFallback p_redirectionVoiceFallback := ?, - template (present) CNAssistedRANTuning p_cNAssistedRANTuning := ?, - template (present) SRVCCOperationPossible p_sRVCCOperationPossible := ?, - template (present) Enhanced_CoverageRestriction p_enhanced_CoverageRestriction := ?, - template (present) UE_DifferentiationInfo p_uE_DifferentiationInfo := ?, - template (present) NRV2XServicesAuthorized p_nRV2XServicesAuthorized := ?, - template (present) LTEV2XServicesAuthorized p_lTEV2XServicesAuthorized := ?, - template (present) NRUESidelinkAggregateMaximumBitrate p_nRUESidelinkAggregateMaximumBitrate := ?, - template (present) LTEUESidelinkAggregateMaximumBitrate p_lTEUESidelinkAggregateMaximumBitrate := ?, - template (present) PC5QoSParameters p_pC5QoSParameters := ?, - template (present) CEmodeBrestricted p_cEmodeBrestricted := ?, - template (present) UE_UP_CIoT_Support p_uE_UP_CIoT_Support := ?, - template (present) MDTPLMNList p_mDTPLMNList := ?, - template (present) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, - template (present) Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME - ) := { - procedureCode := id_HandoverResourceAllocation, - criticality := reject, - value_ := { - HandoverRequest := { - protocolIEs := { - { - id := id_AMF_UE_NGAP_ID, - criticality := reject, - value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } - }, - { - id := id_HandoverType, - criticality := reject, - value_ := { HandoverType := p_handoverType } - }, - { - id := id_Cause, - criticality := ignore, - value_ := { Cause := p_cause } - }, - { - id := id_UEAggregateMaximumBitRate, - criticality := reject, - value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } - }, - { - id := id_CoreNetworkAssistanceInformationForInactive, - criticality := ignore, - value_ := { CoreNetworkAssistanceInformationForInactive := p_coreNetworkAssistanceInformationForInactive } - }, - { - id := id_UEAggregateMaximumBitRate, - criticality := reject, - value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } - }, - { - id := id_UESecurityCapabilities, - criticality := reject, - value_ := { UESecurityCapabilities := p_uESecurityCapabilities } - }, - { - id := id_SecurityContext, - criticality := reject, - value_ := { SecurityContext := p_securityContext } - }, - { - id := id_NewSecurityContextInd, - criticality := reject, - value_ := { NewSecurityContextInd := p_newSecurityContextInd } - }, - { - id := id_NASC, - criticality := reject, - value_ := { NAS_PDU := p_nAS_PDU } - }, - { - id := id_PDUSessionResourceListHORqd, - criticality := reject, - value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } - }, - { - id := id_AllowedNSSAI, - criticality := reject, - value_ := { AllowedNSSAI := p_allowedNSSAI } - }, - { - id := id_TraceActivation, - criticality := ignore, - value_ := { TraceActivation := p_traceActivation } - }, - { - id := id_SourceToTarget_TransparentContainer, - criticality := reject, - value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } - }, - { - id := id_RRCInactiveTransitionReportRequest, - criticality := ignore, - value_ := { RRCInactiveTransitionReportRequest := p_rRCInactiveTransitionReportRequest } - }, - { - id := id_GUAMI, - criticality := reject, - value_ := { GUAMI := p_gUAMI } - }, - { - id := id_RedirectionVoiceFallback, - criticality := ignore, - value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } - }, - { - id := id_CNAssistedRANTuning, - criticality := ignore, - value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } - }, - { - id := id_SRVCCOperationPossible, - criticality := ignore, - value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } - }, - { - id := id_Enhanced_CoverageRestriction, - criticality := ignore, - value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } - }, - { - id := id_UE_DifferentiationInfo, - criticality := ignore, - value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } - }, - { - id := id_NRV2XServicesAuthorized, - criticality := ignore, - value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } - }, - { - id := id_LTEV2XServicesAuthorized, - criticality := ignore, - value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } - }, - { - id := id_NRUESidelinkAggregateMaximumBitrate, - criticality := ignore, - value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } - }, - { - id := id_LTEUESidelinkAggregateMaximumBitrate, - criticality := ignore, - value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } - }, - { - id := id_PC5QoSParameters, - criticality := ignore, - value_ := { PC5QoSParameters := p_pC5QoSParameters } - }, - { - id := id_CEmodeBrestricted, - criticality := ignore, - value_ := { CEmodeBrestricted := p_cEmodeBrestricted } - }, - { - id := id_UE_UP_CIoT_Support, - criticality := ignore, - value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } - }, - { - id := id_ManagementBasedMDTPLMNList, - criticality := ignore, - value_ := { MDTPLMNList := p_mDTPLMNList } - }, - { - id := id_UERadioCapabilityID, - criticality := ignore, - value_ := { UERadioCapabilityID := p_uERadioCapabilityID } - }, - { - id := id_Extended_ConnectedTime, - criticality := ignore, - value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } - } - } - } - } - } // End of template mw_n2_HandoverRequest - - } // End of group Receive - - } // End of group HANDOVER_REQUEST - - group HANDOVER_FAILURE { - group Send { - - } - group Receive { /** @@ -3874,9 +3588,7 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_PathSwitchRequest( in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) UserLocationInformation p_userLocationInformation, - in template (value) UESecurityCapabilities p_uESecurityCapabilities, - in template (value) PDUSessionResourceToBeSwitchedDLList p_pDUSessionResourceToBeSwitchedDLList + in template (value) UserLocationInformation p_userLocationInformation ) := { procedureCode := id_PathSwitchRequest, criticality := reject, @@ -3897,16 +3609,6 @@ module LibNGAP_Templates { id := id_UserLocationInformation, criticality := ignore, value_ := { UserLocationInformation := p_userLocationInformation } - }, - { - id := id_UESecurityCapabilities, - criticality := ignore, - value_ := { UESecurityCapabilities := p_uESecurityCapabilities } - }, - { - id := id_PDUSessionResourceToBeSwitchedDLList, - criticality := reject, - value_ := { PDUSessionResourceToBeSwitchedDLList := p_pDUSessionResourceToBeSwitchedDLList } } } } @@ -3923,9 +3625,7 @@ module LibNGAP_Templates { template (present) InitiatingMessage mw_n2_PathSwitchRequest( template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) UserLocationInformation p_userLocationInformation := ?, - template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, - template (present) PDUSessionResourceToBeSwitchedDLList p_pDUSessionResourceToBeSwitchedDLList := ? + template (present) UserLocationInformation p_userLocationInformation := ? ) := { procedureCode := id_PathSwitchRequest, criticality := reject, @@ -3946,16 +3646,6 @@ module LibNGAP_Templates { id := id_UserLocationInformation, criticality := ignore, value_ := { UserLocationInformation := p_userLocationInformation } - }, - { - id := id_UESecurityCapabilities, - criticality := ignore, - value_ := { UESecurityCapabilities := p_uESecurityCapabilities } - }, - { - id := id_PDUSessionResourceToBeSwitchedDLList, - criticality := reject, - value_ := { PDUSessionResourceToBeSwitchedDLList := p_pDUSessionResourceToBeSwitchedDLList } } } } @@ -4282,6 +3972,9 @@ module LibNGAP_Templates { group Send { + } // End of group Send + + group Receive { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.13 UPLINK RAN STATUS TRANSFER */ @@ -4315,9 +4008,6 @@ module LibNGAP_Templates { } } // End of template m_n2_UplinkRANStatusTransfer - } // End of group Send - - group Receive { /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.13 UPLINK RAN STATUS TRANSFER @@ -12584,14 +12274,14 @@ module LibNGAP_Templates { } // End of template m_nPN_MobilityInformation_sNPN_MobilityInformation template (value) NPN_MobilityInformation m_nPN_MobilityInformation_pNI_NPN_MobilityInformation( - in template (value) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation - ) := { + in template (value) PNI_NPN_MobilityInformation p_pNI_NPN_MobilityInformation + ) := { pNI_NPN_MobilityInformation := p_pNI_NPN_MobilityInformation } // End of template m_nPN_MobilityInformation_pNI_NPN_MobilityInformation template (value) NPN_MobilityInformation m_nPN_MobilityInformation_choice_Extensions( - in template (value) NPN_MobilityInformation.choice_Extensions p_choice_Extensions - ) := { + in template (value) NPN_MobilityInformation.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_nPN_MobilityInformation_choice_Extensions @@ -12602,26 +12292,26 @@ module LibNGAP_Templates { } // End of template m_nPN_PagingAssistanceInformation_pNI_NPN_PagingAssistance template (value) NPN_PagingAssistanceInformation m_nPN_PagingAssistanceInformation_choice_Extensions( - in template (value) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions - ) := { + in template (value) NPN_PagingAssistanceInformation.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_nPN_PagingAssistanceInformation_choice_Extensions template (value) NPN_Support m_nPN_Support_sNPN( - in template (value) NID p_sNPN - ) := { + in template (value) NID p_sNPN + ) := { sNPN := p_sNPN } // End of template m_nPN_Support_sNPN template (value) NPN_Support m_nPN_Support_choice_Extensions( - in template (value) NPN_Support.choice_Extensions p_choice_Extensions - ) := { + in template (value) NPN_Support.choice_Extensions p_choice_Extensions + ) := { choice_Extensions := p_choice_Extensions } // End of template m_nPN_Support_choice_Extensions template (omit) NR_CGI m_nR_CGI( in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) NRCellIdentity p_nRCellIdentity := PX_NR_CELL_IDENTITY, + in template (value) NRCellIdentity p_nRCellIdentity, in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, @@ -15262,7 +14952,7 @@ module LibNGAP_Templates { template (value) SRVCCOperationPossible m_sRVCCOperationPossible(in SRVCCOperationPossible p_value := possible) := p_value; template (omit) SupportedTAItem m_supportedTAItem( - in template (value) TAC p_tAC := PX_TAC, + in template (value) TAC p_tAC := PX_TACode, in template (value) BroadcastPLMNList p_broadcastPLMNList, in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit ) := { @@ -15315,7 +15005,7 @@ module LibNGAP_Templates { template (omit) TAI m_tAI( in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) TAC p_tAC := PX_TAC, + in template (value) TAC p_tAC := PX_TACode, in template (omit) TAI.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, @@ -16295,11 +15985,11 @@ module LibNGAP_Templates { template (omit) UserLocationInformationNR m_userLocationInformationNR( - in template (value) NR_CGI p_nR_CGI, - in template (value) TAI p_tAI, - in template (omit) TimeStamp p_timeStamp := omit, - in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit - ) := { + in template (value) NR_CGI p_nR_CGI, + in template (value) TAI p_tAI, + in template (omit) TimeStamp p_timeStamp := omit, + in template (omit) UserLocationInformationNR.iE_Extensions p_iE_Extensions := omit + ) := { nR_CGI := p_nR_CGI, tAI := p_tAI, timeStamp := p_timeStamp, -- GitLab From 4018a539fe32ac537eeec34016904fa6be7044ee Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 09:05:27 +0200 Subject: [PATCH 287/365] Add f_TC_NGAP_AMF_MMP_06/07 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index e4b4e85..18e8af2 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4679,6 +4679,15 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_HandoverCancel + )); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_HandoverCancelAcknowledge + )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4711,6 +4720,11 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + action("the IUT entity indicate a Downlink RAN Status Transfer procedure"); + f_recv_NGAP_PDU( + m_ngap_initMsg( + mw_n2_DownlinkRANStatusTransfer + )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From 097ea53f6fb6dd529315099c80f68e1a9948c29f Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 09:27:16 +0200 Subject: [PATCH 288/365] Restore lost code in Templates & PIXITs --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 1 + ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 345 +++++++++++++++++++++++- 2 files changed, 343 insertions(+), 3 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 3ae8db2..dda165a 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -140,6 +140,7 @@ module LibNGAP_Pixits { */ modulepar EUTRACellIdentity PX_EUTRA_CELL_IDENTITY := hex2bit('1234501'H); + modulepar NRCellIdentity PX_NR_CELL_IDENTITY := hex2bit('123450123'H); /** * @desc * @see ETSI TS 138 413 V16.12.0 (2023-05) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index b2a9265..a5280d5 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3389,6 +3389,321 @@ module LibNGAP_Templates { } // End of group Send + + + group Receive { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST + */ + template (present) InitiatingMessage mw_n2_HandoverRequest( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) HandoverType p_handoverType := PX_HANDOVER_TYPE, + template (present) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), + template (present) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := ?, + template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, + template (present) SecurityContext p_securityContext := ?, + template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ?, + template (present) AllowedNSSAI p_allowedNSSAI := ?, + template (present) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer := ?, + template (present) GUAMI p_gUAMI := ? + ) := { + procedureCode := id_HandoverResourceAllocation, + criticality := reject, + value_ := { + HandoverRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityContext, + criticality := reject, + value_ := { SecurityContext := p_securityContext } + }, + { + id := id_PDUSessionResourceListHORqd, + criticality := reject, + value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_SourceToTarget_TransparentContainer, + criticality := reject, + value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + } + } + } + } + } // End of template mw_n2_HandoverRequest + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.4 HANDOVER REQUEST + */ + template (present) InitiatingMessage mw_n2_HandoverRequest_full( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + template (present) HandoverType p_handoverType := PX_HANDOVER_TYPE, + template (present) Cause p_cause := m_cause_radioNetwork(PX_CAUSE_HANDOVER_REQUIRED), + template (present) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := ?, + template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, + template (present) SecurityContext p_securityContext := ?, + template (present) PDUSessionResourceSetupListHOReq p_pDUSessionResourceSetupListHOReq := ?, + template (present) AllowedNSSAI p_allowedNSSAI := ?, + template (present) SourceToTarget_TransparentContainer p_SourceToTarget_TransparentContainer := ?, + template (present) GUAMI p_gUAMI := ?, + template (present) CoreNetworkAssistanceInformationForInactive p_coreNetworkAssistanceInformationForInactive := ?, + template (present) NewSecurityContextInd p_newSecurityContextInd := ?, + template (present) NAS_PDU p_nAS_PDU := ?, + template (present) TraceActivation p_traceActivation := ?, + template (present) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest := ?, + template (present) RedirectionVoiceFallback p_redirectionVoiceFallback := ?, + template (present) CNAssistedRANTuning p_cNAssistedRANTuning := ?, + template (present) SRVCCOperationPossible p_sRVCCOperationPossible := ?, + template (present) Enhanced_CoverageRestriction p_enhanced_CoverageRestriction := ?, + template (present) UE_DifferentiationInfo p_uE_DifferentiationInfo := ?, + template (present) NRV2XServicesAuthorized p_nRV2XServicesAuthorized := ?, + template (present) LTEV2XServicesAuthorized p_lTEV2XServicesAuthorized := ?, + template (present) NRUESidelinkAggregateMaximumBitrate p_nRUESidelinkAggregateMaximumBitrate := ?, + template (present) LTEUESidelinkAggregateMaximumBitrate p_lTEUESidelinkAggregateMaximumBitrate := ?, + template (present) PC5QoSParameters p_pC5QoSParameters := ?, + template (present) CEmodeBrestricted p_cEmodeBrestricted := ?, + template (present) UE_UP_CIoT_Support p_uE_UP_CIoT_Support := ?, + template (present) MDTPLMNList p_mDTPLMNList := ?, + template (present) UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, + template (present) Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME + ) := { + procedureCode := id_HandoverResourceAllocation, + criticality := reject, + value_ := { + HandoverRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_HandoverType, + criticality := reject, + value_ := { HandoverType := p_handoverType } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + { + id := id_CoreNetworkAssistanceInformationForInactive, + criticality := ignore, + value_ := { CoreNetworkAssistanceInformationForInactive := p_coreNetworkAssistanceInformationForInactive } + }, + { + id := id_UEAggregateMaximumBitRate, + criticality := reject, + value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityContext, + criticality := reject, + value_ := { SecurityContext := p_securityContext } + }, + { + id := id_NewSecurityContextInd, + criticality := reject, + value_ := { NewSecurityContextInd := p_newSecurityContextInd } + }, + { + id := id_NASC, + criticality := reject, + value_ := { NAS_PDU := p_nAS_PDU } + }, + { + id := id_PDUSessionResourceListHORqd, + criticality := reject, + value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_TraceActivation, + criticality := ignore, + value_ := { TraceActivation := p_traceActivation } + }, + { + id := id_SourceToTarget_TransparentContainer, + criticality := reject, + value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } + }, + { + id := id_RRCInactiveTransitionReportRequest, + criticality := ignore, + value_ := { RRCInactiveTransitionReportRequest := p_rRCInactiveTransitionReportRequest } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, + { + id := id_RedirectionVoiceFallback, + criticality := ignore, + value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } + }, + { + id := id_CNAssistedRANTuning, + criticality := ignore, + value_ := { CNAssistedRANTuning := p_cNAssistedRANTuning } + }, + { + id := id_SRVCCOperationPossible, + criticality := ignore, + value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } + }, + { + id := id_Enhanced_CoverageRestriction, + criticality := ignore, + value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } + }, + { + id := id_UE_DifferentiationInfo, + criticality := ignore, + value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } + }, + { + id := id_NRV2XServicesAuthorized, + criticality := ignore, + value_ := { NRV2XServicesAuthorized := p_nRV2XServicesAuthorized } + }, + { + id := id_LTEV2XServicesAuthorized, + criticality := ignore, + value_ := { LTEV2XServicesAuthorized := p_lTEV2XServicesAuthorized } + }, + { + id := id_NRUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } + }, + { + id := id_LTEUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } + }, + { + id := id_PC5QoSParameters, + criticality := ignore, + value_ := { PC5QoSParameters := p_pC5QoSParameters } + }, + { + id := id_CEmodeBrestricted, + criticality := ignore, + value_ := { CEmodeBrestricted := p_cEmodeBrestricted } + }, + { + id := id_UE_UP_CIoT_Support, + criticality := ignore, + value_ := { UE_UP_CIoT_Support := p_uE_UP_CIoT_Support } + }, + { + id := id_ManagementBasedMDTPLMNList, + criticality := ignore, + value_ := { MDTPLMNList := p_mDTPLMNList } + }, + { + id := id_UERadioCapabilityID, + criticality := ignore, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + }, + { + id := id_Extended_ConnectedTime, + criticality := ignore, + value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } + } + } + } + } + } // End of template mw_n2_HandoverRequest + + } // End of group Receive + + } // End of group HANDOVER_REQUEST + + group HANDOVER_FAILURE { + group Send { + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.3.6 HANDOVER FAILURE + */ + template (value) UnsuccessfulOutcome m_n2_HandoverFailure( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID, + in template (value) Cause p_cause + ) := { + procedureCode := id_HandoverPreparation, + criticality := reject, + value_ := { + HandoverFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template m_n2_HandoverFailure + + } + group Receive { /** @@ -3588,7 +3903,9 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_PathSwitchRequest( in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) UserLocationInformation p_userLocationInformation + in template (value) UserLocationInformation p_userLocationInformation, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) PDUSessionResourceToBeSwitchedDLList p_pDUSessionResourceToBeSwitchedDLList ) := { procedureCode := id_PathSwitchRequest, criticality := reject, @@ -3609,6 +3926,16 @@ module LibNGAP_Templates { id := id_UserLocationInformation, criticality := ignore, value_ := { UserLocationInformation := p_userLocationInformation } + }, + { + id := id_UESecurityCapabilities, + criticality := ignore, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_PDUSessionResourceToBeSwitchedDLList, + criticality := reject, + value_ := { PDUSessionResourceToBeSwitchedDLList := p_pDUSessionResourceToBeSwitchedDLList } } } } @@ -3625,7 +3952,9 @@ module LibNGAP_Templates { template (present) InitiatingMessage mw_n2_PathSwitchRequest( template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, - template (present) UserLocationInformation p_userLocationInformation := ? + template (present) UserLocationInformation p_userLocationInformation := ?, + template (present) UESecurityCapabilities p_uESecurityCapabilities := ?, + template (present) PDUSessionResourceToBeSwitchedDLList p_pDUSessionResourceToBeSwitchedDLList := ? ) := { procedureCode := id_PathSwitchRequest, criticality := reject, @@ -3646,6 +3975,16 @@ module LibNGAP_Templates { id := id_UserLocationInformation, criticality := ignore, value_ := { UserLocationInformation := p_userLocationInformation } + }, + { + id := id_UESecurityCapabilities, + criticality := ignore, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_PDUSessionResourceToBeSwitchedDLList, + criticality := reject, + value_ := { PDUSessionResourceToBeSwitchedDLList := p_pDUSessionResourceToBeSwitchedDLList } } } } @@ -12311,7 +12650,7 @@ module LibNGAP_Templates { template (omit) NR_CGI m_nR_CGI( in template (value) PLMNIdentity p_pLMNIdentity := PX_PLMN_IDENTITY, - in template (value) NRCellIdentity p_nRCellIdentity, + in template (value) NRCellIdentity p_nRCellIdentity := PX_NR_CELL_IDENTITY, in template (omit) NR_CGI.iE_Extensions p_iE_Extensions := omit ) := { pLMNIdentity := p_pLMNIdentity, -- GitLab From 6cf67acbca45156fcf53ed75449963c04bf01d3b Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 09:40:45 +0200 Subject: [PATCH 289/365] Add f_TC_NGAP_AMF_MMP_08 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 21 +++++++++++++++++++-- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 14 +++++++------- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 18e8af2..bd58e01 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4723,8 +4723,20 @@ module NGAP_TCFunctions { action("the IUT entity indicate a Downlink RAN Status Transfer procedure"); f_recv_NGAP_PDU( m_ngap_initMsg( - mw_n2_DownlinkRANStatusTransfer - )); + mw_n2_DownlinkRANStatusTransfer( + -, + -, + mw_rANStatusTransfer_TransparentContainer( + { + *, + mw_dRBsSubjectToStatusTransferItem( + PX_DRB_ID, + mw_dRBStatusUL_dRBStatusUL12 + ), + * + } + ) + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4754,6 +4766,11 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + action("the IUT entity indicate the initiation \"of an UE handover success procedure\""); + f_recv_NGAP_PDU( + m_ngap_initMsg( + mw_n2_HandoverSuccess + )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index a5280d5..efe2278 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -17493,11 +17493,11 @@ module LibNGAP_Templates { template (present) DirectForwardingPathAvailability mw_directForwardingPathAvailability(template (present) DirectForwardingPathAvailability p_value := direct_path_available) := p_value; template (present) DRBsSubjectToStatusTransferItem mw_dRBsSubjectToStatusTransferItem( - in template (present) DRB_ID p_dRB_ID := ?, - in template (present) DRBStatusUL p_dRBStatusUL := ?, - in template (present) DRBStatusDL p_dRBStatusDL := ?, - in template DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := * - ) := { + in template (present) DRB_ID p_dRB_ID := ?, + in template (present) DRBStatusUL p_dRBStatusUL := ?, + in template (present) DRBStatusDL p_dRBStatusDL := ?, + in template DRBsSubjectToStatusTransferItem.iE_Extension p_iE_Extension := * + ) := { dRB_ID := p_dRB_ID, dRBStatusUL := p_dRBStatusUL, dRBStatusDL := p_dRBStatusDL, @@ -17505,8 +17505,8 @@ module LibNGAP_Templates { } // End of template mw_dRBsSubjectToStatusTransferItem template (present) DRBsSubjectToStatusTransferItem.iE_Extension mw_dRBsSubjectToStatusTransferItem_associatedQosFlowList( - template (present) AssociatedQosFlowList p_AssociatedQosFlowList := ? - ) := { + template (present) AssociatedQosFlowList p_AssociatedQosFlowList := ? + ) := { { id := id_OldAssociatedQosFlowList_ULendmarkerexpected, criticality := ignore, -- GitLab From 91bc79a88747a0543ed94781e4a6ea8cd142471d Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 09:53:22 +0200 Subject: [PATCH 290/365] Add f_TC_NGAP_AMF_MMP_09 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 38 ++++++++++++++++++++++-------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index bd58e01..7c89053 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4727,16 +4727,16 @@ module NGAP_TCFunctions { -, -, mw_rANStatusTransfer_TransparentContainer( - { - *, - mw_dRBsSubjectToStatusTransferItem( - PX_DRB_ID, - mw_dRBStatusUL_dRBStatusUL12 - ), - * - } - ) - ))); + { + *, + mw_dRBsSubjectToStatusTransferItem( + PX_DRB_ID, + mw_dRBStatusUL_dRBStatusUL12, + mw_dRBStatusDL_dRBStatusDL12 + ), + * + } + )))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4803,6 +4803,24 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + action("the IUT entity indicate a Downlink RAN Early Status Transfer procedure"); + f_recv_NGAP_PDU( + m_ngap_initMsg( + mw_n2_DownlinkRANEarlyStatusTransfer( + -, + -, + mw_earlyStatusTransfer_TransparentContainer( + mw_procedureStageChoice_firstDLCount( + mw_firstDLCount( + { + *, + mw_dRBsSubjectToEarlyStatusTransfer_Item( + PX_DRB_ID, + mw_dRBStatusDL_dRBStatusDL12 + ), + * + } + )))))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From 6d1297ae1655e15d27289f8d6cbf4e90cd849b37 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 10:04:23 +0200 Subject: [PATCH 291/365] Create skeletons for TC_NGAP_AMF_NAS_xx; Re-organize etc files --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 81 ++++++++++++++++++++++++------ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 57 +++++++++++++++++++++ 2 files changed, 124 insertions(+), 14 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 7c89053..046411b 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4807,19 +4807,19 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( m_ngap_initMsg( mw_n2_DownlinkRANEarlyStatusTransfer( - -, - -, - mw_earlyStatusTransfer_TransparentContainer( - mw_procedureStageChoice_firstDLCount( - mw_firstDLCount( - { - *, - mw_dRBsSubjectToEarlyStatusTransfer_Item( - PX_DRB_ID, - mw_dRBStatusDL_dRBStatusDL12 - ), - * - } + -, + -, + mw_earlyStatusTransfer_TransparentContainer( + mw_procedureStageChoice_firstDLCount( + mw_firstDLCount( + { + *, + mw_dRBsSubjectToEarlyStatusTransfer_Item( + PX_DRB_ID, + mw_dRBStatusDL_dRBStatusDL12 + ), + * + } )))))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); @@ -4886,6 +4886,32 @@ module NGAP_TCFunctions { } // End of group Initial_UE_Message //8.6.2 group Downlink_NAS_Transport{ + + /** + * @desc Testcase function for TC_NGAP_AMF_NAS_01 + */ + function f_TC_NGAP_AMF_NAS_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_NAS_01 + } // End of group Downlink_NAS_Transport //8.6.3 group Uplink_NAS_Transport{ @@ -4895,7 +4921,34 @@ module NGAP_TCFunctions { } // End of group NAS_Non_Delivery_Indication //8.6.5 group Rerout_NAS_Request{ - } // End of group Rerout_NAS_Request + + + /** + * @desc Testcase function for TC_NGAP_AMF_NAS_02 + */ + function f_TC_NGAP_AMF_NAS_02() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_NAS_02 + + } // End of group Rerout_NAS_Request } // End of group Transport_of_NAS_Messages_Procedures //8.7 group Interface_Management_Procedures{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 497a612..9c98de5 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -2762,6 +2762,34 @@ module NGAP_TestCases { } // End of group Initial_UE_Message //8.6.2 group Downlink_NAS_Transport{ + + /** + * @desc "Verify that the IUT can send an DOWNLINK NAS TRANSPORT message to carry NAS information over the NG interface." + */ + testcase TC_NGAP_AMF_NAS_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_5_2)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_5_2' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_NAS_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_NAS_01 + } // End of group Downlink_NAS_Transport //8.6.3 group Uplink_NAS_Transport{ @@ -2771,6 +2799,35 @@ module NGAP_TestCases { } // End of group NAS_Non_Delivery_Indication //8.6.5 group Rerout_NAS_Request{ + + + /** + * @desc "Verify that the IUT can send an REROUTE NAS REQUEST message to reroute the INITIAL UE MESSAGE message to another AMF." + */ + testcase TC_NGAP_AMF_NAS_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_5_5)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_5_5' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_NAS_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_NAS_02 + } // End of group Rerout_NAS_Request } // End of group Transport_of_NAS_Messages_Procedures //8.7 -- GitLab From b12702ee587b3a74ba0ad8a609f6df598c03a4fd Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 10:04:37 +0200 Subject: [PATCH 292/365] added TPs AMF_NTP* --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 445 ++++++----------------------- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 247 ++++------------ 2 files changed, 144 insertions(+), 548 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index e4b4e85..b304f92 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4078,232 +4078,18 @@ module NGAP_TCFunctions { } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ - - /** - * @desc Testcase function for TP_NGAP_AMF_CMP_02 - */ - function f_TC_NGAP_AMF_CMP_02() runs on gNBNGAPComponent { - - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - //f_NGAP_gnb_UE_PDU_ResourceSetup(); - - // TODO: hasEstablishedInitialContext - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - action("Trigger a UE context release command!"); - - f_recv_NGAP_PDU( - mw_ngap_initMsg( - mw_n2_UEContextReleaseCommand - ( - mw_uE_NGAP_IDs_uE_NGAP_ID_pair - ( - mw_uE_NGAP_ID_pair - ( - PX_AMF_UE_NGAP_ID, - PX_RAN_UE_NGAP_ID, - * - ) - ), - ? - ))); - - - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_CMP_02 - - /** - * @desc Testcase function for TP_NGAP_AMF_CMP_03 - */ - function f_TC_NGAP_AMF_CMP_03() runs on gNBNGAPComponent { - - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - // f_NGAP_gnb_UE_PDU_ResourceSetup(); - - // TODO: hasEstablishedInitialContext - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - action("Trigger a UE context release command!"); - - f_recv_NGAP_PDU( - mw_ngap_initMsg( - mw_n2_UEContextReleaseCommand - ( - mw_uE_NGAP_IDs_aMF_UE_NGAP_ID - ( - PX_AMF_UE_NGAP_ID - ), - ? - ) - )); - - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_CMP_03 } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ - - /** - * @desc Testcase function for TP_NGAP_AMF_CMP_04 - */ - function f_TC_NGAP_AMF_CMP_04() runs on gNBNGAPComponent { - - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - // f_NGAP_gnb_UE_PDU_ResourceSetup(); - - // TODO: hasEstablishedInitialContext - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - action("Trigger a PDU UE context modification procedure!"); - - f_recv_NGAP_PDU( - mw_ngap_initMsg( - mw_n2_UEContextModificationRequest - ( - PX_AMF_UE_NGAP_ID, - PX_RAN_UE_NGAP_ID - ) - )); - - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_CMP_04 - } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ - - /** - * @desc Testcase function for TP_NGAP_AMF_CMP_05 - */ - function f_TC_NGAP_AMF_CMP_05() runs on gNBNGAPComponent { - - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - action("Trigger a PDU UE context modification procedure!"); - - f_recv_NGAP_PDU( - mw_ngap_initMsg( - mw_n2_ConnectionEstablishmentIndication - ( - PX_AMF_UE_NGAP_ID, - PX_RAN_UE_NGAP_ID - ) - )); - - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_CMP_05 } // End of group Connection_Establishment_Indication //8.3.7 group AMF_CP_Relocation_Indication{ - - /** - * @desc Testcase function for TP_NGAP_AMF_CMP_06 - */ - function f_TC_NGAP_AMF_CMP_06() runs on gNBNGAPComponent { - - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - - // TODO: hasEstablishedInitialContext - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - action("Trigger a AMF CP relocation indication procedure!"); - - f_recv_NGAP_PDU( - mw_ngap_initMsg( - mw_n2_AMFCPRelocationIndication - ( - PX_AMF_UE_NGAP_ID, - PX_RAN_UE_NGAP_ID - ) - )); - - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_CMP_06 } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ @@ -4319,96 +4105,6 @@ module NGAP_TCFunctions { } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ - - /** - * @desc Testcase function for TP_NGAP_AMF_CMP_10 - */ - function f_TC_NGAP_AMF_CMP_10() runs on gNBNGAPComponent { - - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - f_NGAP_amf_UE_Has_Suspended_Context(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_UEContextResumeRequest( - -, - -, - - - ) - ) - ); - - f_recv_NGAP_PDU( - mw_ngap_succMsg( - mw_n2_UEContextResumeResponse( - ?, - ? - ))); - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_CMP_10 - - /** - * @desc Testcase function for TP_NGAP_AMF_CMP_11 - */ - function f_TC_NGAP_AMF_CMP_11() runs on gNBNGAPComponent { - - // Local variables - - // Preamble - f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); - f_NGAP_amf_UE_Has_Suspended_Context(); - - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); - - - // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_UEContextResumeRequest( - -, - -, - - - ) - ) - ); - - f_recv_NGAP_PDU( - mw_ngap_unsuccMsg( - mw_n2_UEContextResumeFailure( - ?, - ?, - ? - ))); - - f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); - - // Postamble - f_postamble_NGAP_gNB(); - f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); - log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); - - } // End of function f_TC_NGAP_AMF_CMP_11 - } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 @@ -4545,10 +4241,6 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - f_recv_NGAP_PDU( - mw_ngap_initMsg( - mw_n2_HandoverRequest - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4581,28 +4273,6 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_PathSwitchRequest( - -, -, - m_uPTransportLayerInformation_userLocationInformationNR( - m_userLocationInformationNR( - m_nR_CGI, - m_tAI - )), - m_uESecurityCapabilities, - { - m_pDUSessionResourceToBeSwitchedDLItem( - -, - ''O // FIXME FSCOM Shall be bit2oct(encvalue(m_pathSwitchRequestTransfer)) - ) - } - ))); - - f_recv_NGAP_PDU( - mw_ngap_succMsg( - mw_n2_PathSwitchRequestAcknowledge - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4628,28 +4298,6 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - f_send_NGAP_PDU( - m_ngap_initMsg( - m_n2_PathSwitchRequest( - -, -, - m_uPTransportLayerInformation_userLocationInformationNR( - m_userLocationInformationNR( - m_nR_CGI, - m_tAI - )), - m_uESecurityCapabilities, - { - m_pDUSessionResourceToBeSwitchedDLItem( - -, - ''O // FIXME FSCOM Shall be bit2oct(encvalue(m_pathSwitchRequestTransfer)) - ) - } - ))); - - f_recv_NGAP_PDU( - mw_ngap_unsuccMsg( - mw_n2_PathSwitchRequestFailure - )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4873,7 +4521,7 @@ module NGAP_TCFunctions { m_globalRANNodeID_globalGNB_ID( m_ie_globalGnbId( PX_PLMN_IDENTITY, - '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + PX_GNB_ID,//'0000000000000000000000'B,//in template (value) bitstring p_gnbId, -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit ) ), @@ -4972,7 +4620,7 @@ module NGAP_TCFunctions { m_globalRANNodeID_globalGNB_ID( m_ie_globalGnbId( PX_PLMN_IDENTITY, - '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + PX_GNB_ID,//'0000000000000000000000'B,//in template (value) bitstring p_gnbId, -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit ) ), @@ -5553,8 +5201,20 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_initMsg( mw_n2_AMFStatusIndication( - ?//template (present) UnavailableGUAMIList p_unavailableGUAMIList := ? - //FIXME: when UnavailableGUAMIList template ready + { + mw_unavailableGUAMIItem( + mw_gUAMI( + ?, + ?, + ?, + ?, + * + ),//template (present) GUAMI p_gUAMI := ?, + *,//template TimerApproachForGUAMIRemoval p_timerApproachForGUAMIRemoval := *, + *,//template AMFName p_backupAMFName := *, + *//template UnavailableGUAMIItem.iE_Extensions p_iE_Extensions := * + ) + } ) ) ); @@ -5743,6 +5403,79 @@ module NGAP_TCFunctions { } // End of group Warning_Message_Transmission_Procedures //8.10 group NRPPa_Transport_Procedures{ + + /** + * @desc Testcase function for TC_NGAP_aMF_NTP_01 + */ + function f_TC_NGAP_AMF_NTP_01() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT !"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_DownlinkUEAssociatedNRPPaTransport( + ?,//template (present) AMF_UE_NGAP_ID p_AMF_UE_NGAP_ID := ?, + ?,//template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ?, + ?,//template (present) RoutingID p_routingID := ?, + ?//template (present) NRPPa_PDU p_nRPPa_PDU := ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_NTP_01 + + /** + * @desc Testcase function for TC_NGAP_aMF_NTP_02 + */ + function f_TC_NGAP_AMF_NTP_02() runs on gNBNGAPComponent { + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + // Body + action("Trigger DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT !"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_DownlinkNonUEAssociatedNRPPaTransport( + ?,//template (present) RoutingID p_routingID := ?, + ?//template (present) NRPPa_PDU p_nRPPa_PDU := ? + ) + ) + ); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_AMF(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_NTP_02 + } // End of group NRPPa_Transport_Procedures //8.11 group Trace_Procedures{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 497a612..8942462 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -2217,155 +2217,18 @@ module NGAP_TestCases { } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ - - /** - * @desc "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE." - */ - testcase TC_NGAP_AMF_CMP_02() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_3)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_3' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_02()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_CMP_02 - - /** - * @desc "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND where both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE are not available." - */ - testcase TC_NGAP_AMF_CMP_03() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_3)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_3' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_03()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_CMP_03 } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ - - /** - * @desc "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs." - */ - testcase TC_NGAP_AMF_CMP_04() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_4)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_4' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_04()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_CMP_04 - } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ - - /** - * @desc "Verify that the IUT can send a CONNECTION ESTABLISHMENT INDICATION that contains mandatory IEs." - */ - testcase TC_NGAP_AMF_CMP_05() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_6)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_6' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_05()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_CMP_05 } // End of group Connection_Establishment_Indication //8.3.7 group AMF_CP_Relocation_Indication{ - - /** - * @desc "Verify that the IUT can send a AMF CP RELOCATION INDICATION that contains mandatory IEs." - */ - testcase TC_NGAP_AMF_CMP_06() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_7)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_6' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_06()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_CMP_06 - } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ @@ -2381,61 +2244,6 @@ module NGAP_TestCases { } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ - - /** - * @desc "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." - */ - testcase TC_NGAP_AMF_CMP_10() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_12)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_12' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_10()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_CMP_10 - - /** - * @desc "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME FAILURE with failing to resume UE context." - */ - testcase TC_NGAP_AMF_CMP_11() runs on gNBNGAPComponent system TestAdapter { - - // Local variables - var gNBNGAPComponent v_ngap_gnb; - - // Test control - if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_12)){ - log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_12' shall be set to true for executing the TC. ***"); - stop; - } - - // Test component configuration - f_cf_NGAP_gNB_Up(v_ngap_gnb); - - // Start - v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_11()); - - // synchronize PTC on 1 sychronization points - f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); - - f_cf_Down/*gNBoraMF*/(); - - } // End of testcase TC_NGAP_AMF_CMP_11 - } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 @@ -3214,6 +3022,61 @@ module NGAP_TestCases { } // End of group Warning_Message_Transmission_Procedures //8.10 group NRPPa_Transport_Procedures{ + + /** + * @desc "Verify that the IUT can send a DOWNLINK UE ASSOCIATED NRPPA TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + */ + testcase TC_NGAP_AMF_NTP_01() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_9_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_9_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_NTP_01()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_NTP_01 + + /** + * @desc "Verify that the IUT can send a DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + */ + testcase TC_NGAP_AMF_NTP_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_9_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_9_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_NTP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_NTP_02 + } // End of group NRPPa_Transport_Procedures //8.11 group Trace_Procedures{ -- GitLab From 3bedfc1a0780cb79492cb476b6d9a91f97a1a7ec Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 10:20:18 +0200 Subject: [PATCH 293/365] Implement TC_NGAP_AMF_NAS_01 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 19 +++++++++++++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 4 ++-- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 83a164f..e94693e 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4585,6 +4585,25 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_initialUeMessage( + -, + ''O, // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???)) + m_uPTransportLayerInformation_userLocationInformationNR( + m_userLocationInformationNR( + m_nR_CGI, + m_tAI + )) + ))); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_DownlinkNASTransport( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + ''O // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???))) + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index efe2278..d5648e9 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -4775,7 +4775,7 @@ module LibNGAP_Templates { template (value) InitiatingMessage m_n2_initialUeMessage( in template (value) RAN_UE_NGAP_ID p_RANUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) NAS_PDU p_nasPdu, - in template (value) UserLocationInformation p_UeLocInf, + in template (value) UserLocationInformation p_ueLocInf, in template (value) RRCEstablishmentCause p_rrcEstCause := PX_RRC_ESTABLISHMENT_CAUSE ) := { procedureCode := id_InitialUEMessage, @@ -4796,7 +4796,7 @@ module LibNGAP_Templates { { id := id_UserLocationInformation, criticality := reject, - value_ := { UserLocationInformation := p_UeLocInf } + value_ := { UserLocationInformation := p_ueLocInf } }, { id := id_RRCEstablishmentCause, -- GitLab From c4160ddff0d10ed71be7111528cfe7c673bc703a Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 10:25:50 +0200 Subject: [PATCH 294/365] Implement TC_NGAP_AMF_NAS_02 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index e94693e..b48676f 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4549,6 +4549,25 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_initialUeMessage( + -, + ''O, // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???)) + m_uPTransportLayerInformation_userLocationInformationNR( + m_userLocationInformationNR( + m_nR_CGI, + m_tAI + )) + ))); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_RerouteNASRequest( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + ''O // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???))) + ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -4570,7 +4589,6 @@ module NGAP_TCFunctions { //8.6.5 group Rerout_NAS_Request{ - /** * @desc Testcase function for TC_NGAP_AMF_NAS_02 */ -- GitLab From 3996f5190126c43e4326433c4d2fffbb4e9ea491 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 10:30:08 +0200 Subject: [PATCH 295/365] Implement TC_NGAP_AMF_NAS_02 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index b48676f..8751d4b 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4608,11 +4608,11 @@ module NGAP_TCFunctions { m_n2_initialUeMessage( -, ''O, // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???)) - m_uPTransportLayerInformation_userLocationInformationNR( - m_userLocationInformationNR( - m_nR_CGI, - m_tAI - )) + m_uPTransportLayerInformation_userLocationInformationEUTRA( + m_userLocationInformationEUTRA( + m_uUTRA_CGI, + m_tAI + )) ))); f_recv_NGAP_PDU( -- GitLab From 84f5791be5566e6b8b700696525680a2bb2fcd4f Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 30 May 2024 10:53:22 +0200 Subject: [PATCH 296/365] restore lost TCs and test functions *_AMF_CMP_02-06 and *_AMF_CMP_10-11 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 312 +++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 197 ++++++++++++++++++ 2 files changed, 509 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 8751d4b..248d967 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4078,18 +4078,239 @@ module NGAP_TCFunctions { } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_02 + */ + function f_TC_NGAP_AMF_CMP_02() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + //f_NGAP_gnb_UE_PDU_ResourceSetup(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a UE context release command!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEContextReleaseCommand + ( + mw_uE_NGAP_IDs_uE_NGAP_ID_pair + ( + mw_uE_NGAP_ID_pair + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + * + ) + ), + ? + ))); + + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_02 + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_03 + */ + function f_TC_NGAP_AMF_CMP_03() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + // f_NGAP_gnb_UE_PDU_ResourceSetup(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a UE context release command!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEContextReleaseCommand + ( + mw_uE_NGAP_IDs_aMF_UE_NGAP_ID + ( + PX_AMF_UE_NGAP_ID + ), + ? + ) + )); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_03 + + } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_04 + */ + function f_TC_NGAP_AMF_CMP_04() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + // f_NGAP_gnb_UE_PDU_ResourceSetup(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a PDU UE context modification procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEContextModificationRequest + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + )); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_04 + + } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_05 + */ + function f_TC_NGAP_AMF_CMP_05() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a PDU UE context modification procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_ConnectionEstablishmentIndication + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + )); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_05 + + } // End of group Connection_Establishment_Indication //8.3.7 group AMF_CP_Relocation_Indication{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_06 + */ + function f_TC_NGAP_AMF_CMP_06() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + action("Trigger a AMF CP relocation indication procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_AMFCPRelocationIndication + ( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + )); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_06 + + } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ @@ -4105,6 +4326,97 @@ module NGAP_TCFunctions { } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_10 + */ + function f_TC_NGAP_AMF_CMP_10() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_amf_UE_Has_Suspended_Context(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextResumeRequest( + -, + -, + - + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContextResumeResponse( + ?, + ? + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_10 + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_11 + */ + function f_TC_NGAP_AMF_CMP_11() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_amf_UE_Has_Suspended_Context(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextResumeRequest( + -, + -, + - + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_UEContextResumeFailure( + ?, + ?, + ? + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_11 + + } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index f8ab05d..23edba4 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -2217,18 +2217,159 @@ module NGAP_TestCases { } // End of group UE_Context_Release_Request_NG_RAN_node_initiated //8.3.3 group UE_Context_Release_AMF_initiated{ + + /** + * @desc "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE." + */ + testcase TC_NGAP_AMF_CMP_02() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_02()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_02 + + /** + * @desc "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND where both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE are not available." + */ + testcase TC_NGAP_AMF_CMP_03() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_3)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_3' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_03()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_03 + + } // End of group UE_Context_Release_AMF_initiated //8.3.4 group UE_Context_Modification{ + + /** + * @desc "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs." + */ + testcase TC_NGAP_AMF_CMP_04() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_4)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_4' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_04 + } // End of group UE_Context_Modification //8.3.5 group RRC_Inactive_Transition_Report{ } // End of group RRC_Inactive_Transition_Report //8.3.6 group Connection_Establishment_Indication{ + + /** + * @desc "Verify that the IUT can send a CONNECTION ESTABLISHMENT INDICATION that contains mandatory IEs." + */ + testcase TC_NGAP_AMF_CMP_05() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_6)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_6' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_05 + } // End of group Connection_Establishment_Indication //8.3.7 group AMF_CP_Relocation_Indication{ + + /** + * @desc "Verify that the IUT can send a AMF CP RELOCATION INDICATION that contains mandatory IEs." + */ + testcase TC_NGAP_AMF_CMP_06() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_7)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_6' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_06()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_06 + + } // End of group AMF_CP_Relocation_Indication //8.3.8 group RAN_CP_Relocation_Indication{ @@ -2244,6 +2385,62 @@ module NGAP_TestCases { } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ + + /** + * @desc "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." + */ + testcase TC_NGAP_AMF_CMP_10() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_12)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_12' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_10()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_10 + + /** + * @desc "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME FAILURE with failing to resume UE context." + */ + testcase TC_NGAP_AMF_CMP_11() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_12)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_12' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_11()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_11 + + } // End of group UE_Context_Resume } // End of group UE_Context_Management_Procedures //8.4 -- GitLab From e4b21e06245c16272c948ea746d1b6c20aa1eee9 Mon Sep 17 00:00:00 2001 From: ldtke Date: Thu, 30 May 2024 10:55:25 +0200 Subject: [PATCH 297/365] add testcase and function for TC_NGAP_AMF_CMP_07 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 57 ++++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 27 ++++++++++++++ 2 files changed, 84 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 248d967..5272f00 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4317,6 +4317,63 @@ module NGAP_TCFunctions { } // End of group RAN_CP_Relocation_Indication //8.3.9 group Retrieve_UE_Information{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_07 + */ + function f_TC_NGAP_AMF_CMP_07() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + + // TODO: hasEstablishedInitialContext + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_RetrieveUEInformation + ( + m_fiveG_S_TMSI // FiveG_S_TMSI + ( + PX_AMF_SET_ID, + PX_AMF_POINTER, + '00000001'O, + omit + ) + ) + )); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UEInformationTransfer + ( + mw_fiveG_S_TMSI + ( + PX_AMF_SET_ID, + PX_AMF_POINTER, + ?, + * + ) + ) + )); + + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_07 } // End of group Retrieve_UE_Information //8.3.10 group UE_Information_Transfer{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 23edba4..a1bda37 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -2376,6 +2376,33 @@ module NGAP_TestCases { } // End of group RAN_CP_Relocation_Indication //8.3.9 group Retrieve_UE_Information{ + + /** + * @desc "Verify that the IUT can successfully request UE information from the AMF." + */ + testcase TC_NGAP_AMF_CMP_07() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_10)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_10' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_07()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_07 } // End of group Retrieve_UE_Information //8.3.10 group UE_Information_Transfer{ -- GitLab From 9996cabdf202ca0271073baf7ae2aac50003b89f Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 11:20:15 +0200 Subject: [PATCH 298/365] updated TPs AMF_NTP* --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 36 +++++++++++++++++------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 5272f00..10a6951 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -6140,13 +6140,14 @@ module NGAP_TCFunctions { // Body action("Trigger UE TNLA BINDING procedure !"); - // f_recv_NGAP_PDU( - // mw_ngap_initMsg( - // mw_n2_UeTnlaBindingReleaseRequest( - - // ) - // ) - // ); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UETNLABindingReleaseRequest( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -6184,13 +6185,14 @@ module NGAP_TCFunctions { // Body action("Trigger UE RADIO CAPABILITY CHECK management procedure !"); - // f_recv_NGAP_PDU( - // mw_ngap_initMsg( - // mw_n2_Ue****( //FIXME: missing template - - // ) - // ) - // ); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UERadioCapabilityCheckRequest( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -6220,9 +6222,11 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // f_send_NGAP_PDU( + // f_send_NGAP_PDU( // m_ngap_initMsg( - //FIXME: missing template + // m_n2_UERadioCapabilityIDMappingRequest( + // //in template (value) UERadioCapabilityID p_uERadioCapabilityID + // ) // ) // ); -- GitLab From 64d8b81835971cdd419fac22269a479dc85628bc Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 11:30:44 +0200 Subject: [PATCH 299/365] Review TC_NGAP_AMF_NAS_02 and add FXIMEs --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 10a6951..bcf4997 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1915,7 +1915,7 @@ module NGAP_TCFunctions { } ), m_newSecurityContextInd, - ''O, // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???)) + ''O, // FIXME FSCOM NAS_PDU field shall be bit2oct(enc(???)) m_traceActivation( -, -, m_traceDepth @@ -4922,7 +4922,7 @@ module NGAP_TCFunctions { m_ngap_initMsg( m_n2_initialUeMessage( -, - ''O, // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???)) + ''O, // FIXME FSCOM NAS_PDU field shall be bit2oct(enc(???)) m_uPTransportLayerInformation_userLocationInformationNR( m_userLocationInformationNR( m_nR_CGI, @@ -4935,7 +4935,7 @@ module NGAP_TCFunctions { mw_n2_RerouteNASRequest( PX_AMF_UE_NGAP_ID, PX_RAN_UE_NGAP_ID, - ''O // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???))) + ''O // FIXME FSCOM NAS_PDU field shall be bit2oct(enc(???))) ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); @@ -4976,7 +4976,7 @@ module NGAP_TCFunctions { m_ngap_initMsg( m_n2_initialUeMessage( -, - ''O, // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???)) + ''O, // FIXME FSCOM NAS_PDU field shall be bit2oct(enc(???)) m_uPTransportLayerInformation_userLocationInformationEUTRA( m_userLocationInformationEUTRA( m_uUTRA_CGI, @@ -4989,7 +4989,7 @@ module NGAP_TCFunctions { mw_n2_DownlinkNASTransport( PX_AMF_UE_NGAP_ID, PX_RAN_UE_NGAP_ID, - ''O // FSCOM FIXME NAS_PDU field shall be bit2oct(enc(???))) + ''O // FIXME FSCOM NAS_PDU field shall be bit2oct(enc(???))) ))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); -- GitLab From 5ee1b824bfe7e3a7dbcb076ad8ae9fc7b041edff Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 11:32:54 +0200 Subject: [PATCH 300/365] updated TPs AMF_RIP* --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 10a6951..7b6b1af 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -6230,13 +6230,14 @@ module NGAP_TCFunctions { // ) // ); - // f_recv_NGAP_PDU( - // mw_ngap_initMsg( - // mw_n2_Ue****( //FIXME: missing template - - // ) - // ) - // ); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UERadioCapabilityIDMappingResponse( + ?,//template (present) UERadioCapabilityID p_uERadioCapabilityID := ?, + ?//template (present) UERadioCapability p_uERadioCapability := ? + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -6280,13 +6281,13 @@ module NGAP_TCFunctions { // Body action("Trigger RIM Information Transfer procedure !"); - // f_recv_NGAP_PDU( - // mw_ngap_initMsg( - // mw_n2_Ue****( //FIXME: missing template - - // ) - // ) - // ); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_DownlinkRIMInformationTransfer( + ?//template (present) RIMInformationTransfer p_rIMInformationTransfer := ? + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From 4dbc4084e02b28056479fdc1d5094cd99dcfdbe3 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 11:37:30 +0200 Subject: [PATCH 301/365] updated TPs AMF_URP02 recv msg type --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 7e58c34..6e2e4a7 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -6231,7 +6231,7 @@ module NGAP_TCFunctions { // ); f_recv_NGAP_PDU( - mw_ngap_initMsg( + mw_ngap_succMsg( mw_n2_UERadioCapabilityIDMappingResponse( ?,//template (present) UERadioCapabilityID p_uERadioCapabilityID := ?, ?//template (present) UERadioCapability p_uERadioCapability := ? -- GitLab From 8cdfe69f323444a848ca15f60cb682e1e7757f72 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 11:59:24 +0200 Subject: [PATCH 302/365] Bug fixed in UplinkUEAssociatedNRPPaTransport templates --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index d5648e9..7fb7a0a 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -6909,6 +6909,8 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.2 UPLINK UE ASSOCIATED NRPPA TRANSPORT */ template (value) InitiatingMessage m_n2_UplinkUEAssociatedNRPPaTransport( + in template (value) AMF_UE_NGAP_ID p_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID, in template (value) RoutingID p_routingID, in template (value) NRPPa_PDU p_nRPPa_PDU ) := { @@ -6917,6 +6919,16 @@ module LibNGAP_Templates { value_ := { UplinkUEAssociatedNRPPaTransport := { protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_AMF_UE_NGAP_ID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } + }, { id := id_RoutingID, criticality := reject, @@ -6939,6 +6951,8 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.9.2 UPLINK UE ASSOCIATED NRPPA TRANSPORT */ template (present) InitiatingMessage mw_n2_UplinkUEAssociatedNRPPaTransport( + template (present) AMF_UE_NGAP_ID p_AMF_UE_NGAP_ID := ?, + template (present) RAN_UE_NGAP_ID p_rAN_UE_NGAP_ID := ?, template (present) RoutingID p_routingID := ?, template (present) NRPPa_PDU p_nRPPa_PDU := ? ) := { @@ -6947,6 +6961,16 @@ module LibNGAP_Templates { value_ := { UplinkUEAssociatedNRPPaTransport := { protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_AMF_UE_NGAP_ID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_rAN_UE_NGAP_ID } + }, { id := id_RoutingID, criticality := reject, -- GitLab From 0fdd3e1130b2e602f5e5768d6beaa1839270b0a4 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 12:00:25 +0200 Subject: [PATCH 303/365] updated TPs gnb_wtp05 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 6e2e4a7..c430dc3 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3076,12 +3076,11 @@ module NGAP_TCFunctions { action("Trigger PWS_Failure_Indication!"); f_recv_NGAP_PDU( - mw_ngap_unsuccMsg( - ? - // /*mw*/m_n2_PWSFailureIndication( //missing template - // ?,//in template (value) PWSFailedCellList p_pWSFailedCellList, - // ?//in template (value) GlobalRANNodeID p_globalRANNodeID - // ) + mw_ngap_initMsg( + mw_n2_PWSFailureIndication( + ?,//template (present) PWSFailedCellIDList p_pWSFailedCellIDList := ?, + ?//template (present) GlobalRANNodeID p_globalRANNodeID := ? + ) ) ); @@ -3118,11 +3117,12 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_initMsg( - ? - // /*mw*/m_n2_PWSFailureIndication( //missing template - // ?,//in template (value) PWSFailedCellList p_pWSFailedCellList, - // ?//in template (value) GlobalRANNodeID p_globalRANNodeID - // ) + mw_n2_UplinkUEAssociatedNRPPaTransport( + //?, + //?, + ?,//template (present) RoutingID p_routingID := ?, + ?//template (present) NRPPa_PDU p_nRPPa_PDU := ? + ) ) ); -- GitLab From 5c8be71352c5a761bde009633fdb01d792bf9035 Mon Sep 17 00:00:00 2001 From: ldtke Date: Thu, 30 May 2024 12:00:15 +0200 Subject: [PATCH 304/365] add testcase, template and function for TC_NGAP_GNB_CMP_04 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 95 +++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 28 ++++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 64 +++++++++++++++++ 3 files changed, 187 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 6e2e4a7..000c29b 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1140,6 +1140,101 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_CMP_03 + + /** + * @desc Testcase function for TP_NGAP_GNB_CMP_04 + */ + function f_TC_NGAP_GNB_CMP_04() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_amf_UE_PDU_ResourceSetup(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_InitialContextSetupRequest_optional_MobilityRestriction + ( + -, + -, + m_gUAMI, + { + { + PX_PDU_SESSION_ID, + omit, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))) + ), + omit + } + + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + m_uESecurityCapabilities, + -, + m_mobilityRestrictionList( + PX_PLMN_IDENTITY + ) + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_InitialContextSetupResponse( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { + { + PX_PDU_SESSION_ID, + ?, + * + } + } + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_04 } // End of group Initial_Context_Setup //8.3.2 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index a1bda37..2e0066b 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -421,6 +421,34 @@ module NGAP_TestCases { f_cf_Down/*gNBoraMF*/(); } // End of testcase TC_NGAP_GNB_CMP_03 + + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Mobility Restriction List and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + */ + testcase TC_NGAP_GNB_CMP_04() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_04()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_04 + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 7fb7a0a..3c03e73 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1082,6 +1082,70 @@ module LibNGAP_Templates { } } } + } + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST + */ + template (value) InitiatingMessage m_n2_InitialContextSetupRequest_optional_MobilityRestriction( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) GUAMI p_gUAMI, + in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, + in template (value) MobilityRestrictionList p_mobilityRestrictionList := m_mobilityRestrictionList + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + InitialContextSetupRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, + { + id := id_PDUSessionResourceSetupListCxtReq, + criticality := reject, + value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityKey, + criticality := reject, + value_ := { SecurityKey := p_nextHopNH } + }, + { + id := id_TraceActivation, + criticality := ignore, + value_ := { MobilityRestrictionList := p_mobilityRestrictionList } + } + } + } + } + } } // End of group Send -- GitLab From df67a230701fa6141875b5deacbfff2cea2477af Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 12:03:53 +0200 Subject: [PATCH 305/365] updated TPs gnb_wtp05 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index c430dc3..d81311e 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3118,8 +3118,8 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_initMsg( mw_n2_UplinkUEAssociatedNRPPaTransport( - //?, - //?, + ?, + ?, ?,//template (present) RoutingID p_routingID := ?, ?//template (present) NRPPa_PDU p_nRPPa_PDU := ? ) -- GitLab From 3633826aadb3559e3fe21fb56cfc5afb95c80057 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 12:34:26 +0200 Subject: [PATCH 306/365] Bug templates (duplicate '}') --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 57 ++++++++++++------------- 1 file changed, 28 insertions(+), 29 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 3c03e73..bedf6c1 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1025,15 +1025,15 @@ module LibNGAP_Templates { * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST */ template (value) InitiatingMessage m_n2_InitialContextSetupRequest_optional_TraceActivation( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) GUAMI p_gUAMI, - in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, - in template (value) AllowedNSSAI p_allowedNSSAI, - in template (value) UESecurityCapabilities p_uESecurityCapabilities, - in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, - in template (value) TraceActivation p_traceActivation - ) := { + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) GUAMI p_gUAMI, + in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, + in template (value) TraceActivation p_traceActivation + ) := { procedureCode := id_InitialContextSetup, criticality := reject, value_ := { @@ -1081,22 +1081,22 @@ module LibNGAP_Templates { } } } - } - } + } + } // End of template m_n2_InitialContextSetupRequest_optional_TraceActivation /** * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST */ template (value) InitiatingMessage m_n2_InitialContextSetupRequest_optional_MobilityRestriction( - in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, - in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, - in template (value) GUAMI p_gUAMI, - in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, - in template (value) AllowedNSSAI p_allowedNSSAI, - in template (value) UESecurityCapabilities p_uESecurityCapabilities, - in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, - in template (value) MobilityRestrictionList p_mobilityRestrictionList := m_mobilityRestrictionList - ) := { + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) GUAMI p_gUAMI, + in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, + in template (value) MobilityRestrictionList p_mobilityRestrictionList + ) := { procedureCode := id_InitialContextSetup, criticality := reject, value_ := { @@ -1144,8 +1144,8 @@ module LibNGAP_Templates { } } } - } - } + } + } // End of template m_n2_InitialContextSetupRequest_optional_MobilityRestriction } // End of group Send @@ -9343,7 +9343,6 @@ module LibNGAP_Templates { ) := { choice_Extensions := p_choice_Extensions } // End of template m_areaScopeOfMDT_EUTRA_ext - } // End of template m_areaScopeOfQMC_ext template (omit) AvailableRANVisibleQoEMetrics m_availableRANVisibleQoEMetrics( in template (omit) AvailableRANVisibleQoEMetrics.applicationLayerBufferLevelList p_applicationLayerBufferLevelList := omit, @@ -19647,12 +19646,12 @@ module LibNGAP_Templates { iE_Extensions := p_iE_Extensions } // End of template mw_mBS_DistributionSetupUnsuccessfulTransfer - template (present) MBSSessionSetupRequestItem mw_mBSSessionSetupRequestItem( - template (present) MBS_SessionID p_mBS_SessionID := ?, - template MBS_AreaSessionID p_mBS_AreaSessionID := *, - template AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := *, - template MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := * - ):= { + template (present) MBSSessionSetupRequestItem mw_mBSSessionSetupRequestItem( + template (present) MBS_SessionID p_mBS_SessionID := ?, + template MBS_AreaSessionID p_mBS_AreaSessionID := *, + template AssociatedMBSQosFlowSetupRequestList p_associatedMBSQosFlowSetupRequestList := *, + template MBSSessionSetupRequestItem.iE_Extensions p_iE_Extensions := * + ):= { mBS_SessionID := p_mBS_SessionID, mBS_AreaSessionID := p_mBS_AreaSessionID, associatedMBSQosFlowSetupRequestList := p_associatedMBSQosFlowSetupRequestList, -- GitLab From dd5fb0a728dd2973120426065cbdcbe3365d02da Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 13:48:55 +0200 Subject: [PATCH 307/365] updated TPs gnb_ntp02 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index ac90910..d303ed1 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3249,11 +3249,10 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_initMsg( - ? - // /*mw*/m_n2_PWSFailureIndication( //missing template - // ?,//in template (value) PWSFailedCellList p_pWSFailedCellList, - // ?//in template (value) GlobalRANNodeID p_globalRANNodeID - // ) + mw_n2_UplinkNonUEAssociatedNRPPaTransport( + ?,//template (present) RoutingID p_routingID := ?, + ?//template (present) NRPPa_PDU p_nRPPa_PDU := ? + ) ) ); -- GitLab From e5057e44fdb2559f40faeec615cde3c19cb81c65 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 30 May 2024 13:50:21 +0200 Subject: [PATCH 308/365] add test cases TC_NGAP_AMF_CMP_08-09 --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 7 ++ ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 111 +++++++++++++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 55 ++++++++++++++ 3 files changed, 173 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 6bbd0c5..19e6cfe 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -272,6 +272,13 @@ module NGAP_Steps { function f_NGAP_gnb_UE_EstablishedInitialContext() runs on NGAPComponent { //FIXME: Implementation of UE handover required } // End of function f_NGAP_gnb_UE_EstablishedInitialContext + + /** + * @desc + */ + function f_NGAP_gnb_UE_HasPendingDataTransmission() runs on NGAPComponent { + //FIXME: Implementation of UE has pending data transmission leading to failed context suspension + } // End of function f_NGAP_gnb_UE_HasPendingDataTransmission /** * @desc diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 5272f00..6a17484 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4380,6 +4380,117 @@ module NGAP_TCFunctions { } // End of group UE_Information_Transfer //8.3.11 group UE_Context_Suspend{ + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_08 + */ + function f_TC_NGAP_AMF_CMP_08() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_gnb_UE_EstablishedInitialContext(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextSuspendRequest( + -, + -, + { + m_pDUSessionResourceSuspendItemSUSReq( + -, + bit2oct( + encvalue( + m_uEContextSuspendRequestTransfer(-,-) + ) + ), + - + ) + } + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UEContextSuspendResponse( + ?, + ? + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_08 + + /** + * @desc Testcase function for TP_NGAP_AMF_CMP_09 + */ + function f_TC_NGAP_AMF_CMP_09() runs on gNBNGAPComponent { + + // Local variables + + // Preamble + f_NGAP_gnb_init(); + f_NGAP_gnb_UE_Register(); + f_NGAP_gnb_UE_EstablishedInitialContext(); + f_NGAP_gnb_UE_HasPendingDataTransmission(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UEContextSuspendRequest( + -, + -, + { + m_pDUSessionResourceSuspendItemSUSReq( + -, + bit2oct( + encvalue( + m_uEContextSuspendRequestTransfer(-,-) + ) + ), + - + ) + } + ) + ) + ); + + f_recv_NGAP_PDU( + mw_ngap_unsuccMsg( + mw_n2_UEContextSuspendFailure( + ?, + ?, + ? + ))); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_AMF_CMP_09 + } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index a1bda37..35ef70f 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -2409,6 +2409,61 @@ module NGAP_TestCases { } // End of group UE_Information_Transfer //8.3.11 group UE_Context_Suspend{ + + /** + * @desc "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." + */ + testcase TC_NGAP_AMF_CMP_08() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_11)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_11' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_08()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_08 + + /** + * @desc "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." + */ + testcase TC_NGAP_AMF_CMP_09() runs on gNBNGAPComponent system TestAdapter { + + // Local variables + var gNBNGAPComponent v_ngap_gnb; + + // Test control + if ((not PICS_NGAP_AMF_IUT) and (not PICS_A4_2_11)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_AMF_IUT and PICS_A4_2_11' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_gNB_Up(v_ngap_gnb); + + // Start + v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_09()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_AMF_CMP_09 + } // End of group UE_Context_Suspend //8.3.12 group UE_Context_Resume{ -- GitLab From bec12932bc41437a72196c600450966576df152b Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 30 May 2024 14:13:36 +0200 Subject: [PATCH 309/365] add missing PICS to commons file and change PICS Selection in TP_NGAP_AMF_LRP_01 accordingly --- test_purposes/Ngap_Common.tplan2 | 1 + test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index 00d9fe2..e7440eb 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -122,6 +122,7 @@ Package Ngap_Common { - PICS_A4/10_2 //AMF - Trace procedure - TRACE FAILURE INDICATION messages - PICS_A4/10_3 //AMF - Trace procedure - DEACTIVATE TRACE messages - PICS_A4/10_4 //AMF - Trace procedure - CELL TRAFFIC TRACE messages + - PICS_A4/11_1 //AMF - Location Reporting Procedures - LOCATION REPORTING CONTROL - PICS_A4/11_2 //AMF - Location Reporting Procedures - LOCATION REPORTING FAILURE INDICATION - PICS_A4/11_3 //AMF - Location Reporting Procedures - LOCATION REPORT - PICS_A4/12_1 //AMF - TNLA procedure - UE TNLA BINDING RELEASE REQUEST messages diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index f4b0081..84c08b4 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -2191,7 +2191,7 @@ Package TP_AMF { Config Id CFG_AMF_01 - PICS Selection PICS_A2/2 and PICS_A3/11_1 + PICS Selection PICS_A2/2 and PICS_A4/11_1 Initial conditions with { the UE entity isRegisteredTo the AMF -- GitLab From a7db9709ac4aca8a88490825676d0dcb48859030 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 14:18:26 +0200 Subject: [PATCH 310/365] updated TPs gnb_urp* with templates --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 53 ++++++++++++++---------------- 1 file changed, 25 insertions(+), 28 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index d303ed1..3cbebae 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3602,21 +3602,24 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // action("Trigger CELL TRAFFIC TRACE!"); + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UERadioCapabilityCheckRequest( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID + ) + ) + ); - // f_recv_NGAP_PDU( - // mw_ngap_initMsg( - // mw_n2_CellTrafficTrace( - // ?, - // ?, - // ?, - // ?, - // ?, - // ?, - // ? - // ) - // ) - // ); + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_UERadioCapabilityCheckResponse( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + ?// template (present) IMSVoiceSupportIndicator p_iMSVoiceSupportIndicator := ? + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); @@ -3647,21 +3650,15 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // action("Trigger CELL TRAFFIC TRACE!"); + action("Trigger UE_RADIO_CAPABILITY_ID_MAPPING_REQUEST !"); - // f_recv_NGAP_PDU( - // mw_ngap_initMsg( - // mw_n2_CellTrafficTrace( - // ?, - // ?, - // ?, - // ?, - // ?, - // ?, - // ? - // ) - // ) - // ); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UERadioCapabilityIDMappingRequest( + ?//template (present) UERadioCapabilityID p_uERadioCapabilityID := ? + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From 3dee6e6e06717f7050354140d601bfd9f000e18e Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 14:44:15 +0200 Subject: [PATCH 311/365] updated TPs gnb_drp* with templates --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index f5a5f08..d17866e 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3692,21 +3692,17 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // action("Trigger CELL TRAFFIC TRACE!"); + action("Trigger SECONDARY_RAT_DATA_USAGE_REPORT !"); - // f_recv_NGAP_PDU( - // mw_ngap_initMsg( - // mw_n2_CellTrafficTrace( - // ?, - // ?, - // ?, - // ?, - // ?, - // ?, - // ? - // ) - // ) - // ); + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_SecondaryRATDataUsageReport( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + ?//template (present) PDUSessionResourceSecondaryRATUsageList p_pDUSessionResourceSecondaryRATUsageList := ? + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From 11ed8bd83da98a52638156164f4b19a971b02d18 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 14:47:43 +0200 Subject: [PATCH 312/365] Review TC_NGAP_AMF_MMP_08/09 (receive template expected) --- ccsrc/Ports/LibNGAP/NGAPPort.cc | 20 ++++------ etc/AtsNGAP/AtsNGAP_AMF.cfg_ | 4 +- etc/AtsNGAP/AtsNGAP_GNB.cgf_ | 9 ++--- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 62 +++++++++++++++--------------- ttcn/AtsNGAP/module.mk | 22 ++++++----- 5 files changed, 55 insertions(+), 62 deletions(-) diff --git a/ccsrc/Ports/LibNGAP/NGAPPort.cc b/ccsrc/Ports/LibNGAP/NGAPPort.cc index 2681bd1..a7b6155 100644 --- a/ccsrc/Ports/LibNGAP/NGAPPort.cc +++ b/ccsrc/Ports/LibNGAP/NGAPPort.cc @@ -2,8 +2,6 @@ #include "LibNGAP_Interface.hh" #include "NGAP_PDU_Descriptions.hh" -//#include "sctp_layer_factory.hh" -//#include "tcp_layer_factory.hh" #include "ngap_layer_factory.hh" #include "layer.hh" #include "params.hh" @@ -60,23 +58,20 @@ namespace LibNGAP__Interface { loggers::get_instance().log("NGAPPort::user_map: %s", it->second.c_str()); // Setup parameters params::convert(_layer_params, it->second); // TODO This _layer_params seems to be useless - /*// Create layer + // Create layer _layer = layer_stack_builder::get_instance()->create_layer_stack(it->second.c_str()); - if (static_cast(_layer) == nullptr) { + if (static_cast(_layer) == nullptr) { loggers::get_instance().error("NGAPPort::user_map: Invalid stack configurationi - NOT SCTP: %s", it->second.c_str()); } - else if (static_cast(_layer) == nullptr) { - loggers::get_instance().error("NGAPPort::user_map: Invalid stack configuration - NOT TCP: %s", it->second.c_str()); - } - //static_cast(_layer)->add_upper_port(this); - */ - // // Create layer + static_cast(_layer)->add_upper_port(this); + + // Create layer _layer = layer_stack_builder::get_instance()->create_layer_stack(it->second.c_str()); - if (static_cast(_layer) == NULL) { + if (static_cast(_layer) == NULL) { loggers::get_instance().error("NGAPPort::user_map: Invalid stack configuration: %s", it->second.c_str()); } - static_cast(_layer)->add_upper_port(this); + static_cast(_layer)->add_upper_port(this); } else { loggers::get_instance().error("NGAPPort::user_map: No layers defined in configuration file"); } @@ -112,7 +107,6 @@ namespace LibNGAP__Interface { float duration; loggers::get_instance().set_start_time(_time_key); params params; - //static_cast(_layer)->sendMsg(send_par, params); static_cast(_layer)->sendMsg(send_par, params); loggers::get_instance().set_stop_time(_time_key, duration); } diff --git a/etc/AtsNGAP/AtsNGAP_AMF.cfg_ b/etc/AtsNGAP/AtsNGAP_AMF.cfg_ index b9785b3..b3003e9 100644 --- a/etc/AtsNGAP/AtsNGAP_AMF.cfg_ +++ b/etc/AtsNGAP/AtsNGAP_AMF.cfg_ @@ -8,7 +8,7 @@ NGAP_Pics.PICS_NGAP_AMF_IUT := true # In this section you can specify the name of the log file and the classes of events # you want to log into the file or display on console (standard error). -LogFile := "../logs/AtsNGAP_N/%e.%h-%r.%s" +LogFile := "../logs/AtsNGAP/%e.%h-%r.%s" FileMask := LOG_ALL | USER | DEBUG | MATCHING ConsoleMask := LOG_ALL | USER | DEBUG | MATCHING #FileMask := ERROR | WARNING | USER | MATCHING | EXECUTOR_RUNTIME | VERDICTOP | PORTEVENT | TESTCASE @@ -20,7 +20,7 @@ LogEventTypes:= Yes [TESTPORT_PARAMETERS] # In this section you can specify parameters that are passed to Test Ports. -system.N2_gNBaMF_P.params := "SCTP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=test.pcap)" +system.N2_gNBaMF_P.params := "NGAP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=test.pcap)" [DEFINE] # In this section you can create macro definitions, diff --git a/etc/AtsNGAP/AtsNGAP_GNB.cgf_ b/etc/AtsNGAP/AtsNGAP_GNB.cgf_ index 625dc21..143225b 100644 --- a/etc/AtsNGAP/AtsNGAP_GNB.cgf_ +++ b/etc/AtsNGAP/AtsNGAP_GNB.cgf_ @@ -8,7 +8,7 @@ NGAP_Pics.PICS_NGAP_AMF_IUT := false # In this section you can specify the name of the log file and the classes of events # you want to log into the file or display on console (standard error). -LogFile := "../logs/AtsNGAP_N/%e.%h-%r.%s" +LogFile := "../logs/AtsNGAP/%e.%h-%r.%s" FileMask := LOG_ALL | USER | DEBUG | MATCHING ConsoleMask := LOG_ALL | USER | DEBUG | MATCHING #FileMask := ERROR | WARNING | USER | MATCHING | EXECUTOR_RUNTIME | VERDICTOP | PORTEVENT | TESTCASE @@ -20,7 +20,7 @@ LogEventTypes:= Yes [TESTPORT_PARAMETERS] # In this section you can specify parameters that are passed to Test Ports. -system.N2_gNBaMF_P.params := "SCTP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=test.pcap)" +system.N2_gNBaMF_P.params := "NGAP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=../captures/free5gc.pcap)" [DEFINE] # In this section you can create macro definitions, @@ -47,11 +47,8 @@ system.N2_gNBaMF_P.params := "SCTP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=test # In this section you can specify what parts of your test suite you want to execute. #AtsImsIot_TestControl.control -# Test System testing -NGAP_TestCases.TC_NGAP_gNB_or_aMF_testcaseName_01 - # Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE for successfully established PDU session. -#NGAP_TestCases.TC_NGAP_GNB_PDU_01 +NGAP_TestCases.TC_NGAP_GNB_PDU_01 # Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains several PDU Session ID IEs set to the same value. #NGAP_TestCases.TC_NGAP_GNB_PDU_02 # Verify that the NG-RAN node reports the establishment of the new PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a PDU Session ID IE set to value that identifies an active PDU Session. NOTE: Run TP_NGAP_GNB_PDU_01 before this TP. diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index d17866e..5044001 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4937,20 +4937,20 @@ module NGAP_TCFunctions { // Body action("the IUT entity indicate a Downlink RAN Status Transfer procedure"); f_recv_NGAP_PDU( - m_ngap_initMsg( - mw_n2_DownlinkRANStatusTransfer( - -, - -, - mw_rANStatusTransfer_TransparentContainer( - { - *, - mw_dRBsSubjectToStatusTransferItem( - PX_DRB_ID, - mw_dRBStatusUL_dRBStatusUL12, - mw_dRBStatusDL_dRBStatusDL12 - ), - * - } + mw_ngap_initMsg( + mw_n2_DownlinkRANStatusTransfer( + -, + -, + mw_rANStatusTransfer_TransparentContainer( + { + *, + mw_dRBsSubjectToStatusTransferItem( + PX_DRB_ID, + mw_dRBStatusUL_dRBStatusUL12, + mw_dRBStatusDL_dRBStatusDL12 + ), + * + } )))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); @@ -4983,8 +4983,8 @@ module NGAP_TCFunctions { // Body action("the IUT entity indicate the initiation \"of an UE handover success procedure\""); f_recv_NGAP_PDU( - m_ngap_initMsg( - mw_n2_HandoverSuccess + mw_ngap_initMsg( + mw_n2_HandoverSuccess )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); @@ -5020,21 +5020,21 @@ module NGAP_TCFunctions { // Body action("the IUT entity indicate a Downlink RAN Early Status Transfer procedure"); f_recv_NGAP_PDU( - m_ngap_initMsg( - mw_n2_DownlinkRANEarlyStatusTransfer( - -, - -, - mw_earlyStatusTransfer_TransparentContainer( - mw_procedureStageChoice_firstDLCount( - mw_firstDLCount( - { - *, - mw_dRBsSubjectToEarlyStatusTransfer_Item( - PX_DRB_ID, - mw_dRBStatusDL_dRBStatusDL12 - ), - * - } + mw_ngap_initMsg( + mw_n2_DownlinkRANEarlyStatusTransfer( + -, + -, + mw_earlyStatusTransfer_TransparentContainer( + mw_procedureStageChoice_firstDLCount( + mw_firstDLCount( + { + *, + mw_dRBsSubjectToEarlyStatusTransfer_Item( + PX_DRB_ID, + mw_dRBStatusDL_dRBStatusDL12 + ), + * + } )))))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); diff --git a/ttcn/AtsNGAP/module.mk b/ttcn/AtsNGAP/module.mk index 3c58976..2af9ad8 100644 --- a/ttcn/AtsNGAP/module.mk +++ b/ttcn/AtsNGAP/module.mk @@ -11,16 +11,18 @@ sources:= \ NGAP_TestControl.ttcn \ NGAP_TCFunctions.ttcn -modules := \ - ../LibNGAP \ - ../LibCommon \ - ../../ccsrc/Ports/LibNGAP \ - ../../ccsrc/EncDec \ - ../../titan-test-system-framework/ccsrc/Framework \ - ../../titan-test-system-framework/ccsrc/loggers \ - ../../ccsrc/Protocols/NGAP_layer \ - ../../ccsrc/Protocols/NGAP \ - ../../ccsrc/Asn1c \ +modules := \ + ../LibNGAP \ + ../LibCommon \ + ../../titan-test-system-framework/ccsrc/Protocols/Pcap \ + ../../titan-test-system-framework/ccsrc/Protocols/ETH \ + ../../ccsrc/Ports/LibNGAP \ + ../../ccsrc/EncDec \ + ../../titan-test-system-framework/ccsrc/Framework \ + ../../titan-test-system-framework/ccsrc/loggers \ + ../../ccsrc/Protocols/NGAP_layer \ + ../../ccsrc/Protocols/NGAP \ + ../../ccsrc/Asn1c \ ../modules/titan.TestPorts.Common_Components.Abstract_Socket -- GitLab From 1b16b4426bff23ca4b11c73a810b7da7b0e9e5d8 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 30 May 2024 14:51:48 +0200 Subject: [PATCH 313/365] add more concrete values for TP_NGAP_GNB_LRP_01-02 fix minor errors --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index f4c9e28..b6e27d5 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -2978,12 +2978,12 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity sends an LOCATION_REPORTING_CONTROL containing + the IUT entity receives an LOCATION_REPORTING_CONTROL containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Location_Reporting_Request_Type containing - Event_Type, - Report_Area, + Event_Type indicating value direct, + Report_Area indicating value cell, Area_of_Interest_List containing Area_of_Interest_Item containing Area_of_Interest, @@ -2994,7 +2994,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends an LOCATION_REPORTING_CONTROL containing + the IUT entity sends an LOCATION_REPORTING_FAILURE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Cause containing @@ -3018,7 +3018,7 @@ Package TP_GNB { Test objective "Verify that the IUT can send a LOCATION REPORT message that contains mandatory IEs to provide the UE's current location." Reference - "ETSI TS 138 413 [1], Clauses 8.12.2 and 9.2.11.3" + "ETSI TS 138 413 [1], Clauses 8.12.3 and 9.2.11.3" Config Id CFG_GNB_01 @@ -3031,11 +3031,15 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity sends an LOCATION_REPORTING_CONTROL containing + the IUT entity receives an LOCATION_REPORTING_CONTROL containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - Location_Reporting_Request_Type; - from the AMF entity + Location_Reporting_Request_Type containing + Event_Type indicating value direct, + Report_Area indicating value cell + ; + ; + from the AMF entity } then { the IUT entity sends an LOCATION_REPORT containing -- GitLab From aa0c687fc247a204f0340219118866fe6b3f3e56 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 14:52:09 +0200 Subject: [PATCH 314/365] updated TPs gnb_rip* with templates --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index d17866e..34a531b 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3736,17 +3736,15 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - action("Trigger a RIM Information Transfer procedure!"); - - // f_recv_NGAP_PDU( - // mw_ngap_initMsg( - // mw_n2_UERadioCapabilityInfoIndication( - // PX_AMF_UE_NGAP_ID, - // PX_RAN_UE_NGAP_ID, - // ? - // ) - // ) - // ); + action("Trigger a uplink RIM Information Transfer procedure!"); + + f_recv_NGAP_PDU( + mw_ngap_initMsg( + mw_n2_UplinkRIMInformationTransfer( + ?//template (present) RIMInformationTransfer p_rIMInformationTransfer := ? + ) + ) + ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); -- GitLab From f9750bd26568d1f63e493d2fa684e3856e66d2ab Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 30 May 2024 14:54:22 +0200 Subject: [PATCH 315/365] remove not tested, optional fields in TP_NGAP_AMF_CMP_10 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 84c08b4..d695ecd 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -657,24 +657,16 @@ Package TP_AMF { the IUT entity receives a UE_CONTEXT_RESUME_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, - RRC_Resume_Cause, - PDU_Session_Resource_Resume_List containing - PDU_Session_Resource_Resume_Item containing - PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Suspend_Request_Transfer containing - Suspend_Indicator;;;; + RRC_Resume_Cause + ; from the GNB entity } then { the IUT entity sends a UE_CONTEXT_RESUME_RESPONSE containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID, - PDU_Session_Resource_Resume_List containing - PDU_Session_Resource_Resume_Item containing - PDU_SessionId indicating value PX_PDU_ID, - UE_Context_Suspend_Request_Transfer containing - Suspend_Indicator;;;; - to the GNB entity + RAN_UE_NGAP_ID + ; + to the GNB entity } } -- GitLab From 784a677e200b4d53b2b5235457084211ef971323 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 14:57:34 +0200 Subject: [PATCH 316/365] Add missing codec functions for UEContextSuspendRequestTransfer --- ccsrc/EncDec/LibNGAP_Encdec.cc | 12 +++++++++++- ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn | 6 ++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/ccsrc/EncDec/LibNGAP_Encdec.cc b/ccsrc/EncDec/LibNGAP_Encdec.cc index 14d5966..70310f8 100644 --- a/ccsrc/EncDec/LibNGAP_Encdec.cc +++ b/ccsrc/EncDec/LibNGAP_Encdec.cc @@ -24,6 +24,16 @@ namespace LibNGAP__EncdecDeclarations { return -1; } + BITSTRING fx__enc__UEContextSuspendRequestTransfer(const NGAP__IEs::UEContextSuspendRequestTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__UEContextSuspendRequestTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__UEContextSuspendRequestTransfer(BITSTRING& b, NGAP__IEs::UEContextSuspendRequestTransfer& p) { + loggers::get_instance().log(">>> fx__dec__UEContextSuspendRequestTransfer"); + return -1; + } + BITSTRING fx__enc__PDUSessionResourceSetupResponseTransfer(const NGAP__IEs::PDUSessionResourceSetupResponseTransfer& p) { loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupResponseTransfer ", p); return int2bit(0, 1); @@ -35,7 +45,7 @@ namespace LibNGAP__EncdecDeclarations { } BITSTRING fx__enc__PDUSessionResourceModifyIndicationTransfer(const NGAP__IEs::PDUSessionResourceModifyIndicationTransfer& p) { - loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupRequestTransfer ", p); + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceModifyIndicationTransfer ", p); return int2bit(0, 1); } diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn index 72466f9..b9567ec 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -51,5 +51,11 @@ module LibNGAP_EncdecDeclarations { external function fx_enc_PDUSessionResourceModifyIndicationTransfer(NGAP_IEs.PDUSessionResourceModifyIndicationTransfer p) return bitstring with {extension "prototype(convert) encode(PER)"} + external function fx_dec_UEContextSuspendRequestTransfer(inout bitstring pdu, out NGAP_IEs.UEContextSuspendRequestTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_UEContextSuspendRequestTransfer(NGAP_IEs.UEContextSuspendRequestTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} } // End of module LibNGAP_EncdecDeclarations \ No newline at end of file -- GitLab From bf3886788688746d4c72acb6ca9691bebbf3236d Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 30 May 2024 15:00:06 +0200 Subject: [PATCH 317/365] fix copy-paste error in trigger for GNB and AMF --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 2 +- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index d695ecd..3a29773 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1257,7 +1257,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity sends an INITIAL_UE_MESSAGE containing + the IUT entity receives an INITIAL_UE_MESSAGE containing RAN_UE_NGAP_ID, NAS_PDU, User_Location_Information, diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index b6e27d5..10a2f03 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -3118,7 +3118,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity sends a UE_RADIO_CAPABILITY_CHECK_REQUEST containing + the IUT entity receives a UE_RADIO_CAPABILITY_CHECK_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; from the AMF entity -- GitLab From 0aa0c7348264f8bf0c74a735cef88c02b01f29d3 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Thu, 30 May 2024 15:03:57 +0200 Subject: [PATCH 318/365] add missing, mandatory Cause field in responses of TP_NGAP_AMF_CMP_02-03 --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 3a29773..27ca4e8 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -334,7 +334,11 @@ Package TP_AMF { CHOICE_UE_NGAP_IDs containing UE_NGAP_ID_pair containing AMF_UE_NGAP_ID, - RAN_UE_NGAP_ID;;; + RAN_UE_NGAP_ID + ; + ;, + Cause + ; to the GNB entity } } @@ -367,7 +371,11 @@ Package TP_AMF { the IUT entity sends a UE_CONTEXT_RELEASE_COMMAND containing CHOICE_UE_NGAP_IDs containing AMF_UE_NGAP_ID containing - AMF_UE_NGAP_ID;;; + AMF_UE_NGAP_ID + ; + ;, + Cause + ; to the GNB entity } } -- GitLab From 6a2657d75ae6497ce970a8facc61a1f779c08863 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 16:32:30 +0200 Subject: [PATCH 319/365] updated TPs gnb_pdu* with decmatch --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 81 +++++++++++++++++------------- 1 file changed, 45 insertions(+), 36 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 87c3f52..cb681fe 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -240,12 +240,13 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceFailedToSetupItemSURes( ?,//template (present) PDUSessionID p_pDUSessionID := ?, - //mw_pDUSessionResourceSetupUnsuccessfulTransfer( - // mw_cause_misc(mw_causeMisc(?/*MultiplePDUSessionIDInstances*/)),//?,//template (present) Cause p_cause := ?, - // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, - // *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - // ),//template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, - ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer + decmatch( + mw_pDUSessionResourceSetupUnsuccessfulTransfer( + mw_cause_misc(mw_causeMisc(?/*MultiplePDUSessionIDInstances*/)),//?,//template (present) Cause p_cause := ?, + *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, + *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) + ),//Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer *//template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * ) } @@ -323,18 +324,19 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceSetupItemSURes( ?,//template (present) PDUSessionID p_pDUSessionID, - //mw_pDUSessionResourceSetupResponseTransfer( - // ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - // *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - // *,//template SecurityResult p_securityResult := *, - // *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, - // *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * - // ), //template (present) PDUSessionResourceSetupItemSURes.pDUSessionResourceSetupResponseTransfer p_pDUSessionResourceSetupResponseTransfer := ?, - ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer + decmatch( + mw_pDUSessionResourceSetupResponseTransfer( + ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + *,//template SecurityResult p_securityResult := *, + *,//template QosFlowListWithCause p_qosFlowFailedToSetupList := *, + *//template PDUSessionResourceSetupResponseTransfer.iE_Extensions p_iE_Extensions := * + ) + ), //Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupResponseTransfer *//template PDUSessionResourceSetupItemSURes.iE_Extensions p_iE_Extensions := * ) } - ) + ) ) ); @@ -384,12 +386,13 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceFailedToSetupItemSURes( ?,//template (present) PDUSessionID p_pDUSessionID := ?, - //mw_pDUSessionResourceSetupUnsuccessfulTransfer( - // mw_cause_misc(mw_causeMisc(?/*MultiplePDUSessionIDInstances*/)),//?,//template (present) Cause p_cause := ?, - // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, - // *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - // ),//template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, - ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer + decmatch( + mw_pDUSessionResourceSetupUnsuccessfulTransfer( + mw_cause_misc(mw_causeMisc(?/*MultiplePDUSessionIDInstances*/)),//?,//template (present) Cause p_cause := ?, + *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, + *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) + ),//Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer *//template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * ) } @@ -467,12 +470,13 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceFailedToSetupItemSURes( ?,//template (present) PDUSessionID p_pDUSessionID := ?, - //mw_pDUSessionResourceSetupUnsuccessfulTransfer( - // mw_cause_misc(mw_causeMisc(?/*InvalidQoSCombination*/)),//?,//template (present) Cause p_cause := ?, - // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, - // *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - // ),//template (present) PDUSessionResourceFailedToSetupItemSURes.pDUSessionResourceSetupUnsuccessfulTransfer p_pDUSessionResourceSetupUnsuccessfulTransfer := ?, - ?, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer + decmatch( + mw_pDUSessionResourceSetupUnsuccessfulTransfer( + mw_cause_misc(mw_causeMisc(?/*InvalidQoSCombination*/)),//?,//template (present) Cause p_cause := ?, + *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, + *//template PDUSessionResourceSetupUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) + ),//Decode&Match - In ASN1 it is OCTET STRING - PDUSessionResourceSetupUnsuccessfulTransfer *//template PDUSessionResourceFailedToSetupItemSURes.iE_Extensions p_iE_Extensions := * ) } @@ -539,8 +543,10 @@ module NGAP_TCFunctions { ( mw_pDUSessionResourceReleasedItemRelRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, - //(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, - -, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceReleaseResponseTransfer + decmatch( + (mw_pDUSessionResourceReleaseResponseTransfer(*)) + ),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + //Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceReleaseResponseTransfer -//template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * ) @@ -618,8 +624,9 @@ module NGAP_TCFunctions { ( mw_pDUSessionResourceReleasedItemRelRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, - //(mw_pDUSessionResourceReleaseResponseTransfer(*))),//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, - -, //FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceReleaseResponseTransfer + decmatch( + (mw_pDUSessionResourceReleaseResponseTransfer(*))//template (present) PDUSessionResourceReleasedItemRelRes.pDUSessionResourceReleaseResponseTransfer p_pDUSessionResourceReleaseResponseTransfer := ?, + ), //FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceReleaseResponseTransfer -//template PDUSessionResourceReleasedItemRelRes.iE_Extensions p_iE_Extensions := * ) @@ -870,11 +877,13 @@ module NGAP_TCFunctions { ( mw_pDUSessionResourceModifyItemModInd( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, - ?,//mw_pDUSessionResourceModifyIndicationTransfer( - //?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, - //*,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - //*//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * - //),FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceModifyIndicationTransfer + decmatch( + mw_pDUSessionResourceModifyIndicationTransfer( + ?,//template (present) QosFlowPerTNLInformation p_dLQosFlowPerTNLInformation := ?, + *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + *//template PDUSessionResourceModifyIndicationTransfer.iE_Extensions p_iE_Extensions := * + )//FIXME: Decode&Match - In ASN1 it is OCTET STRING - pDUSessionResourceModifyIndicationTransfer + ), -//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * ) ) -- GitLab From 67e395e18371028c76fc7a4e54020381b15f1083 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 16:33:19 +0200 Subject: [PATCH 320/365] added enc/dec functions --- ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn index b9567ec..bd53c7a 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -34,6 +34,12 @@ module LibNGAP_EncdecDeclarations { with {extension "prototype(convert) encode(PER)"} + external function fx_dec_PDUSessionResourceSetupUnsuccessfulTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceSetupUnsuccessfulTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + + external function fx_enc_PDUSessionResourceSetupUnsuccessfulTransfer(NGAP_IEs.PDUSessionResourceSetupUnsuccessfulTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} + external function fx_dec_PDUSessionResourceReleaseCommandTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceReleaseCommandTransfer p) return integer with {extension "prototype(sliding) decode(PER)"} @@ -43,6 +49,13 @@ module LibNGAP_EncdecDeclarations { with {extension "prototype(convert) encode(PER)"} + external function fx_dec_PDUSessionResourceReleaseResponseTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceReleaseResponseTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_PDUSessionResourceReleaseResponseTransfer(NGAP_IEs.PDUSessionResourceReleaseResponseTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} + external function fx_dec_PDUSessionResourceModifyIndicationTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceModifyIndicationTransfer p) return integer with {extension "prototype(sliding) decode(PER)"} -- GitLab From 2c08023144489ef798f4b8f4ede1fba3ef33d23f Mon Sep 17 00:00:00 2001 From: ldtke Date: Thu, 30 May 2024 16:48:13 +0200 Subject: [PATCH 321/365] add Testcase, function and template for TC_NGAP_GNB_CMP_05 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 128 +++++++++++++++++++ ttcn/AtsNGAP/NGAP_TestCases.ttcn | 27 ++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 158 +++++++++++++++++++++++- 3 files changed, 312 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index cb681fe..9cf22cd 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1244,6 +1244,134 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_CMP_04 + + /** + * @desc Testcase function for TP_NGAP_GNB_CMP_05 + */ + function f_TC_NGAP_GNB_CMP_05() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_InitialContextSetupRequest_differentOptionals + ( + -, + -, + m_gUAMI, + { + { + PX_PDU_SESSION_ID, + omit, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))) + ), + omit + } + + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + m_uESecurityCapabilities, + -, + ''O, // UERadioCapability p_uERadioCapability, + -, // IndexToRFSP p_indexToRFSP := 1, // TODO: do we need PIXIT here? + '0000000000000000000000000000000000000000000000000000000000000001'B, // MaskedIMEISV p_maskedIMEISV, // TODO: do we need PIXIT here? + ''O, // FIXME FSCOM NAS_PDU field shall be bit2oct(enc(???)) , + + m_emergencyFallbackIndicator(emergency_fallback_requested), // EmergencyFallbackIndicator p_emergencyFallbackIndicator, + m_rRCInactiveTransitionReportRequest, // RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest, + m_redirectionVoiceFallback, // RedirectionVoiceFallback p_redirectionVoiceFallback, + m_locationReportingRequestType( + direct, + cell, + { + m_areaOfInterestItem( + m_areaOfInterest, + 1, + - + ), + m_areaOfInterestItem( + m_areaOfInterest, + 1, + - + ) + }, + -, + - + ), // LocationReportingRequestType p_locationReportingRequestType, + m_sRVCCOperationPossible, // SRVCCOperationPossible p_sRVCCOperationPossible, + m_iAB_Authorized, // IAB_Authorized p_iAB_Authorized, + m_enhanced_CoverageRestriction, // Enhanced_CoverageRestriction p_enhanced_CoverageRestriction, + -, // Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME, + m_uE_DifferentiationInfo, // UE_DifferentiationInfo p_uE_DifferentiationInfo, + m_nRUESidelinkAggregateMaximumBitrate, // NRUESidelinkAggregateMaximumBitrate p_nRUESidelinkAggregateMaximumBitrate, + m_lTEUESidelinkAggregateMaximumBitrate, // LTEUESidelinkAggregateMaximumBitrate p_lTEUESidelinkAggregateMaximumBitrate, + PX_U_E_RADIO_CAPABILITY_ID + + + ))); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_InitialContextSetupResponse( + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, + { + { + PX_PDU_SESSION_ID, + ?, + * + } + } + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_05 } // End of group Initial_Context_Setup //8.3.2 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index e869890..7a91894 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -449,6 +449,33 @@ module NGAP_TestCases { } // End of testcase TC_NGAP_GNB_CMP_04 + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with different optional fields and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + */ + testcase TC_NGAP_GNB_CMP_05() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_05()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_05 + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index bedf6c1..454efbd 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1146,7 +1146,163 @@ module LibNGAP_Templates { } } } // End of template m_n2_InitialContextSetupRequest_optional_MobilityRestriction - + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.1 INITIAL CONTEXT SETUP REQUEST + */ + template (value) InitiatingMessage m_n2_InitialContextSetupRequest_differentOptionals( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) GUAMI p_gUAMI, + in template (value) PDUSessionResourceSetupListCxtReq p_pDUSessionResourceSetupListCxtReq, + in template (value) AllowedNSSAI p_allowedNSSAI, + in template (value) UESecurityCapabilities p_uESecurityCapabilities, + in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, + in template (value) UERadioCapability p_uERadioCapability, + in template (value) IndexToRFSP p_indexToRFSP := 1, // TODO: do we need PIXIT here? + in template (value) MaskedIMEISV p_maskedIMEISV, + in template (value) NAS_PDU p_nasPdu, + in template (value) EmergencyFallbackIndicator p_emergencyFallbackIndicator, + in template (value) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest, + in template (value) RedirectionVoiceFallback p_redirectionVoiceFallback, + in template (value) LocationReportingRequestType p_locationReportingRequestType, + in template (value) SRVCCOperationPossible p_sRVCCOperationPossible, + in template (value) IAB_Authorized p_iAB_Authorized, + in template (value) Enhanced_CoverageRestriction p_enhanced_CoverageRestriction, + in template (value) Extended_ConnectedTime p_extended_ConnectedTime := PX_EXTENDED_CONNECTED_TIME, + in template (value) UE_DifferentiationInfo p_uE_DifferentiationInfo, + in template (value) NRUESidelinkAggregateMaximumBitrate p_nRUESidelinkAggregateMaximumBitrate, + in template (value) LTEUESidelinkAggregateMaximumBitrate p_lTEUESidelinkAggregateMaximumBitrate, + in template (value) UERadioCapabilityID p_uERadioCapabilityID + + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + InitialContextSetupRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_GUAMI, + criticality := reject, + value_ := { GUAMI := p_gUAMI } + }, + { + id := id_PDUSessionResourceSetupListCxtReq, + criticality := reject, + value_ := { PDUSessionResourceSetupListCxtReq := p_pDUSessionResourceSetupListCxtReq } + }, + { + id := id_AllowedNSSAI, + criticality := reject, + value_ := { AllowedNSSAI := p_allowedNSSAI } + }, + { + id := id_UESecurityCapabilities, + criticality := reject, + value_ := { UESecurityCapabilities := p_uESecurityCapabilities } + }, + { + id := id_SecurityKey, + criticality := reject, + value_ := { SecurityKey := p_nextHopNH } + }, + { + id := id_UERadioCapability, + criticality := ignore, + value_ := { UERadioCapability := p_uERadioCapability } + }, + { + id := id_IndexToRFSP, + criticality := ignore, + value_ := { IndexToRFSP := p_indexToRFSP } + }, + { + id := id_MaskedIMEISV, + criticality := ignore, + value_ := { MaskedIMEISV := p_maskedIMEISV } + }, + { + id := id_NAS_PDU, + criticality := ignore, + value_ := { NAS_PDU := p_nasPdu } + }, + { + id := id_EmergencyFallbackIndicator, + criticality := reject, + value_ := { EmergencyFallbackIndicator := p_emergencyFallbackIndicator} + }, + { + id := id_RRCInactiveTransitionReportRequest, + criticality := ignore, + value_ := { RRCInactiveTransitionReportRequest := p_rRCInactiveTransitionReportRequest} + }, + { + id := id_RedirectionVoiceFallback, + criticality := ignore, + value_ := { RedirectionVoiceFallback := p_redirectionVoiceFallback } + } , + { + id := id_LocationReportingRequestType, + criticality := ignore, + value_ := { LocationReportingRequestType := p_locationReportingRequestType } + }, + { + id := id_SRVCCOperationPossible, + criticality := ignore, + value_ := { SRVCCOperationPossible := p_sRVCCOperationPossible } + }, + { + id := id_IAB_Authorized, + criticality := ignore, + value_ := { IAB_Authorized := p_iAB_Authorized } + }, + { + id := id_Enhanced_CoverageRestriction, + criticality := ignore, + value_ := { Enhanced_CoverageRestriction := p_enhanced_CoverageRestriction } + }, + { + id := id_Extended_ConnectedTime, + criticality := ignore, + value_ := { Extended_ConnectedTime := p_extended_ConnectedTime } + }, + { + id := id_UE_DifferentiationInfo, + criticality := ignore, + value_ := { UE_DifferentiationInfo := p_uE_DifferentiationInfo } + }, + { + id := id_NRUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { NRUESidelinkAggregateMaximumBitrate := p_nRUESidelinkAggregateMaximumBitrate } + }, + { + id := id_LTEUESidelinkAggregateMaximumBitrate, + criticality := ignore, + value_ := { LTEUESidelinkAggregateMaximumBitrate := p_lTEUESidelinkAggregateMaximumBitrate } + }, + { + id := id_UERadioCapabilityID, + criticality := reject, + value_ := { UERadioCapabilityID := p_uERadioCapabilityID } + } + + + } + } + } + } // End of template m_n2_InitialContextSetupRequest_differentOptionals + } // End of group Send group Receive { -- GitLab From 417289e862342ed8921ca869e4d896c0afda629f Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 16:57:48 +0200 Subject: [PATCH 322/365] updated TPs amf_urp02* --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index cb681fe..ea0314f 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -6427,13 +6427,13 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // f_send_NGAP_PDU( - // m_ngap_initMsg( - // m_n2_UERadioCapabilityIDMappingRequest( - // //in template (value) UERadioCapabilityID p_uERadioCapabilityID - // ) - // ) - // ); + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_UERadioCapabilityIDMappingRequest( + '0000000000'O//in template (value) UERadioCapabilityID p_uERadioCapabilityID == OCTETSTRING + ) + ) + ); f_recv_NGAP_PDU( mw_ngap_succMsg( -- GitLab From b6935e6d800e87bbbb1ff0c21be2426d3feb3075 Mon Sep 17 00:00:00 2001 From: garciay Date: Thu, 30 May 2024 17:23:22 +0200 Subject: [PATCH 323/365] Add new templates --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 82 +++++++++++++++++++++++-- 2 files changed, 77 insertions(+), 7 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 5598525..a521ab7 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4201,7 +4201,7 @@ module NGAP_TCFunctions { PX_AMF_UE_NGAP_ID, PX_RAN_UE_NGAP_ID, { * - // mw_pDUSessionResourceFailedToModifyItemModCfm( + // mw_n2_PDUSessionResourceModifyConfirm_failed( // PX_PDU_SESSION_ID, // ?,//mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( // // ?,//template (present) Cause p_cause := ?, diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 454efbd..46d9f71 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -856,17 +856,17 @@ module LibNGAP_Templates { protocolIEs := { { id := id_AMF_UE_NGAP_ID, - criticality := reject, + criticality := ignore, value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, { id := id_RAN_UE_NGAP_ID, - criticality := reject, + criticality := ignore, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { id := id_PDUSessionResourceModifyListModReq, - criticality := reject, + criticality := ignore, value_ := { PDUSessionResourceModifyListModCfm := p_pDUSessionResourceModifyListModCfm } } @@ -875,6 +875,41 @@ module LibNGAP_Templates { } } // End of template m_n2_PDUSessionResourceModifyConfirm + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.9 PDU SESSION RESOURCE MODIFY CONFIRM + */ + template (value) SuccessfulOutcome m_n2_PDUSessionResourceModifyConfirm_failed( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) PDUSessionResourceFailedToModifyListModCfm p_PDUSessionResourceFailedToModifyListModCfm + ) := { + + procedureCode := id_PDUSessionResourceModify, + criticality := reject, + value_ := { + PDUSessionResourceModifyConfirm := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceFailedToModifyListModCfm, + criticality := ignore, + value_ := { PDUSessionResourceFailedToModifyListModCfm := p_PDUSessionResourceFailedToModifyListModCfm + } + } + } + } + } + } // End of template m_n2_PDUSessionResourceModifyConfirm_failed + } // End of group Send group Receive { @@ -895,17 +930,17 @@ module LibNGAP_Templates { protocolIEs := { { id := id_AMF_UE_NGAP_ID, - criticality := reject, + criticality := ignore, value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } }, { id := id_RAN_UE_NGAP_ID, - criticality := reject, + criticality := ignore, value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } }, { id := id_PDUSessionResourceModifyListModReq, - criticality := reject, + criticality := ignore, value_ := { PDUSessionResourceModifyListModCfm := p_pDUSessionResourceModifyListModCfm } } @@ -914,6 +949,41 @@ module LibNGAP_Templates { } } // End of template mw_n2_PDUSessionResourceModifyConfirm + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) 9.2.1.9 PDU SESSION RESOURCE MODIFY CONFIRM + */ + template (present) SuccessfulOutcome mw_n2_PDUSessionResourceModifyConfirm_failed( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceFailedToModifyListModCfm p_PDUSessionResourceFailedToModifyListModCfm := ? + ) := { + + procedureCode := id_PDUSessionResourceModify, + criticality := reject, + value_ := { + PDUSessionResourceModifyConfirm := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceFailedToModifyListModCfm, + criticality := ignore, + value_ := { PDUSessionResourceFailedToModifyListModCfm := p_PDUSessionResourceFailedToModifyListModCfm + } + } + } + } + } + } // End of template mw_n2_PDUSessionResourceModifyConfirm_failed + } // End of group Receive } // End of group PDU_SESSION_RESOURCE_MODIFY_CONFIRM -- GitLab From 6705a0b0e064ecab991b4343cdce10e23313dada Mon Sep 17 00:00:00 2001 From: ldtke Date: Thu, 30 May 2024 17:24:07 +0200 Subject: [PATCH 324/365] add Testcase, function and template for TC_NGAP_GNB_CMP_06 and minor improvments in GNB_CMP --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 107 ++++++++++++++++++++++-- ttcn/AtsNGAP/NGAP_TestCases.ttcn | 27 ++++++ ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 33 ++++++++ 3 files changed, 161 insertions(+), 6 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index a521ab7..7b3d816 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -980,11 +980,11 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_InitialContextSetupResponse( - -, - -, + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, { { - ?, + PX_PDU_SESSION_ID, ?, * } @@ -1128,11 +1128,11 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( mw_n2_InitialContextSetupResponse( - -, - -, + PX_AMF_UE_NGAP_ID, + PX_RAN_UE_NGAP_ID, { { - ?, + PX_PDU_SESSION_ID, ?, * } @@ -1372,6 +1372,101 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_NGAP_GNB_CMP_05 + + /** + * @desc Testcase function for TP_NGAP_GNB_CMP_06 + */ + function f_TC_NGAP_GNB_CMP_06() runs on aMFNGAPComponent { + + // Preamble + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + + // TODO: hasEstablishedContextInproperly + + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); + + + // Body + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_InitialContextSetupRequest + ( + -, + -, + m_gUAMI, + { + { + PX_PDU_SESSION_ID, + omit, + m_s_NSSAI('00'O, '000000'O), + bit2oct( + encvalue( + m_pDUSessionResourceSetupRequestTransfer( + m_pDUSessionResourceSetupRequestTransfer_mandatories( + m_pDUSessionType(ipv4), + { + m_qosFlowSetupRequestItem( + PX_QOS_FLOW_IDENTIFIER, + m_qosFlowLevelQosParameters( + m_qosCharacteristics_dynamic5QI( + m_dynamic5QIDescriptor( + 1,//in template (value) PriorityLevelQos p_priorityLevelQos, + 0,//in template (value) PacketDelayBudget p_packetDelayBudget, + m_PacketErrorRate( + 0,//in template (value) PacketErrorRate.pERScalar p_pERScalar, + 0//in template (value) PacketErrorRate.pERExponent p_pERExponent + ))), + m_allocationAndRetentionPriority( + 1,//in template (value) PriorityLevelARP p_priorityLevelARP, + shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability, + not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability, + ))) + }, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel + )))) + ), + omit + } + + }, + { + m_allowedNSSAI_Item( + m_s_NSSAI('00'O, '000000'O) + ) + }, + m_uESecurityCapabilities, + - + ) + )); + + + f_recv_NGAP_PDU( + mw_ngap_succMsg( + mw_n2_InitialContextSetupResponse_Failed( + -, + -, + { + { + PX_PDU_SESSION_ID, + ?, + * + } + } + ) + )); + + f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Testbody done. ***"); + + // Postamble + f_postamble_NGAP_gNB(); + f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); + log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); + + } // End of function f_TC_NGAP_GNB_CMP_06 } // End of group Initial_Context_Setup //8.3.2 diff --git a/ttcn/AtsNGAP/NGAP_TestCases.ttcn b/ttcn/AtsNGAP/NGAP_TestCases.ttcn index 7a91894..26448d5 100644 --- a/ttcn/AtsNGAP/NGAP_TestCases.ttcn +++ b/ttcn/AtsNGAP/NGAP_TestCases.ttcn @@ -476,6 +476,33 @@ module NGAP_TestCases { } // End of testcase TC_NGAP_GNB_CMP_05 + /** + * @desc Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." + */ + testcase TC_NGAP_GNB_CMP_06() runs on aMFNGAPComponent system TestAdapter { + + // Local variables + var aMFNGAPComponent v_ngap_amf; + + // Test control + if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_2_1)){ + log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_2_1' shall be set to true for executing the TC. ***"); + stop; + } + + // Test component configuration + f_cf_NGAP_aMF_Up(v_ngap_amf); + + // Start + v_ngap_amf.start(f_TC_NGAP_GNB_CMP_06()); + + // synchronize PTC on 1 sychronization points + f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); + + f_cf_Down/*gNBoraMF*/(); + + } // End of testcase TC_NGAP_GNB_CMP_06 + } // End of group Initial_Context_Setup //8.3.2 group UE_Context_Release_Request_NG_RAN_node_initiated{ diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 46d9f71..0a1a190 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1511,6 +1511,39 @@ module LibNGAP_Templates { } } } // End of template mw_n2_PDUInitialContextSetupResponse + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.2.2 INITIAL CONTEXT SETUP RESPONSE + */ + template (present) SuccessfulOutcome mw_n2_InitialContextSetupResponse_Failed( + template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + template (present) PDUSessionResourceFailedToSetupListSURes p_pDUSessionResourceFailedToSetupListURes := ? + ) := { + procedureCode := id_InitialContextSetup, + criticality := reject, + value_ := { + PDUSessionResourceSetupResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := ignore, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := ignore, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_PDUSessionResourceFailedToSetupListSURes, + criticality := ignore, + value_ := { PDUSessionResourceFailedToSetupListSURes := p_pDUSessionResourceFailedToSetupListURes } + } + } + } + } + } // End of template mw_n2_InitialContextSetupResponse_Failed template (present) SuccessfulOutcome mw_n2_InitialContextSetupResponse_noPDUSessionResourceSetupListSURes( template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, -- GitLab From f9ad00300d813d159bd6b2b5942ba8faa5130a62 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 17:41:34 +0200 Subject: [PATCH 325/365] updated TPs amf_pdu04-05 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 38 +++++++++++++++++------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index a521ab7..3da96ab 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4116,13 +4116,15 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceModifyItemModCfm( PX_PDU_SESSION_ID, - ?,//decmatch(mw_pDUSessionResourceModifyConfirmTransfer( - // ?,//template (present) QosFlowModifyConfirmList p_qosFlowModifyConfirmList := ?, - // ?,//template (present) UPTransportLayerInformation p_uLNGU_UP_TNLInformation := ?, - // -,//template UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := *, - // -,//template QosFlowListWithCause p_qosFlowFailedToModifyList := *, - // -//template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * - // )), OCTETSTRING + decmatch( + mw_pDUSessionResourceModifyConfirmTransfer( + ?,//template (present) QosFlowModifyConfirmList p_qosFlowModifyConfirmList := ?, + ?,//template (present) UPTransportLayerInformation p_uLNGU_UP_TNLInformation := ?, + -,//template UPTransportLayerInformationPairList p_additionalNG_UUPTNLInformation := *, + -,//template QosFlowListWithCause p_qosFlowFailedToModifyList := *, + -//template PDUSessionResourceModifyConfirmTransfer.iE_Extensions p_iE_Extensions := * + ) + ),// OCTETSTRING -//template PDUSessionResourceModifyItemModCfm.iE_Extensions p_iE_Extensions := * ) } @@ -4197,18 +4199,20 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( //? //FIXME missing template mw_n2_PDUSessionResourceFailedToModifyListModCfm - mw_n2_PDUSessionResourceModifyConfirm( + mw_n2_PDUSessionResourceModifyConfirm_failed( PX_AMF_UE_NGAP_ID, PX_RAN_UE_NGAP_ID, - { * - // mw_n2_PDUSessionResourceModifyConfirm_failed( - // PX_PDU_SESSION_ID, - // ?,//mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( - // // ?,//template (present) Cause p_cause := ?, - // // -//template PDUSessionResourceModifyIndicationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - // //),OCTETSTRING - // *//template PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := * - // ) + { + mw_pDUSessionResourceFailedToModifyItemModCfm( + PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, + decmatch( + mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer( + ?,//template (present) Cause p_cause := ?, + -//template PDUSessionResourceModifyIndicationUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + )//OCTETSTRINGtemplate (present) PDUSessionResourceFailedToModifyItemModCfm.pDUSessionResourceModifyIndicationUnsuccessfulTransfer p_pDUSessionResourceModifyIndicationUnsuccessfulTransfer := ?, + ), + *//template PDUSessionResourceFailedToModifyItemModCfm.iE_Extensions p_iE_Extensions := * + ) } ) ) -- GitLab From 86a6e81b9f232ada55518943d764cc170c301806 Mon Sep 17 00:00:00 2001 From: juvancic Date: Thu, 30 May 2024 17:41:49 +0200 Subject: [PATCH 326/365] added enc/dec functions --- .../LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn index bd53c7a..f87ef36 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -57,6 +57,14 @@ module LibNGAP_EncdecDeclarations { with {extension "prototype(convert) encode(PER)"} + external function fx_dec_PDUSessionResourceModifyConfirmTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceModifyConfirmTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_PDUSessionResourceModifyConfirmTransfer(NGAP_IEs.PDUSessionResourceModifyConfirmTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} + + external function fx_dec_PDUSessionResourceModifyIndicationTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceModifyIndicationTransfer p) return integer with {extension "prototype(sliding) decode(PER)"} //with {extension "prototype(sliding) decode(LibNGAP_codec)"} @@ -64,6 +72,15 @@ module LibNGAP_EncdecDeclarations { external function fx_enc_PDUSessionResourceModifyIndicationTransfer(NGAP_IEs.PDUSessionResourceModifyIndicationTransfer p) return bitstring with {extension "prototype(convert) encode(PER)"} + + external function fx_dec_PDUSessionResourceModifyIndicationUnsuccessfulTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceModifyIndicationUnsuccessfulTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_PDUSessionResourceModifyIndicationUnsuccessfulTransfer(NGAP_IEs.PDUSessionResourceModifyIndicationUnsuccessfulTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} + + external function fx_dec_UEContextSuspendRequestTransfer(inout bitstring pdu, out NGAP_IEs.UEContextSuspendRequestTransfer p) return integer with {extension "prototype(sliding) decode(PER)"} //with {extension "prototype(sliding) decode(LibNGAP_codec)"} -- GitLab From 7c94d762e41827f3adbded5b6401d73c96d8080a Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 31 May 2024 08:43:57 +0200 Subject: [PATCH 327/365] remove unnecessary initial condition in f_TC_NGAP_AMF_CTP_01 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 7590ab9..d217a24 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -3172,14 +3172,13 @@ module NGAP_TCFunctions { group Downlink_RAN_Configuration_Transfer{ /** - * @desc Testcase function for TC_NGAP_aMF_CTP_01 + * @desc Testcase function for TC_NGAP_AMF_CTP_01 */ function f_TC_NGAP_AMF_CTP_01() runs on gNBNGAPComponent { // Local variables // Preamble f_NGAP_gnb_init(); - f_NGAP_gnb_UE_Register(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); -- GitLab From 430117a61a6593ce4caf249c3d0ac51fb21e1b9c Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 31 May 2024 08:50:41 +0200 Subject: [PATCH 328/365] fix wrong naming in initial condition --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 2 +- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 19e6cfe..e9355b3 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -290,7 +290,7 @@ module NGAP_Steps { /** * @desc */ - function f_NGAP_amf_UE_Has_Suspended_Context() runs on NGAPComponent { + function f_NGAP_gnb_UE_Has_Suspended_Context() runs on NGAPComponent { //FIXME: Implementation of UE has suspended context } // End of function f_NGAP_amf_UE_hasSuspendedContext diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index d217a24..db59e06 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4825,7 +4825,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - f_NGAP_amf_UE_Has_Suspended_Context(); + f_NGAP_gnb_UE_Has_Suspended_Context(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4869,7 +4869,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - f_NGAP_amf_UE_Has_Suspended_Context(); + f_NGAP_gnb_UE_Has_Suspended_Context(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); -- GitLab From 66155690ab37e7783c9c28a34ac5b06dcdb7d6e4 Mon Sep 17 00:00:00 2001 From: ldtke Date: Fri, 31 May 2024 09:03:08 +0200 Subject: [PATCH 329/365] add initial steps --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index db59e06..d822a21 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -4409,10 +4409,8 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - //f_NGAP_gnb_UE_PDU_ResourceSetup(); + f_NGAP_gnb_UE_EstablishedInitialContext(); - // TODO: hasEstablishedInitialContext - f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4458,10 +4456,8 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - // f_NGAP_gnb_UE_PDU_ResourceSetup(); - - // TODO: hasEstablishedInitialContext - + f_NGAP_gnb_UE_EstablishedInitialContext(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4507,7 +4503,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - // f_NGAP_gnb_UE_PDU_ResourceSetup(); + f_NGAP_gnb_UE_EstablishedInitialContext(); // TODO: hasEstablishedInitialContext @@ -4600,8 +4596,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - - // TODO: hasEstablishedInitialContext + f_NGAP_gnb_UE_EstablishedInitialContext(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -4648,8 +4643,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_gnb_init(); f_NGAP_gnb_UE_Register(); - - // TODO: hasEstablishedInitialContext + f_NGAP_gnb_UE_EstablishedInitialContext(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); -- GitLab From 47764ef0f71361471ae9c0dd31369d1b4093d594 Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 31 May 2024 09:25:58 +0200 Subject: [PATCH 330/365] updated TPs gnb_pdu07-10 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 34 +++++++++++++++--------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 7590ab9..9468796 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -633,7 +633,6 @@ module NGAP_TCFunctions { ) }//template (present) PDUSessionResourceReleasedListRelRes p_pDUSessionResourceReleasedListRelRes := ? ) - ) ); @@ -695,22 +694,22 @@ module NGAP_TCFunctions { ( mw_pDUSessionResourceModifyItemModRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, - ?,//mw_pDUSessionResourceModifyResponseTransfer( - //*,//template UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := *, - //*,//template UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := *, - //?,//template QosFlowAddOrModifyResponseList p_qosFlowAddOrModifyResponseList := *, - //*,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, - //*,//template QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := *, - //*//template PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := * - //),//FIXME: Decode&Match - In ASN1 it is OCTET STRING pDUSessionResourceModifyResponseTransfer - + decmatch( + mw_pDUSessionResourceModifyResponseTransfer( + *,//template UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := *, + *,//template UPTransportLayerInformation p_uL_NGU_UP_TNLInformation := *, + ?,//template QosFlowAddOrModifyResponseList p_qosFlowAddOrModifyResponseList := *, + *,//template QosFlowPerTNLInformationList p_additionalDLQosFlowPerTNLInformation := *, + *,//template QosFlowListWithCause p_qosFlowFailedToAddOrModifyList := *, + *//template PDUSessionResourceModifyResponseTransfer.iE_Extensions p_iE_Extensions := * + ) + ),//Decode&Match - In ASN1 it is OCTET STRING pDUSessionResourceModifyResponseTransfer -//template PDUSessionResourceModifyItemModRes.iE_Extensions p_iE_Extensions := * ) ) } ) - ) ); @@ -779,16 +778,17 @@ module NGAP_TCFunctions { { mw_pDUSessionResourceFailedToModifyItemModRes( PX_PDU_SESSION_ID,//template (present) PDUSessionID p_pDUSessionID := ?, - ?,//mw_pDUSessionResourceModifyUnsuccessfulTransfer( - // ?,//template (present) Cause p_cause := ?, - // *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, - // *//template PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * - //),/FIXME: Decode&Match - In ASN1 it is OCTET STRING mw_pDUSessionResourceModifyUnsuccessfulTransfer + decmatch( + mw_pDUSessionResourceModifyUnsuccessfulTransfer( + ?,//template (present) Cause p_cause := ?, + *,//template CriticalityDiagnostics p_criticalityDiagnostics := *, + *//template PDUSessionResourceModifyUnsuccessfulTransfer.iE_Extensions p_iE_Extensions := * + ) + ),//Decode&Match - In ASN1 it is OCTET STRING mw_pDUSessionResourceModifyUnsuccessfulTransfer * ) } ) - ) ); -- GitLab From a2445bed60cf878edb16b065b5cdb4f3a2da5e88 Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 31 May 2024 09:26:05 +0200 Subject: [PATCH 331/365] added enc/dec functions --- ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn index f87ef36..a93df88 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -81,6 +81,22 @@ module LibNGAP_EncdecDeclarations { with {extension "prototype(convert) encode(PER)"} + external function fx_dec_PDUSessionResourceModifyResponseTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceModifyResponseTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_PDUSessionResourceModifyResponseTransfer(NGAP_IEs.PDUSessionResourceModifyResponseTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} + + + external function fx_dec_PDUSessionResourceModifyUnsuccessfulTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceModifyUnsuccessfulTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_PDUSessionResourceModifyUnsuccessfulTransfer(NGAP_IEs.PDUSessionResourceModifyUnsuccessfulTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} + + external function fx_dec_UEContextSuspendRequestTransfer(inout bitstring pdu, out NGAP_IEs.UEContextSuspendRequestTransfer p) return integer with {extension "prototype(sliding) decode(PER)"} //with {extension "prototype(sliding) decode(LibNGAP_codec)"} -- GitLab From d960ec71f9835b321e16af8a23f52112b63723b1 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 31 May 2024 09:33:52 +0200 Subject: [PATCH 332/365] Add missimg templates and remove uselss; Fix missing enc/dec function --- etc/AtsNGAP/AtsNGAP_AMF.cfg_ | 2 +- etc/AtsNGAP/AtsNGAP_GNB.cgf_ | 2 +- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 260 ++---------------------- 3 files changed, 18 insertions(+), 246 deletions(-) diff --git a/etc/AtsNGAP/AtsNGAP_AMF.cfg_ b/etc/AtsNGAP/AtsNGAP_AMF.cfg_ index b3003e9..6bc45b0 100644 --- a/etc/AtsNGAP/AtsNGAP_AMF.cfg_ +++ b/etc/AtsNGAP/AtsNGAP_AMF.cfg_ @@ -20,7 +20,7 @@ LogEventTypes:= Yes [TESTPORT_PARAMETERS] # In this section you can specify parameters that are passed to Test Ports. -system.N2_gNBaMF_P.params := "NGAP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=test.pcap)" +aMFNGAPComponent.N2_gNBaMF_P.params := "NGAP/ETH/PCAP_FILE(file=../captures/free5gc.pcap)" [DEFINE] # In this section you can create macro definitions, diff --git a/etc/AtsNGAP/AtsNGAP_GNB.cgf_ b/etc/AtsNGAP/AtsNGAP_GNB.cgf_ index 143225b..64cc365 100644 --- a/etc/AtsNGAP/AtsNGAP_GNB.cgf_ +++ b/etc/AtsNGAP/AtsNGAP_GNB.cgf_ @@ -20,7 +20,7 @@ LogEventTypes:= Yes [TESTPORT_PARAMETERS] # In this section you can specify parameters that are passed to Test Ports. -system.N2_gNBaMF_P.params := "NGAP/ETH(mac_src=080027D2B658)/PCAP_FILE(file=../captures/free5gc.pcap)" +aMFNGAPComponent.N2_gNBaMF_P.params := "NGAP/ETH/PCAP_FILE(file=../captures/free5gc.pcap)" [DEFINE] # In this section you can create macro definitions, diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 0a1a190..6594eb2 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -13538,140 +13538,26 @@ module LibNGAP_Templates { } // End of template m_pDUSessionResourceModifyIndicationUnsuccessfulTransfer template (value) PDUSessionResourceModifyRequestTransfer m_pDUSessionResourceModifyRequestTransfer( - in template (omit) PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs - ) := { + in template (omit) PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs + ) := { protocolIEs := p_protocolIEs } // End of template m_pDUSessionResourceModifyRequestTransfer - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( - in template (value) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate - ) := { - { - id := id_PDUSessionAggregateMaximumBitRate, - criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( - in template (value) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList - ) := { + template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_options( + in template (value) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList, + in template (value) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList + ) := { { id := id_UL_NGU_UP_TNLModifyList, criticality := reject, value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( - in template (value) NetworkInstance p_networkInstance - ) := { - { - id := id_NetworkInstance, - criticality := reject, - value_ := { NetworkInstance := p_networkInstance } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( - in template (value) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList - ) := { + }, { id := id_QosFlowAddOrModifyRequestList, criticality := reject, value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( - in template (value) QosFlowListWithCause p_qosFlowListWithCause - ) := { - { - id := id_QosFlowToReleaseList, - criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList - ) := { - { - id := id_AdditionalUL_NGU_UP_TNLInformation, - criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( - in template (value) CommonNetworkInstance p_commonNetworkInstance - ) := { - { - id := id_CommonNetworkInstance, - criticality := reject, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformationList p_uPTransportLayerInformationList - ) := { - { - id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( - in template (value) CommonNetworkInstance p_commonNetworkInstance - ) := { - { - id := id_RedundantCommonNetworkInstance, - criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( - in template (value) UPTransportLayerInformation p_uPTransportLayerInformation - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( - in template (value) SecurityIndication p_securityIndication - ) := { - { - id := id_SecurityIndication, - criticality := ignore, - value_ := { SecurityIndication := p_securityIndication } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( - in template (value) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList - ) := { - { - id := id_MBSSessionSetuporModifyRequestList, - criticality := ignore, - value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList - - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( - in template (value) MBSSessionToReleaseList p_mBSSessionToReleaseList - ) := { - { - id := id_MBSSessionToReleaseList, - criticality := ignore, - value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } - } - } // End of template m_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList + } // End of template m_pDUSessionResourceModifyRequestTransfer_options template (omit) PDUSessionResourceModifyResponseTransfer m_pDUSessionResourceModifyResponseTransfer( in template (omit) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := omit, @@ -21119,140 +21005,26 @@ module LibNGAP_Templates { } // End of template mw_pDUSessionResourceModifyIndicationUnsuccessfulTransfer template (present) PDUSessionResourceModifyRequestTransfer mw_pDUSessionResourceModifyRequestTransfer( - template PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs := ? - ) := { + template PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs := ? + ) := { protocolIEs := p_protocolIEs } // End of template mw_pDUSessionResourceModifyRequestTransfer - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate( - template (present) PDUSessionAggregateMaximumBitRate p_pDUSessionAggregateMaximumBitRate := ? - ) := { - { - id := id_PDUSessionAggregateMaximumBitRate, - criticality := reject, - value_ := { PDUSessionAggregateMaximumBitRate := p_pDUSessionAggregateMaximumBitRate } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_PDUSessionAggregateMaximumBitRate - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList( - template (present) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList := ? - ) := { + template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_options( + template (present) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList := ?, + template (present) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList := ? + ) := { { id := id_UL_NGU_UP_TNLModifyList, criticality := reject, value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_UL_NGU_UP_TNLModifyList - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance( - template (present) NetworkInstance p_networkInstance := ? - ) := { - { - id := id_NetworkInstance, - criticality := reject, - value_ := { NetworkInstance := p_networkInstance } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_NetworkInstance - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList( - template (present) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList := ? - ) := { + }, { id := id_QosFlowAddOrModifyRequestList, criticality := reject, value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowAddOrModifyRequestList - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList( - template (present) QosFlowListWithCause p_qosFlowListWithCause := ? - ) := { - { - id := id_QosFlowToReleaseList, - criticality := reject, - value_ := { QosFlowListWithCause := p_qosFlowListWithCause } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_QosFlowToReleaseList - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalUL_NGU_UP_TNLInformation, - criticality := reject, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalUL_NGU_UP_TNLInformation - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance( - template (present) CommonNetworkInstance p_commonNetworkInstance := ? - ) := { - { - id := id_CommonNetworkInstance, - criticality := reject, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_CommonNetworkInstance - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformationList p_uPTransportLayerInformationList := ? - ) := { - { - id := id_AdditionalRedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformationList := p_uPTransportLayerInformationList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_AdditionalRedundantUL_NGU_UP_TNLInformation - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance( - template (present) CommonNetworkInstance p_commonNetworkInstance := ? - ) := { - { - id := id_RedundantCommonNetworkInstance, - criticality := ignore, - value_ := { CommonNetworkInstance := p_commonNetworkInstance } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantCommonNetworkInstance - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation( - template (present) UPTransportLayerInformation p_uPTransportLayerInformation := ? - ) := { - { - id := id_RedundantUL_NGU_UP_TNLInformation, - criticality := ignore, - value_ := { UPTransportLayerInformation := p_uPTransportLayerInformation } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_RedundantUL_NGU_UP_TNLInformation - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication( - template (present) SecurityIndication p_securityIndication := ? - ) := { - { - id := id_SecurityIndication, - criticality := ignore, - value_ := { SecurityIndication := p_securityIndication } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_SecurityIndication - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList( - template (present) MBSSessionSetuporModifyRequestList p_mBSSessionSetuporModifyRequestList := ? - ) := { - { - id := id_MBSSessionSetuporModifyRequestList, - criticality := ignore, - value_ := { MBSSessionSetuporModifyRequestList := p_mBSSessionSetuporModifyRequestList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionSetuporModifyRequestList - - template (present) PDUSessionResourceModifyRequestTransfer.protocolIEs mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList( - template (present) MBSSessionToReleaseList p_mBSSessionToReleaseList := ? - ) := { - { - id := id_MBSSessionToReleaseList, - criticality := ignore, - value_ := { MBSSessionToReleaseList := p_mBSSessionToReleaseList } - } - } // End of template mw_pDUSessionResourceModifyRequestTransfer_id_MBSSessionToReleaseList + } // End of template mw_pDUSessionResourceModifyRequestTransfer_options template PDUSessionResourceModifyResponseTransfer mw_pDUSessionResourceModifyResponseTransfer( template UPTransportLayerInformation p_dL_NGU_UP_TNLInformation := *, -- GitLab From 923866cc2003b002ea4da83a239c6600329c185c Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 31 May 2024 09:35:56 +0200 Subject: [PATCH 333/365] Add missimg templates and remove uselss; Fix missing enc/dec function --- ccsrc/EncDec/LibNGAP_Encdec.cc | 48 +++++++++++++++++++++++++++++++--- 1 file changed, 44 insertions(+), 4 deletions(-) diff --git a/ccsrc/EncDec/LibNGAP_Encdec.cc b/ccsrc/EncDec/LibNGAP_Encdec.cc index 70310f8..df79098 100644 --- a/ccsrc/EncDec/LibNGAP_Encdec.cc +++ b/ccsrc/EncDec/LibNGAP_Encdec.cc @@ -19,7 +19,7 @@ namespace LibNGAP__EncdecDeclarations { return int2bit(0, 1); } - INTEGER fx__dec__PDUSessionResourceReleaseCommandTransfer(BITSTRING& b, NGAP__IEs::PDUSessionResourceReleaseCommandTransfer& p) { + INTEGER fx__dec__PDUSessionResourceReleaseCommandTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceReleaseCommandTransfer& p) { loggers::get_instance().log(">>> fx__dec__PDUSessionResourceReleaseCommandTransfer"); return -1; } @@ -29,7 +29,7 @@ namespace LibNGAP__EncdecDeclarations { return int2bit(0, 1); } - INTEGER fx__dec__UEContextSuspendRequestTransfer(BITSTRING& b, NGAP__IEs::UEContextSuspendRequestTransfer& p) { + INTEGER fx__dec__UEContextSuspendRequestTransfer(BITSTRING& pdu, NGAP__IEs::UEContextSuspendRequestTransfer& p) { loggers::get_instance().log(">>> fx__dec__UEContextSuspendRequestTransfer"); return -1; } @@ -39,7 +39,7 @@ namespace LibNGAP__EncdecDeclarations { return int2bit(0, 1); } - INTEGER fx__dec__PDUSessionResourceSetupResponseTransfer(BITSTRING& b, NGAP__IEs::PDUSessionResourceSetupResponseTransfer& p) { + INTEGER fx__dec__PDUSessionResourceSetupResponseTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceSetupResponseTransfer& p) { loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupResponseTransfer"); return -1; } @@ -49,11 +49,51 @@ namespace LibNGAP__EncdecDeclarations { return int2bit(0, 1); } - INTEGER fx__dec__PDUSessionResourceModifyIndicationTransfer(BITSTRING& b, NGAP__IEs::PDUSessionResourceModifyIndicationTransfer& p) { + INTEGER fx__dec__PDUSessionResourceModifyIndicationTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceModifyIndicationTransfer& p) { loggers::get_instance().log(">>> fx__dec__PDUSessionResourceModifyIndicationTransfer"); return -1; } + BITSTRING fx__enc__PDUSessionResourceSetupUnsuccessfulTransfer(const NGAP__IEs::PDUSessionResourceSetupUnsuccessfulTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupUnsuccessfulTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceSetupUnsuccessfulTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceSetupUnsuccessfulTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupUnsuccessfulTransfer"); + return -1; + } + + BITSTRING fx__enc__PDUSessionResourceReleaseResponseTransfer(const NGAP__IEs::PDUSessionResourceReleaseResponseTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupUnsuccessfulTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceReleaseResponseTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceReleaseResponseTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupUnsuccessfulTransfer"); + return -1; + } + + BITSTRING fx__enc__PDUSessionResourceModifyConfirmTransfer(const NGAP__IEs::PDUSessionResourceModifyConfirmTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupUnsuccessfulTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceModifyConfirmTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceModifyConfirmTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupUnsuccessfulTransfer"); + return -1; + } + + BITSTRING fx__enc__PDUSessionResourceModifyIndicationUnsuccessfulTransfer(const NGAP__IEs::PDUSessionResourceModifyIndicationUnsuccessfulTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupUnsuccessfulTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceModifyIndicationUnsuccessfulTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceModifyIndicationUnsuccessfulTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupUnsuccessfulTransfer"); + return -1; + } + /**************************************************** * @desc External function to encode a .... type * @param value to encode -- GitLab From 91445957fc851bb97b403d33deff7331ddca75dd Mon Sep 17 00:00:00 2001 From: ldtke Date: Fri, 31 May 2024 09:45:01 +0200 Subject: [PATCH 334/365] add initial steps --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 0b60f99..a8e603f 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1480,11 +1480,10 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_PDU_ResourceSetup(); + f_NGAP_gnb_UE_EstablishedInitialContext(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); - // TODO: hasEstablishedInitialContext - + log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -1523,7 +1522,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_PDU_ResourceSetup(); + f_NGAP_gnb_UE_EstablishedInitialContext(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -1564,7 +1563,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_PDU_ResourceSetup(); + f_NGAP_gnb_UE_EstablishedInitialContext(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -1848,8 +1847,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - - // TODO: hasEstablishedInitialContext + f_NGAP_gnb_UE_EstablishedInitialContext(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -1898,8 +1896,8 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); + f_NGAP_gnb_UE_EstablishedInitialContext(); - // TODO: hasEstablishedInitialContext f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -1939,8 +1937,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - - // TODO: hasSuspendedContext + f_NGAP_gnb_UE_Has_Suspended_Context(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); -- GitLab From 7ed75c437cbaea38b913de7e54def03403b52728 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 31 May 2024 09:47:53 +0200 Subject: [PATCH 335/365] Add missimg templates and remove uselss; Fix missing enc/dec function --- ccsrc/EncDec/LibNGAP_Encdec.cc | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/ccsrc/EncDec/LibNGAP_Encdec.cc b/ccsrc/EncDec/LibNGAP_Encdec.cc index df79098..6642409 100644 --- a/ccsrc/EncDec/LibNGAP_Encdec.cc +++ b/ccsrc/EncDec/LibNGAP_Encdec.cc @@ -94,6 +94,27 @@ namespace LibNGAP__EncdecDeclarations { return -1; } + BITSTRING fx__enc__PDUSessionResourceModifyResponseTransfer(const NGAP__IEs::PDUSessionResourceModifyResponseTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupUnsuccessfulTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceModifyResponseTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceModifyResponseTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupUnsuccessfulTransfer"); + return -1; + } + + BITSTRING fx__enc__PDUSessionResourceModifyUnsuccessfulTransfer(const NGAP__IEs::PDUSessionResourceModifyUnsuccessfulTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupUnsuccessfulTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceModifyUnsuccessfulTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceModifyUnsuccessfulTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupUnsuccessfulTransfer"); + return -1; + } + + /**************************************************** * @desc External function to encode a .... type * @param value to encode -- GitLab From 58d52e2b30ad786ea53a8a22f39db062161dc369 Mon Sep 17 00:00:00 2001 From: Sascha Hackel Date: Fri, 31 May 2024 10:16:08 +0200 Subject: [PATCH 336/365] add Inital Contition for f_TC_NGAP_GNB_CMP_14 --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 7 +++++++ ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 1 + 2 files changed, 8 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index e9355b3..7d2f028 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -242,6 +242,13 @@ module NGAP_Steps { function f_NGAP_amf_UE_RRC_UL_Message_Failure() runs on NGAPComponent { //FIXME: Implementation of an RRC UL message delivery failure } // End of function f_NGAP_amf_UE_RRC_UL_Message_Failure + + /** + * @desc + */ + function f_NGAP_amf_isTransitioningTo_RRC_INACTIVE() runs on NGAPComponent { + //FIXME: Implementation of an UE transitioning into the RRC_INACTIVE state + } // End of function f_NGAP_amf_isTransitioningTo_RRC_INACTIVE /******************************************************************/ diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index a8e603f..c487ee7 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1798,6 +1798,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); + f_NGAP_amf_isTransitioningTo_RRC_INACTIVE(); // TODO: isTransitioningTo the RRC_INACTIVE -- GitLab From d703af657ace1715b96ac51c24e69a961d510e29 Mon Sep 17 00:00:00 2001 From: ldtke Date: Fri, 31 May 2024 10:34:54 +0200 Subject: [PATCH 337/365] add initial steps --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 1eb724c..f712ec7 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1726,8 +1726,9 @@ module NGAP_TCFunctions { function f_TC_NGAP_GNB_CMP_12() runs on aMFNGAPComponent { // Preamble - - // TODO: hasEstablishedInitialContext + f_NGAP_amf_init(); + f_NGAP_amf_UE_Register(); + f_NGAP_gnb_UE_Has_Suspended_Context(); f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); -- GitLab From 508f79f8451f9b9746a4e4967c7b7699cf510565 Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 31 May 2024 10:35:30 +0200 Subject: [PATCH 338/365] updated TPs gnb_pdu07-10 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 35 +++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 0b60f99..b4abdff 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -672,7 +672,40 @@ module NGAP_TCFunctions { { m_pDUSessionResourceModifyItemModReq( PX_PDU_SESSION_ID, - '00'O,//bit2oct( + bit2oct( + encvalue( + m_pDUSessionResourceModifyRequestTransfer_options( + { + m_uL_NGU_UP_TNLModifyItem( + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel( + PX_TRANSPORT_LAYER_ADDRESS, + PX_GTP_TEID, + omit + ) + ),//in template (value) UPTransportLayerInformation p_uL_NGU_UP_TNLInformation, + m_uPTransportLayerInformation_gTPTunnel( + m_gTPTunnel( + PX_TRANSPORT_LAYER_ADDRESS, + PX_GTP_TEID, + omit + ) + ),//in template (value) UPTransportLayerInformation p_dL_NGU_UP_TNLInformation, + -//in template (omit) UL_NGU_UP_TNLModifyItem.iE_Extensions p_iE_Extensions := omit + ) + },//in template (value) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList, + { + m_qosFlowAddOrModifyRequestItem( + PX_QOS_FLOW_IDENTIFIER, + -,//in template (omit) QosFlowLevelQosParameters p_qosFlowLevelQosParameters := omit, + -,//in template (omit) E_RAB_ID p_e_RAB_ID := omit, + -//in template (omit) QosFlowAddOrModifyRequestItem.iE_Extensions p_iE_Extensions := omit + ) + }//in template (value) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList + ) + ) + ), + //'00'O,//bit2oct( // encvalue( // m_pDUSessionResourceModifyRequestTransfer(//FIXME when template with mandatory IEs available // -//in template (omit) PDUSessionResourceModifyRequestTransfer.protocolIEs p_protocolIEs -- GitLab From cc003f48e87ddee31e8cdab2c47662cb88e505c2 Mon Sep 17 00:00:00 2001 From: ldtke Date: Fri, 31 May 2024 11:01:48 +0200 Subject: [PATCH 339/365] add initial steps --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 10 +++++++++- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 15 ++++++--------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index 7d2f028..b17d6d4 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -177,7 +177,7 @@ module NGAP_Steps { * @desc */ function f_NGAP_amf_UE_NoLongerAvailable() runs on NGAPComponent { - //FIXME: Implementation of PDU session resource setup + //FIXME: Implementation of PDU not longer available } // End of function f_NGAP_amf_UE_NoLongerAvailable /** @@ -300,6 +300,14 @@ module NGAP_Steps { function f_NGAP_gnb_UE_Has_Suspended_Context() runs on NGAPComponent { //FIXME: Implementation of UE has suspended context } // End of function f_NGAP_amf_UE_hasSuspendedContext + + /** + * @desc + */ + function f_NGAP_gnb_UE_alreadyPreparedHandover() runs on NGAPComponent { + //FIXME: Implementation of UE halready prepared Handover + } // End of function f_NGAP_amf_UE_hasSuspendedContext + }//end group BehaviorFunctions diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index f712ec7..fe61519 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1414,8 +1414,8 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); + f_NGAP_gnb_UE_Has_EstablishedContextInproperly(); - // TODO: hasEstablishedContextInproperly f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -1685,11 +1685,11 @@ module NGAP_TCFunctions { // Preamble - // TODO: alreadyPreparedHandover f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_PDU_ResourceSetup(); + f_NGAP_gnb_UE_EstablishedInitialContext(); + f_NGAP_gnb_UE_alreadyPreparedHandover(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -1728,11 +1728,8 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - f_NGAP_gnb_UE_Has_Suspended_Context(); - - f_NGAP_amf_init(); - f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_PDU_ResourceSetup(); + f_NGAP_gnb_UE_EstablishedInitialContext(); + f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -1774,7 +1771,7 @@ module NGAP_TCFunctions { // Preamble f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); - f_NGAP_amf_UE_PDU_ResourceSetup(); + f_NGAP_gnb_UE_EstablishedInitialContext(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); -- GitLab From 4159c6fb9f4790125c05c3c8bddd5e819e3deb4a Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 31 May 2024 11:47:48 +0200 Subject: [PATCH 340/365] updated TPs amf_imp_03 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 74 +++++++++++++++--------------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 1eb724c..0568d62 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -5647,44 +5647,44 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // f_send_NGAP_PDU( - // m_ngap_initMsg( - // m_n2_NGSetupRequest( - // m_globalRANNodeID_globalGNB_ID( - // m_ie_globalGnbId( - // PX_PLMN_IDENTITY, - // '0000000000000000000000'B,//in template (value) bitstring p_gnbId, - // -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit - // ) - // ), - // { - // m_ie_supportedTAItem( - // m_ie_tAC('000000'O), - // m_ie_broadcastPLMNList( - // { - // m_ie_broadcastPLMNItem( - // m_ie_pLMNIdentity('00f110'O), - // m_ie_sliceSupportList( - // { - // m_ie_sliceSupportItem( - // m_ie_sNSSAI( - // m_ie_sST('00'O), - // m_ie_sD('000000'O) - // ) - // ) - // } - // ) + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_NGSetupRequest( + m_globalRANNodeID_globalGNB_ID( + m_ie_globalGnbId( + PX_PLMN_IDENTITY, + '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + ) + ), + { + m_ie_supportedTAItem( + m_ie_tAC('000000'O), + m_ie_broadcastPLMNList( + { + m_ie_broadcastPLMNItem( + m_ie_pLMNIdentity('00f110'O), + m_ie_sliceSupportList( + { + m_ie_sliceSupportItem( + m_ie_sNSSAI( + m_ie_sST('00'O), + m_ie_sD('000000'O) + ) + ) + } + ) - // ) - // } - // ) - // ) - // }, - // PX_PAGING_DRX, - // FIXME:UERetention_Information template m_uERetentionInformation(in UERetentionInformation p_value := ues_retained) - // ) - // ) - // ); + ) + } + ) + ) + }, + PX_PAGING_DRX, + //FIXME:UERetention_Information template m_uERetentionInformation(in UERetentionInformation p_value := ues_retained) + ) + ) + ); f_recv_NGAP_PDU( mw_ngap_succMsg( -- GitLab From 94daec90c4df2da647eb6579497fbb27b208b377 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 31 May 2024 11:48:27 +0200 Subject: [PATCH 341/365] Bug fioxed in templates with ProtocolIE-Container --- .../lib/LibNGAP_EncdecDeclarations.ttcn | 7 + ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 136 ++++++++---------- 2 files changed, 70 insertions(+), 73 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn index a93df88..2f188ab 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_EncdecDeclarations.ttcn @@ -104,4 +104,11 @@ module LibNGAP_EncdecDeclarations { external function fx_enc_UEContextSuspendRequestTransfer(NGAP_IEs.UEContextSuspendRequestTransfer p) return bitstring with {extension "prototype(convert) encode(PER)"} + external function fx_dec_PDUSessionResourceModifyRequestTransfer(inout bitstring pdu, out NGAP_IEs.PDUSessionResourceModifyRequestTransfer p) return integer + with {extension "prototype(sliding) decode(PER)"} + //with {extension "prototype(sliding) decode(LibNGAP_codec)"} + + external function fx_enc_PDUSessionResourceModifyRequestTransfer(NGAP_IEs.PDUSessionResourceModifyRequestTransfer p) return bitstring + with {extension "prototype(convert) encode(PER)"} + } // End of module LibNGAP_EncdecDeclarations \ No newline at end of file diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 6594eb2..92a45b0 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -12157,40 +12157,34 @@ module LibNGAP_Templates { } // End of template m_mBSSessionSetupResponseItem template (value) MBSSessionSetupOrModRequestTransfer m_mBSSessionSetupOrModRequestTransfer( - in template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs - ) := { + in template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs p_protocolIEs + ) := { protocolIEs := p_protocolIEs } // End of template m_mBSSessionSetupOrModRequestTransfer - template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( - in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC - ) := { - { - id := id_MBS_SessionTNLInfo5GC, - criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } - } - } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC - - template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( - in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList - ) := { - { - id := id_MBS_QoSFlowsToBeSetupModList, - criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } - } - } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList - - template (value) MBSSessionSetupOrModRequestTransfer.protocolIEs m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( - in template (value) MBS_SessionFSAIDList p_mBS_SessionFSAIDList - ) := { - { - id := id_MBS_SessionFSAIDList, - criticality := ignore, - value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } - } - } // End of template m_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList + template (value) MBSSessionSetupOrModRequestTransfer m_mBSSessionSetupOrModRequestTransfer_options( + in template (value) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC, + in template (value) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList, + in template (value) MBS_SessionFSAIDList p_mBS_SessionFSAIDList + ) := { + protocolIEs := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + }, + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + }, + { + id := id_MBS_SessionFSAIDList, + criticality := ignore, + value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + } + } + } // End of template m_mBSSessionSetupOrModRequestTransfer_options template (omit) MBSSessionReleaseResponseTransfer m_mBSSessionReleaseResponseTransfer( in template (omit) MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := omit, @@ -13543,19 +13537,21 @@ module LibNGAP_Templates { protocolIEs := p_protocolIEs } // End of template m_pDUSessionResourceModifyRequestTransfer - template (value) PDUSessionResourceModifyRequestTransfer.protocolIEs m_pDUSessionResourceModifyRequestTransfer_options( - in template (value) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList, - in template (value) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList - ) := { - { - id := id_UL_NGU_UP_TNLModifyList, - criticality := reject, - value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } - }, - { - id := id_QosFlowAddOrModifyRequestList, - criticality := reject, - value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } + template (value) PDUSessionResourceModifyRequestTransfer m_pDUSessionResourceModifyRequestTransfer_options( + in template (value) UL_NGU_UP_TNLModifyList p_uL_NGU_UP_TNLModifyList, + in template (value) QosFlowAddOrModifyRequestList p_qosFlowAddOrModifyRequestList + ) := { + protocolIEs := { + { + id := id_UL_NGU_UP_TNLModifyList, + criticality := reject, + value_ := { UL_NGU_UP_TNLModifyList := p_uL_NGU_UP_TNLModifyList } + }, + { + id := id_QosFlowAddOrModifyRequestList, + criticality := reject, + value_ := { QosFlowAddOrModifyRequestList := p_qosFlowAddOrModifyRequestList } + } } } // End of template m_pDUSessionResourceModifyRequestTransfer_options @@ -19628,35 +19624,29 @@ module LibNGAP_Templates { protocolIEs := p_protocolIEs } // End of template mw_mBSSessionSetupOrModRequestTransfer - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC( - template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ? - ) := { - { - id := id_MBS_SessionTNLInfo5GC, - criticality := reject, - value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } - } - } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionTNLInfo5GC - - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList( - template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ? - ) := { - { - id := id_MBS_QoSFlowsToBeSetupModList, - criticality := reject, - value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } - } - } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_QoSFlowsToBeSetupModList - - template (present) MBSSessionSetupOrModRequestTransfer.protocolIEs mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList( - template (present) MBS_SessionFSAIDList p_mBS_SessionFSAIDList := ? - ) := { - { - id := id_MBS_SessionFSAIDList, - criticality := ignore, - value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } - } - } // End of template mw_mBSSessionSetupOrModRequestTransfer_id_MBS_SessionFSAIDList + template (present) MBSSessionSetupOrModRequestTransfer mw_mBSSessionSetupOrModRequestTransfer_options( + template (present) MBS_SessionTNLInfo5GC p_mBS_SessionTNLInfo5GC := ?, + template (present) MBS_QoSFlowsToBeSetupList p_mBS_QoSFlowsToBeSetupList := ?, + template (present) MBS_SessionFSAIDList p_mBS_SessionFSAIDList := ? + ) := { + protocolIEs := { + { + id := id_MBS_SessionTNLInfo5GC, + criticality := reject, + value_ := { MBS_SessionTNLInfo5GC := p_mBS_SessionTNLInfo5GC } + }, + { + id := id_MBS_QoSFlowsToBeSetupModList, + criticality := reject, + value_ := { MBS_QoSFlowsToBeSetupList := p_mBS_QoSFlowsToBeSetupList } + }, + { + id := id_MBS_SessionFSAIDList, + criticality := ignore, + value_ := { MBS_SessionFSAIDList := p_mBS_SessionFSAIDList } + } + } + } // End of template mw_mBSSessionSetupOrModRequestTransfer_options template MBSSessionReleaseResponseTransfer mw_mBSSessionReleaseResponseTransfer( template MBS_SessionTNLInfoNGRAN p_mBS_SessionTNLInfoNGRAN := *, -- GitLab From b13cce64bbdd0ff8d9dafed4a333deb3355c1c9f Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 31 May 2024 11:56:53 +0200 Subject: [PATCH 342/365] updated TPs amf_imp_03-04 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 114 ++++++++++++++--------------- 1 file changed, 55 insertions(+), 59 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 1c2ed3e..a4f3b94 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -5656,29 +5656,27 @@ module NGAP_TCFunctions { ) ), { - m_ie_supportedTAItem( - m_ie_tAC('000000'O), - m_ie_broadcastPLMNList( - { - m_ie_broadcastPLMNItem( - m_ie_pLMNIdentity('00f110'O), - m_ie_sliceSupportList( - { - m_ie_sliceSupportItem( - m_ie_sNSSAI( - m_ie_sST('00'O), - m_ie_sD('000000'O) - ) - ) - } - ) - - ) - } + m_supportedTAItem( + PX_TACode, + { + m_ie_broadcastPLMNItem( + PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), + { + m_sliceSupportItem( + m_s_NSSAI( + PX_SST, + -,// in template (omit) SD p_sD := omit, + -// in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ), + -//in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) + } ) + },//in template (value) BroadcastPLMNList p_broadcastPLMNList, + -//in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit ) }, - PX_PAGING_DRX, + PX_PAGING_DRX //FIXME:UERetention_Information template m_uERetentionInformation(in UERetentionInformation p_value := ues_retained) ) ) @@ -5748,45 +5746,43 @@ module NGAP_TCFunctions { log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); // Body - // f_send_NGAP_PDU( - // m_ngap_initMsg( - // m_n2_NGSetupRequest( - // m_globalRANNodeID_globalGNB_ID( - // m_ie_globalGnbId( - // PX_PLMN_IDENTITY, - // '0000000000000000000000'B,//in template (value) bitstring p_gnbId, - // -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit - // ) - // ), - // { - // m_ie_supportedTAItem( - // m_ie_tAC('000000'O), - // m_ie_broadcastPLMNList( - // { - // m_ie_broadcastPLMNItem( - // m_ie_pLMNIdentity('00f110'O), - // m_ie_sliceSupportList( - // { - // m_ie_sliceSupportItem( - // m_ie_sNSSAI( - // m_ie_sST('00'O), - // m_ie_sD('000000'O) - // ) - // ) - // } - // ) - - // ) - // } - // ) - // ) - // }, - // PX_PAGING_DRX, - // FIXME:NB_IoT_Default_Paging_DRX, - // FIXME:Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; m_extended_RANNodeName... - // ) - // ) - // ); + f_send_NGAP_PDU( + m_ngap_initMsg( + m_n2_NGSetupRequest( + m_globalRANNodeID_globalGNB_ID( + m_ie_globalGnbId( + PX_PLMN_IDENTITY, + '0000000000000000000000'B,//in template (value) bitstring p_gnbId, + -//in template (omit) GlobalGNB_ID.iE_Extensions p_iE_Extensions := omit + ) + ), + { + m_supportedTAItem( + PX_TACode, + { + m_ie_broadcastPLMNItem( + PX_PLMN_IDENTITY,//m_ie_pLMNIdentity('00f110'O), + { + m_sliceSupportItem( + m_s_NSSAI( + PX_SST, + -,// in template (omit) SD p_sD := omit, + -// in template (omit) S_NSSAI.iE_Extensions p_iE_Extensions := omit + ), + -//in template (omit) SliceSupportItem.iE_Extensions p_iE_Extensions := omit + ) + } + ) + },//in template (value) BroadcastPLMNList p_broadcastPLMNList, + -//in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit + ) + }, + PX_PAGING_DRX + //FIXME:NB_IoT_Default_Paging_DRX, + //FIXME:Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; m_extended_RANNodeName... + ) + ) + ); f_recv_NGAP_PDU( mw_ngap_succMsg( -- GitLab From 3dbd01f273b3d82cd25e4d28665e3b732c3d22a0 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 31 May 2024 12:01:11 +0200 Subject: [PATCH 343/365] Add missing enc/dec function & review codecs --- ccsrc/Asn1c/oer_codec.hh | 42 ----- ccsrc/EncDec/LibNGAP_Encdec.cc | 10 ++ ccsrc/Protocols/NGAP/codec.hh | 62 -------- ccsrc/Protocols/NGAP/ngap_codec.cc | 144 +----------------- ccsrc/Protocols/NGAP/ngap_codec.hh | 39 +---- ccsrc/Protocols/NGAP/ngap_pdu_codec.cc | 64 +------- ccsrc/Protocols/NGAP/ngap_pdu_codec.hh | 11 +- ccsrc/Protocols/NGAP/ngap_types.hh | 2 +- ccsrc/Protocols/NGAP_layer/ngap_layer.cc | 117 +------------- ccsrc/Protocols/NGAP_layer/ngap_layer.hh | 6 +- .../NGAP_layer/ngap_layer_factory.hh | 2 +- 11 files changed, 41 insertions(+), 458 deletions(-) delete mode 100644 ccsrc/Asn1c/oer_codec.hh delete mode 100644 ccsrc/Protocols/NGAP/codec.hh diff --git a/ccsrc/Asn1c/oer_codec.hh b/ccsrc/Asn1c/oer_codec.hh deleted file mode 100644 index 24c14d9..0000000 --- a/ccsrc/Asn1c/oer_codec.hh +++ /dev/null @@ -1,42 +0,0 @@ -#pragma once - -#include "params.hh" -#include "asn1_recoder.hh" - -class OCTETSTRING; -class CHARSTRING; -class BITSTRING; - -struct asn_TYPE_descriptor_s; - -template class oer_codec : public asn1_recoder -{ -public: - virtual int encode(const TPDU& msg, BITSTRING& bits) = 0; - virtual int decode(const BITSTRING& bits, TPDU& msg) = 0; - -protected: - inline int _decode (const TTCN_Typedescriptor_t& ttcn, const asn_TYPE_descriptor_s & td, const BITSTRING& p_data, TPDU& msg) { - TTCN_Buffer buf(bit2oct(p_data)); - TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING); - int rc = oer2xer (td, buf); - if (rc > 0) { - msg.decode(ttcn, buf, TTCN_EncDec::CT_BER, BER_ACCEPT_ALL); - rc = buf.get_len(); - } - return rc; - } - inline int _encode (const TTCN_Typedescriptor_t& ttcn, const asn_TYPE_descriptor_s & td, const TPDU& msg, BITSTRING& p_data) { - int rc = -1; - TTCN_Buffer buf; - TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING); - msg.encode(ttcn, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER); - if (buf.get_len() > 0) { - rc = xer2oer (td, buf); - if (rc > 0) { - p_data = oct2bit(OCTETSTRING(buf.get_len(), buf.get_data())); - } - } - return rc; - } -}; diff --git a/ccsrc/EncDec/LibNGAP_Encdec.cc b/ccsrc/EncDec/LibNGAP_Encdec.cc index 6642409..dff04bf 100644 --- a/ccsrc/EncDec/LibNGAP_Encdec.cc +++ b/ccsrc/EncDec/LibNGAP_Encdec.cc @@ -114,6 +114,16 @@ namespace LibNGAP__EncdecDeclarations { return -1; } + BITSTRING fx__enc__PDUSessionResourceModifyRequestTransfer(const NGAP__IEs::PDUSessionResourceModifyRequestTransfer& p) { + loggers::get_instance().log_msg(">>> fx__enc__PDUSessionResourceSetupUnsuccessfulTransfer ", p); + return int2bit(0, 1); + } + + INTEGER fx__dec__PDUSessionResourceModifyRequestTransfer(BITSTRING& pdu, NGAP__IEs::PDUSessionResourceModifyRequestTransfer& p) { + loggers::get_instance().log(">>> fx__dec__PDUSessionResourceSetupUnsuccessfulTransfer"); + return -1; + } + /**************************************************** * @desc External function to encode a .... type diff --git a/ccsrc/Protocols/NGAP/codec.hh b/ccsrc/Protocols/NGAP/codec.hh deleted file mode 100644 index ea1625d..0000000 --- a/ccsrc/Protocols/NGAP/codec.hh +++ /dev/null @@ -1,62 +0,0 @@ -/*! - * \file codec.hh - * \brief Header file for ITS abstract codec definition. - * \author ETSI STF525 - * \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. - * \version 0.1 - */ -#pragma once - -///#include "params_its.hh" -#include "t_layer.hh" - -class OCTETSTRING; //! Declare TITAN class -class CHARSTRING; //! Declare TITAN class -class BITSTRING; //! Declare TITAN class - -/*! - * \class codec - * \brief This class provides the interface for all ITS codecs, include UT and AC codecs - * \abstract - */ -template class codec { -protected: - params *_params; //! Reference to params stack - // \todo Use smart pointer std::unique_ptr - -public: //! \publicsection - /*! - * \fn codec(); - * \brief Default constructor - * \todo Remove logs - */ - explicit codec() : _params(nullptr){}; - /*! - * \fn ~codec(); - * \brief Default destructor - * \virtual - * \todo Remove logs - */ - virtual ~codec(){}; - /*! - * \fn int encode(const TPDUEnc& msg, OCTETSTRING& data); - * \brief Encode typed message into an octet string - * \param[in] p_message The typed message to be encoded - * \param[out] p_data The encoding result - * \return 0 on success, -1 otherwise - * \pure - */ - virtual int encode(const TPDUEnc &p_message, OCTETSTRING &p_data) ;//= 0; - /*! - * \fn int decode(const OCTETSTRING& p_, TPDUDec& p_message, params_its* p_params = NULL); - * \brief Encode typed message into an octet string format - * \param[in] p_data The message in its octet string - * \param[out] p_message The decoded typed message - * \return 0 on success, -1 otherwise - * \pure - */ - virtual int decode(const OCTETSTRING &p_, TPDUDec &p_message, params *p_params = NULL) ;//= 0; -}; // End of class codec diff --git a/ccsrc/Protocols/NGAP/ngap_codec.cc b/ccsrc/Protocols/NGAP/ngap_codec.cc index f7a06e7..aa8637b 100644 --- a/ccsrc/Protocols/NGAP/ngap_codec.cc +++ b/ccsrc/Protocols/NGAP/ngap_codec.cc @@ -2,165 +2,27 @@ #include "LibNGAP_TypesAndValues.hh" #include "asn1/asn_application.h" // from asn1c #include "loggers.hh" -#include "NGAP_PDU_Descriptions.hh" -template class OPTIONAL; -class TTCN_EncDec; - - -//int ngap_codec::encode(const NGAP__PDU__Descriptions::NGAP__PDU , OCTETSTRING &data) {return 0;} int ngap_codec::encode(const NGAP__PDU__Descriptions::NGAP__PDU& ngap, OCTETSTRING &data) { loggers::get_instance().log(">>> ngap_codec::encode"); BITSTRING b; int rc = asn_codec.encode(ngap, b); loggers::get_instance().log("ngap_codec::encode: ASN.1 codec returned %d", rc); - if (rc>0) { - //loggers::get_instance().log_msg("ngap_codec::encode: ", b); - //loggers::get_instance().log_msg("ngap_codec::encode: ", data); + if (rc) { data = bit2oct(b); loggers::get_instance().log_msg("ngap_codec::encode: ", data); - }else{ - loggers::get_instance().log(">>> ngap_codec::encode: errcode %d", rc); - } return rc; - - - /*TTCN_EncDec::clear_error(); - TTCN_Buffer encoding_buffer; - encode_(ngap, *ngap.get_descriptor(), encoding_buffer); - data = OCTETSTRING(encoding_buffer.get_len(), encoding_buffer.get_data()); - return 0;*/ } -int ngap_codec::encode_(const Base_Type &type, const TTCN_Typedescriptor_t &field_descriptor, TTCN_Buffer &encoding_buffer) { - loggers::get_instance().log(">>> ngap_codec::encode_: processing %s/%s", type.get_descriptor()->name, field_descriptor.name); - loggers::get_instance().log_msg(">>> ngap_codec::encode_: ", type); - - /*if (dynamic_cast(&type) != NULL) { - const Record_Type &r = (const Record_Type &)type; - // loggers::get_instance().log("btp_codec::encode_: processing Record_Type %s", r.get_descriptor()->name); - for (int i = 0; i < r.get_count(); i++) { - // loggers::get_instance().log("btp_codec::encode_: processing %s/%s/%s - %d (1 ==> use dynamic_cast) - %d", r.fld_name(i), - // r.fld_descr(i)->name, r.get_at(i)->get_descriptor()->name, r.get_at(i)->is_optional(), r.get_at(i)->is_present()); - if (r.get_at(i)->is_present()) { - if (encode_(*r.get_at(i), *r.fld_descr(i), encoding_buffer) == -1) { - // loggers::get_instance().warning("btp_codec::encode_: -1 result code returned"); - return -1; - } - } - } // End of 'for' statement - } else if (std::string(field_descriptor.name).compare("@LibItsBtp_TypesAndValues.BtpPacket.payload") == 0) { - const OPTIONAL &v = dynamic_cast &>(type); - // loggers::get_instance().log("btp_codec::encode_: BtpRawPayload present: %d", v.is_present()); - if (v.is_present()) { - if (encode_(static_cast(*v.get_opt_value()), LibItsBtp__TypesAndValues::BtpRawPayload_descr_, - encoding_buffer) == -1) { - // loggers::get_instance().warning("btp_codec::encode_: -1 result code returned"); - return -1; - } - } - } else { - // loggers::get_instance().log("btp_codec::encode_ (else): processing type %s/%s", type.get_descriptor()->name, field_descriptor.name); - type.encode(field_descriptor, encoding_buffer, TTCN_EncDec::CT_RAW); - } -*/ - loggers::get_instance().log_to_hexa("<<>> ngap_codec::decode: ", data); int rc = asn_codec.decode(oct2bit(data), ngap); loggers::get_instance().log("ngap_codec::decode: ASN.1 codec returned %d", rc); - if (rc>0) { + if (rc) { loggers::get_instance().log_msg("ngap_codec::decode: ", ngap); - }else{ - loggers::get_instance().log(">>> ngap_codec::decode: errcode %d", rc); } return rc; - - - /* TTCN_EncDec::clear_error(); - TTCN_Buffer decoding_buffer(data); - //_params = params; - - loggers::get_instance().log_to_hexa(">>> ngap_codec::decode: decoding_buffer=", decoding_buffer); - decode_(ngap, *ngap.get_descriptor(), decoding_buffer); - - loggers::get_instance().log_msg("<<< ngap_codec::decode: ", (const Base_Type&)ngap); - - return 0;*/ } - -int ngap_codec::decode_(Base_Type &type, const TTCN_Typedescriptor_t &field_descriptor, TTCN_Buffer &decoding_buffer) { - loggers::get_instance().log(">>> ngap_codec::decode_: processing %s/%s (%d,%d,%p)", type.get_descriptor()->name, field_descriptor.name, - decoding_buffer.get_len(), decoding_buffer.get_pos(), decoding_buffer.get_read_data()); - - /*if (dynamic_cast(&type) != NULL) { - Record_Type &r = (Record_Type &)type; - // loggers::get_instance().log("btp_codec::decode_: processing Record_Type %s", r.get_descriptor()->name); - for (int i = 0; i < r.get_count(); i++) { - // loggers::get_instance().log("btp_codec::decode_: processing %s/%s/%s", r.fld_name(i), r.fld_descr(i)->name, r.get_at(i)->get_descriptor()->name); - if (decode_(*dynamic_cast(r.get_at(i)), *(r.fld_descr(i)), decoding_buffer) == -1) { - return -1; - } - } // End of 'for' statement - } else { - // loggers::get_instance().log("btp_codec::decode_ (else): processing type %s/%s - optional:%d", type.get_descriptor()->name, field_descriptor.name, - // type.is_optional()); - if (std::string(field_descriptor.name).compare("@LibItsBtp_TypesAndValues.BtpPacket.header") == 0) { - // loggers::get_instance().log("btp_codec::decode_: _type = %d", _type); - LibItsBtp__TypesAndValues::BtpHeader &b = static_cast(type); - if (_type == btp_codec::btpA) { - decode_(b.btpAHeader(), *b.btpAHeader().get_descriptor(), decoding_buffer); - if (_params != NULL) { - (*_params)[params_its::btp_type] = std::string("btpA"); - (*_params)[params_its::btp_destination_port] = std::to_string(static_cast(b.btpAHeader().destinationPort())); - } - } else if (_type == btp_codec::btpB) { - decode_(b.btpBHeader(), *b.btpBHeader().get_descriptor(), decoding_buffer); - if (_params != NULL) { - (*_params)[params_its::btp_type] = std::string("btpB"); - (*_params)[params_its::btp_destination_port] = std::to_string(static_cast(b.btpBHeader().destinationPort())); - (*_params)[params_its::btp_info] = std::to_string(static_cast(b.btpBHeader().destinationPortInfo())); - } - } else { - // loggers::get_instance().error("btp_codec::decode_: Invalid BTP type"); // Cannot be reached - } - // loggers::get_instance().log_msg("btp_codec::decode_: BtpHeader: ", type); - } else if (std::string(field_descriptor.name).compare("@LibItsBtp_TypesAndValues.BtpPacket.payload") == 0) { - if (decoding_buffer.get_len() == decoding_buffer.get_pos()) { // No payload, set it to omit - // loggers::get_instance().log("btp_codec::decode_: Set OPTIONAL to omit"); - dynamic_cast &>(type).set_to_omit(); - } else { - // Decode BtpRawPayload data structure - OCTETSTRING os(decoding_buffer.get_len() - decoding_buffer.get_pos(), decoding_buffer.get_data() + decoding_buffer.get_pos()); - // loggers::get_instance().log_msg("btp_codec::decode_: s=", os); - if (_params != NULL) { - (*_params)[params_its::btp_payload] = std::string(static_cast(oct2str(os))); - } - if (os.lengthof() != 0) { - dynamic_cast &>(type) = OPTIONAL(os); - // loggers::get_instance().log_msg("btp_codec::decode_: Set OPTIONAL to ", type); - } else { - // loggers::get_instance().log("btp_codec::decode_: Set OPTIONAL to omit"); - dynamic_cast &>(type).set_to_omit(); - } - } - } else { - type.decode(field_descriptor, decoding_buffer, TTCN_EncDec::CT_RAW); - } - } -*/ - loggers::get_instance().log_msg("<<< ngap_codec::decode_: ", type); - loggers::get_instance().log_to_hexa("<<< ngap_codec::decode_: decoding_buffer=", decoding_buffer); - - return 0; -} - diff --git a/ccsrc/Protocols/NGAP/ngap_codec.hh b/ccsrc/Protocols/NGAP/ngap_codec.hh index 9f3bb16..c4813aa 100644 --- a/ccsrc/Protocols/NGAP/ngap_codec.hh +++ b/ccsrc/Protocols/NGAP/ngap_codec.hh @@ -1,45 +1,22 @@ #pragma once -#include "LibNGAP_TypesAndValues.hh" #include "ngap_pdu_codec.hh" -//#include "codec.hh" -#include "NGAP_PDU_Descriptions.hh" +#include "codec.hh" class BITSTRING; //! Forward declaration of TITAN class class OCTETSTRING; //! Forward declaration of TITAN class -//class params_; -class Base_Type; -class TTCN_Typedescriptor_t; -class TTCN_Buffer; +namespace NGAP__PDU__Descriptions { //! Forward declaration of asn1c NGAP class + class NGAP__PDU; +} - -//namespace NGAP__PDU__Descriptions { //! Forward declaration of asn1c NGAP class -// class NGAP__PDU; -//} - -//class ngap_codec : public codec { -class ngap_codec { +class ngap_codec : public codec { ngap_pdu_codec asn_codec; - int encode_(const Base_Type &type, const TTCN_Typedescriptor_t &field_descriptor, TTCN_Buffer &encoding_buffer); - - int decode_(Base_Type &type, const TTCN_Typedescriptor_t &field_descriptor, TTCN_Buffer &decoding_buffer); - - public: - //explicit ngap_codec() : codec(), asn_codec(){}; - /*explicit*/ ngap_codec() : asn_codec(){}; + explicit ngap_codec() : codec(), asn_codec(){}; virtual ~ngap_codec(){}; - /*virtual*/ int encode(const NGAP__PDU__Descriptions::NGAP__PDU& ngap, OCTETSTRING &data); - /*virtual*/ int decode(const OCTETSTRING &data, NGAP__PDU__Descriptions::NGAP__PDU &, params *params = NULL); + virtual int encode(const NGAP__PDU__Descriptions::NGAP__PDU& ngap, OCTETSTRING &data); + virtual int decode(const OCTETSTRING &data, NGAP__PDU__Descriptions::NGAP__PDU &ngap, params_ngap *params = NULL); }; - -//void NGAP__PDU::encode(const TTCN_Typedescriptor_t& p_td, TTCN_Buffer& p_buf, int p_coding, ...) const -//{ -// va_list pvar; -// va_start(pvar, p_coding); - // switch(p_coding) { -// case TTCN_EncDec::CT_BER: { - diff --git a/ccsrc/Protocols/NGAP/ngap_pdu_codec.cc b/ccsrc/Protocols/NGAP/ngap_pdu_codec.cc index 86c1a4f..b594a3d 100644 --- a/ccsrc/Protocols/NGAP/ngap_pdu_codec.cc +++ b/ccsrc/Protocols/NGAP/ngap_pdu_codec.cc @@ -2,71 +2,17 @@ #include "LibNGAP_TypesAndValues.hh" #include "asn1/asn_application.h" // from asn1c #include "loggers.hh" -#include "NGAP_PDU_Descriptions.hh" -#include "TTCN3.hh" -#include + extern "C" { -extern asn_TYPE_descriptor_t asn_DEF_NGAP_PDU; -} -/*extern "C" { -static int asn1c_collect_encoded_data(const void *buffer, size_t size, void *application_specific_key) { - TTCN_Buffer *tb = (TTCN_Buffer *)application_specific_key; - tb->put_s(size, (unsigned char *)buffer); - return 0; + extern asn_TYPE_descriptor_t asn_DEF_NGAP_PDU; } -}*/ int ngap_pdu_codec::encode(const NGAP__PDU__Descriptions::NGAP__PDU &p_ngap, BITSTRING &p_data) { - loggers::get_instance().log("ngap_pdu_codec::encode: "); - /*loggers::get_instance().log_msg("ngap_pdu_codec::encodemsg: ",p_ngap); - TTCN_Buffer buf; - TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::WARNING); - p_ngap.encode(NGAP__PDU__Descriptions::NGAP__PDU_descr_, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER); - p_data = oct2bit(OCTETSTRING(buf.get_len(), buf.get_data())); - - loggers::get_instance().log_msg("ngap_pdu_codec::encodemsg: ",OCTETSTRING(buf.get_len(), buf.get_data())); - - void * ptr = NULL; - asn_dec_rval_t rc_d; - - rc_d = asn_decode(NULL, ATS_BER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, &ptr, buf.get_data(), buf.get_len()); - if (rc_d.code == RC_OK) { - // rc = rc_e.encoded; - - loggers::get_instance().log("ngap_pdu_codec::ASN1C decoded BER OK: "); - // Encode as PER - asn_enc_rval_t rc_e; - buf.clear(); - rc_e = asn_encode(NULL,ATS_ALIGNED_BASIC_PER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, ptr, asn1c_collect_encoded_data, &buf); - //rc_e = asn_encode(NULL,ATS_UNALIGNED_BASIC_PER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, ptr, asn1c_collect_encoded_data, &buf); - //rc_e = asn_encode(NULL,ATS_ALIGNED_CANONICAL_PER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, ptr, asn1c_collect_encoded_data, &buf); - //rc_e = asn_encode(NULL,ATS_UNALIGNED_CANONICAL_PER, (asn_TYPE_descriptor_s *)&asn_DEF_NGAP_PDU, ptr, asn1c_collect_encoded_data, &buf); - - - if (rc_e.encoded > 0) { - loggers::get_instance().log("ngap_pdu_codec::ASN1C encoded PER OK: "); - loggers::get_instance().log_msg("ngap_pdu_codec::encodemsg PER: ",OCTETSTRING(buf.get_len(), buf.get_data())); - }else{ - - //loggers::get_instance().log("ngap_pdu_codec::ASN1C encoded PER NOK:%d %d",rc_e.encoded,errno); - switch (errno){ - case EINVAL: {loggers::get_instance().log("Incorrect parameters to the function, such as NULLs.");break;} - case ENOENT: {loggers::get_instance().log("Encoding transfer syntax is not defined (for this type)");break;} - case EBADF: {loggers::get_instance().log("The structure has invalid form or content constraint failed.");break;} - case EIO: {loggers::get_instance().log("The (callback) has returned negative value during encoding.");break;} - } - loggers::get_instance().log("ngap_pdu_codec::ASN1C encoded PER NOK:end switch errno %d",errno); - } - - } - if (ptr) { - ASN_STRUCT_FREE(asn_DEF_NGAP_PDU, ptr); - }*/ - + loggers::get_instance().log("ngap_pdu_codec::encode: "); return _encode(NGAP__PDU__Descriptions::NGAP__PDU_descr_, asn_DEF_NGAP_PDU, p_ngap, p_data); } int ngap_pdu_codec::decode(const BITSTRING &p_data, NGAP__PDU__Descriptions::NGAP__PDU &p_ngap) { - loggers::get_instance().log("ngap_pdu_codec::decode: "); + loggers::get_instance().log("ngap_pdu_codec::decode: "); return _decode(NGAP__PDU__Descriptions::NGAP__PDU_descr_, asn_DEF_NGAP_PDU, p_data, p_ngap); -} +} \ No newline at end of file diff --git a/ccsrc/Protocols/NGAP/ngap_pdu_codec.hh b/ccsrc/Protocols/NGAP/ngap_pdu_codec.hh index c7d4304..5ffe168 100644 --- a/ccsrc/Protocols/NGAP/ngap_pdu_codec.hh +++ b/ccsrc/Protocols/NGAP/ngap_pdu_codec.hh @@ -1,16 +1,15 @@ #pragma once -//#include "codec.hh" +#include "codec.hh" #include "params.hh" #include "per_codec.hh" -#include "NGAP_PDU_Descriptions.hh" class BITSTRING; //! Forward declaration of TITAN class class OCTETSTRING; //! Forward declaration of TITAN class -struct asn_TYPE_descriptor_s; //! Forward declaration of asn1c class -//namespace NGAP__PDU__Descriptions { //! Forward declaration of asn1c NGAP class -// class NGAP__PDU; -//} + +namespace NGAP__PDU__Descriptions { //! Forward declaration of asn1c NGAP class + class NGAP__PDU; +} class ngap_pdu_codec : public per_codec { public: diff --git a/ccsrc/Protocols/NGAP/ngap_types.hh b/ccsrc/Protocols/NGAP/ngap_types.hh index 23ab60d..a679a52 100644 --- a/ccsrc/Protocols/NGAP/ngap_types.hh +++ b/ccsrc/Protocols/NGAP/ngap_types.hh @@ -1,5 +1,5 @@ /*! - * \file cam_types.hh + * \file ngap_types.hh * \brief Header file for TITAN NGAP types. * \author ETSI * \copyright ETSI Copyright Notification diff --git a/ccsrc/Protocols/NGAP_layer/ngap_layer.cc b/ccsrc/Protocols/NGAP_layer/ngap_layer.cc index 1132ca8..170c0a3 100644 --- a/ccsrc/Protocols/NGAP_layer/ngap_layer.cc +++ b/ccsrc/Protocols/NGAP_layer/ngap_layer.cc @@ -3,7 +3,6 @@ #include "NGAP_TestSystem.hh" #include "ngap_layer_factory.hh" -//#include "geonetworking_layer_factory.hh" #include "registration.hh" @@ -13,8 +12,6 @@ ngap_layer::ngap_layer(const std::string &p_type, const std::string ¶m) : t_ loggers::get_instance().log(">>> ngap_layer::ngap_layer: %s, %s", to_string().c_str(), param.c_str()); // Setup parameters params::convert(_params, param); -// _params.insert(std::make_pair("its_aid", "36")); // ETSI TS 102 965 V1.2.1 (2015-06) -// _params.insert(std::make_pair("payload_type", "2")); // CA message id - See ETSI TS 102 894 // Register this object for AdapterControlPort loggers::get_instance().log("ngap_layer::ngap_layer: Register %s/%p", p_type.c_str(), this); @@ -25,20 +22,14 @@ void ngap_layer::sendMsg(const NGAP__PDU__Descriptions::NGAP__PDU& p, params &pa loggers::get_instance().log_msg(">>> ngap_layer::sendMsg: ", p); // Encode NGAP PDU - OCTETSTRING data = int2oct(0,1); - //OCTETSTRING data; - // loggers::get_instance().warning("ngap_layer::sendMsg: Try to encode..."); - - //if (_codec){ + OCTETSTRING data; if (_codec.encode(p, data) < 0) { loggers::get_instance().warning("ngap_layer::sendMsg: Encoding failure"); data=int2oct(0,1); //return; } loggers::get_instance().log_msg(">>> ngap_layer::sendMsg . encoded: ", data); - //}else{ -// loggers::get_instance().warning("ngap_layer::sendMsg: codec not set"); - //} + send_data(data, _params); } @@ -62,113 +53,17 @@ void ngap_layer::receive_data(OCTETSTRING &data, params &p_params) { //params ¶ms = p_params;//static_cast(p_params); NGAP__PDU__Descriptions::NGAP__PDU p; - _codec.decode(data, p, &p_params); - /*if (!p.msgIn().is_bound()) { + _codec.decode(data, p); + if (!p.is_bound()) { // Discard it return; } // else, continue // Process lower layer data - // recvTime - params::const_iterator it = params.find(params::timestamp); - if (it != params.cend()) { - p.recvTime().set_long_long_val(std::stoll(it->second)); - } else { - p.recvTime().set_to_omit(); - } - // gnNextHeader - it = params.find(params_its::gn_next_header); - if (it != params.cend()) { - p.gnNextHeader() = std::stoi(it->second); - } else { - p.gnNextHeader().set_to_omit(); - } - // gnHeaderType - it = params.find(params_its::gn_header_type); - if (it != params.cend()) { - p.gnHeaderType() = std::stoi(it->second); - } else { - p.gnHeaderType().set_to_omit(); - } - // gnHeaderSubtype - it = params.find(params_its::gn_header_sub_type); - if (it != params.cend()) { - p.gnHeaderSubtype() = std::stoi(it->second); - } else { - p.gnHeaderSubtype().set_to_omit(); - } - // gnLifetime - it = params.find(params_its::gn_lifetime); - if (it != params.cend()) { - p.gnLifetime() = std::stoi(it->second); - } else { - p.gnLifetime().set_to_omit(); - } - // gnTrafficClass - it = params.find(params_its::gn_traffic_class); - if (it != params.cend()) { - p.gnTrafficClass() = std::stoi(it->second); - } else { - p.gnTrafficClass().set_to_omit(); - } - // btpDestinationPort - it = params.find(params_its::btp_destination_port); - if (it != params.cend()) { - p.btpDestinationPort() = std::stoi(it->second); - } else { - p.btpDestinationPort().set_to_omit(); - } - // btpInfo - it = params.find(params_its::btp_info); - if (it != params.cend()) { - p.btpInfo() = std::stoi(it->second); - } else { - p.btpInfo().set_to_omit(); - } - // ssp - it = params.find(params_its::ssp); - if (it != params.cend()) { - loggers::get_instance().log("ngap_layer::receive_data: ssp=%s", it->second.c_str()); - p.ssp() = oct2bit(str2oct(CHARSTRING(it->second.c_str()))); - } else { - p.ssp().set_to_omit(); - } - // its_aid - it = params.find(params_its::its_aid); - if (it != params.cend()) { - p.its__aid() = std::stoi(it->second); - } else { - p.its__aid().set_to_omit(); - } -*/ + + // Pass it to the ports if any to_all_upper_ports(p, p_params); - - loggers::get_instance().log_msg(">>> ngap_layer::receive_data:TO UPPER PORT ", p); } -/*int ngap_layer::enable_secured_mode(const std::string &p_certificate_id, const boolean p_enforce_security) { - loggers::get_instance().log(">>> ngap_layer::enable_secured_mode: '%s' - %x", p_certificate_id.c_str(), p_enforce_security); - - geonetworking_layer *p = registration::get_instance().get_item(std::string("GN")); - if (p == NULL) { - return -1; - } - - loggers::get_instance().log("ngap_layer::enable_secured_mode: Got GN layer %p", p); - return p->enable_secured_mode(p_certificate_id, p_enforce_security); -} - -int ngap_layer::disable_secured_mode() { - loggers::get_instance().log(">>> ngap_layer::disable_secured_mode"); - - geonetworking_layer *p = registration::get_instance().get_item(std::string("GN")); - if (p == NULL) { - return -1; - } - - loggers::get_instance().log("ngap_layer::disable_secured_mode: Got GN layer %p", p); - return p->disable_secured_mode(); -}*/ - ngap_layer_factory ngap_layer_factory::_f; diff --git a/ccsrc/Protocols/NGAP_layer/ngap_layer.hh b/ccsrc/Protocols/NGAP_layer/ngap_layer.hh index fbdc65a..fe479c8 100644 --- a/ccsrc/Protocols/NGAP_layer/ngap_layer.hh +++ b/ccsrc/Protocols/NGAP_layer/ngap_layer.hh @@ -1,7 +1,7 @@ /*! * \file ngap_layer.hh * \brief Header file for ITS NGAP protocol layer. - * \author ETSI STF525 + * \author ETSI TTF T033 * \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. @@ -15,8 +15,6 @@ namespace LibNGAP__Interface { class NGAPPort; //! Forward declaration of TITAN class - //class CamReq; //! Forward declaration of TITAN class - //class CamInd; //! Forward declaration of TITAN class } // namespace NGAP__TestSystem /*! @@ -24,7 +22,7 @@ namespace LibNGAP__Interface { * \brief This class provides description of ITS NGAP protocol layer */ class ngap_layer : public t_layer { - params _params; //! Layer parameters + params_ngap _params; //! Layer parameters ngap_codec _codec; //! NGAP codec public: //! \publicsection /*! diff --git a/ccsrc/Protocols/NGAP_layer/ngap_layer_factory.hh b/ccsrc/Protocols/NGAP_layer/ngap_layer_factory.hh index f07f49f..01b3469 100644 --- a/ccsrc/Protocols/NGAP_layer/ngap_layer_factory.hh +++ b/ccsrc/Protocols/NGAP_layer/ngap_layer_factory.hh @@ -1,7 +1,7 @@ /*! * \file ngap_layer_factory.hh * \brief Header file for ITS NGAP protocol layer factory. - * \author ETSI STF525 + * \author ETSI TTF T033 * \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. -- GitLab From 974aab91d73b32568d2592ba08bfa420b2312e41 Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 31 May 2024 12:02:07 +0200 Subject: [PATCH 344/365] Add missing enc/dec function & review codecs --- ttcn/AtsNGAP/module.mk | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/ttcn/AtsNGAP/module.mk b/ttcn/AtsNGAP/module.mk index 2af9ad8..fe9cc75 100644 --- a/ttcn/AtsNGAP/module.mk +++ b/ttcn/AtsNGAP/module.mk @@ -23,8 +23,7 @@ modules := \ ../../ccsrc/Protocols/NGAP_layer \ ../../ccsrc/Protocols/NGAP \ ../../ccsrc/Asn1c \ + ../../ccsrc/framework \ ../modules/titan.TestPorts.Common_Components.Abstract_Socket - - - #//../../ccsrc/Protocols/sctp \ - #//../../titan-test-system-framework/ccsrc/Protocols/Tcp \ + + \ No newline at end of file -- GitLab From fc84d4345c98f7722c4d643041b43a1102fa0b3f Mon Sep 17 00:00:00 2001 From: garciay Date: Fri, 31 May 2024 12:03:43 +0200 Subject: [PATCH 345/365] Add framework --- ccsrc/framework/include/codec.hh | 61 +++++++++++++++++++ .../framework/include/data_event_notifier.hh | 11 ++++ .../framework/include/data_event_observer.hh | 19 ++++++ ccsrc/framework/include/params_ngap.hh | 37 +++++++++++ ccsrc/framework/module.mk | 2 + ccsrc/framework/src/params_ngap.cc | 17 ++++++ 6 files changed, 147 insertions(+) create mode 100644 ccsrc/framework/include/codec.hh create mode 100644 ccsrc/framework/include/data_event_notifier.hh create mode 100644 ccsrc/framework/include/data_event_observer.hh create mode 100644 ccsrc/framework/include/params_ngap.hh create mode 100644 ccsrc/framework/module.mk create mode 100644 ccsrc/framework/src/params_ngap.cc diff --git a/ccsrc/framework/include/codec.hh b/ccsrc/framework/include/codec.hh new file mode 100644 index 0000000..19de785 --- /dev/null +++ b/ccsrc/framework/include/codec.hh @@ -0,0 +1,61 @@ +/*! + * \file codec.hh + * \brief Header file for ITS abstract codec definition. + * \author ETSI STF525 + * \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. + * \version 0.1 + */ +#pragma once + +#include "params_ngap.hh" + +class OCTETSTRING; //! Declare TITAN class +class CHARSTRING; //! Declare TITAN class +class BITSTRING; //! Declare TITAN class + +/*! + * \class codec + * \brief This class provides the interface for all ITS codecs, include UT and AC codecs + * \abstract + */ +template class codec { +protected: + params_ngap *_params; //! Reference to params stack + // \todo Use smart pointer std::unique_ptr + +public: //! \publicsection + /*! + * \fn codec(); + * \brief Default constructor + * \todo Remove logs + */ + explicit codec() : _params(nullptr){}; + /*! + * \fn ~codec(); + * \brief Default destructor + * \virtual + * \todo Remove logs + */ + virtual ~codec(){}; + /*! + * \fn int encode(const TPDUEnc& msg, OCTETSTRING& data); + * \brief Encode typed message into an octet string + * \param[in] p_message The typed message to be encoded + * \param[out] p_data The encoding result + * \return 0 on success, -1 otherwise + * \pure + */ + virtual int encode(const TPDUEnc &p_message, OCTETSTRING &p_data) = 0; + /*! + * \fn int decode(const OCTETSTRING& p_, TPDUDec& p_message, params_ngap* p_params = NULL); + * \brief Encode typed message into an octet string format + * \param[in] p_data The message in its octet string + * \param[out] p_message The decoded typed message + * \return 0 on success, -1 otherwise + * \pure + */ + virtual int decode(const OCTETSTRING &p_, TPDUDec &p_message, params_ngap *p_params = NULL) = 0; +}; // End of class codec diff --git a/ccsrc/framework/include/data_event_notifier.hh b/ccsrc/framework/include/data_event_notifier.hh new file mode 100644 index 0000000..3f5207a --- /dev/null +++ b/ccsrc/framework/include/data_event_notifier.hh @@ -0,0 +1,11 @@ +#pragma once + +#include "params_ngap.hh" + +class OCTETSTRING; //! Forward declaration of TITAN class + +class data_event_notifier { +public: + virtual ~data_event_notifier() = default; + virtual void update(OCTETSTRING &p_data, params_ngap &p_params) {}; +}; // End of abstract class data_event_notifier diff --git a/ccsrc/framework/include/data_event_observer.hh b/ccsrc/framework/include/data_event_observer.hh new file mode 100644 index 0000000..b677ab6 --- /dev/null +++ b/ccsrc/framework/include/data_event_observer.hh @@ -0,0 +1,19 @@ +#pragma once + +#include + +#include "data_event_notifier.hh" + +class OCTETSTRING; //! Forward declaration of TITAN class + +class data_event_observer { +protected: + std::vector _observers; + +public: + data_event_observer() : _observers() {}; + virtual ~data_event_observer() { _observers.clear(); }; + virtual void incoming_packet_observer_attach(data_event_notifier* p_observer) {}; + virtual void incoming_packet_observer_detach(data_event_notifier* p_observer) {}; + virtual void incoming_packet_notify(OCTETSTRING &p_data, params_ngap &p_params) {}; +}; // End of abstract class data_event_observer diff --git a/ccsrc/framework/include/params_ngap.hh b/ccsrc/framework/include/params_ngap.hh new file mode 100644 index 0000000..2c3df36 --- /dev/null +++ b/ccsrc/framework/include/params_ngap.hh @@ -0,0 +1,37 @@ +/*! + * \file params_ngap.hh + * \brief Header file for the parameter dictionary. + * \author ETSI TTF T033 + * \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. + * \version 0.1 + */ +#pragma once + +#include +#include +#include + +#include "params.hh" + +/*! + * \class params_ngap + * \brief This class provides basic functionalities for an ITS dictionary + */ +class params_ngap : public params { +public: //! \publicsection + + /*! + * \brief Default constructor + * Create a new instance of the params_ngap class + */ + params_ngap() : params() {}; + + /*! + * \brief Default destructor + */ + virtual ~params_ngap(){}; + +}; // End of class params_ngap diff --git a/ccsrc/framework/module.mk b/ccsrc/framework/module.mk new file mode 100644 index 0000000..e03df67 --- /dev/null +++ b/ccsrc/framework/module.mk @@ -0,0 +1,2 @@ +sources := src/params_ngap.cc +includes += ./include diff --git a/ccsrc/framework/src/params_ngap.cc b/ccsrc/framework/src/params_ngap.cc new file mode 100644 index 0000000..643011a --- /dev/null +++ b/ccsrc/framework/src/params_ngap.cc @@ -0,0 +1,17 @@ +/*! + * \file param_sits.cc + * \brief Source file for the parameter dictionary. + * \author ETSI TTF T033 + * \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. + * \version 0.1 + */ +#include +#include + +#include "loggers.hh" +#include "params_ngap.hh" + + -- GitLab From 816dedc22d5da5b182b54e0b88cda9bc89a05640 Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 31 May 2024 12:11:11 +0200 Subject: [PATCH 346/365] updated TPs amf_imp_11 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index a4f3b94..bb99043 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -6209,7 +6209,7 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_initMsg( - mw_n2_OverloadStart //FIXME: mising template with aditional IEs, OverloadStartNSSAIList + mw_n2_OverloadStart_NSSAIList(?) ) ); -- GitLab From 9ebc88b8b2ffec40831cd2cf298e8b672b2c01f1 Mon Sep 17 00:00:00 2001 From: juvancic Date: Fri, 31 May 2024 12:11:36 +0200 Subject: [PATCH 347/365] added template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 92a45b0..5396eef 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -6557,6 +6557,27 @@ module LibNGAP_Templates { } } // End of template mw_n2_OverloadStart + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.14 OVERLOAD START + */ + template (present) InitiatingMessage mw_n2_OverloadStart_NSSAIList ( + template (present) OverloadStartNSSAIList p_overloadStartNSSAIList:= ? + ):= { + procedureCode := id_OverloadStart, + criticality := reject, + value_ := { + OverloadStart := { + protocolIEs := { + { + id := id_OverloadStartNSSAIList, + criticality := ignore, + value_ := { OverloadStartNSSAIList := p_overloadStartNSSAIList } + } + } + } + } + } // End of template mw_n2_OverloadStart_NSSAIList + } // End of group Receive } // End of group OVERLOAD_START -- GitLab From aaf309ed16fcedb24dbc7c6cfbb871722617def5 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 5 Jun 2024 11:00:55 +0200 Subject: [PATCH 348/365] added template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 33 +++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 5396eef..0eb0f87 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -6128,6 +6128,39 @@ module LibNGAP_Templates { } } } // End of template mw_n2_AMFConfigurationUpdate + + /** + * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.6.7 AMF CONFIGURATION UPDATE + */ + template (present) InitiatingMessage mw_n2_AMFConfigurationUpdate_options( + template (present) AMFName p_aMFName := ?, + template ServedGUAMIList p_servedGUAMIList := *, + template PLMNSupportList p_pLMNSupportList := * + ) := { + procedureCode := id_AMFConfigurationUpdate, + criticality := reject, + value_ := { + AMFConfigurationUpdate := { + protocolIEs := { + { + id := id_AMFName, + criticality := ignore, + value_ := { AMFName := p_aMFName } + }, + { + id := id_ServedGUAMIList, + criticality := reject, + value_ := { ServedGUAMIList := p_servedGUAMIList } + }, + { + id := id_PLMNSupportList, + criticality := ignore, + value_ := { PLMNSupportList := p_pLMNSupportList } + } + } + } + } + } // End of template mw_n2_AMFConfigurationUpdate_options } // End of group Receive -- GitLab From 9f0b6e765fd91173407c813ae3e4d62267c6e66f Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 5 Jun 2024 11:01:08 +0200 Subject: [PATCH 349/365] updated TPs amf_imp_07 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index bb99043..b4774db 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -5982,9 +5982,10 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_initMsg( - mw_n2_AMFConfigurationUpdate( - ?//template (present) AMFName p_aMFName := ? - //FIXXME: mising template params due to TP ,ServedGUAMI_list,PLMNSupport_List.... + mw_n2_AMFConfigurationUpdate_options( + ?,//template (present) AMFName p_aMFName := ? + *, + * ) ) ); -- GitLab From 5e8761a6eaf83a838e36198cd63dd999bce25dc4 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 5 Jun 2024 12:29:43 +0200 Subject: [PATCH 350/365] updated TPs amf_imp_07 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 31 ++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index b4774db..3c4c8af 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -5984,8 +5984,35 @@ module NGAP_TCFunctions { mw_ngap_initMsg( mw_n2_AMFConfigurationUpdate_options( ?,//template (present) AMFName p_aMFName := ? - *, - * + { + mw_servedGUAMIItem( + mw_gUAMI( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + ?,//template (present) AMFRegionID p_aMFRegionID := ?, + ?,//template (present) AMFSetID p_aMFSetID := ?, + ?,//template (present) AMFPointer p_aMFPointer := ?, + *//template GUAMI.iE_Extensions p_iE_Extensions := * + ),//template (present) GUAMI p_gUAMI := ?, + *,//template AMFName p_backupAMFName := *, + *//template ServedGUAMIItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) ServedGUAMIList p_servedGUAMIList := ?, + { + mw_pLMNSupportItem( + ?,//template (present) PLMNIdentity p_pLMNIdentity := ?, + { + mw_sliceSupportItem( + mw_s_NSSAI( + ?,//template (present) SST p_sST := ?, + *,//template SD p_sD := *, + *//template S_NSSAI.iE_Extensions p_iE_Extensions := * + ),//template (present) S_NSSAI p_s_NSSAI := ?, + ?//template SliceSupportItem.iE_Extensions p_iE_Extensions := * + ) + },//template (present) SliceSupportList p_sliceSupportList := ?, + *//template PLMNSupportItem.iE_Extensions p_iE_Extensions := * + ) + }//template (present) PLMNSupportList p_plmnSuppList := ? ) ) ); -- GitLab From 46b2c665144c6c10e3543a4f92d4edbca947d485 Mon Sep 17 00:00:00 2001 From: pintar Date: Wed, 5 Jun 2024 16:38:48 +0200 Subject: [PATCH 351/365] Configuration update and minor issues resolved --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 218 ++++++++++++------------- 1 file changed, 109 insertions(+), 109 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index 27ca4e8..ea8a045 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -31,7 +31,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.2.1.2 and 9.2.1.1" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/1_1 @@ -67,7 +67,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.2.1.2 and 9.2.1.3" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/1_2 @@ -104,7 +104,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.2.3.2 and 9.2.1.5" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/1_3 @@ -143,12 +143,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_PDU_04 - Test objective "Verify that the AMF node successfully processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for successfully modified PDU session." + Test objective "Verify that the AMF node successfully processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION containing mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for successfully modified PDU session." Reference "ETSI TS 138 413 [1], Clauses 8.2.5.2 and 9.2.1.8" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/1_5 @@ -194,12 +194,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_PDU_05 - Test objective "Verify that the AMF node processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION contains mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for not successfully modified PDU session." + Test objective "Verify that the AMF node processes a PDU_SESSION_RESOURCE_MODIFY_INDICATION containing mandatory IEs and answers with PDU_SESSION_RESOURCE_MODIFY_CONFIRM for not successfully modified PDU session." Reference "ETSI TS 138 413 [1], Clauses 8.2.5.2 and 9.2.1.8" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/1_5 @@ -251,12 +251,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_CMP_01 - Test objective "Verify that the IUT can send a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs." + Test objective "Verify that the IUT can send an INITIAL CONTEXT SETUP REQUEST containing mandatory IEs." Reference "ETSI TS 138 413 [1], Clauses 8.3.1.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_1 @@ -270,7 +270,7 @@ Package TP_AMF { the IUT entity indicate a PDU initial context setup procedure } then { - the IUT entity sends a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity sends an INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing @@ -315,7 +315,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.3.3 and 9.2.2.5" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_3 @@ -353,7 +353,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.3.3" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_3 @@ -392,12 +392,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_CMP_04 - Test objective "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs." + Test objective "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST containing mandatory IEs." Reference "ETSI TS 138 413 [1], Clauses 8.3.4.2 and 9.2.2.7" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_4 @@ -435,7 +435,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.3.6.2 and 9.2.2.11" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_6 @@ -468,12 +468,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_CMP_06 - Test objective "Verify that the IUT can send a AMF CP RELOCATION INDICATION that contains mandatory IEs." + Test objective "Verify that the IUT can send an AMF CP RELOCATION INDICATION that contains mandatory IEs." Reference "ETSI TS 138 413 [1], Clauses 8.3.7.2 and 9.2.2.12" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_7 @@ -485,10 +485,10 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity indicate a AMF CP relocation indication procedure + the IUT entity indicate an AMF CP relocation indication procedure } then { - the IUT entity sends a AMF_CP_RELOCATION_INDICATION containing + the IUT entity sends an AMF_CP_RELOCATION_INDICATION containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; to the GNB entity @@ -514,7 +514,7 @@ Package TP_AMF { "ETSI TS 138 413 [1], Clauses 8.3.9.2, 8.3.10.2, 9.2.2.14 and 9.2.2.15" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_9 and PICS_A4/2_10 @@ -555,12 +555,12 @@ Package TP_AMF { // This TP applies only if the NG-RAN node is an ng-eNB TP Id TP_NGAP_AMF_CMP_08 - Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." + Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST containing mandatory IEs and answers with UE CONTEXT SUSPEND REQUEST RESPONSE with successfully suspend UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.11.2, 9.2.2.16 and 9.2.2.17" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_11 @@ -597,12 +597,12 @@ Package TP_AMF { // This TP applies only if the NG-RAN node is an ng-eNB TP Id TP_NGAP_AMF_CMP_09 - Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST contains mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." + Test objective "Verify that the AMF node successfully processes a UE CONTEXT SUSPEND REQUEST containing mandatory IEs and answers with UE CONTEXT SUSPEND FAILURE with failed suspension." Reference "ETSI TS 138 413 [1], Clauses 8.3.11.3, 9.2.2.16 and 9.2.2.18" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_11 @@ -645,12 +645,12 @@ Package TP_AMF { // This TP applies only if the NG-RAN node is an ng-eNB TP Id TP_NGAP_AMF_CMP_10 - Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." + Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST containing mandatory IEs and answers with UE CONTEXT RESUME RESPONSE with successfully resume UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.12.3, 9.2.2.19 and 9.2.2.20" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_12 @@ -685,12 +685,12 @@ Package TP_AMF { // This TP applies only if the NG-RAN node is an ng-eNB TP Id TP_NGAP_AMF_CMP_11 - Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST contains mandatory IEs and answers with UE CONTEXT RESUME FAILURE with failing to resume UE context." + Test objective "Verify that the AMF node successfully processes a UE CONTEXT RESUME REQUEST containing mandatory IEs and answers with UE CONTEXT RESUME FAILURE with failing to resume UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.12.3" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/2_12 @@ -737,12 +737,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_01 - Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER COMMAND with successfully handover." + Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message containing mandatory IEs and answers with HANDOVER COMMAND with successfully handover." Reference "ETSI TS 138 413 [1], Clauses 8.4.1.2, 9.2.3.1 and 9.2.3.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/3_1 @@ -785,12 +785,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_MMP_02 - Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message contains mandatory IEs and answers with HANDOVER PREPARATION FAILURE because the UE is not longer available." + Test objective "Verify that the AMF node successfully processes a HANDOVER REQUIRED message containing mandatory IEs and answers with HANDOVER PREPARATION FAILURE because the UE is not longer available." Reference "ETSI TS 138 413 [1], Clauses 8.4.1.3, 9.2.3.1 and 9.2.3.3" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/3_1 @@ -839,7 +839,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.4.2.2 and 9.2.3.4" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/3_2 @@ -904,7 +904,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.4.4.2, 9.2.3.8 and 9.2.3.9" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/3_4 @@ -958,7 +958,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.4.4.4, 9.2.3.8 and 9.2.3.10" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/3_4 @@ -1017,7 +1017,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.4.5.2, 9.2.3.11 and 9.2.3.12" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/3_5 @@ -1059,7 +1059,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.4.6.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/3_6 @@ -1111,7 +1111,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.4.8.2 and 9.2.3.15" - Config Id CFG_GNB_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/1 and PICS_A3/3_8 @@ -1123,7 +1123,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity indicate the initiation "of an UE handover success procedure" + the IUT entity indicate the initiation "of a UE handover success procedure" } then { the IUT entity sends a HANDOVER_SUCCESS containing @@ -1149,7 +1149,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.4.9.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/3_9 @@ -1202,7 +1202,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.5.1.2 and 9.2.4.1" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/4_1 @@ -1247,13 +1247,13 @@ Package TP_AMF { TP Id TP_NGAP_AMF_NAS_01 - Test objective "Verify that the IUT can send an DOWNLINK NAS TRANSPORT message to carry NAS information over the NG interface." + Test objective "Verify that the IUT can send a DOWNLINK NAS TRANSPORT message to carry NAS information over the NG interface." Reference "ETSI TS 138 413 [1], Clauses 8.6.2.2, 9.2.5.1 and 9.2.5.2", "ETSI TS 123 502 [6], Clause 4.24.1" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/5_2 @@ -1273,7 +1273,7 @@ Package TP_AMF { from the GNB entity } then { - the IUT entity sends an DOWNLINK_NAS_TRANSPORT containing + the IUT entity sends a DOWNLINK_NAS_TRANSPORT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NAS_PDU; @@ -1292,12 +1292,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_NAS_02 - Test objective "Verify that the IUT can send an REROUTE NAS REQUEST message to reroute the INITIAL UE MESSAGE message to another AMF." + Test objective "Verify that the IUT can send a REROUTE NAS REQUEST message to reroute the INITIAL UE MESSAGE message to another AMF." Reference "ETSI TS 138 413 [1], Clauses 8.6.5.2 and 9.2.5.5" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/5_5 @@ -1316,7 +1316,7 @@ Package TP_AMF { from the GNB entity } then { - the IUT entity sends an REROUTE_NAS_REQUEST containing + the IUT entity sends a REROUTE_NAS_REQUEST containing RAN_UE_NGAP_ID, NGAP_Message, // Contains the INITIAL UE MESSAGE NAS_PDU, @@ -1340,12 +1340,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_01 - Test objective "Verify that the AMF node successfully processes a NG SETUP REQEST message that contains mandatory IEs and answers with NG SETUP RESPONSE to acknowledge the setup." + Test objective "Verify that the AMF node successfully processes an NG SETUP REQEST message that contains mandatory IEs and answers with NG SETUP RESPONSE to acknowledge the setup." Reference "ETSI TS 138 413 [1], Clauses 8.7.1.2, 9.2.6.1 and 9.2.6.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_1 @@ -1356,7 +1356,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity receives a NG_SETUP_REQUEST containing + the IUT entity receives an NG_SETUP_REQUEST containing Global_RAN_Node_ID, Supported_TA_List containing Supported_TA_Item containing @@ -1371,7 +1371,7 @@ Package TP_AMF { from the GNB entity } then { - the IUT entity sends a NG_SETUP_RESPONSE containing + the IUT entity sends an NG_SETUP_RESPONSE containing AMF_Name, Served_GUAMI_List containing Served_GUAMI_Item containing @@ -1399,12 +1399,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_02 - Test objective "Verify that the AMF node successfully decline a NG RESET REQEST message and answers with NG SETUP FAILURE when the AMF is not able to handle the request." + Test objective "Verify that the AMF node successfully decline an NG RESET REQEST message and answers with NG SETUP FAILURE when the AMF is not able to handle the request." Reference "ETSI TS 138 413 [1], Clauses 8.7.1.3, 9.2.6.1 and 9.2.6.3" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_1 @@ -1415,7 +1415,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity receives a NG_SETUP_REQUEST containing + the IUT entity receives an NG_SETUP_REQUEST containing Global_RAN_Node_ID, Supported_TA_List containing Supported_TA_Item containing @@ -1430,7 +1430,7 @@ Package TP_AMF { from the GNB entity } then { - the IUT entity sends a NG_SETUP_FAILURE containing + the IUT entity sends an NG_SETUP_FAILURE containing Cause; to the GNB entity } @@ -1441,12 +1441,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_03 - Test objective "Verify that the AMF node successfully processes a NG SETUP REQEST message with optional field UE Retention Information and answers with NG SETUP RESPONSE to acknowledge the setup." + Test objective "Verify that the AMF node successfully processes an NG SETUP REQEST message with optional field UE Retention Information and answers with NG SETUP RESPONSE to acknowledge the setup." Reference "ETSI TS 138 413 [1], Clauses 8.7.1.2, 9.2.6.1 and 9.2.6.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_1 @@ -1457,7 +1457,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity receives a NG_SETUP_REQUEST containing + the IUT entity receives an NG_SETUP_REQUEST containing Global_RAN_Node_ID, Supported_TA_List containing Supported_TA_Item containing @@ -1473,7 +1473,7 @@ Package TP_AMF { from the GNB entity } then { - the IUT entity sends a NG_SETUP_RESPONSE containing + the IUT entity sends an NG_SETUP_RESPONSE containing AMF_Name, Served_GUAMI_List containing Served_GUAMI_Item containing @@ -1502,12 +1502,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_04 - Test objective "Verify that the AMF node successfully processes a NG SETUP REQEST message with different optional fields and answers with NG SETUP RESPONSE to acknowledge the setup." + Test objective "Verify that the AMF node successfully processes an NG SETUP REQEST message with different optional fields and answers with NG SETUP RESPONSE to acknowledge the setup." Reference "ETSI TS 138 413 [1], Clauses 8.7.1.2, 9.2.6.1 and 9.2.6.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_1 @@ -1518,7 +1518,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity receives a NG_SETUP_REQUEST containing + the IUT entity receives an NG_SETUP_REQUEST containing Global_RAN_Node_ID, Supported_TA_List containing Supported_TA_Item containing @@ -1542,7 +1542,7 @@ Package TP_AMF { from the GNB entity } then { - the IUT entity sends a NG_SETUP_RESPONSE containing + the IUT entity sends an NG_SETUP_RESPONSE containing AMF_Name, Served_GUAMI_List containing Served_GUAMI_Item containing @@ -1584,7 +1584,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.7.2.2, 9.2.6.4 and 9.2.6.5" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_2 @@ -1624,7 +1624,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.7.2.2 and 9.2.6.4 and 9.2.6.6" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_2 @@ -1665,12 +1665,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_07 - Test objective "Verify that the IUT can send a AMF CONFIGURATION UPDATE message to the AMF." + Test objective "Verify that the IUT can send an AMF CONFIGURATION UPDATE message to the AMF." Reference "ETSI TS 138 413 [1], Clauses 8.7.3.2 and 9.2.6.7" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_3 @@ -1683,10 +1683,10 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity indicate the initiation "of a AMF CONFIGURATION UPDATE procedure" + the IUT entity indicate the initiation "of an AMF CONFIGURATION UPDATE procedure" } then { - the IUT entity sends a AMF_CONFIGURATION_UPDATE containing + the IUT entity sends an AMF_CONFIGURATION_UPDATE containing Served_GUAMI_List containing Served_GUAMI_Item containing GUAMI containing @@ -1715,12 +1715,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_08 - Test objective "Verify that the AMF node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." + Test objective "Verify that the AMF node successfully processes an NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." Reference "ETSI TS 138 413 [1], Clauses 8.7.4.2.2, 9.2.6.11 and 9.2.6.12" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_4 @@ -1732,7 +1732,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity receives a NG_RESET containing + the IUT entity receives an NG_RESET containing Cause, CHOICE_Reset_Type containing NG_interface containing @@ -1740,7 +1740,7 @@ Package TP_AMF { from the GNB entity } then { - the IUT entity sends a NG_RESET_ACKNOWLEDGE + the IUT entity sends an NG_RESET_ACKNOWLEDGE to the GNB entity } } @@ -1756,12 +1756,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_09 - Test objective "Verify that the AMF can send a ERROR INDICATION to the GNB when a error occurs." + Test objective "Verify that the AMF can send an ERROR INDICATION to the GNB when a error occurs." Reference "ETSI TS 138 413 [1], Clauses 8.7.5.2 and 9.2.6.13" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_5 @@ -1773,7 +1773,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives an INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing @@ -1801,7 +1801,7 @@ Package TP_AMF { from the GNB entity } then { - the IUT entity sends a ERROR_INDICATION + the IUT entity sends an ERROR_INDICATION to the GNB entity } } @@ -1817,12 +1817,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_10 - Test objective "Verify that the AMF can send a AMF STATUS INDICATION to the GNB when a error occurs." + Test objective "Verify that the AMF can send an AMF STATUS INDICATION to the GNB when a error occurs." Reference "ETSI TS 138 413 [1], Clauses 8.7.6.2 and 9.2.6.10" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_6 @@ -1833,10 +1833,10 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity indicate a AMF STATUS INDICATION + the IUT entity indicate an AMF STATUS INDICATION } then { - the IUT entity sends a AMF_STATUS_INDICATION containing + the IUT entity sends an AMF_STATUS_INDICATION containing Unavailable_GUAMI_List containing Unavailable_GUAMI_Item containing GUAMI containing @@ -1859,12 +1859,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_11 - Test objective "Verify that the AMF can send a OVERLOAD START to the GNB." + Test objective "Verify that the AMF can send an OVERLOAD START to the GNB." Reference "ETSI TS 138 413 [1], Clauses 8.7.7.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_7 @@ -1873,10 +1873,10 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity indicate a OVERLOAD START + the IUT entity indicate an OVERLOAD START } then { - the IUT entity sends a OVERLOAD_START containing + the IUT entity sends an OVERLOAD_START containing Overload_Start_NSSAI_List containing Overload_Start_NSSAI_Item containing Slice_Overload_List containing @@ -1896,12 +1896,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_IMP_12 - Test objective "Verify that the AMF can send a OVERLOAD STOP to the GNB." + Test objective "Verify that the AMF can send an OVERLOAD STOP to the GNB." Reference "ETSI TS 138 413 [1], Clauses 8.7.8.2 and 9.2.6.15" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/6_8 @@ -1912,10 +1912,10 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity indicate a OVERLOAD STOP + the IUT entity indicate an OVERLOAD STOP } then { - the IUT entity sends a OVERLOAD_STOP + the IUT entity sends an OVERLOAD_STOP to the GNB entity } } @@ -1935,12 +1935,12 @@ Package TP_AMF { TP Id TP_NGAP_AMF_CTP_01 - Test objective "Verify that the IUT can send an DOWNLINK RAN CONFIGURATION TRANSFER message to transfer RAN configuration information to the NG-RAN." + Test objective "Verify that the IUT can send a DOWNLINK RAN CONFIGURATION TRANSFER message to transfer RAN configuration information to the NG-RAN." Reference "ETSI TS 138 413 [1], Clauses 8.8.2 and 9.2.7.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/7_2 @@ -1950,7 +1950,7 @@ Package TP_AMF { the IUT entity indicate the initiation "of a Downlink RAN Configuration Transfer" } then { - the IUT entity sends an DOWNLINK_RAN_CONFIGURATION_TRANSFER + the IUT entity sends a DOWNLINK_RAN_CONFIGURATION_TRANSFER to the GNB entity } } @@ -1973,7 +1973,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.1" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/8_1 @@ -1987,7 +1987,7 @@ Package TP_AMF { the IUT entity indicate a Write message Transmission procedure } then { - the IUT entity sends a WRITE_REPLACE_WARNING_REQUEST containing + the IUT entity sends a WRITE_REPLACE_WARNING_REQUEST containing Message_Identifier, Serial_Number, Repetition_Period, @@ -2006,7 +2006,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.9.2.2 and 9.2.8.3" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/8_2 @@ -2020,7 +2020,7 @@ Package TP_AMF { the IUT entity indicate a PWS cancel procedure } then { - the IUT entity sends a PWS_CANCEL_REQUEST containing + the IUT entity sends a PWS_CANCEL_REQUEST containing Message_Identifier, Serial_Number; to the GNB entity @@ -2043,7 +2043,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.10.2.1 and 9.2.9.1" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/9_1 @@ -2054,7 +2054,7 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity indicate a NRPPA transport procedure + the IUT entity indicate an NRPPA transport procedure } then { the IUT entity sends a DOWNLINK_UE_ASSOCIATED_NRPPA_TRANSPORT containing @@ -2076,7 +2076,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.10.2.3 and 9.2.9.3" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/9_3 @@ -2087,10 +2087,10 @@ Package TP_AMF { Expected behaviour ensure that { when { - the IUT entity indicate a NRPPA transport procedure + the IUT entity indicate an NRPPA transport procedure } then { - the IUT entity sends a DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT containing + the IUT entity sends a DOWNLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT containing Routing_ID, NRPPa_PDU; to the GNB entity @@ -2113,7 +2113,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.11.1.2 and 9.2.10.1" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/10_1 @@ -2149,7 +2149,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.11.3.2 and 9.2.10.3" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/10_3 @@ -2189,7 +2189,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.12.1 and 9.2.11.1" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/11_1 @@ -2203,7 +2203,7 @@ Package TP_AMF { the IUT entity indicate the initiation "of a Location Reporting Control procedure" } then { - the IUT entity sends an LOCATION_REPORTING_CONTROL containing + the IUT entity sends a LOCATION_REPORTING_CONTROL containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Location_Reporting_Request_Type @@ -2230,7 +2230,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.13.1.2 and 9.2.12.1" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/12_1 @@ -2267,7 +2267,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.14.2.2 and 9.2.13.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/13_2 @@ -2298,7 +2298,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.14.3.2, 9.2.13.4 and 9.2.13.5" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/13_3 @@ -2342,7 +2342,7 @@ Package TP_AMF { Reference "ETSI TS 138 413 [1], Clauses 8.16.2.2 and 9.2.15.2" - Config Id CFG_AMF_01 + Config Id CF_AMF_N2 PICS Selection PICS_A2/2 and PICS_A4/15_2 -- GitLab From 250f046da63e419089f822cbbde443583677b0db Mon Sep 17 00:00:00 2001 From: pintar Date: Wed, 5 Jun 2024 16:39:33 +0200 Subject: [PATCH 352/365] Configuration update and minor issues resolved --- test_purposes/ngap/TP_GNB_NGAP.tplan2 | 260 +++++++++++++------------- 1 file changed, 130 insertions(+), 130 deletions(-) diff --git a/test_purposes/ngap/TP_GNB_NGAP.tplan2 b/test_purposes/ngap/TP_GNB_NGAP.tplan2 index 10a2f03..746ba07 100644 --- a/test_purposes/ngap/TP_GNB_NGAP.tplan2 +++ b/test_purposes/ngap/TP_GNB_NGAP.tplan2 @@ -24,12 +24,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_01 - Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE for successfully established PDU session." + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE SETUP REQUEST containing mandatory IEs and answers with PDU SESSION RESOURCE SETUP RESPONSE for successfully established PDU session." Reference "ETSI TS 138 413 [1], Clauses 8.2.1.2, 9.2.1.1 and 9.2.1.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_1 @@ -57,7 +57,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing + the IUT entity sends a PDU_SESSION_RESOURCE_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing @@ -75,12 +75,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_02 - Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains several PDU Session ID IEs set to the same value." + Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST containing several PDU Session ID IEs set to the same value." Reference "ETSI TS 138 413 [1], Clauses 8.2.1.4, 9.2.1.1 and 9.2.1.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_1 @@ -136,12 +136,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_03 - Test objective "Verify that the NG-RAN node reports the establishment of the new PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a PDU Session ID IE set to value that identifies an active PDU Session." + Test objective "Verify that the NG-RAN node reports the establishment of the new PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST containing a PDU Session ID IE set to value that identifies an active PDU Session." Reference "ETSI TS 138 413 [1], Clauses 8.2.1.4, 9.2.1.1 and 9.2.1.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_1 @@ -188,12 +188,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_04 - Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST contains a QoS Flow Setup Request List IE in the PDU Session Resource Setup Request Transfer IE including at least one Non-GBR QoS flow but the PDU Session Aggregate Maximum Bit Rate IE is not present. " + Test objective "Verify that the NG-RAN node reports the establishment of the corresponding PDU session as failed if a PDU SESSION RESOURCE SETUP REQUEST containing a QoS Flow Setup Request List IE in the PDU Session Resource Setup Request Transfer IE including at least one Non-GBR QoS flow but the PDU Session Aggregate Maximum Bit Rate IE is not present. " Reference "ETSI TS 138 413 [1], Clauses 8.2.1.4, 9.2.1.1 and 9.2.1.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_1 @@ -242,12 +242,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_05 - Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND contains mandatory IEs and answers with PDU SESSION RESOURCE RELEASE RESPONSE to release PDU session." + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE RELEASE COMMAND containing mandatory IEs and answers with PDU SESSION RESOURCE RELEASE RESPONSE to release PDU session." Reference "ETSI TS 138 413 [1], Clauses 8.2.2.2, 9.2.1.3 and 9.2.1.4" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_2 @@ -292,7 +292,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.2.2.2, 9.2.1.3 and 9.2.1.4" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_2 @@ -338,12 +338,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_07 - Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE MODIFY REQUEST contains mandatory IEs and answers with PDU SESSION RESOURCE MODIFY RESPONSE for successfully modified PDU session." + Test objective "Verify that the NG-RAN node successfully processes a PDU SESSION RESOURCE MODIFY REQUEST containing mandatory IEs and answers with PDU SESSION RESOURCE MODIFY RESPONSE for successfully modified PDU session." Reference "ETSI TS 138 413 [1], Clauses 8.2.3.2, 9.2.1.5 and 9.2.1.6" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_3 @@ -395,12 +395,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_PDU_08 - Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_NOTIFY that already established QoS flow or PDU session for given UE are release." + Test objective "Verify that the IUT can send a PDU_SESSION_RESOURCE_NOTIFY that already established QoS flow or PDU session for given UE are released." Reference "ETSI TS 138 413 [1], Clauses 8.2.4.2 and 9.2.1.7" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_4 @@ -434,7 +434,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.2.5.2 and 9.2.1.8" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_5 @@ -471,7 +471,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.2.3.4, 9.2.1.5 and 9.2.1.6" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/1_3 @@ -530,12 +530,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_01 - Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains optional PDU Session Resource Setup Request List field mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + Test objective "Verify that the NG-RAN node successfully processes an INITIAL CONTEXT SETUP REQUEST containing optional PDU Session Resource Setup Request List field mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_1 @@ -546,7 +546,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives an INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing @@ -574,7 +574,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + the IUT entity sends an INITIAL_CONTEXT_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing @@ -590,12 +590,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_02 - Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + Test objective "Verify that the NG-RAN node successfully processes an INITIAL CONTEXT SETUP REQUEST containing mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_1 @@ -606,7 +606,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives an INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing @@ -628,7 +628,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + the IUT entity sends an INITIAL_CONTEXT_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID; to the AMF entity @@ -641,12 +641,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_03 - Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Trace Activation and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + Test objective "Verify that the NG-RAN node successfully processes an INITIAL CONTEXT SETUP REQUEST with optional field Trace Activation and answers with an INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_1 @@ -657,7 +657,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives an INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing @@ -691,7 +691,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + the IUT entity sends an INITIAL_CONTEXT_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing @@ -707,12 +707,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_04 - Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with optional field Mobility Restriction List and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + Test objective "Verify that the NG-RAN node successfully processes an INITIAL CONTEXT SETUP REQUEST with optional field Mobility Restriction List and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_1 @@ -723,7 +723,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives an INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing @@ -753,7 +753,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + the IUT entity sends an INITIAL_CONTEXT_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing @@ -769,12 +769,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_05 - Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST with different optional fields and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." + Test objective "Verify that the NG-RAN node successfully processes an INITIAL CONTEXT SETUP REQUEST with different optional fields and answers with INITIAL CONTEXT SETUP RESPONSE with successfully established UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_1 @@ -785,7 +785,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives an INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing @@ -833,7 +833,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + the IUT entity sends an INITIAL_CONTEXT_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Setup_Response_List containing @@ -849,13 +849,13 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_06 - Test objective "Verify that the NG-RAN node successfully processes a INITIAL CONTEXT SETUP REQUEST contains mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." + Test objective "Verify that the NG-RAN node successfully processes an INITIAL CONTEXT SETUP REQUEST containing mandatory IEs and answers with INITIAL CONTEXT SETUP RESPONSE with failed PDU session." Reference "ETSI TS 138 413 [1], Clauses 8.3.1.2, 9.2.2.1 and 9.2.2.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_1 @@ -867,7 +867,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives a INITIAL_CONTEXT_SETUP_REQUEST containing + the IUT entity receives an INITIAL_CONTEXT_SETUP_REQUEST containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, GUAMI containing @@ -895,7 +895,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a INITIAL_CONTEXT_SETUP_RESPONSE containing + the IUT entity sends an INITIAL_CONTEXT_SETUP_RESPONSE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, PDU_Session_Resource_Failed_to_Setup_List containing @@ -922,7 +922,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.3.2.2 and 9.2.2.4" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_2 @@ -963,7 +963,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.3.3, 9.2.2.6 and 9.2.2.5" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_3 @@ -1001,7 +1001,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.3.3, 9.2.2.6 and 9.2.2.5" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_3 @@ -1039,12 +1039,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_10 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE because the UE is no longer available." + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST containing mandatory IEs and answers with UE CONTEXT MODIFICATION FAILURE because the UE is no longer available." Reference "ETSI TS 138 413 [1], Clauses 8.3.4.3, 9.2.2.7 and 9.2.2.9" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_4 @@ -1075,12 +1075,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_11 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs after the preparation of a handover and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST containing mandatory IEs after the preparation of a handover and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_4 @@ -1112,12 +1112,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_12 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains optional fields Security Key and Security Capabilities and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST containing optional fields Security Key and Security Capabilities and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_4 @@ -1154,12 +1154,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_13 - Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST contains different optional fields and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." + Test objective "Verify that the NG-RAN node successfully processes a UE CONTEXT MODIFICATION REQUEST containing different optional fields and answers with UE CONTEXT MODIFICATION RESPONSE with successfully modify UE context." Reference "ETSI TS 138 413 [1], Clauses 8.3.4.2, 9.2.2.7 and 9.2.2.8" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_4 @@ -1219,12 +1219,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_CMP_14 - Test objective "Verify that the IUT can send a RRC INACTIVE TRANSITION REPORT that contains mandatory IEs" + Test objective "Verify that the IUT can send an RRC INACTIVE TRANSITION REPORT that contains mandatory IEs" Reference "ETSI TS 138 413 [1], Clauses 8.3.5 and 9.2.2.10" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/2_5 @@ -1236,10 +1236,10 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate a RRC inactive transition report + the IUT entity indicate an RRC inactive transition report } then { - the IUT entity sends a RRC_INACTIVE_TRANSITION_REPORT containing + the IUT entity sends an RRC_INACTIVE_TRANSITION_REPORT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, RRC_State, @@ -1266,7 +1266,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.3.8.2 and 9.2.2.13" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1_2 and PICS_A3/2_8 @@ -1314,12 +1314,12 @@ Package TP_GNB { // This TP applies only if the NG-RAN node is an ng-eNB TP Id TP_NGAP_GNB_CMP_16 - Test objective "Verify that the IUT can send a UE CONTEXT SUSPEND REQUEST contains mandatory IEs" + Test objective "Verify that the IUT can send a UE CONTEXT SUSPEND REQUEST containing mandatory IEs" Reference "ETSI TS 138 413 [1], Clauses 8.3.11.2 and 9.2.2.16" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1_2 and PICS_A3/2_11 @@ -1354,12 +1354,12 @@ Package TP_GNB { // This TP applies only if the NG-RAN node is an ng-eNB TP Id TP_NGAP_GNB_CMP_17 - Test objective "Verify that the IUT can send a UE CONTEXT RESUME REQUEST contains mandatory IEs" + Test objective "Verify that the IUT can send a UE CONTEXT RESUME REQUEST containing mandatory IEs" Reference "ETSI TS 138 413 [1], Clauses 8.3.12.2 and 9.2.2.19" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1_2 and PICS_A3/2_12 @@ -1404,7 +1404,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.1.2 and 9.2.3.1" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_1 @@ -1450,7 +1450,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_2 @@ -1533,7 +1533,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.2.3, 9.2.3.4, 9.2.3.6 and 9.3.4.1" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_2 @@ -1607,7 +1607,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_2 @@ -1734,7 +1734,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_2 @@ -1832,7 +1832,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.2.2, 9.2.3.4, 9.2.3.5, 9.3.4.1 and 9.3.4.11" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_2 @@ -1949,7 +1949,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.3.2 and 9.2.3.7" - Config Id CFG_AMF_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_3 @@ -1989,7 +1989,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.4.2 and 9.2.3.8" - Config Id CFG_AMF_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_4 @@ -2039,7 +2039,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.5.2 and 9.2.3.11" - Config Id CFG_AMF_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_5 @@ -2078,7 +2078,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.6.2 and 9.2.3.13" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_6 @@ -2090,7 +2090,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate the initiation "of an UE Uplink RAN Status Transfer procedure" + the IUT entity indicate the initiation "of a UE Uplink RAN Status Transfer procedure" } then { the IUT entity sends a UPLINK_RAN_STATUS_TRANSFER containing @@ -2118,7 +2118,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.4.9.2 and 9.2.3.16" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/3_9 @@ -2162,7 +2162,7 @@ Package TP_GNB { "ETSI TS 138 413 [1], Clauses 8.6.1.2 and 9.2.5.1" , "ETSI TS 123 502 [6], Clause 4.24.1" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/5_1 @@ -2203,7 +2203,7 @@ Package TP_GNB { "ETSI TS 138 413 [1], Clauses 8.6.3.2 and 9.2.5.3", "ETSI TS 123 502 [6], Clause 4.24.1" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/5_3 @@ -2244,7 +2244,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.6.4.2 and 9.2.5.4" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/5_4 @@ -2258,7 +2258,7 @@ Package TP_GNB { the IUT entity indicate the initiation "of a NAS Non Delivery Indication procedure" } then { - the IUT entity sends an NAS_NON_DELIVERY_INDICATION containing + the IUT entity sends a NAS_NON_DELIVERY_INDICATION containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, NAS_PDU, @@ -2283,22 +2283,22 @@ Package TP_GNB { TP Id TP_NGAP_GNB_IMP_01 - Test objective "Verify that the GNB node successfully sends a NG SETUP REQUEST message to the AMF." + Test objective "Verify that the GNB node successfully sends an NG SETUP REQUEST message to the AMF." Reference "ETSI TS 138 413 [1], Clauses 8.7.1.2 and 9.2.6.1" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/6_1 Expected behaviour ensure that { when { - the IUT entity indicate the initiation "of a NG SETUP REQUEST" + the IUT entity indicate the initiation "of an NG SETUP REQUEST" } then { - the IUT entity sends a NG_SETUP_REQUEST containing + the IUT entity sends an NG_SETUP_REQUEST containing Global_RAN_Node_ID, Supported_TA_List containing Supported_TA_Item containing @@ -2329,7 +2329,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.7.2.2 and 9.2.6.4" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/2 and PICS_A3/6_2 @@ -2367,12 +2367,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_IMP_03 - Test objective "Verify that the GNB node successfully processes a AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." + Test objective "Verify that the GNB node successfully processes an AMF CONFIGURATION UPDATE message with AMF CONFIGURATION UPDATE ACKNOWLEDGE to acknowledge the update." Reference "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.8" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/6_3 @@ -2385,7 +2385,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives a AMF_CONFIGURATION_UPDATE containing + the IUT entity receives an AMF_CONFIGURATION_UPDATE containing Served_GUAMI_List containing Served_GUAMI_Item containing GUAMI containing @@ -2409,7 +2409,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE containing + the IUT entity sends an AMF_CONFIGURATION_UPDATE_ACKNOWLEDGE containing AMF_TNL_Association_Setup_List containing AMF_TNL_Association_Setup_Item containing AMF_TNL_Association_Address;;; @@ -2423,12 +2423,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_IMP_04 - Test objective "Verify that the GNB node can send a AMF CONFIGURATION UPDATE FAILURE." + Test objective "Verify that the GNB node can send an AMF CONFIGURATION UPDATE FAILURE." Reference "ETSI TS 138 413 [1], Clauses 8.7.3.2, 9.2.6.7 aqnd 9.2.6.9" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/6_3 @@ -2441,7 +2441,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives a AMF_CONFIGURATION_UPDATE containing + the IUT entity receives an AMF_CONFIGURATION_UPDATE containing Served_GUAMI_List containing Served_GUAMI_Item containing GUAMI containing @@ -2465,7 +2465,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a AMF_CONFIGURATION_UPDATE_FAILURE containing + the IUT entity sends an AMF_CONFIGURATION_UPDATE_FAILURE containing Cause; to the AMF entity } @@ -2482,12 +2482,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_IMP_05 - Test objective "Verify that the GNB node successfully processes a NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." + Test objective "Verify that the GNB node successfully processes an NG RESET message that contains mandatory IEs and answers with NG RESET ACKNOWLEDGE to acknowledge the reset." Reference "ETSI TS 138 413 [1], Clauses 8.7.4.2.1, 9.2.6.11 and 9.2.6.12" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/6_4 @@ -2499,7 +2499,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives a NG_RESET containing + the IUT entity receives an NG_RESET containing Cause, CHOICE_Reset_Type containing NG_interface containing @@ -2507,7 +2507,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a NG_RESET_ACKNOWLEDGE + the IUT entity sends an NG_RESET_ACKNOWLEDGE to the AMF entity } } @@ -2523,12 +2523,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_IMP_06 - Test objective "Verify that the GNB can send a ERROR INDICATION to the AMF when a error occurs." + Test objective "Verify that the GNB can send an ERROR INDICATION to the AMF when an error occurs." Reference "ETSI TS 138 413 [1], Clauses 8.7.5.2 and 9.2.6.13" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/6_5 @@ -2539,10 +2539,10 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate a ERROR INDICATION + the IUT entity indicate an ERROR INDICATION } then { - the IUT entity sends a ERROR_INDICATION + the IUT entity sends an ERROR_INDICATION to the AMF entity } } @@ -2565,14 +2565,14 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.8.1 and 9.2.7.1" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/7_1 Expected behaviour ensure that { when { - the IUT entity indicate the initiation "of a Uplink RAN Configuration Transfer" + the IUT entity indicate the initiation "of an Uplink RAN Configuration Transfer" } then { the IUT entity sends an UPLINK_RAN_CONFIGURATION_TRANSFER @@ -2596,7 +2596,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/8_1 @@ -2615,7 +2615,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing + the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing Message_Identifier, Serial_Number; to the AMF entity @@ -2632,7 +2632,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.9.1.2 and 9.2.8.2" //paragraph 3 - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/8_1 @@ -2652,7 +2652,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing + the IUT entity sends a WRITE_REPLACE_WARNING_RESPONSE containing Message_Identifier, Serial_Number; to the AMF entity @@ -2671,7 +2671,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.9.2.2 and 9.2.8.4" //paragraph 3 - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/8_2 @@ -2707,7 +2707,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.9.3.2 and 9.2.8.5" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/8_3 @@ -2740,7 +2740,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.9.4.2 and 9.2.8.6" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/8_4 @@ -2771,12 +2771,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_NTP_01 - Test objective "Verify that the IUT can send a UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + Test objective "Verify that the IUT can send an UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." Reference "ETSI TS 138 413 [1], Clauses 8.10.2.2 and 9.2.9.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/9_2 @@ -2787,10 +2787,10 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate a NRPPA transport procedure + the IUT entity indicate an NRPPA transport procedure } then { - the IUT entity sends a UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT containing + the IUT entity sends an UPLINK_UE_ASSOCIATED_NRPPA_TRANSPORT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Routing_ID, @@ -2804,12 +2804,12 @@ Package TP_GNB { TP Id TP_NGAP_GNB_NTP_02 - Test objective "Verify that the IUT can send a UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." + Test objective "Verify that the IUT can send an UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT to carry NRPPA signaling between NG-RAN and LMF(Location Management Functionality)." Reference "ETSI TS 138 413 [1], Clauses 8.10.2.4 and 9.2.9.4" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/9_2 @@ -2820,10 +2820,10 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity indicate a NRPPA transport procedure + the IUT entity indicate an NRPPA transport procedure } then { - the IUT entity sends a UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT containing + the IUT entity sends an UPLINK_NON_UE_ASSOCIATED_NRPPA_TRANSPORT containing Routing_ID, NRPPa_PDU; to the AMF entity @@ -2846,7 +2846,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.11.1.2, 8.11.2.2, 9.2.10.1 and 9.2.10.2" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/10_1 and PICS_A3/10_2 @@ -2887,7 +2887,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.11.2.2, 8.11.3.2, 9.2.10.2 and 9.2.10.3" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/10_2 and PICS_A3/10_3 @@ -2924,7 +2924,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.11.4.2 and 9.2.10.4" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/10_4 @@ -2967,7 +2967,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.12.2, 9.2.11.1, 9.2.11.2 and 9.3.1.65" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/11_2 @@ -2978,7 +2978,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives an LOCATION_REPORTING_CONTROL containing + the IUT entity receives a LOCATION_REPORTING_CONTROL containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Location_Reporting_Request_Type containing @@ -2994,7 +2994,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends an LOCATION_REPORTING_FAILURE containing + the IUT entity sends a LOCATION_REPORTING_FAILURE containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Cause containing @@ -3020,7 +3020,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.12.3 and 9.2.11.3" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/11_3 @@ -3031,7 +3031,7 @@ Package TP_GNB { Expected behaviour ensure that { when { - the IUT entity receives an LOCATION_REPORTING_CONTROL containing + the IUT entity receives a LOCATION_REPORTING_CONTROL containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, Location_Reporting_Request_Type containing @@ -3042,7 +3042,7 @@ Package TP_GNB { from the AMF entity } then { - the IUT entity sends an LOCATION_REPORT containing + the IUT entity sends a LOCATION_REPORT containing AMF_UE_NGAP_ID, RAN_UE_NGAP_ID, User_Location_Information, @@ -3074,7 +3074,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.14.1.2 and 9.2.13.1" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/13_1 @@ -3107,7 +3107,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.14.2.2, 9.2.13.2 and 9.2.13.3" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/13_2 @@ -3142,7 +3142,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.14.3.2 and 9.2.13.4" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/13_3 @@ -3179,7 +3179,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.15.1.2 and 9.2.14.1" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/14_1 @@ -3221,7 +3221,7 @@ Package TP_GNB { Reference "ETSI TS 138 413 [1], Clauses 8.16.1.2 and 9.2.15.1" - Config Id CFG_GNB_01 + Config Id CF_GNB_N2 PICS Selection PICS_A2/1 and PICS_A3/15_1 -- GitLab From 44b296996e1d9c50ded6135c0f89165ee7f67679 Mon Sep 17 00:00:00 2001 From: pintar Date: Wed, 5 Jun 2024 16:39:51 +0200 Subject: [PATCH 353/365] Configurations update --- test_purposes/Ngap_Common.tplan2 | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/test_purposes/Ngap_Common.tplan2 b/test_purposes/Ngap_Common.tplan2 index e7440eb..c0179de 100644 --- a/test_purposes/Ngap_Common.tplan2 +++ b/test_purposes/Ngap_Common.tplan2 @@ -325,15 +325,29 @@ Package Ngap_Common { Configuration { Interface Type defaultGT accepts NgapMessage; Component Type NgapComponent with gate g of type defaultGT; + Component Type NgapComponent with gate g2 of type defaultGT; - Test Configuration CFG_GNB_01 + Test Configuration CF_GNB_N2 containing Tester component AMF of type NgapComponent SUT component IUT of type NgapComponent connection between AMF.g and IUT.g; - Test Configuration CFG_AMF_01 + Test Configuration CF_AMF_N2 + containing + Tester component GNB of type NgapComponent + SUT component IUT of type NgapComponent + connection between GNB.g and IUT.g; + + + Test Configuration CF_GNB_2N2 + containing + Tester component AMF of type NgapComponent + SUT component IUT of type NgapComponent + connection between AMF.g and IUT.g; + + Test Configuration CF_AMF_2N2 containing Tester component GNB of type NgapComponent SUT component IUT of type NgapComponent -- GitLab From d77a0de8a813dbc97db9b56c9df2abf6630c2a66 Mon Sep 17 00:00:00 2001 From: pintar Date: Wed, 5 Jun 2024 16:43:47 +0200 Subject: [PATCH 354/365] Minor IE update within IMP group --- test_purposes/ngap/TP_AMF_NGAP2.tplan2 | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 index ea8a045..081c8d9 100644 --- a/test_purposes/ngap/TP_AMF_NGAP2.tplan2 +++ b/test_purposes/ngap/TP_AMF_NGAP2.tplan2 @@ -1562,8 +1562,7 @@ Package TP_AMF { Extended_Slice_Support_List containing S_NSSAI containing SST;;;;, - Extended_RAN_Node_Name containing - RAN_Node_Name_Visible;; + Extended_AMFName; to the GNB entity } } -- GitLab From 6b4e4cdf7717fc248a5a4e5963d4b6b3f2d48cf8 Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 10 Jun 2024 10:51:16 +0200 Subject: [PATCH 355/365] updated TPs amf_imp_03 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 3c4c8af..89bb634 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -5647,7 +5647,7 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_NGSetupRequest( + m_n2_NGSetupRequest_UERetentionInf( m_globalRANNodeID_globalGNB_ID( m_ie_globalGnbId( PX_PLMN_IDENTITY, @@ -5676,15 +5676,15 @@ module NGAP_TCFunctions { -//in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit ) }, - PX_PAGING_DRX - //FIXME:UERetention_Information template m_uERetentionInformation(in UERetentionInformation p_value := ues_retained) + PX_PAGING_DRX, + m_uERetentionInformation(-)//UERetention_Information template m_uERetentionInformation(in UERetentionInformation p_value := ues_retained) ) ) ); f_recv_NGAP_PDU( mw_ngap_succMsg( - mw_n2_NGSetupResponse( + mw_n2_NGSetupResponse_UERetentioInf( ?, { mw_servedGUAMIItem( @@ -5715,8 +5715,8 @@ module NGAP_TCFunctions { },//template (present) SliceSupportList p_sliceSupportList := ?, *//template PLMNSupportItem.iE_Extensions p_iE_Extensions := * ) - }//template (present) PLMNSupportList p_plmnSuppList := ? - //FIXME:UERetention_Information template mw_uERetentionInformation(template (present) UERetentionInformation p_value := ues_retained) + },//template (present) PLMNSupportList p_plmnSuppList := ? + ?//UERetention_Information template mw_uERetentionInformation(template (present) UERetentionInformation p_value := ues_retained) ) ) ); -- GitLab From b300994008f16d66e9081cad85819e96b9b1cd25 Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 10 Jun 2024 10:51:28 +0200 Subject: [PATCH 356/365] added template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 78 +++++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index 0eb0f87..cca4e27 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -5648,6 +5648,42 @@ module LibNGAP_Templates { } } // End of template m_n2_NGSetupRequest + template (value) InitiatingMessage m_n2_NGSetupRequest_UERetentionInf( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) SupportedTAList p_supportedTAs, + in template (value) PagingDRX p_pagingDRX := PX_PAGING_DRX, + in template (value) UERetentionInformation p_ueRetentionInf + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupRequest := { + protocolIEs := { + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + }, + { + id := id_SupportedTAList, + criticality := reject, + value_ := { SupportedTAList := p_supportedTAs } + }, + { + id := id_DefaultPagingDRX, + criticality := ignore, + value_ := { PagingDRX := p_pagingDRX } + }, + { + id := id_UERetentionInformation, + criticality := ignore, + value_ := { UERetentionInformation := p_ueRetentionInf } + } + } + } + } + } // End of template m_n2_NGSetupRequest_UERetentionInf + } // End of group Send group Receive { @@ -5775,6 +5811,48 @@ module LibNGAP_Templates { } } // End of template mw_n2_NGSetupResponse + template (present) SuccessfulOutcome mw_n2_NGSetupResponse_UERetentioInf( + template (present) AMFName p_amfName := ?, + template (present) ServedGUAMIList p_servedGUAMIList := ?, + template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + template (present) PLMNSupportList p_plmnSuppList := ?, + template (present) UERetentionInformation p_ueRetentionInf :=? + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupResponse := { + protocolIEs := { + { + id := id_AMFName, + criticality := reject, + value_ := { AMFName := p_amfName } + }, + { + id := id_ServedGUAMIList, + criticality := reject, + value_ := { ServedGUAMIList := p_servedGUAMIList } + }, + { + id := id_RelativeAMFCapacity, + criticality := ignore, + value_ := { RelativeAMFCapacity := p_relativeAmfCap } + }, + { + id := id_PLMNSupportList, + criticality := ignore, + value_ := { PLMNSupportList := p_plmnSuppList } + }, + { + id := id_UERetentionInformation, + criticality := ignore, + value_ := { UERetentionInformation := p_ueRetentionInf } + } + } + } + } + } // End of template mw_n2_NGSetupResponse + } // End of group Receive } // End of group NG_SETUP_RESPONSE -- GitLab From 58f40aa93ad48c80780842211345227b9f7539fc Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 10 Jun 2024 13:53:49 +0200 Subject: [PATCH 357/365] added template --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 88 ++++++++++++++++++++++++- 1 file changed, 86 insertions(+), 2 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index cca4e27..f5cbe70 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -5684,6 +5684,48 @@ module LibNGAP_Templates { } } // End of template m_n2_NGSetupRequest_UERetentionInf + template (value) InitiatingMessage m_n2_NGSetupRequest_ExtRanNodeName( + in template (value) GlobalRANNodeID p_globalRANNodeID, + in template (value) SupportedTAList p_supportedTAs, + in template (value) PagingDRX p_pagingDRX := PX_PAGING_DRX, + in template (value) NB_IoT_DefaultPagingDRX p_nbIotDefPagDrx, + in template (value) Extended_RANNodeName p_extRanNodeName + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupRequest := { + protocolIEs := { + { + id := id_GlobalRANNodeID, + criticality := reject, + value_ := { GlobalRANNodeID := p_globalRANNodeID } + }, + { + id := id_SupportedTAList, + criticality := reject, + value_ := { SupportedTAList := p_supportedTAs } + }, + { + id := id_DefaultPagingDRX, + criticality := ignore, + value_ := { PagingDRX := p_pagingDRX } + }, + { + id := id_NB_IoT_DefaultPagingDRX, + criticality := ignore, + value_ := { NB_IoT_DefaultPagingDRX := p_nbIotDefPagDrx } + }, + { + id := id_Extended_RANNodeName, + criticality := ignore, + value_ := { Extended_RANNodeName := p_extRanNodeName } + } + } + } + } + } // End of template m_n2_NGSetupRequest_ExtRanNodeName + } // End of group Send group Receive { @@ -5811,7 +5853,7 @@ module LibNGAP_Templates { } } // End of template mw_n2_NGSetupResponse - template (present) SuccessfulOutcome mw_n2_NGSetupResponse_UERetentioInf( + template (present) SuccessfulOutcome mw_n2_NGSetupResponse_UERetentionInf( template (present) AMFName p_amfName := ?, template (present) ServedGUAMIList p_servedGUAMIList := ?, template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, @@ -5851,7 +5893,49 @@ module LibNGAP_Templates { } } } - } // End of template mw_n2_NGSetupResponse + } // End of template mw_n2_NGSetupResponse_UERetentionInfo + + template (present) SuccessfulOutcome mw_n2_NGSetupResponse_ExtAmfName( + template (present) AMFName p_amfName := ?, + template (present) ServedGUAMIList p_servedGUAMIList := ?, + template (present) RelativeAMFCapacity p_relativeAmfCap:= ?, + template (present) PLMNSupportList p_plmnSuppList := ?, + template (present) Extended_AMFName p_extAmfName :=? + ) := { + procedureCode := id_NGSetup, + criticality := reject, + value_ := { + NGSetupResponse := { + protocolIEs := { + { + id := id_AMFName, + criticality := reject, + value_ := { AMFName := p_amfName } + }, + { + id := id_ServedGUAMIList, + criticality := reject, + value_ := { ServedGUAMIList := p_servedGUAMIList } + }, + { + id := id_RelativeAMFCapacity, + criticality := ignore, + value_ := { RelativeAMFCapacity := p_relativeAmfCap } + }, + { + id := id_PLMNSupportList, + criticality := ignore, + value_ := { PLMNSupportList := p_plmnSuppList } + }, + { + id := id_Extended_AMFName, + criticality := ignore, + value_ := { Extended_AMFName := p_extAmfName } + } + } + } + } + } // End of template mw_n2_NGSetupResponse_ExtAmfName } // End of group Receive -- GitLab From 648ec3778c3c8c5f8ecc768f3a62261de2b3c169 Mon Sep 17 00:00:00 2001 From: juvancic Date: Mon, 10 Jun 2024 13:53:59 +0200 Subject: [PATCH 358/365] updated TPs amf_imp_04 --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 89bb634..6e29dd3 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -5684,7 +5684,7 @@ module NGAP_TCFunctions { f_recv_NGAP_PDU( mw_ngap_succMsg( - mw_n2_NGSetupResponse_UERetentioInf( + mw_n2_NGSetupResponse_UERetentionInf( ?, { mw_servedGUAMIItem( @@ -5748,7 +5748,7 @@ module NGAP_TCFunctions { // Body f_send_NGAP_PDU( m_ngap_initMsg( - m_n2_NGSetupRequest( + m_n2_NGSetupRequest_ExtRanNodeName( m_globalRANNodeID_globalGNB_ID( m_ie_globalGnbId( PX_PLMN_IDENTITY, @@ -5777,16 +5777,20 @@ module NGAP_TCFunctions { -//in template (omit) SupportedTAItem.iE_Extensions p_iE_Extensions := omit ) }, - PX_PAGING_DRX - //FIXME:NB_IoT_Default_Paging_DRX, - //FIXME:Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; m_extended_RANNodeName... + PX_PAGING_DRX, + m_nB_IoT_DefaultPagingDRX(-),//NB_IoT_Default_Paging_DRX, + m_extended_RANNodeName( + -,//in template (omit) RANNodeNameVisibleString p_rANNodeNameVisibleString := omit, + -,//in template (omit) RANNodeNameUTF8String p_rANNodeNameUTF8String := omit, + -//in template (omit) Extended_RANNodeName.iE_Extensions p_iE_Extensions := omit + )//Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; m_extended_RANNodeName... ) ) ); f_recv_NGAP_PDU( mw_ngap_succMsg( - mw_n2_NGSetupResponse( + mw_n2_NGSetupResponse_ExtAmfName( ?, { mw_servedGUAMIItem( @@ -5817,8 +5821,8 @@ module NGAP_TCFunctions { },//template (present) SliceSupportList p_sliceSupportList := ?, *//template PLMNSupportItem.iE_Extensions p_iE_Extensions := * ) - }//template (present) PLMNSupportList p_plmnSuppList := ? - // FIXME:Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; mw_extended_RANNodeName... + },//template (present) PLMNSupportList p_plmnSuppList := ? + ?//Extended_RAN_Node_Name containing RAN_Node_Name_Visible;;; mw_extended_RANNodeName... ) ) ); -- GitLab From df32b842333f56cc4d141e5a7c886e1b00b10110 Mon Sep 17 00:00:00 2001 From: juvancic Date: Wed, 12 Jun 2024 10:32:27 +0200 Subject: [PATCH 359/365] added missing function f_NGAP_gnb_UE_Has_EstablishedContextInproperly --- ttcn/AtsNGAP/NGAP_Steps.ttcn | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ttcn/AtsNGAP/NGAP_Steps.ttcn b/ttcn/AtsNGAP/NGAP_Steps.ttcn index b17d6d4..f968531 100644 --- a/ttcn/AtsNGAP/NGAP_Steps.ttcn +++ b/ttcn/AtsNGAP/NGAP_Steps.ttcn @@ -280,6 +280,13 @@ module NGAP_Steps { //FIXME: Implementation of UE handover required } // End of function f_NGAP_gnb_UE_EstablishedInitialContext + /** + * @desc + */ + function f_NGAP_gnb_UE_Has_EstablishedContextInproperly() runs on NGAPComponent { + //FIXME: Implementation of UE handover required + } // End of function f_NGAP_gnb_UE_Has_EstablishedContextInproperly + /** * @desc */ -- GitLab From e00406670250b44026569e87ed86458a54e0f71e Mon Sep 17 00:00:00 2001 From: Bostjan Date: Mon, 17 Jun 2024 14:48:01 +0200 Subject: [PATCH 360/365] PIXIT changed due to base spec --- ttcn/AtsNGAP/NGAP_Pixits.ttcn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_Pixits.ttcn b/ttcn/AtsNGAP/NGAP_Pixits.ttcn index 8e4c0e1..621abdc 100644 --- a/ttcn/AtsNGAP/NGAP_Pixits.ttcn +++ b/ttcn/AtsNGAP/NGAP_Pixits.ttcn @@ -76,10 +76,10 @@ module NGAP_Pixits { modulepar Criticality PX_VA_CRITICALITY := reject; /** - * @desc integer for timer TS1RELOCOverall, - * @see ETSI TS 136 413, chapter 9.5 + * @desc integer for timer TNGRELOCOverall, + * @see ETSI TS 138 413, chapter 9.6 */ - modulepar float PX_TS1RELOCOverall := 10.0; + modulepar float PX_TNGRELOCOverall := 10.0; } // End of group NGAP_CommonData -- GitLab From 503c99ce1d7b96632cc0f4053c0f7e5a0499b2f1 Mon Sep 17 00:00:00 2001 From: Bostjan Date: Mon, 17 Jun 2024 14:48:53 +0200 Subject: [PATCH 361/365] PIXITs semicolon added --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index dda165a..3c10c34 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -267,19 +267,19 @@ module LibNGAP_Pixits { * @desc To identify the AMF within the global 5G network * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause */ - modulepar AMFPointer PX_AMF_POINTER:= '000001'B + modulepar AMFPointer PX_AMF_POINTER:= '000001'B; /** * @desc To identify the AMF within the global 5G network * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause */ - modulepar AMFRegionID PX_AMF_REGION_ID:= '10000000'B + modulepar AMFRegionID PX_AMF_REGION_ID:= '10000000'B; /** * @desc To identify the AMF within the global 5G network * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause */ - modulepar AMFSetID PX_AMF_SET_ID:= '0000000100'B + modulepar AMFSetID PX_AMF_SET_ID:= '0000000100'B; /** * @desc @@ -303,19 +303,19 @@ module LibNGAP_Pixits { * @desc To indicate the reason for RRC Connection Establishment/Resume * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.111 RRC Establishment Cause */ - modulepar RRCEstablishmentCause PX_RRC_ESTABLISHMENT_CAUSE := notAvailable + modulepar RRCEstablishmentCause PX_RRC_ESTABLISHMENT_CAUSE := notAvailable; /** * @desc To indicate the reason for RRC Connection Establishment/Resume * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.111 RRC Establishment Cause */ - modulepar RRCEstablishmentCause PX_RRC_RESUME_CAUSE := notAvailable + modulepar RRCEstablishmentCause PX_RRC_RESUME_CAUSE := notAvailable; /** * @desc To indicate which kind of handover was triggered in the source side * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.22 Handover Type */ - modulepar HandoverType PX_HANDOVER_TYPE := intra5gs + modulepar HandoverType PX_HANDOVER_TYPE := intra5gs; /** * @desc To indicates the UE Aggregate Maximum Bit Rate as specified in TS 23.501 in the downlink direction (bit/s) @@ -367,7 +367,7 @@ module LibNGAP_Pixits { * @desc To indicate the Paging DRX as defined in TS 38.304 and TS 36.304 * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.3.1.90 Paging DRX */ - modulepar PagingDRX PX_PAGING_DRX := v32 + modulepar PagingDRX PX_PAGING_DRX := v32; /** * @desc To uniquely identify the AMF -- GitLab From a22d358e2d2055c7a9a3480e9cf8111da181e60b Mon Sep 17 00:00:00 2001 From: ldtke Date: Fri, 21 Jun 2024 14:53:02 +0200 Subject: [PATCH 362/365] add new PX --- ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn index 3c10c34..9c38442 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Pixits.ttcn @@ -432,6 +432,18 @@ module LibNGAP_Pixits { modulepar FiveQI PX_FIVE_QI; modulepar bitstring PX_GNB_ID; + + /** + * @desc To indicate IMEISV value with a mask, to identify a terminal model without identifying an individual Mobile Equipment. + * @see 138 413 V16.12.0 (2023-05) Clause 9.3.1.54 Masked IMEISV + */ + modulepar bitstring PX_MaskedIMEISV; + + /** + * @desc To indicate local configuration for RRM strategies such as camp priorities in Idle mode and control of inter-RAT/inter-frequency handover in Active mode + * @see 138 413 V16.12.0 (2023-05) Clause 9.3.1.61 Index to RAT/Frequency Selection Priority + */ + modulepar integer PX_Index_to_RAT_Frequency_Selection_Priority; /** * @desc eNB Identity. -- GitLab From c529cdd282b5f7987688dc5a78f91c3b482b9511 Mon Sep 17 00:00:00 2001 From: ldtke Date: Wed, 26 Jun 2024 13:53:50 +0200 Subject: [PATCH 363/365] add PX in two testcases --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 4 ++-- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 6e29dd3..17b6d7a 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -1343,8 +1343,8 @@ module NGAP_TCFunctions { m_uESecurityCapabilities, -, ''O, // UERadioCapability p_uERadioCapability, - -, // IndexToRFSP p_indexToRFSP := 1, // TODO: do we need PIXIT here? - '0000000000000000000000000000000000000000000000000000000000000001'B, // MaskedIMEISV p_maskedIMEISV, // TODO: do we need PIXIT here? + -, // IndexToRFSP p_indexToRFSP := 1, + -, ''O, // FIXME FSCOM NAS_PDU field shall be bit2oct(enc(???)) , m_emergencyFallbackIndicator(emergency_fallback_requested), // EmergencyFallbackIndicator p_emergencyFallbackIndicator, diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index f5cbe70..c3ec15e 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -1229,8 +1229,8 @@ module LibNGAP_Templates { in template (value) UESecurityCapabilities p_uESecurityCapabilities, in template (value) SecurityKey p_nextHopNH := PX_NEXT_HOP_NH, in template (value) UERadioCapability p_uERadioCapability, - in template (value) IndexToRFSP p_indexToRFSP := 1, // TODO: do we need PIXIT here? - in template (value) MaskedIMEISV p_maskedIMEISV, + in template (value) IndexToRFSP p_indexToRFSP := PX_Index_to_RAT_Frequency_Selection_Priority, + in template (value) MaskedIMEISV p_maskedIMEISV := PX_MaskedIMEISV, in template (value) NAS_PDU p_nasPdu, in template (value) EmergencyFallbackIndicator p_emergencyFallbackIndicator, in template (value) RRCInactiveTransitionReportRequest p_rRCInactiveTransitionReportRequest, @@ -1963,7 +1963,7 @@ module LibNGAP_Templates { in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, in template (value) RANPagingPriority p_rANPagingPriority := 1, // RAN_Paging_Priority // TODO: do we need PIXIT here? - in template (value) IndexToRFSP p_indexToRFSP := 1, // Index_to_RAT_Frequency_Selection_Priority, // TODO: do we need PIXIT here? + in template (value) IndexToRFSP p_indexToRFSP := PX_Index_to_RAT_Frequency_Selection_Priority, in template (value) UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, // UE_Aggregate_Maximum_Bit_Rate containing in template (value) UESecurityCapabilities p_uESecurityCapabilities, // UE_Security_Capabilities containing in template (value) EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator, -- GitLab From f2add0b8e0a0d5a8946c315b2342167797d5455e Mon Sep 17 00:00:00 2001 From: Bostjan Date: Wed, 26 Jun 2024 15:47:06 +0200 Subject: [PATCH 364/365] Missing semicolons added --- ttcn/AtsNGAP/NGAP_TCFunctions.ttcn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn index 17b6d7a..5af2f8e 100644 --- a/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn +++ b/ttcn/AtsNGAP/NGAP_TCFunctions.ttcn @@ -2498,7 +2498,7 @@ module NGAP_TCFunctions { f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); f_NGAP_amf_UE_PDU_ResourceSetup(); - f_NGAP_amf_UE_MMP_Handover_Completed() + f_NGAP_amf_UE_MMP_Handover_Completed(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); @@ -2533,7 +2533,7 @@ module NGAP_TCFunctions { f_NGAP_amf_init(); f_NGAP_amf_UE_Register(); f_NGAP_amf_UE_PDU_ResourceSetup(); - f_NGAP_amf_UE_MMP_Handover_Completed() + f_NGAP_amf_UE_MMP_Handover_Completed(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); -- GitLab From 38f544f9c635a87181e43e8e42deca33d24aa011 Mon Sep 17 00:00:00 2001 From: Bostjan Date: Wed, 26 Jun 2024 15:47:20 +0200 Subject: [PATCH 365/365] Templates updated due to types --- ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn | 61 ++++++++++++------------- 1 file changed, 28 insertions(+), 33 deletions(-) diff --git a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn index c3ec15e..35a9da7 100644 --- a/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn +++ b/ttcn/LibNGAP/lib/LibNGAP_Templates.ttcn @@ -3570,16 +3570,6 @@ module LibNGAP_Templates { criticality := reject, value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } }, - { - id := id_CoreNetworkAssistanceInformationForInactive, - criticality := ignore, - value_ := { CoreNetworkAssistanceInformationForInactive := p_coreNetworkAssistanceInformationForInactive } - }, - { - id := id_UEAggregateMaximumBitRate, - criticality := reject, - value_ := { UEAggregateMaximumBitRate := p_uEAggregateMaximumBitRate } - }, { id := id_UESecurityCapabilities, criticality := reject, @@ -3591,44 +3581,49 @@ module LibNGAP_Templates { value_ := { SecurityContext := p_securityContext } }, { - id := id_NewSecurityContextInd, + id := id_PDUSessionResourceListHORqd, criticality := reject, - value_ := { NewSecurityContextInd := p_newSecurityContextInd } + value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } }, { - id := id_NASC, + id := id_AllowedNSSAI, criticality := reject, - value_ := { NAS_PDU := p_nAS_PDU } + value_ := { AllowedNSSAI := p_allowedNSSAI } }, { - id := id_PDUSessionResourceListHORqd, + id := id_SourceToTarget_TransparentContainer, criticality := reject, - value_ := { PDUSessionResourceSetupListHOReq := p_pDUSessionResourceSetupListHOReq } + value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } }, { - id := id_AllowedNSSAI, + id := id_GUAMI, criticality := reject, - value_ := { AllowedNSSAI := p_allowedNSSAI } + value_ := { GUAMI := p_gUAMI } }, { - id := id_TraceActivation, + id := id_CoreNetworkAssistanceInformationForInactive, criticality := ignore, - value_ := { TraceActivation := p_traceActivation } + value_ := { CoreNetworkAssistanceInformationForInactive := p_coreNetworkAssistanceInformationForInactive } }, { - id := id_SourceToTarget_TransparentContainer, + id := id_NewSecurityContextInd, criticality := reject, - value_ := { SourceToTarget_TransparentContainer := p_SourceToTarget_TransparentContainer } + value_ := { NewSecurityContextInd := p_newSecurityContextInd } }, { - id := id_RRCInactiveTransitionReportRequest, + id := id_NASC, + criticality := reject, + value_ := { NAS_PDU := p_nAS_PDU } + }, + { + id := id_TraceActivation, criticality := ignore, - value_ := { RRCInactiveTransitionReportRequest := p_rRCInactiveTransitionReportRequest } + value_ := { TraceActivation := p_traceActivation } }, { - id := id_GUAMI, - criticality := reject, - value_ := { GUAMI := p_gUAMI } + id := id_RRCInactiveTransitionReportRequest, + criticality := ignore, + value_ := { RRCInactiveTransitionReportRequest := p_rRCInactiveTransitionReportRequest } }, { id := id_RedirectionVoiceFallback, @@ -5545,7 +5540,7 @@ module LibNGAP_Templates { { id := id_NGAP_Message, criticality := reject, - value_ := { nGAP_Message := p_nGAPMessage } + value_ := { NGAP_Message := p_nGAPMessage } }, { id := id_AMFSetID, @@ -5588,7 +5583,7 @@ module LibNGAP_Templates { { id := id_NGAP_Message, criticality := reject, - value_ := { nGAP_Message := p_nGAPMessage } + value_ := { NGAP_Message := p_nGAPMessage } }, { id := id_AMFSetID, @@ -8026,7 +8021,7 @@ module LibNGAP_Templates { { id := id_TraceCollectionEntityIPAddress, criticality := ignore, - value_ := { transportLayerAddress := p_tla } + value_ := { TransportLayerAddress := p_tla } }, { id := id_PrivacyIndicator, @@ -8036,7 +8031,7 @@ module LibNGAP_Templates { { id := id_TraceCollectionEntityURI, criticality := ignore, - value_ := { uRI_address := p_uRI_address } + value_ := { URI_address := p_uRI_address } } } } @@ -8098,7 +8093,7 @@ module LibNGAP_Templates { { id := id_TraceCollectionEntityIPAddress, criticality := ignore, - value_ := { transportLayerAddress := p_tla } + value_ := { TransportLayerAddress := p_tla } }, { id := id_PrivacyIndicator, @@ -8108,7 +8103,7 @@ module LibNGAP_Templates { { id := id_TraceCollectionEntityURI, criticality := ignore, - value_ := { uRI_address := p_uRI_address } + value_ := { URI_address := p_uRI_address } } } } -- GitLab